/** * @file Motion.h * @author Jonathan Schulze, Nick Hübenthal * @brief This component controls the ability to rotate and change position. * @version 0.1 * @date 2023-12-13 * * @copyright Copyright (c) 2023 * */ #ifndef Motion_h #define Motion_h #include #include #include #include const int MOTOR_RIGHT_PIN = 11; const int MOTOR_LEFT_PIN = 12; class Motion{ protected: public: Motion(); /** * @brief Initialize the movement component. * */ void begin(void); /** * @brief Move forward for a certain amount of time. * @param moveForMs Representing the duration of forward moving in milliseconds. */ void move(uint32_t moveForMs); /** * @brief Rotate clockwise for a certain amount of time. * @param rotateForMs Representing the duration of rotating clockwise in milliseconds. */ void rotateClockwise(uint32_t rotateForMs); /** * @brief Rotate anticlockwise for a certain amount of time. * @param rotateForMs Representing the duration of rotating anticlockwise in milliseconds. */ void rotateAnticlockwise(uint32_t rotateForMs); }; #endif //Motion_h