{
# 启动gazebo仿真器 //killall gzserver
cd ~/ardupilot_gazebo
gazebo --verbose worlds/iris_arducopter_runway.world
固定翼:
直接:gazebo --verbose zephyr_ardupilot_demo_camera.world
}
{
# on another terminal
cd ~/ardupilot/ArduCopter
../Tools/autotest/sim_vehicle.py -f gazebo-iris --console --map
固定翼:
直接:sim_vehicle.py -v ArduPlane -f gazebo-zephyr --map --console -I0
}
固定翼:
一、启动仿真环境::
conda deactivate (服务器)
sim_vehicle.py -v ArduPlane -f gazebo-zephyr --map --console -I0
二、终端:
cd yolov8_ws
source ./devel/setup.bash
roslaunch simulate start.launch (此launch文件写入了world文件和apm.launch 单独启动world和apm.launch文件会使ros和gazebo无法连接)
#切换到takeoff模式
#解锁油门
mode takeoff
arm throttle
进入yolov8工作空间,启动飞控节点(要到达40米)
source ./devel/setup.bash
rosrun communication_yolo yolo_sub
启动视觉节点
conda activate yolov8
source ./devel/setup.bash
rosrun communication_yolo yolo_pub.py
conda activate v8
source ./devel/setup.bash
rosrun communication_yolo yolo_pub.py
rostopic echo yolomsg 查看发布的消息
rostopic echo /mavros/mission/reached
三、可视化工具
启动QGC(主目录下):./QGroundControl.AppImage
启动Rviz:
roscore
cd APM_ws
rosrun rviz rviz
启动rqt
终端输入rqt_image_view
遇到的错误
1、SITL连接不到飞机或者报错找不到imu / sensor之类的
将带有摄像头的固定翼飞机的模型的这一行改为:
2、启动world:报错[ERROR] [1716881496.498403954]: udp0: sendto: Invalid argument
将apm.launch文件的udp修改为
<arg name="fcu_url" default="udp://:14551@localhost:14555"/>