Ros学习笔记

前言

工作两年有余,从工业机器到物流仓储AGV,慢慢走进了大家可能都觉得很高尚的行业—“机器人”。首先声明在前,我并不得觉着这这个职业有多么高尚,凡是都讲个新鲜,就像互联网初期的程序员。吴恩达说过一句话:机器人是一种新的电力。说的可能是机器人可能是近现代的工业革命,就像现在的人们离不开电一样,未来人们可能也离不开机器人。二十年前开得起小汽车绝对土豪,现在上街买菜都需要配代步车,究其原因可能与工业机器人技术成熟后使得汽车制造成本变低,生产周期变短密不可分。或许就像汽车、手机一般,服务机器人正在悄悄走进千家万户。随风潜入夜,润物细无声。
I am a mechanical engineer,由于最近在研发AGV这个并不太先进的设备,查阅了些Paper和Patent,先是对AGV本体的机械部分大概有些了解,慢慢发现这种机械做出来其实不难,关键是如何给它装上一个大脑,没有大脑就是一堆破铜烂铁;几个简单的钣金件搭上摄像头,激光雷达,主控板就是个机器人,能够实现很多功能,觉得这是个很cool的事。
互联网时代使获取知识的途径和过程变的简单,相信都听过“从前车马很慢,书信很远,一生只能爱一个人”,而现在轻敲下键盘,就能够群发消息了。之前看了很多碎片化的知识,并没有穿上一条线,然而我每做一件事之前总是想去构建一个“树”,先搭出一个树干,找到树根在哪里,然后需要哪里长叶的话,我会在这块下功夫。如果做一件事没有方向,就像大海里行驶的小船,任何一阵风都将是逆风。而开始最主要的问题是我不知道怎么构建树干,上网查Ros、Linux、STM32、陀螺仪、里程计、Slam,开始的几天心里面很慌,觉得这些东西真的太多了,多学科,自己能不能坚持下去,内心斗争是常事,辗转反侧难以入眠真的不夸张。偶然一天健哥发了我一份Ros机器人的教学视频,大概看了一遍,里面知识点非常全,每块都有点播,我仿佛看到了希望,这应该是我开始入门的一条主路,找到了“树”。我不必从头弄的每个模块都门清,搞什么研发,自己做那么一台小车可能刚刚开始就放弃了,更何况牛顿都是站在巨人的肩膀上去看世界,于是赤巨资购一台,舍不得孩子怎么去套狼,于是2020.8.31号拍了某Ros机器人,2020.9.2号到货,拆箱那天欣喜若狂。开始的几天装虚拟机/镜像文件,发现在终端里面输入简简单单的两行代码就能发车,用了大半个月的时间我把这些功能都跑了一边,其实什么算法、什么模型都是屈指可数的几个大牛研究出来的,如果你会用,怎么用,用在哪里就可以了,况且在这个开源盛世的时代,没有教会徒弟饿死师傅这一说,大家都可以零成本的投入去获取知识。期间通读了几篇Ros开发类,c++,python,linux编程类,RasPi开发类的文档,觉得Ros应该是个切入点。我开始用VMware虚拟机看博友说会出现各种神奇的问题,我安装Ros的时候果真发生了,所以把上大学买的Dell INSPIRON 3420从新做的Linux,刚刚用了几天,也装上了Ros,感觉还可以。
之所以写博客其目的是记录我开发的整个过程和中间遇到的问题及解决问题的办法,避免最后做出来了,但是怎么做的都忘记了,下次遇到了相同的问题还是卡主一两天解决不了,不怕跌倒,就怕在一个地方总跌倒。初次写博客,像Markdown是第一次使用,文字排版可能会不规整,可能会有说的不对的,敬请大家批评与指正。在这里希望遇到有相同兴趣的开发者和一直为梦想努力的你。
有句话叫:临渊羡鱼,不如退而结网。还有个故事叫:小马过河。怕什么真理无穷,进一寸有一寸欢喜,每天进步一点点,小树也能变绿荫。如果把这个Ros小车看成自己的孩子,慢慢调教,有一日能够走进千家万户会是一件多么引以为豪的事。

最后引用蒲松龄在科举考试屡次不中、落魄至极之际所作的那两句:有志者,事竟成,破釜沉舟,百二秦关终属楚;苦心人,天不负,卧薪尝胆,三千越甲可吞吴。共勉。

                                                                                       David-大王

戴尔笔记本安装Linux Ubuntu

待整理

Ubuntu下安装Ros

待整理

Ros实例之跟学MOOC课程

1、学习资料

gitbub代码地址:请点击查看
讲义地址:请点击查看
MOOC课程地址:请点击查看

2、过程

详情参阅讲义。

3、遇到的问题

4、Roboware studio安装

安装参考链接:roboware studio 安装教程

roboware studio使用教程:使用教程
提示:一定要去github上下载对应的deb!!!

5、创建ros工作空间过程

1 mkdir -p catkin_ws/src #创建名字为catkin的ros工作空间
2 catkin_make #对工作空间进行初始化
3 catkin_creat_pkg test2 roscpp rospy std_msgs nav_msgs #在src下创建一个名称为test2的功能包(节点),后面的为功能对应的依赖

6、如何从github上下载pkg

视频教程:视频教程

文本教程:文本教程

github下载命令:

git clone https://github.com/DroidAITech/ROS-Academy-for-Beginners.git
#下载命令所在的位置应该在src目录下

未完在续

猜你喜欢

转载自blog.csdn.net/Cappuccino_0/article/details/108890621