1.启动UXRCE-DDL
MicroXRCEAgent udp4 -p 8888 #虚拟机
MicroXRCEAgent serial -D /dev/ttyUSB0 -b 921600 #实物
2.进入PX4文件夹启动PX4仿真,实物不需要
cd PX4-Autopilot/
make px4_sitl gz_x500 #PX4 1.14版本专用
3.进入ROS2代码输入
#编译代码
cd ws_ros/
source /opt/ros/foxy/setup.bash
colcon build
#运行代码
source ~/ros_demo/install/setup.bash
ros2 run px4_ros_com offboard_control
各主题大致含义
这些PX4主题都是用于无人机(UAV)的不同数据交换和控制功能的。
以下是每个主题的简要说明:
/fmu/out/collision_constraints: 用于发布可能影响无人机避免碰撞行为的约束条件。
/fmu/out/failsafe_flags: 发布无人机的故障安全标志,指示各种故障安全事件。
/fmu/out/position_setpoint_triplet: 发布位置设定点三元组,通常包括前一个、当前和下一个位置设定点。
/fmu/out/sensor_combined: 发布来自多个传感器的综合数据,如加速度计和陀螺仪。
/fmu/out/timesync_status: 发布时间同步状态,用于维护系统组件之间的时间一致性。
/fmu/out/vehicle_attitude: 发布无人机的姿态信息,包括滚转、俯仰和偏航角度。
/fmu/out/vehicle_control_mode: 发布当前无人机的控制模式,如手动、自动、离线等。
/fmu/out/vehicle_global_position: 发布无人机的全球定位信息,包括经纬度和海拔。
/fmu/out/vehicle_gps_position: 发布GPS接收器提供的无人机位置信息。
/fmu/out/vehicle_local_position: 发布无人机的局部位置信息,通常是相对于起飞点的位置。
/fmu/out/vehicle_odometry: 发布无人机的里程计数据,包括位置和速度。
/fmu/out/vehicle_status: 发布无人机的当前状态,如是否在空中、电池状态等。
/fmu/out/vehicle_trajectory_waypoint_desired: 发布无人机期望的轨迹航点信息。
订阅的主题(subscriptions)则是无人机用来接收外部指令和数据的:
/fmu/in/offboard_control_mode: 接收外部控制模式指令,如位置、速度或姿态控制。
/fmu/in/onboard_computer_status: 接收机载计算机的状态信息。
/fmu/in/obstacle_distance: 接收障碍物距离信息,用于避障。
/fmu/in/sensor_optical_flow: 接收光流传感器数据,用于视觉定位和速度估计。
/fmu/in/telemetry_status: 接收遥测状态信息,如信号强度和连接质量。
/fmu/in/trajectory_setpoint: 接收轨迹设定点,用于导航。
/fmu/in/vehicle_attitude_setpoint: 接收无人机的姿态设定点。
/fmu/in/vehicle_mocap_odometry: 接收运动捕捉系统提供的里程计数据。
/fmu/in/vehicle_rates_setpoint: 接收无人机的角速率设定点。
/fmu/in/vehicle_visual_odometry: 接收视觉里程计数据。
/fmu/in/vehicle_command: 接收来自外部的无人机指令。
/fmu/in/vehicle_trajectory_bezier: 接收贝塞尔轨迹信息,用于平滑路径规划。
/fmu/in/vehicle_trajectory_waypoint: 接收轨迹航点信息,用于精确导航。
VNC启动命令
/usr/lib/vino/vino-server
手动切换python默认版本
终端输入sudo update-alternatives --config python

PX4 1.13
1.启动以UDP作为传输协议的microrts_agent守护进程
cd px4_ros_com_ros2
source install/setup.bash
micrortps_agent -t UDP
2.打开PX4仿真
cd PX4-Autopilot/


安装PX4固件
#下载源码 --recursive会递归下载二级及以下文件
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
# 进入PX4-Autopilot文件夹,确认源码是否下载完毕,如果因网络等未下载完全,则需要进一步下载更新
cd PX4-Autopilot
git submodule update --init --recursive
# 源码下载完毕后,执行下面操作
bash ./Tools/setup/ubuntu.sh
#显示 relogin or reboot when you attempting to install Nuttx
#即说明上一步成功
make px4_sitl gz_x500
#成功后将会显示Gazebo界面,并且里面有一架飞机
3683



被折叠的 条评论
为什么被折叠?



