PX4/Firmware:https://github.com/PX4/Firmware

PXFmini An open autopilot daughter-board for the Raspberry Pi Zero

http://erlerobotics.com/blog/pxfmini/

Erle-Brain 2 An all-in-one Linux brain for robots and drones

http://erlerobotics.com/blog/erle-brain-2/

Erle-Copter A Linux-based drone for developers with support for the Robot Operating System

http://erlerobotics.com/blog/erle-copter/

PX4 ROS(以下为机器翻译)

介绍

人工大脑和自动驾驶仪

我们创造了大脑和自动驾驶仪授权新一代机器人专家的,并会不断改进日常我们的技术走向,在未来,我们的机器人大脑人工将成为一个很大的大多数打造的机器人,我们甚至没有预见到今天做。

ROBOTS

我们提供不同的功能和使用案例机器人。这些机器人可以自己建造,用于研究,商业应用,甚至代表了新创作的蓝图。我们的机器人已经创建是完全自主的,都与最流行的任务规划者和地面控制站兼容。

ROS

我们与机器人作业系统,为机器人的终极软件开发工具包工作。ROS提供从操作系统你所期望的服务,包括硬件抽象,低级别的设备控制,执行常用功能,进程间消息传递,以及包管理。

模拟

机器人仿真是在每一个机器人专家的工具箱中的必备工具。一个设计良好的模拟器,能够快速检测算法,设计机器人,并用真实场景进行回归测试。


我们MISION

我们的目标是构建下一代人工大脑的机器人,以简化机器人和人工智能创造。

我们的愿景

我们走向未来,建筑机器人将有关组建不同的可互操作的组件工作。其中,节目被限制在机器人的人工大脑并与他们互动是可能的大多数成为现实。我们希望通过今天,为未来的机器人人工大脑播放不久的将来一个重要的角色。

我们的文化

我们相信,建立在那里的人应该创造未来的环境时,思想的自由交流是至关重要的。因此,我们开源的我们的代码和设计教育,教导和启发机器人技术。

无人机领域从机器人的角度来分析是有趣的。虽然自主飞行机器人比较潮流,但是RC航模爱好者已经存在了很长的时间,开发自主飞行机器人的功能包或自动驾驶仪软件的社区。
这其中,有很受欢迎的选项,如APM(俗称ardupilot)或PX4。这些自动驾驶仪走向成熟,获得自主能力,并把这些飞行机器转变成为实际的无人驾驶飞机的地步。许多这些开源飞行提供软件包,但通常需要修改定制,当一个具有处理在机器人的传统的问题,例如导航,映射,避障等的意图建立基本雄蜂行为的一般代码库。当在自动驾驶代码从而直接进行的,以试图提高(或有时只是简化)自动驾驶仪的功能,这些修改是不直接的,抽象层如DroneKit开始出现。
然而,对于一个机器人专家,通用的语言是机器人操作系统(ROS)。获得ROS去跟这些航班的栈本身就需要资源和努力,像样的数目,从而,一般,机器人学家使用的桥梁,如MAV ROS ROS包交谈的飞行堆栈。
我们在尔勒机器人已经用这样的架构提供服务的飞行机器人,但我们一直在想,这将是迈向ROS本土无人机的路径。为了探索这种可能性,我们已经增加了对PX4临飞栈支持。 
支持PX4临飞栈
该PX4临无人机自动驾驶仪是一个开源的无人机可(BSD)飞行控制解决方案“,从赛车飞到任何货物无人机- ?无论是多直升机,飞机或垂直起降”。PX4已建成类似ROS哲学,在这些模块中的每一个进行通信使用发布/订阅体系结构(目前,简单的发布/订阅中间件称为uORB)由不同的软件模块组成。
在研究越来越ROS本地飞行堆栈和开拓这项工作的社会,我的路内部企图高兴地宣布,在我们所有产品的PX4临意味着开发商的官方支持阿尔法如PXFmini,厄尔-Brain 2或厄尔-直升机。我们的团队已经把一套新的操作系统映像为我们的产品,这将有助于您轻松飞行栈之间切换。
要安装PX4临,只需键入以下内容:
sudo apt-get purge -y apm-* # e.g.: apm-copter-erlebrain 
sudo apt-get update 
sudo apt-get install px4-erle-robotics
ROS本土飞行栈 
使用PX4临飞行堆栈为出发点,我们的团队将致力于资源的原型,讲ROS本身,这是一个无人驾驶飞机的自动驾驶仪的概念,即利用ROS自动驾驶的逻辑中的节点,以抽象的每个子模块(姿态估计,位置控制,导航,...)和ROS主题/服务与块的自动驾驶仪内剩下的通信。最终,这一举措应该提供能够创建各种无人驾驶飞机,与所有的机器人专家已经超过十年,现在建筑为传统的ROS接口很好地融合了自动驾驶仪软件。 

如果你有兴趣在这一倡议参与。

