Closed alexispascual closed 3 years ago
Looks like we have figured out what the autonomous behaviour is supposed to be.
The Greenbot runs up and down the row, reading QR codes along the way. It stops when it encounters a QR code, and resumes moving after 15 seconds. Once it reaches the end of the row, it turns around and goes back to the beginning of the row. It then turns right on the aisle, and finds another row. Once it has encountered another row, it turns right into the row, and begins the process all over again. This will be our operating knowledge on how to execute autonomous operations.
Update on the autonomous framework. We will have QR codes placed all along the plant box which will indicate the state of the rover, and the next command to be executed. This diagram summarizes the working framework for the autonomous navigation.
Software framework: Since the QR codes determine the state of the rover, the rover would only execute actions based on its current state, and will wait for another QR scan before executing something else. TODO: figure out states and their respective commands.
This information might better in the wiki, actually.
Update on the framework:
The plant platforms are not wide enough to contain 2 QR codes. We can only put 1 QR code along the width of the platforms.
TODO: Switch between teleoperation/autonomous driving? Start/Stop autonomy?
Possible solution: listen to select button on the joy con. Start subscriber when 'Select' is pressed. Stop it when pressed again.
Edit: Or, create a publisher from the teleop_master that would send messages depending on what mode is selected.
We now have a switch. Back = Auto. Start = Teleop
The Greenbot is supposed to behave autonomously. What "autonomous" means, I have no clue. For now, we shall take a look at reading QR codes and having those as indicators where the robot is. Once the robot knows where it is, it should know where to go next.