flightmare 是ETH推出的一个用于gazebo仿真,强化学习训练的平台,并在github上公开了其源代码。本文主要记录在配置环境过程中出现的问题。 github网址链接 https://github.com/uzh-rpg/flightmare 最后的测试视频 测试视频链接 整个工程用到的依赖见下图 tips
orb-slam 对应的github下载地址为:https://github.com/raulmur/ORB_SLAM2 实现仿真视频链接为:orb_slam_gazebo_PX4_simulation 概述 ORB-SLAM是西班牙Zaragoza大学的Raul Mur-Artal编写的视觉SLAM系统。他的论文“ORB-SLAM: a versatile andaccur
ROS和Opencv的融合,感觉还是各自干各自的活,只不过中间通过cv_bridge进行链接转换下。图片(视频流)的读取,既可以采用ROS的方式,也可以采用 opencv直接读取。方便了和ROS其他包的扩展,也就不用考虑程序结构的实现了,确实是“不用重复造轮子”了。程序代码如下: #include <ros/ros.h> #include <cv_bridge/cv_br
PX4飞控位置环控制中如何引入遥控器的控制量, 本文基于PX4 1.12版本, 相比于之前的版本, 多引入了Flight Task这么一个模块. 省流总结 遥控器的值通过_flight_tasks.update() —>_velocity_setpoint 通过 _flight_tasks.getPositionSetpoint() —> setpoint 通过_c
写在前面的话:近日,有小伙伴反应在dronekit中采用channel.override没有效果,因此抽个空看了一下ardupilot代码中遥控器的读取代码。首先,遥控器的读取在copter.cpp中完成, 如下图所示: 可见读取的频率为100Hz, 接着跳转进去,可以得到:再次进行跳转可得:跳转update()函数进去这个地方需要说明一下:上图画圈的地方可以看出 radio_in 来
由于项目需要,完成一个测试demo, 本次从dronekit中发送mavlink消息给飞控,飞控接收发来的wp信息,然后进行修改供程序使用。 首先祭出测试视频 dronekit_arudpilot_test dronekit 首先从copter.cpp中找到到对应的函数,如下图所示: 跳转进去 再次套娃,可以得到下图: 该函数中的最后一个函数 handleMessage
飞控采用mavlink消息进行数据的传输。普遍说法是,现有的mavlink消息几乎已经涵盖了所有你的能想象到的内容,完全可以覆盖多处需求。 无奈科研总是要定义一些新鲜玩意 ,所以总是有无法完全满足需求,需要自定义消息的时候。 mavlink 消息的创建,首先在common.xml文件中找到对应的message部分,在common.xml文件的最后部分, 对应复制一个message消息
1.安装鼠标,键盘同步软件Synergy而导致在linux中删去了部分ros包。2. 尝试使用mavsdk与PX4进行通信需要一个仿真环境。于是尝试采用PX4自带的仿真环境jmavsim。 遇到的问题: Inconsistency detected by ld.so: dl-lookup.c: 111: check_match: Assertionversion->fi
orb-slam 对应的github下载地址为:https://github.com/raulmur/ORB_SLAM2 实现仿真视频链接为:orb_slam_gazebo_PX4_simulation 概述 ORB-SLAM是西班牙Zaragoza大学的Raul Mur-Artal编写的视觉SLAM系统。他的论文“ORB-SLAM: a versatile andaccurate mono
本文记录采用ArduPilot固件,室内optitrack环境下飞行实现中遇到的一些问题 在apm/mavros仿真中,总是出现mavros/state 显示 not connected。 在实际的操作中,则是显示连接的。目前的效果是 motive 通过vrpn数据送给树莓派,然后映射成vision_pose/pose给飞控,通过修改set origin可以得到融合后的local_posit
ROS和Opencv的融合,感觉还是各自干各自的活,只不过中间通过cv_bridge进行链接转换下。图片(视频流)的读取,既可以采用ROS的方式,也可以采用 opencv直接读取。方便了和ROS其他包的扩展,也就不用考虑程序结构的实现了,确实是“不用重复造轮子”了。程序代码如下: #include <ros/ros.h> #include <cv_bridge/cv_brid
本文将一些注意点记录下来,适合于开发调试: 目前只是分段调试通了,带后续联合开发的时候在来补充还有没有什么注意点(过程也算麻烦,也算不麻烦); ROS组网,optitrack 台式机(windows系统)与 ROS服务器(这里称为服务器,感觉比较合适),四旋翼在同一个局域网内。其中四旋翼本次采用Pixracer (烧录px4,v1.10.1版本), 通过tel2与树莓派链接,树莓派
上一讲回顾 上一讲我们从零开始实现了Pytorch中的基本操作。 首先从numpy中手写了基于最小loss(MSE)的线性回归程序(示例程序一); 然后从梯度下降的角度考虑,改写示例程序一,衍生成基于梯度下降的线性回归程序(示例程序二); 通过引入torch库函数,替换掉了原函数中的求梯度问题(采用.backward()实现),完成了示例程序三; 继续对示例程序三进行改写
说起深度学习,目前流行的主要有TensorFlow和Pytorch。其中TensorFlow目前主要应用于工业界,Pytorch在学术界用的比较多。TensorFlow目前正在向2.0转型,由于2.0与1.0差异较大,所以TensorFlow的生态社区目前并不是很友好。而Pytorch的生态社区较为完善。在官网上找到Windows下的安装说明所以,打开cmd,输入conda install p
写在前面的话: 很有幸带队参加了11-14届的全国大学生智能车竞赛,经历了从”飞思卡尔杯”到“恩智浦杯”的转变。由最初的摄像头组,到最后的六个组别都有涉及(没有涉及创意组有点小遗憾);由最初的淘汰于省赛,一个弯道都过不去,到最后的电磁三轮,电磁直立组西部一等,摄像头四轮全国13名。我本人无论从技术上,还是带队经验上,乃至团队管理上都收获颇丰。 在我看来,智能车比赛真的是一个
引言:ArduPilot代码兼容无人机,无人车,UUV,帆船等多种vehicle,本文以Copter为例,说明代码中是如何完成模式切换的。 各个模式的init 首先定位在系统初始化中,即system.cpp中的 rc().init(); 执行跳转查看函数init_aux_all(); -->reset_mode_switch(); -->c->reset_mode_switc
注明:最终在rivz中没有看到点云,原因未知。 ROS中消息重映射需要在发布该话题的节点下进行,否则不成功。如果是针对mavros的消息进行重映射,则需要找到mavrso包下launch文件,px4.launch。然后由于px4.launch(如下图所示)中调用的是node.launch,故需要再次找到node.launch文件进行修改。 <launch> <!-
写在前面的话:只是对两种路径优化算法进行简单的理解和尝试,为后续使用做准备。如果用到,请再次好好理解原理和Matlab源码。参考博客: 用Matlab实现A*算法和Dijkstra算法 运动规划入门 | 1. 白话Dijkstra,从原理到Matlab实现 运动规划入门 | 2. 白话A*,从原理到Matlab实现 直接上干货(参考上述博客可得)首先给出Matlab下的三个脚本文件
在官方程序上(PX4 wiki上为offboard起飞到2m高度) 进行更改,实现首先起飞到固定点(x=1,y=2,z=5), 然后按照给定角度飞行。 补充:最终实现效果链接为 gazebo_mavros_PX4 大倾角测试 PX4_gazebo_mavros 自旋翻测试 PX4_ROS_gazebo多机仿真(画圆) 说明:新建世界模型world,首先从gazebo中添加想要的元
先给出一些预备知识: 欧拉角:即所谓的Roll , Pitch , Yaw. 而事实上,根据其定义,欧拉角的具有不同的表示。存在先绕哪个轴,后绕哪个轴转的差别(将旋转分解成绕三个轴的转角)。这种表示方法比较直观,但是存在万向锁(Gimbal Lock)问题,也称为奇异性问题。可以参考这个链接进行理解,这里不再赘述 点击这里跳转。 四元数:紧凑的,没有奇异性问题,较多在工
写在前面的话: 一定要确保mavros安装成功。我在安装mavros的时候采用的是官网默认的安装方式,期间一定有Error出现,没有成功,导致后面需要补充安装一些东西。验证是否安装成功,可以在本地运行roslaunch mavros px4.launch 注: 默认的mavros源码是安装在catkin_ws文件夹下,可以 首先采用 catkin clean 清除源码工程,然后采用cat
配置:Vmware14 虚拟机, Ubuntu18.04 LTS 版本。台式机Win10系统,8G内存,i7-6700四核整个配置过程基本按照官网操作。虚拟机配置如图 进入ubuntu18.04之后,首先配置网络,然后依次输入下列指令即可1、apt-get update -y apt-get upgrade -y2、sudo apt install git3、git clone https:/
PX4的启动流程基本和之前版本的一致,有微小改动,如下图所示。本文主要查看其中姿态控制部分。 其中姿态部分根据在上图中所在位置为 因此在px4代码中(版本号为1.11)中,查看对应的RCS文件中的内容,为(此处稍有不同) 跳转进去查看为(注,该文件中根据不同的机型,选择不同的对应启动程序,下图仅选择旋翼飞机):再次跳转,找到rc.mp_apps即可,如下图所示: 上图中左边以数字开头的表示
ArduPilot飞行前检查 主要包括两个部分:1. 初始化中遥控器输入检查;2. 1Hz解锁前检查。附: 显示地面站信息 参考文章:Ardupilot Pre-Arm安全检查程序分析 1. 初始化中遥控器输入检查 直接跳转进去查看函数为; bool AP_Arming_Copter::rc_calibration_checks(bool display_failure) {
参考链接:https://blog.csdn.net/lixiaoweimashixiao/article/details/80540295 首先我们假定从void AP_Vehicle::setup() 开始,这里是飞控所有初始化所在,程序位于 AP_vehicle.cpp中。 找到其中的 init_ardupilot();函数,执行跳转执行跳转过程中,需要选择是机型(无人机,无人车,UUV
首先给出最终效果图:实现内容与PX4官网代码功能类似,四旋翼飞机自动起飞至2.5m高度,悬停一定时间,然后自主降落。 记录如下几个需要注意的地方: 一共使用到三个文件夹,其中第一个为源代码,第二个为参照官网下载的gazebo地图信息,第三个为ROS功能包。 第二个gazebo地图需要在github上下载然后编译 git clone https://github.com/khancyr/
主要介绍了通过matlab脚本实现UDP发送mavlink消息,为后面matlab计算,与Optitrack联合调试,控制无人机做准备。 示例演示效果链接为 matlab通过UDP协议发送mavlink消息demo 采用的github仓库为https://github.com/lustosa-leandro/matlab-mavlink 添加matlab下.m文件代码为 fclos
积分
粉丝
勋章
TA还没有专栏噢
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信