Mrobot学习手册(TK1+Mrobot小车)_了不起的菠萝君的博客-程序员秘密

技术标签: Mrobot  

TK1(远程主机)系统环境:
ubuntu14.04 + ros-indigo-desktop

笔记本电脑(主机)系统环境:
ubuntu14.04 + ros-indigo-desktop-full

TK1(远程主机)配置

Ctrl+Alt+T打开终端
mkdir -p mrobot_ws/src           //创建src文件夹
cd ~/mrobot_ws/src
catkin_init_workspace            //创建工作空间
git clone https://github.com/ROSClub/mrobot.git
sudo apt-get update
cd ..                         //回到~/mrobot_ws目录下
catkin_make

笔记本(主机)配置

Ctrl+Alt+T打开终端
mkdir -p mrobot_ws/src           //创建src文件夹
cd ~/mrobot_ws/src
catkin_init_workspace            //创建工作空间
git clone https://github.com/ROSClub/mrobot.git
sudo apt-get update
cd ..                         //回到~/mrobot_ws目录下
catkin_make

USB绑定设置

使用UsbHUB连接好TK1,并且把小车的串口连接到HUB上(设置好了Usb的位置就不要动,如果以后改变了小车串口Usb和雷达Usb位置需要重新绑定)

打开终端,输入命令:

udevadm info -a /dev/ttyUSB0

udevadm info -a /dev/ttyUSB0

记录下usb设备等kernels、idVendor以及idProduct,填写到mrobot.rules⾥里里⾯面

mrobot.rules

首先记录小车串口的信息,然后填入mrobot.rules并保存

然后运行绑定程序

绑定程序

重新插拔小车串口,打开终端,运行ls /dev,检查是否绑定成功

ls /dev

如果显示有mrobot,则绑定成功,接下来绑定激光雷达,固定小车的Usb口不变,把雷达插到UsbHUB上

打开终端,输入命令:

udevadm info -a /dev/ttyUSB1

udevadm info -a /dev/ttyUSB1

记录下usb设备等kernels、idVendor以及idProduct,填写到mrobot.rules⾥里里⾯面

mrobot.rules

首先记录雷达串口的信息,然后填入mrobot.rules并保存

然后运行绑定程序

绑定程序

重新插拔雷达串口,打开终端,运行ls /dev,检查是否绑定成功

ls /dev

如果显示有rplidar,则雷达绑定成功,检查是否有mrobot和rplidar,如有,则绑定流程结束

主从机配置
推荐设置好路由器的DCHP,把小车和笔记本的IP地址固定
在本教程中
笔记本(主机)的IP为 192.168.199.190
TK1(远程主机)的IP为 192.168.199.247

首先分别在TK1和笔记本上安装vim

sudo apt-get install vim           //安装vim

若提示找不到软件包,则先运行,以下指令再安装vim

sudo apt-get update

安装好vim之后,分别打开笔记本和TK1的终端,查看hostname

$ hostname
tegra-ubuntu                         //TK1的hostname
$ hostname
Thinkpad-Edge-E430c                  //笔记本的hostname

在TK1上打开终端

sudo vim /etc/hosts

输入密码回车,在vim编辑器中按i在最后插入一行,内容为

192.168.199.190  Thinkpad-Edge-E430c

然后按Esc,输入:wq保存
编辑~/.bashrc文件

vim ~/.bashrc

在最后一行加入

export ROS_HOSTNAME=tegra-ubuntu
export ROS_IP=192.168.199.247
export ROS_MASTER_URI=http://192.168.199.190:11311

然后按Esc,输入:wq保存

同理,在笔记本上打开终端

sudo vim /etc/hosts

输入密码回车,在vim编辑器中按i在最后插入一行,内容为

192.168.199.247  tegra-ubuntu

然后按Esc,输入:wq保存
编辑~/.bashrc文件

vim ~/.bashrc

在最后一行加入

export ROS_HOSTNAME=Thinkpad-Edge-E430c
export ROS_IP=192.168.199.190

然后按Esc,输入:wq保存

到此为止,主从机配置完成

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/RuoQiQingCheDi/article/details/83928824

智能推荐

深入剖析Spring boot自动装配原理三(@EnableAutoConfiguration)_努力码农的博客-程序员秘密

概要何为自动装配?自动装配可简单理解为Spring自动读取配置类信息,并解析配置类中的Bean信息,然后将相关Bean初始化到IOC容器中。前面两个章节已经了解了SPI技术和Spring中Import注解的实现原理,本章节来具体讲解Spring boot如何使用通过EnableAutoConfiguration注解将Bean自动注入到Spring容器中。源码剖析Spring Boot将相关配置都集成到了SpringBootApplication注解,在启动类加上该注解则标识为Spring Boo

http://nancyfx.org + ASPNETCORE_weixin_30312659的博客-程序员秘密

商务产品servicestack: https://servicestack.net/http://nancyfx.org + ASPNETCOREhttp://nancyfx.org Drapper ORM精简框架 https://github.com/StackExchange/DapperNancy 是一个轻量级用于构建基于 HTTP 的 We...

win10无法定位程序输入点 于动态链接库无法运行软件该怎么办?_无法找到入口无法定位程序输入点_qq459080123的博客-程序员秘密

