Merge pull request #31 from tlab-wide/cpm-tr

Sync changes to cpm-tr with main
This commit is contained in:
Yu Asabe 2022-12-14 00:01:49 +09:00 committed by GitHub
commit 0c377f62b3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 43 additions and 21 deletions

View File

@ -47,12 +47,12 @@ cd ~/workspace/autoware_docker
```
v2x/autowarev2x:
type: git
url: git@github.com:tlab-wide/AutowareV2X.git
version: main
url: https://github.com/tlab-wide/AutowareV2X.git
version: cpm-tr
v2x/vanetza:
type: git
url: git@github.com:tlab-wide/vanetza.git
version: socktap-cpm-tr103562
url: https://github.com/yuasabe/vanetza.git
version: master
```

View File

@ -37,14 +37,14 @@ colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
1. Edit the `autoware.repos` file and add the following two repositories to the end.
```
v2x/autoware_v2x:
v2x/autowarev2x:
type: git
url: git@github.com:tlab-wide/autoware_v2x.git
version: main
url: https://github.com/tlab-wide/AutowareV2X.git
version: cpm-tr
v2x/vanetza:
type: git
url: git@github.com:tlab-wide/vanetza.git
version: socktap-cpm-tr103562
url: https://github.com/yuasabe/vanetza.git
version: master
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 668 KiB

View File

@ -24,6 +24,13 @@ docker network create --driver=bridge --subnet=10.0.0.0/24 v2x_net -o com.docker
### Launch two ITS-S containers
!!! Note
Here, we will use a Rocker extension called [off-your-rocker](https://github.com/sloretz/off-your-rocker).
Install `off-your-rocker` by running the below:
```bash
python3 -m pip install off-your-rocker
```
In one terminal, use rocker to launch container `autoware_1`:
```bash
rocker --nvidia --x11 --user --privileged --volume $HOME/workspace/autoware_docker --volume $HOME/data --network=v2x_net --name autoware_1 --oyr-run-arg "--ip 10.0.0.2 --hostname autoware_1" -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda
@ -42,7 +49,7 @@ In `autoware_1`:
```
cd ~/workspace/autoware_docker
source ~/autoware_docker/install/setup.bash
source install/setup.bash
export AWID=1 # autoware_1
source ~/workspace/autoware_docker/src/v2x/autowarev2x/setup.sh
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/data/maps/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit
@ -55,11 +62,13 @@ Note that you can make the dummy cars to be static by changing its `Velocity` to
![](./tools-properties.png)
![](./autoware_1_rviz.png)
In `autoware_2`:
```
cd ~/workspace/autoware_docker
source ~/autoware_docker/install/setup.bash
source install/setup.bash
export AWID=2 # autoware_2
source ~/workspace/autoware_docker/src/v2x/autowarev2x/setup.sh
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/data/maps/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit
@ -74,8 +83,8 @@ In `autoware_1`:
```
docker exec -it autoware_1 bash
sudo su
cd ~/workspace/autoware_docker
source ~/workspace/autoware_docker/install/setup.bash
cd workspace/autoware_docker
source install/setup.bash
export AWID=1
source ./src/v2x/autowarev2x/setup.sh
ros2 launch autoware_v2x v2x.launch.xml network_interface:=eth0
@ -89,8 +98,8 @@ In `autoware_2`:
```
docker exec -it autoware_2 bash
sudo su
cd ~/workspace/autoware_docker
source ~/workspace/autoware_docker/install/setup.bash
cd workspace/autoware_docker
source install/setup.bash
export AWID=2
source ./src/v2x/autowarev2x/setup.sh
ros2 launch autoware_v2x v2x.launch.xml network_interface:=eth0 is_sender:=false
@ -104,9 +113,9 @@ When both the sender and receiver is launched, you should see that the receiver
1. Press "Add" from the Displays Panel <br>
![](./add-v2x-rviz-1.png)
2. Choose "By topic", then select PredictedObjects from /v2x/cpm/objects
2. Choose "By topic", then select PredictedObjects from /v2x/cpm/objects <br>
![](./add-v2x-rviz-2.png)
3. The CPM-shared objects are shown in Rviz!
3. The CPM-shared objects are shown in Rviz for `autoware_2`! <br>
![](./add-v2x-rviz-3.png)
## Run scenarios

View File

@ -4,18 +4,30 @@
In `autoware_1`:
```
docker exec -it autoware_1 bash
cd ~/workspace/autoware_docker
ros2 bag record -o test_sender_rosbag /perception/object_recognition/objects /tf
tcpdump -i eth0 -w test_sender_tcpdump
sudo apt update
sudo apt install tcpdump
sudo tcpdump -i eth0 -w test_sender_tcpdump.pcap
```
In `autoware_2`:
```
docker exec -it autoware_2 bash
cd ~/workspace/autoware_docker
ros2 bag record -o test_receiver_rosbag /v2x/cpm/objects /tf
tcpdump -i eth0 -w test_receiver_tcpdump
sudo apt update
sudo apt install tcpdump
sudo tcpdump -i eth0 -w test_receiver_tcpdump.pcap
```
## Open PCAP file in Wireshark
![](./wireshark_awv2x.png)
## Analyze in JupyteLab
### Plot the x,y coordinates of objects in test_sender_rosbag

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

View File

@ -10,7 +10,8 @@
<buildtool_depend>ament_cmake_auto</buildtool_depend>
<depend>autoware_auto_perception_msgs</depend>
<depend>tf2_msgs</depend>
<depend>tf2_msgs</depend>
<depend>tf2</depend>
<depend>geometry_msgs</depend>
<depend>rclcpp</depend>
<depend>std_msgs</depend>

View File

@ -46,7 +46,7 @@ namespace v2x {
cpm_num_(0),
received_cpm_num_(0),
cpm_object_id_(0),
use_dynamic_generation_rules_(true)
use_dynamic_generation_rules_(false)
{
RCLCPP_INFO(node_->get_logger(), "CpmApplication started. is_sender: %d", is_sender_);
set_interval(milliseconds(100));