Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed mbed-rtos Motor LSM9DS1_Library_cal X_NUCLEO_53L0A1
Diff: RobotController.h
- Revision:
- 11:531208aca075
- Parent:
- 8:bfa4bf23522c
- Child:
- 14:0e6b26c1a7c5
--- a/RobotController.h Mon Apr 22 23:55:45 2019 +0000 +++ b/RobotController.h Tue Apr 23 19:56:39 2019 +0000 @@ -3,7 +3,8 @@ #include "globals.h" #include "Motor.h" -#include "HALLFX_ENCODER.h" +#include "Encoder.h" +#include "LSM9DS1.h" #include "XNucleo53L0A1.h" #define COUNTPERIN 75.029 ///< Encoder counts 192 every 65 mm of wheel rotation @@ -15,7 +16,7 @@ class RobotController { public: /** - * Robot Controller Constructor. + * Robot Controller constructor. * @param leftWheelPwm mbed pin transmitting speed to left motor driver * @param leftWheelFwd mbed pin transmitting forward direction to left motor driver * @param leftWheelRev mbed pin transmitting reverse direction to left motor driver @@ -24,11 +25,19 @@ * @param rightWheelRev mbed pin transmitting reverse direction to right motor driver * @param leftEncoder mbed pin receiving rotation count from left encoder * @param rightEncoder mbed pin receiving rotation count from right encoder + * @param imuSda mbed pin for imu I2C data line + * @param imuScl mbed pin for imu I2C clock line */ RobotController(PinName leftWheelPwm, PinName leftWheelFwd, PinName leftWheelRev, PinName rightWheelPwm, PinName rightWheelFwd, - PinName rightWheelRev, PinName leftEncoder, PinName rightEncoder); - + PinName rightWheelRev, PinName leftEncoder, PinName rightEncoder, + PinName imuSda, PinName imuScl); + + /** + * Robot Controller destructor. + */ + ~RobotController(); + /** * Detect obstacles in 360-degree field of view around the robot. */ @@ -42,8 +51,14 @@ private: Motor leftWheel; Motor rightWheel; - HALLFX_ENCODER leftEncoder; - HALLFX_ENCODER rightEncoder; + Encoder leftEncoder; + Encoder rightEncoder; + LSM9DS1 imu; + Timer t; + float w1; + float w2; + float t1; + float t2; }; #endif /* ROBOT_CONTROLLER_H */ \ No newline at end of file