2024-10-25 14:49:07 -03:00
#!/bin/bash
source /opt/ros/$ROS_DISTRO /setup.bash
gz sim -v -r $WORLD_FILE_NAME &
while true
do
topics = $( gz topic -l)
echo $topics
if [ [ $topics = = *" /world/ $WORLD_NAME " * ] ]
then
break
fi
sleep 1
done
if [ [ -z $SIM_DRONE_COUNT ] ]
then
exit 0
fi
2024-10-29 17:00:57 -03:00
cd /ardupilot_gazebo/models/$DRONE_MODEL
2024-10-25 14:49:07 -03:00
for ( ( j = 0; j<$SIM_DRONE_COUNT ; j++ ) ) ;
do
2024-10-31 13:28:03 -03:00
xacro -v gstreamer_udp_port:= $(( $GSTREAMER_UDP_PORT + ( $j * 10 )) ) fdm_port_in:= $(( $FDM_PORT_IN + ( $j * 10 )) ) model.xacro.sdf -o model.sdf
2024-10-29 17:00:57 -03:00
value = $( </ardupilot_gazebo/models/$DRONE_MODEL /model.sdf)
2024-10-25 14:49:07 -03:00
#-string is better than using -file option. File is not up to date in the next iteration.
2024-10-29 17:00:57 -03:00
ros2 run ros_gz_sim create -world $WORLD_NAME -string " $value " -name spiri-$j -x $j -y 0 -z 0.195 ##Possible read from text file for formation of drones.
2024-10-25 14:49:07 -03:00
done
exec " $@ "