teensy_base_mover.ino : This file contains Codes that will run on the teensy responsible for moving the base of the rover. This Code will Control all of the 6 Motors responsible for the movement Rover. The Code has been written for integration with the ROS Main System(that will be rinning on the NVIDIA Jetson). Communication is done via Serial Comms, i.e, by connecting the teensy to the JETSON.
Here is a Pictorial representation of the ROS Topics being broadcasted and subscribed to by this Code:
incoming arrows denote subscribed topics outgoing arrows denote published topics
Description of the Topics
ack_arduino: Acknoledgement from the Teensy that your Command is Received and the Arduino is trying to act upon it. DataType: std_msgs::String
arduino_receiver: Receives Command. Currently its still in development.
Commands:
0 -> STOP
1 -> FORWARD
2 -> TURN LEFT
3 -> BACKWARD
4 -> TURN RIGHT
OTHERWISE -> INVALID STATE. ALL MOTORS STOPPED.
DataType:std_msgs::Int16
rover_mode: You need to set this to 1 to enable Control via Software. To enable Manual Control, set this to 0. Default state is 0. DataType: std_msgs::Int16