本节将介绍如何使用ROS /凉亭模拟器作为ArduCopter外部仿真器。仿真的主要特点是:

  • 模拟的稳定性和确定性无人机响应(步骤锁止机构)
  • 简化的ROS /凉亭模拟发射,通过参数来用得好,SITL启动脚本完全可配置的,sim_vehicle.sh
  • 海克特的插件提供的GPS传感器集成
  • 在MavProxy地理参考叠加图图像,相对于无人机位置,更好地评估其模拟环境

为了开始被武装必需的。有些提供的可用功能有:

  • 惯性测量单元(IMU),其提供线性加速度,角速度,常压和高度
  • 指南针提供的标题
  • GPS可提供经度,纬度和海拔高度
  • 尔勒-直升机配备有2个摄像头,一个前部和一个底部,2声纳传感器,一个前部和一个按钮,而且它也可以包括一个激光2D或深度相机。
  • 它允许操纵杆操纵

这些应用程序在发布相关的ROS主题的数据。它是与活性氧靛蓝,这是很长一段时间支持(LTS)的ROS版本兼容。这种模拟包括MAVROS(微型飞行器ROS)封装。这个软件包提供与MAVLink通信协议不同的自动驾驶仪通讯驱动程序。此外,它提供的UDP MAVLink桥的地面控制站。使用该协议ROS可发送特定命令的无人机,这基本上是什么这个模拟器是专业化的。导航命令可以直接发送到经由MAVROS一个机器人算法产生的飞行控制器。

步骤锁止机构强制执行凉亭模拟暂停,直到它从Ardupilot接收到下一个电机命令。然后,它前进的脚步了2.5毫秒(为400 Hz的刷新率)仿真和发回新的传感器测量Ardupilot。不像上凉亭许多控制器模拟,Ardupilot是模拟时钟的主人。

非常感谢亚历Buyval创建于凉亭初始Arducopter模拟。也非常感谢的Aurelien罗伊和马克西姆·拉弗勒继续他的工作。终于到了整个社会Ardupilot!

配置你的Ubuntu机

我们建议安装Ubuntu 14.04。

首先,在所有安装基础包

sudo apt-get update
sudo apt-get install gawk make git curl cmake

然后安装MAVProxy依赖

sudo apt-get install g++ python-pip python-matplotlib python-serial python-wxgtk2.8 python-scipy python-opencv python-numpy python-pyparsing ccache realpath libopencv-dev

现在,安装MAVProxy

sudo pip2 install pymavlink catkin_pkg --upgrade
sudo pip install MAVProxy==1.5.2

下载并安装ArUco

  1. 从下载ArUco 1.3.0 这里
  2. 安装ArUco
    cd ~/Downloads # Replace this with your Download directory
tar -xvzf aruco-1.3.0.tgz
cd aruco-1.3.0/
mkdir build && cd build
cmake ..
make
sudo make install

APM / Ardupilot

该ArduPilot项目是无人机一个开源的自动驾驶仪。我们将使用它的代码模拟了无人机:

编译ardupilot的某一分支

mkdir -p ~/simulation; cd ~/simulation
git clone https://github.com/erlerobot/ardupilot -b gazebo

获取最新版本JSBSim的

cd ~/simulation
git clone git://github.com/tridge/jsbsim.git
# Additional dependencies required
sudo apt-get install libtool automake autoconf libexpat1-dev
cd jsbsim
./autogen.sh --enable-libraries
make -j2
sudo make install

安装ROS靛蓝

设置您的计算机从packages.ros.org接受软件,设置你的钥匙,并安装(请确保您的Debian软件包指数上涨了最新的):

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net --recv-key 0xB01FA116
sudo apt-get update

安装,ROS包,建立和通信库。没有GUI工具:

sudo apt-get install ros-indigo-ros-base

初始化rosdep,才可以使用ROS,您将需要初始化rosdep。rosdep使您能够轻松地安装系统依赖于要编译和运行要求的ROS一些核心部件来源。

sudo rosdep init
rosdep update

它的方便,如果ROS环境变量的每一个新的shell启动时自动添加到您的bash命令:

echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
source ~/.bashrc

获取rosinstall和一些附加的依赖

sudo apt-get    install python-rosinstall          \
ros-indigo-octomap-msgs \
ros-indigo-joy \
ros-indigo-geodesy \
ros-indigo-octomap-ros \
ros-indigo-mavlink \
ros-indigo-control-toolbox \
unzip

创建工作区ROS

mkdir -p ~/simulation/ros_catkin_ws/src

初始化工作区

cd ~/simulation/ros_catkin_ws/src
catkin_init_workspace
cd ~/simulation/ros_catkin_ws
catkin_make
source devel/setup.bash

下载这些存储库中src

cd src/
git clone https://github.com/erlerobot/ardupilot_sitl_gazebo_plugin
git clone https://github.com/tu-darmstadt-ros-pkg/hector_gazebo/
git clone https://github.com/erlerobot/rotors_simulator -b sonar_plugin
git clone https://github.com/PX4/mav_comm.git
git clone https://github.com/ethz-asl/glog_catkin.git
git clone https://github.com/catkin/catkin_simple.git
git clone https://github.com/erlerobot/mavros.git
git clone https://github.com/ros-simulation/gazebo_ros_pkgs.git -b indigo-devel
#Add Python and C++ examples
git clone https://github.com/erlerobot/gazebo_cpp_examples
git clone https://github.com/erlerobot/gazebo_python_examples

