Deployment of Robotic Total Stations (RTS) - norlab-ulaval/Norlab_wiki GitHub Wiki
Deployment Tutorial: Setting Up Robotic Total Stations (RTS)
Introduction
This tutorial outlines the step-by-step process for deploying Robotic Total Stations (RTS) with the warthog robot. The deployment involves setting up the total stations, a resection procedure, collecting and exporting data of the experiment.
Before Deployment
Checklist:
- RP master, debugging box
- RP client (3)
- Robotic Total Station box (3)
- Batteries box (small yellow box) (3)
- Prisms (3)
- Tripods (3)
- Mouse, keyboard, and monitor
- Warthog
- Warthog remote controller
- GPS
Pre-deployment tasks:
- Check prisms screw fixation on Warthog.
- Charge all necessary equipment including Warthog, remote controller, total station batteries, prism batteries, Raspberry Pi power bank, and GPS.
Day of deployment
0. SSH Config
Host theodolite-master
HostName 192.168.0.241
User pi
Port 22
Host warthog-high-level
Hostname 192.168.0.3
User robot
1. Installation Setup (30 minutes - 1 hour)
- Position the reference GPS antenna in a static location and activate it.
- Set up and level the Total Stations -> Source
- Close and reopen the Total Stations manually without putting the screen.
- Power up each Raspberry Pi client and place them near their assigned Total Station without connecting the USB cable.
- Connect the Raspberry Pi clients (after 2-3 minutes) to the total stations via USB.
- Verify the Total Stations can track their assigned prisms.
2. Resection Step
- SSH into the master Raspberry Pi (
theodolite_master
).
ssh theodolite_master
- Launch the
theodolite_node
calibration protocol using:
roslaunch theodolite_node theodolite_prism_calibration.launch
- Follow the script instructions, moving the Warthog to different positions for measurements.
- Take measurements around the setup if possible, in a circular motion at distances between 3m to 60m.
- After measurements, close the node (
Ctrl+D
). - Verify if data are saved in
/home/pi/.ros/theodolite_prism_calibration.txt
. - Copy the file to a folder in
/home/pi/Documents
to prevent accidental deletion.
3. Data acquisition with Total Stations
ssh theodolite_master
- Launch the
theodolite_node
on the master:
roslaunch theodolite_node theodolite_master.launch
- View collected data in the topic
'theodolite_data'
:
rostopic echo /theodolite_master/theodolite_data
- Check the status index for:
- Status 0: prism followed.
- Status 1: total station not properly leveled.
- Status 2, 3: software bugs.
- Status 4: prism not found.
4. Recording data
- Record
theodolite_master
data with rosbag:
rosbag record -a
- Launch sensors on
warthog-high-level
:
ros2 launch warthog_mapping sensors.launch.xml
- Record
warthog-high-level
sensor data:
screen -S record
ros2 launch warthog_mapping record_sensors.launch.py
5. Exporting data
- Transfer ROS1 rosbags from
theodolite_master
:
scp theodolite_master:/home/pi/<rosbag-name> <your-local-path>
- Transfer ROS2 rosbags from
warthog-high-level
:
scp -r warthog-high-level:/home/robot/<rosbag-name> <your-local-path>
TO DO : * Take the resection file in the Raspberry Pi master
Troubleshooting mcap rosbag2 :
sudo apt install ros-humble-rosbag2-storage
After the deployment
Unmount the Setup but DON'T REMOVE THE PRISMS !!!!
Calibration
- Mount one total station in the workshop/garage (don't need the Raspberry Pi), put the total station at a high height.
If the prism are on the Warthog, use the jack to level up the Warthog on one side. Need to do this because the marker on the GPS are no clearly seen by the total station
- Measure each prism/marker manually with the total station, write every measurement on a paper (Horizontal and vertical angle, distance and all of their uncertainties).