With pid left, right, and foward
Dependents: wheelchaircontrol wheelchaircontrolRosCom wheelchaircontrol wheelchaircontrol2 ... more
Fork of chair_BNO055 by
chair_BNO055.h@3:531a74cecb89, 2018-08-12 (annotated)
- Committer:
- ryanlin97
- Date:
- Sun Aug 12 00:33:19 2018 +0000
- Revision:
- 3:531a74cecb89
- Parent:
- 1:3258d62af038
- Child:
- 4:a6452220ec66
changed sda and scl definitions to d4 and d5 for small mbed board
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ryanlin97 | 0:ad7a811c859f | 1 | #ifndef CHAIR_BNO055_H |
ryanlin97 | 0:ad7a811c859f | 2 | #define CHAIR_BNO055_H |
ryanlin97 | 0:ad7a811c859f | 3 | |
ryanlin97 | 1:3258d62af038 | 4 | #include "filter.h" |
ryanlin97 | 0:ad7a811c859f | 5 | #include "mbed.h" |
ryanlin97 | 0:ad7a811c859f | 6 | #include "math.h" |
ryanlin97 | 0:ad7a811c859f | 7 | #include "BNO055.h" |
ryanlin97 | 0:ad7a811c859f | 8 | |
ryanlin97 | 0:ad7a811c859f | 9 | #define PI 3.141593 |
ryanlin97 | 3:531a74cecb89 | 10 | /*#define SDA D14 |
ryanlin97 | 3:531a74cecb89 | 11 | #define SCL D15*/ |
ryanlin97 | 3:531a74cecb89 | 12 | #define SDA D4 |
ryanlin97 | 3:531a74cecb89 | 13 | #define SCL D5 |
ryanlin97 | 1:3258d62af038 | 14 | #define SAMPLEFREQ 50 |
ryanlin97 | 1:3258d62af038 | 15 | #define CAL_TIME 3 |
ryanlin97 | 0:ad7a811c859f | 16 | |
ryanlin97 | 0:ad7a811c859f | 17 | class chair_BNO055 |
ryanlin97 | 0:ad7a811c859f | 18 | { |
ryanlin97 | 0:ad7a811c859f | 19 | public: |
ryanlin97 | 1:3258d62af038 | 20 | chair_BNO055(Serial* out, Timer* time); |
ryanlin97 | 1:3258d62af038 | 21 | chair_BNO055(PinName sda_pin, PinName scl_pin, Serial* out, Timer* time); |
ryanlin97 | 0:ad7a811c859f | 22 | void setup(); |
ryanlin97 | 0:ad7a811c859f | 23 | double accel_x(); |
ryanlin97 | 0:ad7a811c859f | 24 | double accel_y(); |
ryanlin97 | 0:ad7a811c859f | 25 | double accel_z(); |
ryanlin97 | 0:ad7a811c859f | 26 | double gyro_x(); |
ryanlin97 | 0:ad7a811c859f | 27 | double gyro_y(); |
ryanlin97 | 0:ad7a811c859f | 28 | double gyro_z(); |
ryanlin97 | 0:ad7a811c859f | 29 | double angle_north(); |
ryanlin97 | 0:ad7a811c859f | 30 | double yaw(); |
ryanlin97 | 0:ad7a811c859f | 31 | double pitch(); |
ryanlin97 | 0:ad7a811c859f | 32 | double roll(); |
ryanlin97 | 1:3258d62af038 | 33 | BNO055* imu; |
ryanlin97 | 0:ad7a811c859f | 34 | private: |
ryanlin97 | 1:3258d62af038 | 35 | //BNO055* imu; |
ryanlin97 | 1:3258d62af038 | 36 | Serial* usb; |
ryanlin97 | 1:3258d62af038 | 37 | Timer* t; |
ryanlin97 | 1:3258d62af038 | 38 | bool start; |
ryanlin97 | 1:3258d62af038 | 39 | void setStart(); |
ryanlin97 | 1:3258d62af038 | 40 | void calibrate_yaw(); |
ryanlin97 | 0:ad7a811c859f | 41 | }; |
ryanlin97 | 0:ad7a811c859f | 42 | |
ryanlin97 | 0:ad7a811c859f | 43 | #endif |