首页 > 其他分享 >【ROS学习】配置rotors-simulator

【ROS学习】配置rotors-simulator

时间:2023-06-03 23:36:41浏览次数:56  
标签:src launch simulator rotors 100 ROS gazebo

本文按照https://github.com/ethz-asl/rotors_simulator一步一步搭建并且踩坑记录。

  • 第一个坑:尽量不要在虚拟机上跑,因为你在catkin make的时候就会卡住。

  • 在原文中也提到了,第一次加载gazebo的时候会出现超时error,不要慌,关闭当前gazebo窗口再次输入用法的1命令。

  • 好像用不了他的其他地图。

  • 在ubuntu16环境下也需要将他自己的那个rotors_simulator放到src中。

  • 需要仔细端详他给的mavlink,可能版本对不上自己的linux系统。

  • 需要安装mavros,具体的方法好像是sudo apt get install ros-kinetic-mavros,有点忘了,网上有很多教程,不麻烦。

用法

  1. 开启gazebo命令roslaunch rotors_gazebo mav_hovering_example.launch mav_name:=firefly world_name:=basic

  2. 操作MAV

    • 方法一:使用gazebo界面和按压play button(world下面的property),这样好像不太聪明的样子。
    • 方法二:rosservice call gazebo/unpause_physics
  3. 发送direct motor commands

    rostopic pub /firefly/command/motor_speed mav_msgs/Actuators '{angular_velocities: [100, 100, 100, 100, 100, 100]}',需要注意的是,这里的angular_velocities的数组和你无人机的旋翼数目对应,在这个例子中为6旋翼的。

  4. create an attitude controller

package解读

  • 位于src/rotors_simulator/rotors_gazebo/launch中的firefly_swarm_hovering_example.launch文件运行多机盘旋。
  • 位于src/rotors_simulator/rotors_gazebo/launch中的fixed_wing.launch文件运行固定翼飞机。
  • 位于src/rotors_simulator/rotors_gazebo/launch中的firefly_swarm_hovering_example.launch文件运行多机盘旋。

代码解读

在这之前需要知道:

名词 解释
pitch 围绕X轴旋转,也叫做俯仰角
yaw 围绕Y轴旋转,也叫偏航角
roll 围绕Z轴旋转,也叫翻滚角
  • hil_controls_msg
名词 解释
pitch_elevator 自己体会
yaw_rudder 偏航角舵
roll_ailerons 翻滚角副翼
throttle 风门

多的不说,直接看rotors_gazebo/src/hovering_example.cpp

多机 :firefly_swam_hovering_example.launch,其中需要看waypoint_publisher_file.cpp,其中提到args[x,y,z,yaw,wait_time],按照的是launch文件中的顺序

标签:src,launch,simulator,rotors,100,ROS,gazebo
From: https://www.cnblogs.com/copy2000/p/17454968.html

相关文章

  • Microsoft IME 日文输入法能否设置默认在平假名输入状态呢?
    我的windows10系统版本前段时间更新到了2004版本。不知是不是系统更新的缘故,日文输入法似乎默认状态总是英文输入了。 MicrosoftIME日文输入法默认在”半角英数“状态(输入法工具栏显示为”A“),如果想要切换至”平假名“输入状态(输入法工具栏显示为”あ“)的话就需要按一次切换......
  • ROS业务,IP业务完全终止
    今天,混播ROS业务完全终止,也代表着过去十三年的网络业务的完全终止。从2010年至今,这个业务给我的生活提供了物质保障,今天完全落下帷幕了。新转型的项目也有了起色。感谢ROS,感谢MIKROTIK公司的技术,给了我十几年稳定的生活。让我在逆境中度过难关。感谢拉脱维亚这个伟大的国家。接......
  • 动手实践 MicroStream:Java 持久性的新方法
    MicroStream是目前Java领域最有趣的项目之一。它采用一种新的方法来实现Java持久性,充当一种无缝的对象持久性数据层。MicroStream消除了弄清楚如何持久化应用程序的运行时图的摩擦。所以这次我们将直接进入演示。您将首先学习如何将MicroStream与默认文件系统一起使用,然后我们将......
  • 系统ubuntu20.04-ROS2源码安装humble
    系统要求HumbleHawksbill目前基于Debian的目标平台是Tier1:UbuntuLinux-Jammy(22.04)64-bitTier3:UbuntuLinux-Focal(20.04)64-bitDebianLinux-Bullseye(11)64-bit其他具有不同支持级别的Linux平台包括:ArchLinux,seealternateinstructionsFedoraLinux,s......
  • Beginner:Client libraries-9 使用ros2doctor识别问题
    目标:在ros2系统中通过ros2doctor工具来识别问题。背景当ros2系统没有按预期运行,可以通过ros2doctor来检查设置。ros2doctor检查ros2的所有方面,包括平台,版本,网络,环境,运行系统等等,警告你可能的错误和问题的原因。ros2doctor是ros2cli的一部分。只要ros2cli按照常规安装,就可以使......
  • Open source and cross-platform media player
    MPlayerhttp://www.mplayerhq.hu/ VLCmediaplayerhttp://www.videolan.org/vlc/   MediaPlayerClassicHomeCinemahttp://mpc-hc.sourceforge.net/......
  • 论文解读 | IROS 2021 | PTT:用于点云中3D单对象跟踪的点-轨道-变压器模块
    原创|文BFT机器人01背景在自动驾驶、机器人导航和增强现实等领域,3D单目标跟踪是一个重要的问题。传统的方法通常使用基于图像或激光雷达数据的2D或3D物体检测器来检测和跟踪目标。然而,这些方法通常需要大量的计算资源,并且对于复杂场景中的小目标或遮挡目标表现不佳。3D单目标跟......
  • Hadoop-3.3.5单节点开启Kerberos认证
    1、Hadoop单节点部署部署过程看官方文档即可https://hadoop.apache.org/为增加执行命令的便利性,添加hadoop的环境变量:vim/etc/profile.d/hadoop.shexportHADOOP_HOME=/usr/local/hadoop-3.3.5exportPATH=$PATH:$HADOOP_HOME/binexportPATH=$PATH:$HADOOP_HOME/sbinex......
  • 项目访问的端口是8018,但是真实接口地址是19080,导致访问这个地址http://9.6.237.104:80
    这个问题是由于您的前端页面与后端应用程序的接口地址不在同一个域名下所引起的跨域请求。在浏览器中,出于安全考虑,通常不允许JavaScript从一个域名下访问另一个不同域名下的资源,这种行为被称为跨域请求(Cross-OriginResourceSharing,CORS)。有一些方法可以解决跨域问题,下面是......
  • ROS2-Beginner:9-启动节点
    目标:使用命令行工具来启动多个节点背景在大多数入门教程中,您一直在为运行的每个新节点打开新的终端。当您创建越来越多节点同时运行的更复杂的系统时,打开终端和重新输入配置细节会变得乏味。launch文件允许您同时启动和配置包含ROS2节点的许多可执行文件。使用ros2-launch命......