Skip to content
Snippets Groups Projects
Commit 4c7c95c8 authored by Tommy Persson's avatar Tommy Persson
Browse files

Work on doc

parent 9482be23
Branches main
No related tags found
No related merge requests found
......@@ -660,13 +660,71 @@ For an example of integration with aerostack2 see: https://gitlab.liu.se/lrs2/lr
## 2.7 Execution on remote agents Using MQTT Broker
Work in progress. USE the zenoh method for now...
UNTESTED, WILL BE TESTED SOONISH.
If using a mqtt broker for communication the following have also to be started:
### Preparation and Communication
Make sure that TST_REMOTE_TRANSPORT is set to the correct
value. Correct value is "mqtt" or unset.
The communication is dine using a bridge program talking with the
broker. The bridge program is currently not public, ask about access to it.
An example of how to start this program for /op1 is:
```bash
ros2 launch lrs_json_api wara.launch.py ns:=/op1 have_camera:=false host:=brokerhost port:=brokerport {user:=mqtt password:=passwd supported_levels:=["sensor", "direct-execution", "tst execution"] available_tasks=["move-to", "move-path", "look-at-bearing", "go-home", "look-at-position", "observe-position", "search-area", "drop", "pick-up"] available_sensors:=["position", "heading", "course", "speed", "gimbal_body_yaw", "resources_info", "gimbal_angle", "connect_status", "unit_status", "camera_tags", "videoserver_url"] prefix3:=air prefix4:=real ome_ws:=wss://ome.waraps.org:3334/ reduced_rate:=true
```
This program needs to be started on all agents.
### Starting ROS programs
On one agent start:
```bash
ros2 launch lrs_exec exec.launch.py ns:=/op1
```
On one another agent start (have to be another computer for the zeno case):
```bash
ros2 launch lrs_exec exec.launch.py ns:=/op2
```
On the /op1 agent execute:
```bash
ros2 run lrs_exec tst_command --ros-args -r __ns:=/op1 -p command:=remote-test
```
If it works scrolling up a bit in the terminal for op1 you should see seomthing like:
```bash
[remote-15] EXEC FEEDBACK: {
[remote-15] "agent-uuid": "e30a9049-9082-41d7-9ee7-64fecda2ded3",
[remote-15] "com-uuid": "8b68a72e-155d-4ae4-afba-5228666001f5",
[remote-15] "status": "finished",
[remote-15] "task-uuid": "0268deb3-5054-4556-a6ae-e1fe88d3c96c"
[remote-15] }
[remote-15] [INFO] [1740384475.160797180] [op1.remote]: STATUS 2: running -> finished
[remote-15] [INFO] [1740384475.260747074] [op1.remote]: Tick tick_finished: wait
```
### Starting ROS programs for Visualizing the TST
To generate a TST image do:
```bash
ros2 launch lrs_exec tst_streamer.launch.py ns:=/op1 display_type:=exec name:=tst_streamer_exec
```
Which will give an image on: /op1/tststream_exec/image_raw/compressed
To stream that to an ome server (eg: ome.dummy.org) do:
```bash
ros2 run lrs_util to_fifo --ros-args -p image:=/op1/tststream_exec/image_raw -p compressed:=true -p fifo:=/tmp/fifo_tst_op1 -p scale:=false -p notext:=true
ffmpeg -f rawvideo -r 15 -vcodec rawvideo -pix_fmt bgr24 -s 1280x720 -i /tmp/fifo_tst_op1 -r 15 -c:v libx264 -b:v 5000k -bufsize 5000k -pix_fmt yuv420p -tune zerolatency -preset ultrafast -f flv rtmp://ome.dummy.org/app/op1_tst
```
## 2.8 Execution on remote agents Using Zenoh
### Zeno Configuration (zenoh-bridge-ros2dds)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment