This needs to be a #define for symmetry with SENSORS_NUM. More...
#include <0220_palm_edc_ethercat_protocol.h>
This needs to be a #define for symmetry with SENSORS_NUM.
These are the data sent by the host.
These are the data sent from the Palm to the host.
This packet allows the palm to transmit and receive CAN messages on either CAN bus. One CAN message per EtherCAT packet only. The CAN messages can be used for bootloading new code onto the motors, or to configure the motor boards.
Definition at line 370 of file 0220_palm_edc_ethercat_protocol.h.
int32u __attribute__::aux_data_type |
Request for specific aux data.
Definition at line 122 of file 0230_palm_edc_ethercat_protocol.h.
int32u __attribute__::aux_spi_data_type |
4 bytes
Definition at line 69 of file 0230_palm_edc_ethercat_protocol.h.
AUX_SPI_SENSOR __attribute__::aux_spi_sensor |
32 bytes TOTAL = 36 bytes
Definition at line 70 of file 0230_palm_edc_ethercat_protocol.h.
int8u __attribute__::can_bus |
Definition at line 54 of file ethercat_can_bridge_protocol.h.
EDC_COMMAND __attribute__::EDC_command |
What type of data should the palm send back in the next packet?
This tells us the contents of the data below. This value should be identical to the EDC_command value which arrived from the host in the previous EtherCAT packet
Definition at line 372 of file 0220_palm_edc_ethercat_protocol.h.
FROM_MOTOR_DATA_TYPE __attribute__::from_motor_data_type |
Which data does the host want from the motors?
Definition at line 407 of file 0220_palm_edc_ethercat_protocol.h.
FROM_MUSCLE_DATA_TYPE __attribute__::from_muscle_data_type |
Which data does the host want from the muscles?
Definition at line 308 of file 0320_palm_edc_ethercat_protocol.h.
int16u __attribute__::idle_time_us |
packet, and the next packet arriving. Ideally, this number should be more than 50.
The idle time from when the palm has finished dealing with one EtherCAT
The idle time from when the palm has finished dealing with one EtherCAT packet, and the next packet arriving. Ideally, this number should be more than 50.
Definition at line 395 of file 0220_palm_edc_ethercat_protocol.h.
IMU_COMMAND_TYPE __attribute__::imu_command |
Definition at line 103 of file 0240_palm_edc_IMU_ethercat_protocol.h.
int8u __attribute__::message_data[8] |
Definition at line 57 of file ethercat_can_bridge_protocol.h.
int16u __attribute__::message_id |
Definition at line 56 of file ethercat_can_bridge_protocol.h.
int8u __attribute__::message_length |
Definition at line 55 of file ethercat_can_bridge_protocol.h.
int16s __attribute__::motor_data |
Data to send to motors. Typically torque/PWM demands, or configs.
Motor Data [18]:40 Data to send to motors. Typically torque/PWM demands, or configs.
Definition at line 412 of file 0220_palm_edc_ethercat_protocol.h.
MOTOR_DATA_PACKET __attribute__::motor_data_packet |
Data for 10 motors only. (Even ones or Odd ones)
Data for 10 motors only. (Even ones or Odd ones) 40 bytes
Definition at line 389 of file 0220_palm_edc_ethercat_protocol.h.
FROM_MOTOR_DATA_TYPE __attribute__::motor_data_type |
Which data does motor[] contain? This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND
Which data does motor[] contain? This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0230_PALM_EDC_COMMAND
Which data does motor[] contain? This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0240_PALM_EDC_COMMAND
Definition at line 379 of file 0220_palm_edc_ethercat_protocol.h.
int8u __attribute__::muscle_data[NUM_MUSCLES/2] |
Data to send to muscles. [-4 .. 4] packed into the nibbles.
Definition at line 311 of file 0320_palm_edc_ethercat_protocol.h.
MUSCLE_DATA_PACKET __attribute__::muscle_data_packet[NUM_MUSCLE_DATA_PACKETS] |
Definition at line 289 of file 0320_palm_edc_ethercat_protocol.h.
FROM_MUSCLE_DATA_TYPE __attribute__::muscle_data_type |
Which data does pressure_sensors[] actually contain? This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND
Definition at line 281 of file 0320_palm_edc_ethercat_protocol.h.
int16u __attribute__::sensors |
74 bytes
Definition at line 377 of file 0220_palm_edc_ethercat_protocol.h.
TACTILE_SENSOR_STATUS_v2 __attribute__::tactile[5] |
32*5 = 160 bytes TOTAL = 166 bytes
Definition at line 65 of file 0230_palm_edc_ethercat_protocol.h.
TACTILE_SENSOR_STATUS_v1 __attribute__::tactile |
Definition at line 393 of file 0220_palm_edc_ethercat_protocol.h.
int32u __attribute__::tactile_data_type |
Request for specific tactile data.
4 bytes
Definition at line 391 of file 0220_palm_edc_ethercat_protocol.h.
int16u __attribute__::tactile_data_valid |
Bit 0: FF. Bit 4: TH.
2 bytes (Bit 0: FF. Bit 4: TH.)
Definition at line 392 of file 0220_palm_edc_ethercat_protocol.h.
TACTILE_SENSOR_MID_PROX __attribute__::tactile_mid_prox[5] |
16*5 = 80 bytes TOTAL = 154 bytes
Definition at line 59 of file 0230_palm_edc_ethercat_protocol.h.
TO_MOTOR_DATA_TYPE __attribute__::to_motor_data_type |
Request for specific motor data.
Definition at line 411 of file 0220_palm_edc_ethercat_protocol.h.
TO_MUSCLE_DATA_TYPE __attribute__::to_muscle_data_type |
What type of data are we sending to the muscles?
Definition at line 310 of file 0320_palm_edc_ethercat_protocol.h.
int32u __attribute__::which_motor_data_arrived |
Bit N set when motor CAN message arrives. Ideally, bits 0..19 get set.
Definition at line 386 of file 0220_palm_edc_ethercat_protocol.h.
int32u __attribute__::which_motor_data_had_errors |
Bit N set when motor sends bad CAN message Ideally, no bits get set.
Definition at line 387 of file 0220_palm_edc_ethercat_protocol.h.
int16s __attribute__::which_motors |
0: Even motor numbers. 1: Odd motor numbers This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0200_PALM_EDC_COMMAND
Which motors does the host want to read? 0: Even motor numbers. 1: Odd motor numbers
0: Even motor numbers. 1: Odd motor numbers This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0230_PALM_EDC_COMMAND
0: Even motor numbers. 1: Odd motor numbers This value should agree with the previous value in ETHERCAT_DATA_STRUCTURE_0240_PALM_EDC_COMMAND
Definition at line 382 of file 0220_palm_edc_ethercat_protocol.h.
int16u __attribute__::which_muscle_data_arrived |
Bit s indicate which muscle data packet is new this frame This variable needst to be 16 bits (even though we use only 8 of the bits) to ensure that later words are 16-bit aligned. (Mis-alignment causes memory exception).
Definition at line 285 of file 0320_palm_edc_ethercat_protocol.h.