然后一起编译:

cd ~/simulation/ros_catkin_ws
catkin_make --pkg mav_msgs mavros_msgs gazebo_msgs
source devel/setup.bash
catkin_make -j 4

安装凉亭

选项1:安装凉亭使用Ubuntu的软件包

设置您的计算机从packages.osrfoundation.org接受软件

sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'

设置键

wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -

安装gazebo7

sudo apt-get update
sudo apt-get remove .*gazebo.* '.*sdformat.*' '.*ignition-math.*' && sudo apt-get update && sudo apt-get install gazebo7 libgazebo7-dev drcsim7

选项2:从源代码安装凉亭

按照这个说明从源代码安装凉亭。

下载凉亭模型

mkdir -p ~/.gazebo/models
git clone https://github.com/erlerobot/erle_gazebo_models
mv erle_gazebo_models/* ~/.gazebo/models

ROS新闻 Towards ROS-native drones 无人机支持方案的更多相关文章

  1. SLAM+语音机器人DIY系列:(二)ROS入门——1.ROS是什么

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  2. ROS教程3 ROS自定义msg类型及使用

    1ROS自定义msg类型及使用 http://blog.csdn.net/u013453604/article/details/72903398 首先创建一个空的package单独存放msg类型(当然 ...

  3. 回调函数ros::spin()与ros::spinOnce()

    ros::spin() 这句话的意思是循环且监听反馈函数(callback).循环就是指程序运行到这里,就会一直在这里循环了.监听反馈函数的意思是,如果这个节点有callback函数,那写一句ros: ...

  4. ROS Learning-012 beginner_Tutorials (编程) 创建自定义的ROS消息和ROS服务

    ROS Indigo beginner_Tutorials-11 创建自定义的ROS消息和ROS服务 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubunt ...

  5. ROS Learning-001 安装 ROS indigo

    如何在 Ubuntu14.04 上安装 ROS indigo 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14.04.4 LTS ROS 版本 ...

  6. ros::spin() 和 ros::spinOnce() 区别及详解

    版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5925381.html 博主提示:本文基于ROS Kinetic Kame,如有更(g ...

  7. SLAM+语音机器人DIY系列:(二)ROS入门——2.ROS系统整体架构

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  8. (十)创建ROS消息和ROS服务

    ROS总教程(中文版) 110.创建ROS消息和ROS服务

  9. ROS教程4 ROS自定义srv类型及使用

    创建srv文件 在上一节单独为自定义的消息和服务的包 test_msgs 里面 创建 srv文件夹 进入创建 testsrv.srv 文件 ,内容为: (srv文件和msg文件类似,唯一不同的是它包含 ...

随机推荐

  1. [LeetCode] Closest Leaf in a Binary Tree 二叉树中最近的叶结点

    Given a binary tree where every node has a unique value, and a target key k, find the value of the n ...

  2. volatile 到i++ 原子操作 详解

    1.可见性(Visibility) 可见性是指,当一个线程修改了某一个全局共享变量的数值,其他线程是否能够知道这个修改. 显然,在串行程序来说可见性的问题是不存在的.因为你在任何一个地方操作修改了某个 ...

  3. 用redis的订阅发布解决了扫码支付实时响应的问题

    一.场景描述: PC收银台的浏览器展示了收款二维码,用户扫了支付二维码,支付完成后,浏览器需要实时响应支付结果. 二.问题描述: 扫码支付的支付结果一般通过服务端回调和主动查询来获取,显示二维码之后, ...

  4. Redis常用命令--Hashes

    Hash是由键值对组成的map.Hashes的底层是通过字典实现的.一个哈希表里面可以有多个哈希表节点.而每个哈希节点就保存了字典中的一个键值对. 字典是一种用于保存键和值对的抽象数据结构.字典里的每 ...

  5. [HNOI2001]求正整数

    题目描述 对于任意输入的正整数n,请编程求出具有n个不同因子的最小正整数m. 例如:n=4,则m=6,因为6有4个不同整数因子1,2,3,6:而且是最小的有4个因子的整数. 输入输出格式 输入格式: ...

  6. hihocoder 1388 fft循环矩阵

    #1388 : Periodic Signal 时间限制:5000ms 单点时限:5000ms 内存限制:256MB 描述 Profess X is an expert in signal proce ...

  7. 【USACO Feb 2014】Cow Decathlon

    题目描述 约翰有 N 头奶牛,组成了一直队伍参加全能比赛.比赛一共有 N 项,每头奶牛必须参加一项比 赛,每项比赛也必须有一头奶牛参加.任何一头奶牛可以胜任任何一项比赛,但得分不一样.如果第 i 头奶 ...

  8. 2015 多校联赛 ——HDU5302(构造)

    Connect the Graph Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others ...

  9. javap -c命令详解

    https://www.cnblogs.com/beautiful-code/p/6424977.html

  10. jquery easyui datagrid设置行样式 不可删除某行

    rowStyler: function (index,row) { if (parseInt(row.ksrs) > 0) { return 'color:red'; } }, onLoadSu ...