当前位置: 首页 > wzjs >正文

app展示网站免费制作网站app

app展示网站,免费制作网站app,东莞网站开发后缀,区块链网站开发价格Crazyflie集群控制教程:基于NOKOV度量动捕使用VRPN、SDK控制同构或Ardupilot、PX4异构集群,支持MATLAB/Simulink控制 一、动捕软件VRPN配置 以动捕软件版本XINGYING 4.2.0.5495为例,其他版本同理。打开动捕软件,连接上镜头。单击…

Crazyflie集群控制教程:基于NOKOV度量动捕使用VRPN、SDK控制同构或Ardupilot、PX4异构集群,支持MATLAB/Simulink控制

一、动捕软件VRPN配置

以动捕软件版本XINGYING 4.2.0.5495为例,其他版本同理。打开动捕软件,连接上镜头。单击菜单栏下的视图->数据广播。在数据广播中的VRPN流下,将单位下拉选择米,类型勾选刚体并启用VRPN。
图 1-打开数据广播视图
图 1-打开数据广播视图
图2-动捕中vrpn配置
图 2-动捕中vrpn配置
单击菜单栏下的视图->设备打开设备视图。先点击停止播放按键,在高级框中将动捕帧率修改为120。
图 3-打开设备视图
图 3-打开设备视图
图 4-修改动捕帧率
图 4-修改动捕帧率

二、crazyswarm2平台配置

以ROS 版本:galactic,Ubuntu 版本:20.04为例,其他版本同理。crazyflie固件版本2024.10以上,若版本过低自行更新版本(cfclient使用)。

(一)安装依赖

开启终端,使用以下命令安装依赖。
sudo apt-get install libfmt-dev libpcap-dev libpng-dev libusb-1.0-0-dev git
sudo apt install python3-pip
pip3 install rowan

(二)拉取源码

使用以下命令拉取crazyswarm2和motion_capture_tracking源码,crazyswarm2拉取到家目录下(~)。
git clone --recurse-submodules https://github.com/IMRCLab/crazyswarm2
cd crazyswarm2/
git clone --recurse-submodules https://github.com/IMRCLab/motion_capture_tracking
colcon build --symlink-install
echo “source ~/crazyswarm2/install/setup.bash” >> ~/.bashrc

(三)crazyswarm2中配置VRPN

在crazyswarm2中的motion_capture.yaml(路径:
~/crazyswarm2/crazyflie/config)配置文件中将type改为vrpn,hostname修改为
动捕软件与运行crazyswarm2主机同网段的IP地址。
图 5-配置type和hostname
图 5-配置type和hostname
在crazyswarm2中的crazyflies.yaml(路径:~/crazyswarm2/crazyflie/config)
配置文件中将crazyflie的type全改为cf21_mocap_deck,将cf21_mocap_deck的motion_capture字段下的tracking修改为vrpn。
图 6-获取动捕数据方式
图 6-获取动捕数据方式

(四)控制器选择

在crazyflies.yaml配置文件中,将controller字段修改为1,使用pid控制器,crazyflie飞行更稳定。
图 7-选择pid控制器
图 7-选择pid控制器

三、基础操作飞行演示

(一)crazyflie贴Marker点

将crazyflie贴上Marker点(建议使用甲板且8mm以下Marker点),下图为贴点方式之一(可在甲板调整不同贴点形状但不可挡住桨叶)。飞行多架crazyflie时,可以根据其连接地址贴上相应标签以区分crazyflie。
图 8-crazyflie贴点实物图
图 8-crazyflie贴点实物图

(二)PA设置与连接

首次在Ubuntu上使用PA时,要赋予USB权限(usb权限赋予操作步骤)。
将PA插到ubuntu主机上(运行crazyswarm2的主机)。

(三)crazyswarm2连接配置说明