动态链接库它不是可执行的文件,它是能向多个程序提供公用代码函数和数据的封装库,程序所需要的一些函数和数据被事先封装在DLL文件中,当我们在win10操作系统中遇到了这样的问题,一般是由于:用户误操作不小心将程序安装目录中的动态链接库DLL文件删除、电脑感染木马病毒、在软件或游戏在线更新时,本该被正常写入或覆盖的DLL动态链接库文件因为意外的断电、重启、写入错误等原因没有下载更新成功,那么该如何解决

python版AI贪吃蛇_alpine上贪吃蛇_学AI的石头的博客-程序员秘密

本文转自:https://mp.weixin.qq.com/s?__biz=MzU2NDI1MjkwNA==&mid=2247484020&idx=1&sn=73aa1452ddba05ae233e3e4a3aaa2ad6&chksm=fc4c9bf3cb3b12e5877f0bfc64c819bf7ffc302d1ad473ed3bea618cc923e978c...

java面试突击第一季 github,Github接近10w点赞!Java面试必备开源指南_BioArt生物艺术的博客-程序员秘密

距离最近的 V3.0 版本的发布,已经过去快 6 个月了。在这漫长的 6 个月,有很多读者通过邮件/issue/pr等方式指出了《JavaGuide 面试突击》v3.0 存在的一些问题。炒鸡感谢!爱你们!我记得有一个读者在微信给我提了某个地方的表述可以完善的建议,但是我后面一忙就给忘了,找了半天也没找到对应的消息记录。在这里给这位读者说声抱歉。想着有很多小伙伴要准备春招或者即将跳槽,所以,还是...

Uni-app页面组成_uniapp 页面结构_不足为害的博客-程序员秘密

Uni-appuni-app目录结构在新建uni-app时默认包含如下的目录及文件:components 用来存放uni-app组件的目录pages 用来存放整个uni-app所有的页面 例如:index.vuestatic 用来存放一些静态图片 例如:图片、图标、视频等。静态资源只能存放于此。App.vue 是用来配置App全局样式,是页面的入口文件,可以调用应用的生命周期函数。...

随便推点

Halcon算子--图像、区域、轮廓、测量、拟合、垂足、夹角_halcon点到线的垂足_冯相文要加油呀的博客-程序员秘密

Halcon算子–图像、区域、轮廓、测量、拟合、垂足、夹角read_image (Image,‘fabrik’)画矩形draw_rectangle1 (3600, Row1, Column1, Row2, Column2)gen_rectangle1 (Rectangle, Row1, Column1, Row2, Column2)缩减图像定义域reduce_domain (Image, Rectangle, ImageReduced)阈值分割出感兴趣的部分threshold (ImageR

【vue 打包】npm run build 打包卡住的问题_vue项目打包卡死_find_some_way的博客-程序员秘密

【vue 打包】npm run build 打包卡住的问题最近遇到了一个问题,使用 npm run build 打包的时候,会卡住不动解决方法一网上百度了很久,都说可能是访问 npm 源 超时的问题,改成淘宝镜像就好了npm config set registry http://registry.cnpmjs.org由于项目在内网,本身就无法访问外网,我把项目拷到外网(经过领导同意了...

周志华《机器学习》同步学习笔记 ——第十章降维与度量学习_高纬空间低纬嵌入_克小洛的博客-程序员秘密

周志华《机器学习》同步学习笔记 ——第十章降维与度量学习10.1 k近邻学习10.2 低纬嵌入10.3 主成分分析10.4 核化线性降维10.5 流形学习10.6 度量学习10.1 k近邻学习k近邻学习即kNN(k-Nearest Neighbor)是一种常用的监督学习方法:给定某个测试样本,基于某种距离度量在训练集中找出与其距离最近的k个带有真实标记的训练样本,然后给基于这k个邻居的真实标记...

关于 parseInt 的一道有意思的面试题_[] parseint面试题_zk65645的博客-程序员秘密

看完标题,入坑过的同学脑海里很快会浮现出这道经典面试题,没碰到过的同学不妨跟着楼主先来复习一遍 parseInt 的用法(主要参考 MDN)。parseInt 是 JavaScript 中的一个全局函数(顶级函数),它会将给定的字符串以指定基数(radix/base)解析成为整数。它的语法非常简单:parseInt(string, radix)第一个参数 string 是要

微信会偷看聊天记录吗?张小龙万字演讲回应一切!新表情、输入法、直播拜年都要来了!信息量太大(附全文)..._程序员小乐的博客-程序员秘密

点击上方 "编程技术圈"关注,星标或置顶一起成长后台回复“大礼包”有惊喜礼包!每日英文If you’re brave to say “good bye”, life w...

android第三方图表库,Android实际开发中实用的第三方(开源)框架_大菠萝盖的博客-程序员秘密

以下是个人实际开发中经常用到的开源框架,后续会持续更新…1.Butterknife将Android视图和回调绑定到字段和方法https://github.com/JakeWharton/butterknife2.Material – dialogs一个漂亮,流畅且可自定义的对话框APIhttps://github.com/afollestad/material-dialogs3.BaseRecyc...

推荐文章

热门文章

相关标签