This Project contains the source code for the testing of different modules of the TAMARIW Panel Board.
- To compile and flash example files:
make main=hello_euler.cpp flash-sftp satellite=GOLD
Do the following:
- Open hotspot and configure it to name
TAMARIWPiTest
and passwordpi@tamariw
. In doing so, Raspberry Pi will automatically connect to your hotspot. If it does not, try rebooting the Pi. - Check the IP address of Pi in
Devices connected
on hotspot. - Goto this file and reconfigure the IP address of Pi.
- To find the host key, use the command
sftp raspberry@the_ip_address
. Again, goto the same file and reconfigure the host key.
- threads - Implementation of different RODOS thread and topics used in Tamariw.
- libs - Low-level device drivers for different modules like H-Bridge, time of flight sensor etc.
- satellite - Tamariw specific interfaces to access sensors and actuators.
- examples - Individual test files for different components of Tamariw.
- satellite_cofig - Configuration of pins, peripherals, and parameters used in Tamariw.
- utils - Utility functions, and macros that are generally useful.
- magnet - Interface to control electromagnets.
- tof - Interface to access ToF measurements and relative position/velocity/orientation (state) estimates.
- led - Interface for switching LEDs in TAMARIW.
- fsm - Implementation of Tamariw Finite State Machine.
- config_fsm - Config file for FSM parameters.
- hbridge - Hbridge driver that uses one PWM and two GPIO pins.
- median_filter - Median filter for smoothing ToF distance measurements.
- vl53l4cd - Driver for VL53L4CD Time of Flight sensor.
- decadriver - Driver for Ultra-Wide Band transreceiver DW1000.
- hello_tof - Test file for ToF sensors.
- hello_magnets - Test file for electromagnets.
- hello_tofcal - Performs ToF calibration.
- hello_em_current - Displays the current versus PWM for wide, configurable, range of PWM. Intended to be used to study how temperature affects the electromagnet's current for same PWM.
- hello_current_control - Test file for current control of electromagnets for PID tuning. It has two modes; regulation and trajectory tracking.
- hello_tof_single - To test single ToF sensor module independent of Tamariw boards.
- topics - Contains the declaration and definitation of all the topics for inter-thread communications. Not exactly a thread.
- collision_control - Handles collision control using distance and velocity feedback.
- current_control - Controls the current through each electromagnet. Its Sample rate is higher compared to
collision_control
. - telecommand - Handles the telecommands from ground station.
- telemetry - Transmits data to groundstation.
- tof_range - Performs ToF measurements and publishes to topic for other threads.
satellite=BLACK
to choose satellite from available configurations (see: satellite_config.h).pole=CONSTANT
to specify that the satellite's magnetic polarity will not change during docking.
Example:
- For
BLACK
satellite whose magnetic polarity is not supposed to change, use following command to compile and flash the code.
make satellite=BLACK pole=CONSTANT flash (flash-sftp)
_____________ ______ ______
| | | - |
| 1 0 | | 3 2 |
| (O) (O) | | (O) (O) |
| | | |
| 1 | | 3 |
| o | | o |
| | | |
| | | |
| 0 o o 2 | | 2 o o 0 |
| | | |
| | | |
| o | | o |
| 3 | | 1 |
| | | |
| | | |
| 2 3 | | 0 1 |
| (O) (O) | | (O) (O) |
|______-______| |_____________|
(O) - electromagnet
o - time of flight sensor
- Saurav Paudel, Info VIII, University of Würzburg
- Atheel Redah, Info VIII, University of Würzburg
- Rishav Sharma, Masters in SatTech, University of Würzburg
- Soft colision between two satellites.
- Open-loop current versus temperature graph.
- Closed-loop current versus temperature graph.
- Filter current measurements (?).
- Handle the sensor anomalies.