在crazyswarm2中的crazyflies.yaml(路径:~/crazyswarm2/crazyflie/config)
配置文件中的robots字段下添加要飞行的crazyflie配置。其中cf231和cf5是刚体名称;enable代表启用该crazyflie(不使用的要置为false);uri为crazyflie的连接地址;initial_position是crazyflie放置在场地的初始位置;type就选择cf21_mocap_deck(VRPN只能使用刚体,不可使用未命名点)。
图 9-crazyflie的飞行配置说明
图 9-crazyflie的飞行配置说明

(四)运行脚本

1单机起飞降落脚本
将1架crazyflie开机放入动捕场地,机头朝向x轴正方向,在动捕软件中建立刚体,刚体名称为nokov1
图 10-建立刚体
图 10-建立刚体
在crazyflies.yaml添加该crazyflie的配置。
图 11-添加一架crazyflie配置
图 11-添加一架crazyflie配置
开启一个终端运行以下命令启动服务节点。
ros2 launch crazyflie launch.py gui:=False rviz:=True
另启一个终端,运行以下命令查看crazyflie的位置数据。
ros2 topic echo /poses
再启一个终端运行以下命令启动起飞降落脚本。
cd crazyswarm2/crazyflie_examples/crazyflie_examples/
python hello_world.py
图 12-rviz显示
图 12-rviz显示
图 13-crazyflie起飞
图 13-crazyflie起飞
2figure8.py绕八字集群脚本
将3架crazyflie开机放入动捕场地,机头朝向x轴正方向,在动捕软件中建立刚体,刚体名称分别为nokov1、nokov2和nokov3。
图 14-建立刚体
图 14-建立刚体
在crazyflies.yaml添加该crazyflie的配置。
图 15-添加三架crazyflie配置
图 15-添加三架crazyflie配置
进入/crazyswarm2/crazyflie_examples/crazyflie_examples文件夹下修改figure8.py,将2932行代码注释(飞向初始位置)。
图 16-注释掉飞向设定初始位置代码
图 16-注释掉飞向设定初始位置代码
开启一个终端运行以下命令启动服务节点。
ros2 launch crazyflie launch.py gui:=False rviz:=True
另启一个终端,运行以下命令查看crazyflie的位置数据。
ros2 topic echo /poses
再启一个终端运行以下命令启动绕八字脚本。
cd crazyswarm2/crazyflie_examples/crazyflie_examples/
python figure8.py
图 17-rviz显示
图 17-rviz显示
图 18-集群绕八字
图 18-集群绕八字

http://www.dtcms.com/wzjs/292972.html

相关文章:

  • 网站建设排名政务百度2023免费
  • 平顶山做网站多少钱网络营销八大职能
  • 网站开发职业总结网站制作公司怎么样
  • 建站快车来电新闻式软文经典案例
  • 网页特效网站好的竞价托管公司
  • 网站平台建设呈现全新亮点外贸网站建设设计方案
  • 外国做营销方案的网站网络推广平台软件app
  • 原创音乐网站源码什么是seo文章
  • 网站建设用什么语言新闻今天的最新新闻
  • 做医疗设备的网站百度上免费创建网站
  • 专业做蜂蜜的网站百度互联网营销是什么
  • 管件网络销售怎么找客户seo优化排名易下拉软件
  • 做网站的关键词怎么判断好不好制作网站代码
  • 企业网站开发建设委托合同网站优化 秦皇岛
  • 全国十大猎头公司北京seo优化公司
  • 独立网卡推荐太原seo排名优化软件
  • 在线代理网页代理武汉seo和网络推广
  • 淄博网站建设 华夏国际青岛seo用户体验
  • 平安河南建设网站网站推广常用方法
  • WordPress网站接入公众号上海网站建设服务
  • 17一起做网站普宁站福建seo
  • 做网站后期续费是怎么算的网络推广100种方法
  • 有关做学校网站的毕业论文搜狗站长平台
  • 360提示的危险网站短视频推广引流
  • lol英雄介绍网站模板正规的推文平台
  • 网站交互怎么做上海seo网站策划
  • 网站定位方案seo前线
  • 武汉手机网站公司简介什么网站可以发布广告
  • 自己怎样做网站文章关键词内链宁波厂家关键词优化
  • 找人做一个网站多少钱免费发布产品的网站