12

阿木币

0

精华

27 小时

在线时间

应届白菜

Rank: 1

发表于 2022-11-15 15:46:58 2488 浏览 6 回复

[飞控嵌入式] 如何在仿真中分别控制两台typhoon_h480的吊舱运动

自己在使用px4做多机仿真的时候,想通过给无人机增加吊舱以实现后续对目标的识别与跟踪。于是自己使用了携带吊舱的typhoon_h480模型。开始的时候自己按照启动多机的格式命名配置好launch文件,在仿真中也成功启动了两台typhoon_h480,两台飞机可以分别按照自己的设定的航线各自飞行。但是当自己分别去发控制吊舱的时候,两个飞机的吊舱均没有反应。两架飞机的端口配置的应该没问题,不知道是不是模型中携带的吊舱也有端口配置的要求?有的话,具体该怎么去做呢?麻烦路过的大佬指导一下,非常感谢

扫一扫浏览分享
回复

使用道具 举报

144

阿木币

0

精华

31 小时

在线时间

老司机

Rank: 2

发表于 2022-11-24 10:58:44
这个是仿真世界和真实世界开发不同了吧 这个typhoon_h480这个模型 支不支持你发的这个模型的指令呢 举个例子 如果是个二轴吊舱 你却发三轴吊舱的指令
回复 点赞

使用道具 举报

12

阿木币

0

精华

27 小时

在线时间

应届白菜

Rank: 1

 楼主| 发表于 2022-11-24 15:44:26
shanghuo 发表于 2022-11-24 10:58
这个是仿真世界和真实世界开发不同了吧 这个typhoon_h480这个模型 支不支持你发的这个模型的指令呢 举个例 ...

这个typhoon_h480是六旋翼带吊舱的无人机模型,我在Gazebo仿真环境中启动一架飞机的时候可以实现对其吊舱角度的控制,但是当我在Gazebo仿真环境中启动了两架typhoon_h480后,再分别去控制这两架飞机的吊舱角度运动就不可以了(我事先已按照多机仿真的要求在launch文件中给每架飞机飞机分配了udp端口号,自己现在怀疑是不是多个吊舱的时候每个吊舱也有什么端口的要求)
回复 点赞

使用道具 举报

29

阿木币

0

精华

91 小时

在线时间

技术大V

Rank: 4

发表于 2022-11-25 12:01:17
Pong_97 发表于 2022-11-24 15:44
这个typhoon_h480是六旋翼带吊舱的无人机模型,我在Gazebo仿真环境中启动一架飞机的时候可以实现对其吊舱 ...

看一下吊舱模型以及控制插件那一块,应该是要区分开的
回复 点赞

使用道具 举报

12

阿木币

0

精华

27 小时

在线时间

应届白菜

Rank: 1

 楼主| 发表于 2022-11-30 15:19:57
BOSHEN97 发表于 2022-11-25 12:01
看一下吊舱模型以及控制插件那一块,应该是要区分开的

我可以这样理解吗:就是我现在要分别控制多个无人机的吊舱,我接下来需要做的是分别复制多个typhoon_h480的.sdf模型文件,然后分别将模型文件中对应吊舱控制的部分进行重新编号命名用以区分它们呢?
回复 点赞

使用道具 举报

29

阿木币

0

精华

91 小时

在线时间

技术大V

Rank: 4

发表于 2022-12-1 09:25:00
Pong_97 发表于 2022-11-30 15:19
我可以这样理解吗:就是我现在要分别控制多个无人机的吊舱,我接下来需要做的是分别复制多个typhoon_h480 ...

思路是对的,具体需要修改哪些东西你就要看一下SDF里面的内容,可能还会有一些launch文件里面的参数需要修改。
回复 点赞

使用道具 举报

12

阿木币

0

精华

27 小时

在线时间

应届白菜

Rank: 1

 楼主| 发表于 2022-12-30 10:35:32
BOSHEN97 发表于 2022-12-1 09:25
思路是对的,具体需要修改哪些东西你就要看一下SDF里面的内容,可能还会有一些launch文件里面的参数需要 ...

自己在px4固件的模型文件夹下将typhoon_h480文件中复制了一个typhoon_h480_1.sdf文件,并且修改了文件中的内容如下:
  1. <sdf version='1.5'>
  2.   <model name='typhoon_h480_1'>
  3. ..........
  4. ..........
  5.       <sensor name="camera_imu_1" type="imu">
  6.         <always_on>1</always_on>
  7.       </sensor>
  8. ..............
  9. ..............
  10. <plugin name='gimbal_controller' filename='libgazebo_gimbal_controller_plugin.so'>
  11.       <joint_yaw>typhoon_h480_1::cgo3_vertical_arm_joint</joint_yaw>
  12.       <joint_roll>typhoon_h480_1::cgo3_horizontal_arm_joint</joint_roll>
  13.       <joint_pitch>typhoon_h480_1::cgo3_camera_joint</joint_pitch>
  14. ....................
  15. ...................
  16.       <gimbal_imu>camera_imu_1</gimbal_imu>
  17.     </plugin>
  18.   </model>
  19. </sdf>
复制代码

同时自己在启动多机的launch文件中分别将启动飞机的参数设置成:
  1.     <arg name="vehicle" default="typhoon_h480"/>
  2.     <arg name="vehicle_1" default="typhoon_h480_1"/>
复制代码

自己启动launch文件之后,终端出现了下面的报错:
Screenshot from 2022-12-30 10-31-13.png
想请教一下大佬是什么问题导致的?是不是自己没有修改正确呢?


                               
登录/注册后可看大图
回复 点赞

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表