This is the repository for the code of the 2023 MATE ROV.
- You will need
python3
installed on both machines, as these do not work with Python 2.7, I2C must also be enabled on the ROV, usingraspi-config
. - On the pneumatics computer make sure the packages
python-dev
andpython-rpi.gpio
are both installed as these are required for the Pi to control the relay board. - Make sure to install the dependencies on requirements.txt on both machines.
- On the ROV, run the
index.py
in theControl
directory, making sure the correct IP is written for the pneumatics computer in theclaw()
function. - On the pneumatics computer, run the
index.py
in thePneumatics
directory. - Open the ROV's IP in your web browser of choice, with a controller connected.
- Profit.
It is possible to run the ROV Control and Pneumatic automatically on starting using services. It is possible by doing the following:
- On the ROV, move the
ROVControl.service
file to/etc/systemd/system
directory, then enable it usingsudo systemctl enable ROVControl
, and reboot the machine. - On the Pneumatics computer, move the
ROVPneumatics.service
file to/etc/systemd/system
directory, then enable it usingsudo systemctl enable ROVPneumatics
, then reboot the machine. - Both servers should be running on startup from now on.
- NOTE: The services are written assuming that the default user is pi, and that the scripts are located in
~/ROV/Control/index.py
or~/ROV/Pneumatics/index.py
.
- Left Stick: Forward/Backward Movement and Strafing
- Right Stick: Vertical Movement and Turning
- Y/Triangle Button: Full Upwards Movement, Disabling Horizontal
- Left Bumper: Half Horizontal Speed
- Left Trigger: Rotate Claw (toggle rotation)
- Right Trigger: Open Claw (releasing button closes claw)
- Start Button: Forward movement for 5 seconds