![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Delta Robot example
Dependencies: BufferedSerial Eigen
Fork of TCPSocket_Example by
comms.h@5:01e1e68309ae, 2018-10-15 (annotated)
- Committer:
- je310
- Date:
- Mon Oct 15 18:30:20 2018 +0000
- Revision:
- 5:01e1e68309ae
- Parent:
- 4:778bc352c47f
testing eigen;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
je310 | 3:10fa3102c2d7 | 1 | #ifndef COMMS_H |
je310 | 3:10fa3102c2d7 | 2 | #define COMMS_H |
je310 | 3:10fa3102c2d7 | 3 | |
je310 | 5:01e1e68309ae | 4 | #include <stdint.h> |
je310 | 3:10fa3102c2d7 | 5 | struct OdriveCMD{ |
je310 | 3:10fa3102c2d7 | 6 | float position; |
je310 | 3:10fa3102c2d7 | 7 | float velocity; |
je310 | 3:10fa3102c2d7 | 8 | float torque; |
je310 | 3:10fa3102c2d7 | 9 | float maxCurrent; |
je310 | 5:01e1e68309ae | 10 | int32_t mode; |
je310 | 3:10fa3102c2d7 | 11 | }; |
je310 | 3:10fa3102c2d7 | 12 | struct ServoCMD{ |
je310 | 3:10fa3102c2d7 | 13 | float angle; |
je310 | 3:10fa3102c2d7 | 14 | float atTime; |
je310 | 3:10fa3102c2d7 | 15 | }; |
je310 | 3:10fa3102c2d7 | 16 | |
je310 | 5:01e1e68309ae | 17 | struct rosTime{ |
je310 | 5:01e1e68309ae | 18 | int32_t seconds; |
je310 | 5:01e1e68309ae | 19 | int32_t nSeconds; |
je310 | 5:01e1e68309ae | 20 | }; |
je310 | 5:01e1e68309ae | 21 | |
je310 | 3:10fa3102c2d7 | 22 | struct toRobot{ |
je310 | 3:10fa3102c2d7 | 23 | OdriveCMD motor1; |
je310 | 3:10fa3102c2d7 | 24 | OdriveCMD motor2; |
je310 | 3:10fa3102c2d7 | 25 | OdriveCMD motor3; |
je310 | 3:10fa3102c2d7 | 26 | ServoCMD servo1; |
je310 | 3:10fa3102c2d7 | 27 | ServoCMD servo2; |
je310 | 5:01e1e68309ae | 28 | rosTime time; |
je310 | 5:01e1e68309ae | 29 | float timeOffset; |
je310 | 5:01e1e68309ae | 30 | int32_t isPing; |
je310 | 5:01e1e68309ae | 31 | int32_t count; |
je310 | 3:10fa3102c2d7 | 32 | }; |
je310 | 3:10fa3102c2d7 | 33 | |
je310 | 3:10fa3102c2d7 | 34 | struct OdriveINFO{ |
je310 | 3:10fa3102c2d7 | 35 | float speed; |
je310 | 5:01e1e68309ae | 36 | int32_t position; |
je310 | 3:10fa3102c2d7 | 37 | float busVoltage; |
je310 | 3:10fa3102c2d7 | 38 | float setCurrent; |
je310 | 3:10fa3102c2d7 | 39 | float measuredCurrent; |
je310 | 3:10fa3102c2d7 | 40 | }; |
je310 | 3:10fa3102c2d7 | 41 | |
je310 | 3:10fa3102c2d7 | 42 | struct vectorThree{ |
je310 | 3:10fa3102c2d7 | 43 | float x; |
je310 | 3:10fa3102c2d7 | 44 | float y; |
je310 | 3:10fa3102c2d7 | 45 | float z; |
je310 | 3:10fa3102c2d7 | 46 | }; |
je310 | 3:10fa3102c2d7 | 47 | |
je310 | 3:10fa3102c2d7 | 48 | struct imuINFO{ |
je310 | 3:10fa3102c2d7 | 49 | vectorThree accel; |
je310 | 3:10fa3102c2d7 | 50 | vectorThree gyro; |
je310 | 3:10fa3102c2d7 | 51 | }; |
je310 | 3:10fa3102c2d7 | 52 | |
je310 | 3:10fa3102c2d7 | 53 | struct gunINFO{ |
je310 | 3:10fa3102c2d7 | 54 | bool buttons[32]; |
je310 | 3:10fa3102c2d7 | 55 | }; |
je310 | 3:10fa3102c2d7 | 56 | |
je310 | 3:10fa3102c2d7 | 57 | struct fromRobot{ |
je310 | 3:10fa3102c2d7 | 58 | OdriveINFO motor1; |
je310 | 3:10fa3102c2d7 | 59 | OdriveINFO motor2; |
je310 | 3:10fa3102c2d7 | 60 | OdriveINFO motor3; |
je310 | 3:10fa3102c2d7 | 61 | imuINFO imu; |
je310 | 3:10fa3102c2d7 | 62 | gunINFO gun; |
je310 | 5:01e1e68309ae | 63 | rosTime time; |
je310 | 5:01e1e68309ae | 64 | rosTime pingTime; |
je310 | 5:01e1e68309ae | 65 | int32_t isPing; |
je310 | 5:01e1e68309ae | 66 | int32_t count; |
je310 | 3:10fa3102c2d7 | 67 | }; |
je310 | 3:10fa3102c2d7 | 68 | |
je310 | 3:10fa3102c2d7 | 69 | |
je310 | 3:10fa3102c2d7 | 70 | #endif // COMMS_H |