-
Notifications
You must be signed in to change notification settings - Fork 11
ERA in two computers using USRP Devices
The default launch file of ERA, era.launch, launches a single simulator with two robots and expects to run in a single machine. In this page we describe a demo that allows ERA to run in two computers each running its own simulator.
No additional requirements.
- Currently the system runs only for 2 computers. More computers are not supported due to the lack of broadcast functionality in the udp_sink of GNURadio.
- If two robots start in the same exact location, the system doesn't work correctly. So, start one robot, move the position and then start a second robot to take care of this.
At each computer, please do the following:
- Open the file
wifi_transreceiver.grc
withgnuradio-companion
, and change the IP Addresses of UDP Source and UDP Sink blocks to indicate current and target computer IPs. - Open the file
era_gazebo/launch/v2v.launch
and change therobot_name
to the desired name of the robot for that computer. Also change theremote_port
andlocal_port
parameters in the same file.
The architecture of the demo is following:
The following two commands runs the demo:
roslaunch era_gazebo era_single_robot.launch
-
roslaunch era_gazebo v2v.launch
. Usev2v_dev1.launch
orv2v_dev2.launch
for the case where actual USRP devices are used for the demo. If there is any issue with the range of communication, the parameter tx-gain and rx-gain in the v2v_dev?.launch files can be adjusted (range 10 to 90) to see if the packet error rate improves.
A blue box should appear in Gazebo representing the other vehicle.
Robot 1:
Robot 2:
Each robot builds its own occupancy grid map. It can be seen in RVIZ by subscribing to /local_map
topic.
Robot 1:
Robot 2:
map_fuser
node merges the remote and the local occupancy grid in each robot and publishes in the /combined_grid
topic.
Robot 1:
Robot 2:
Ask Akin Sisbot ([email protected])