Arduino For ROS-001 — 搭建 ROSArduino 相连接的开发环境

我的Ubuntu系统:Ubuntu 14.04.10 TLS 32位

Arduino的版本:Arduino 1.6.11 Linux 32位

使用 的ROS版本:ROS Indigo


一. 下载并安装 相关软件

Step 0 . 如果你没有在 Ubuntu 上面安装 ROS Indigo 这个版本的ROS 机器人操作系统的话,请参考这篇博客进行安装:ROS Learning-001 安装 ROS indigo

Step 1 . 第一件事情就是下载并安装 Arduino IDE 开发环境。(请看这个博客)

二. 搭建 ROS 连接 Arduino IDE 的开发环境

Step 2 . 然后给你的 ROS 环境安装 Arduino 的相关软件包:

sudo apt-get install -y ros-indigo-rosserial-arduino
sudo apt-get install -y ros-indigo-rosserial

三. 搭建 Arduino IDE 连接 ROS 的开发环境

Step 3 . 然后给你的Arduino开发环境 安装 ros_lib Library

1 . 新开一个终端,启动 ROS 主节点:

$ roscore

2 . 重新开一个终端,将路径切换到 /opt/arduino-1.6.11/libraries/ 这个路径:

~$ cd /opt/arduino-1.6.11/libraries/
/opt/arduino-1.6.11/libraries$

3 . 查看这个路径下有没有 ros_lib 文件夹。如果有,要先将它删除(删除的命令是:sudo rm -rf ros_lib )。(我们这里是没有。第一个装都没有。)

4 . 执行下面的命令。目的是在这个/opt/arduino-1.6.11/libraries 路径里面生成一个 ros_lib 库。

注意: 这个命令后面有一个小点 “.” ,表示将ros_lib 库再当前路径下生成。

/opt/arduino-1.6.11/libraries$
rosrun rosserial_arduino make_libraries.py .

(执行上面这句命令前,必须要先在一个终端中执行 $ roscore 。这个你懂得,我不做解释。)

5 . 执行完毕之后,我们来查看一下,是否成功生成了 ros_lib 这个文件夹:

如果你看到当前路径下,新生成了一个 ros_lib 文件夹的话,说明成功了。

Step 4 . 现在你在启动 Arduino IDE 软件

$arduino

搞定



总结:

ROSArduino 这两个开发环境之间 现在就已经连接上了。

这样,在 ROS 下,就成功的搭建了 Arduino 的开发环境。同时在 Arduino IDE 下也成功的添加了 ros 相关的库函数。

下一讲,介绍一个Hello World 程序,来介绍这个ArduinoROS 之间是如何使用的。


ROS Learning-016 Arduino-For-ROS-001 搭建 Arduino 和 ROS 之间相连接的开发环境的更多相关文章

  1. 在MAC上搭建cordova3.4.0的IOS和android开发环境

    Hello,大家好,今天给大家说说在mac上搭建cordova3.4.0的iOS和Android开发环境,首先下载cordova,地址:https://cordova.apache.org/#down ...

  2. 从零开始搭建一个简单的基于webpack的vue开发环境

    原文地址:https://segmentfault.com/a/1190000012789253?utm_source=tag-newest 从零开始搭建一个简单的基于webpack的react开发环 ...

  3. 【转】搭建Mac OS X下cocos2d-x的Android开发环境

    http://young40.github.io/blog/2013/02/23/setting-up-android-development-envirment-on-mac-os-x/ http: ...

  4. windows 搭建 IBM Hyperledger Fabric(超级账本)开发环境

    一.概述 Hyperledge fabric项目是IBM开源的区块链项目.Github地址:https://github.com/hyperledger/fabric 想对fabric有具体的认识,可 ...

  5. 搭建Mac OS X下cocos2d-x的Android开发环境

    版本 Cocos2d-x: cocos2d-2.1beta3-x-2.1.1 OS X: 10.8 Android ADT Bundle: v21.1.0 Android NDK: android-n ...

  6. PyCharm/IntelliJ IDEA Golang开发环境搭建(最方便快捷的GO语言开发环境)

    IntelliJ太牛了.为了配置Go语言开发环境,折腾了半天,下IDE(Sublime Text,IntelliJ Idea),然后装Go插件.装Go插件还要下载插件项目源码,编译等等,Sublime ...

  7. Windows下搭建远程Linux主机的图形化本地开发环境

    在实际开发中,项目的类生产.生产环境一般都是选择Linux为服务器进行部署. 相应的,我们的开发最好也在Linux环境下进行,否则容易引发其他的问题,比如不同环境下功能不一致.库依赖差异等. 但是Li ...

  8. Mac OS X上搭建伪分布式CDH版本Hadoop开发环境

    最近在研究数据挖掘相关的东西,在本地 Mac 环境搭建了一套伪分布式的 hadoop 开发环境,采用CDH发行版本,省时省心. 参考来源 How-to: Install CDH on Mac OSX ...

  9. 搭建eclipse+github开发环境

    开发环境 1.jdk:jdk1.8.0_60 2.eclipse:eclipse-jee-mars-R-win32-x86_64.zip 配置步骤 1.配置本地git目录(可选) eclipse-je ...

随机推荐

  1. AngularJS-webapp

    一.搭建开发环境 cnpm i -g bower 创建git仓库 cd webapp dir git init 创建.bowerrc类文件技巧 null>.bowerrc css预编译处理:le ...

  2. 不同OpenCV版本和不同VS版本之间进行配置的注意事项

    下面内容为不同系统和不同版本VS+不同版本OpenCV之间进行配置时的注意事项.本教程中开始提到如果VS版本和OpenCV版本相匹配的话,只要按上述步骤配置都是没有问题的.但是如果说版本不匹配的话,就 ...

  3. mac下安装libpng环境

    用go写一个爬虫工具时需要使用一个go的库,而这个库有需要使用libpng库,不然编译就会提示说 png.h找不到等之类的信息,于是想到应该和windows一样需要安装gcc环境,然后让gcc里安装l ...

  4. 使用open_read_write等底层函数来赋值一个文件

    /* * 该程序是练习read(),write(),open(),create(),close(),lseek()等函数. *  * 该程序的处理思路: *  1: 在程序所在的目录去打开一个文件,如 ...

  5. CodeForces - 900D: Unusual Sequences (容斥&莫比乌斯&组合数学)

    Count the number of distinct sequences a1, a2, ..., an (1 ≤ ai) consisting of positive integers such ...

  6. python究竟要不要使用多线程

    在总结concurrent.futures库之前先来弄明白三个问题: (1)python多线程究竟有没有用? (2)python虚拟机机制如何控制代码的执行? (3)python中多进程处理原理是怎么 ...

  7. HDU1387:Team Queue

    浅谈队列:https://www.cnblogs.com/AKMer/p/10314965.html 题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1 ...

  8. Python学习笔记 - PostgreSQL的使用

    一.安装PostgreSQL模块 pip install psycopg2 有时候会失败,多安装2次就好了(我是第二次成功了). 二.数据库连接接口 由于Python统一了数据库连接的接口,所以psy ...

  9. Windows Server 2008 修改系统的SID

    故事背景:用VMware搭建了几个操作系统相同的虚拟机.安装成功一台后,直接拷贝已经生成的VMDK文件来构建其它的虚拟机. 一般情况下,如果复制的各个虚拟机只是单独使用,并且这些虚拟机不加入到域(Ac ...

  10. JDK 8 - java.util.HashSet 实现机制分析

    JDK 8 Class HashSet<E> Doc: public class HashSet<E> extends AbstractSet<E> impleme ...