alexispascual / GreenBot

0 stars 0 forks source link

Autonomous operation #2

Closed alexispascual closed 3 years ago

alexispascual commented 3 years ago

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.

alexispascual commented 3 years ago

Looks like we have figured out what the autonomous behaviour is supposed to be. Greenbot Diagram

alexispascual commented 3 years ago

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.

alexispascual commented 3 years ago

Autonomous Greenbot 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.

alexispascual commented 3 years ago

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.

alexispascual commented 3 years ago

This information might better in the wiki, actually.

alexispascual commented 3 years ago

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.

Autonomous Greenbot

alexispascual commented 3 years ago

TODO: Switch between teleoperation/autonomous driving? Start/Stop autonomy?

alexispascual commented 3 years ago

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.

alexispascual commented 3 years ago

We now have a switch. Back = Auto. Start = Teleop