-
srauv_settings.json // config file
-
install_commands.txt // useful pi4 setup cmds
-
pip3 install requirements.txt
// or requirements_win.txt -
python3 srauv_main.py
// main update loop for the srauvThe SRAUV has an update loop that operates at a deterministic rate 20 hz (50ms), to make decisions based on current vehicle state and sensor values and apply the appropriate thrust until the next update cycle.
Update Loop: update_telemetry_values() estimate_position() evaluate_state() calculate_thrust() log_state() apply_thrust()
Threaded I/O operations that update values via shared memory (g_tel_msg): distance sensor, imu, internal socket messaging
Local sockets are used to communicate with tag_detect for position, and the external_websocket_server (non-localhost, udp socket, talks to Unity GUI)
python3 tag_detect.py
- GUI for the vehicle
- In editor "WSClient" object used to change target ip
- Upper buttons used for SRAUV communications
- Lower buttons for sim control
- wasd for lats | qr for rotation | up/down arrows for verts
- Open ocean scene for scenerio render