欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

PX4学习笔记3: 速度控制

程序员文章站 2022-05-21 23:28:18
...

记录一下PX4在offboard板外模式下用速度控制四旋翼的过程.
参考资料如下:

  1. PX4板外模式教程
  2. youtube速度控制小实验
  3. PX4飞行模式
  4. offboard模式
  5. offboard模式控制例子
    注意:必须2Hz以上的频率发布控制消息,否则PX4则自动由offboard切会返航return模式(一直网往上飞至一定高度后返航,可由以下参数进行调整)
    PX4学习笔记3: 速度控制

1.mavros话题

详见: mavros话题
四旋翼的控制量主要为[x,y,z,roll,pitch,yaw,vx,vy,vz,wx,wy,wz];也就是位置和姿态以及两者的变化率共12个变量.
其中位置在mavros中包括global和local两种,global指的是经纬高LLA,通常会转化成东北天ENU,local指得是在Gazebo坐标系下的坐标和姿态(xyzw四元数表示). 通常可以使用发布local坐标的位置进行控制, 也可以使用速度控制. 话题如下:
以下为local坐标控制:
PX4学习笔记3: 速度控制
以下为速度控制:
PX4学习笔记3: 速度控制

2.youtube速度控制小实验

详见本文摘要参考链接2.
主要分为一下几步:

  • 启动PX4在Gazebo中的SITL
  • 发布位置控制消息,同时打开QGC地面站,切换到Offboard模式
  • 发布速度控制消息,停止发布位置控制消息
  • PX4飞机将以发布的速度消息飞行.
# 参考: https://www.youtube.com/watch?v=2jksI-S3ojY

## 1.发送位置
rostopic pub -r 20 /mavros/setpoint_position/local geometry_msgs/PoseStamped "header:
+ 'Tab键'+光标输入改变数字  "
## 2.切换到Offboard模式
rosrun mavros mavsys mode -c OFFBOARD
# 解锁
rosrun mavros mavsafety arm

## 3.发送速度
rostopic pub -r 20 /mavros/setpoint_velocity/cmd_vel_unstamped geometry_msgs/Twist "linear:
+ 'Tab键'+光标输入改变数字  "
### 关闭发布位置的终端,飞机将以速度消息控制飞行.