This project aims to produce a system capable of controlling the vehicle with computer vision using behavioural cloning AI, to recognise roads and autonomously run on them.
The project uses a Logitech F710 controller to control the vehicle. The key mappings are shown below on the table. The Key ID is derived using a Python Package called Inputs.
Controls | Key ID | Key |
---|---|---|
Enable Control Loop | BTN_START | Start |
Disconnect | BTN_BACK | Back |
Motor Forward | ABS_HAY0Y_-1 | △ |
Motor Backwards | ABS_HAY0Y_1 | ▽ |
Steer Left | ABS_HAY0X_-1 | ◁ |
Steer Right | ABS_HAY0X_1 | ▷ |
Steer Calibration | BTN_NORTH | Y |
Steer to Center | BTN_SOUTH | A |
Motor Stop | BTN_EAST | B |
Motor Calibration | BTN_WEST | X |
Start Training | BTN_TL | LB |
Stop Training | BTN_TR | RB |
A mounted mini display on the vehicle will display the GUI. It will show the statistics of the vehicle's systems and components. The project is using TkInter GUI Framework, which is built into the Python Standard Library. Hence, no additional Packages is needed to be installed. TkInter is the easiet to learn and program in Python, making it easy to integrate into the Raspberry Pi along with the other programs.
In addition, the TkInter use a theme called Sun-Valley TTK which gives this modern look.
- Reactive Control Buttons
- Camera Display
- Temperature Graph Diplay
- Live Data Display