522935| 11
|
[HCRbot系列教程] HCRbot 系列 1──HCRbot 机器人简介 |
更新:大写加粗的心愿单!一键买齐所有元器件! https://www.dfrobot.com.cn/goods-1518.html 本系列所有篇章链接:
未完待续…… -------------------------------------------------------- 这是 HCRbot 机器人系列的第一篇,从这篇开始将从各个模块分别介绍 HCRbot 机器人的搭建与使用。 说实话,这是很早就开始在写的系列,但是由于整个系统比较复杂,前期调试搭建花了很多时间,还有很多不完善的地方,大家轻喷。接下来,我有时间会慢慢把这个系列写完。 其实这个系列最早是在我的 Medium 上发表的,现在打算在 DFRobot 论坛上也同步发表吧,毕竟这个系列 DFRobot 的东西给我我很多帮助,也算是回馈吧。 大家也可以关注我的 Medium:https://medium.com/@xyxy 本系列所有源代码都开源在我的 GitHub 上,大家可以免费下载,感兴趣的同学也可以帮我一起完善:https://github.com/chenzhongxian/hcr_ros 为了吸引大家的兴趣,先放几个演示视频吧: HCRbot SLAM Demo HCRbot Navigation Demo HCRbot 3D SLAM Demo # 缘起 # 看到 turtlebot 3 快要上市了,本来想买一个玩玩,但是一看要至少9月份才能拿到,以及价格……算了玩不起…… 但是心里实在痒痒,怎么办呢?看了下实验室的装备:DFRobot HCR移动机器人平台、Raspberry Pi 3、SLAMTEC RPLIDAR A2激光雷达、Intel RealSense R200,为啥不自己撸一个 “turtlebot 3” 玩玩呢!于是,HCR 版的 turtlebot:HCRbot 正式诞生! # 简介 # 本项目借鉴了很多 turtlebot 3 上的内容,包括整体采用模块化设计的思想,上位机采用 ROS 框架驱动,底层采用 OpenCR 来驱动。对,你没看错,OpenCR 还没上市了,可是谁叫它开源呢,谁叫我们有万能的淘宝呢! ## ROS HCRbot 这个系列文章希望读者有一定的 ROS 基础,不然越到后面可能越会一头雾水看不懂。所以如果不知道 ROS,请出门左拐,去ROS官网学习一下 ROS 的入门教程。官网 wiki 是最好的教程。 ## 模块化 由于 DFRobot HCR 本身就是一个开源项目开发平台,有很高的兼容性,包括 Kinect 1代支架等,再加上上面有很多定位孔,我们稍加改装,就能满足很多传感器的安装需求。 那么模块化就是说,我们可以根据自己的需求,安装不同的传感器,以及可以选择每个传感器的安装位置。本项目为了尽可能满足模块化的需求,在代码上尽量留出接口,具体后面相应章节会有说明。 ROS 中,比较重要的一个部分就是机器人的建模,也就是URDF模型。URDF模型可以方便的让我们在远程电脑上看到机器人的运动状态,以及机器人各部分的坐标关系。由于我手头没有 HCR 的三维模型,所以这部份也就尽可能简化了,只是象征性的画了个橙色的圆盘代表 HCR 了。 这样做也有个好处,不是说要满足不同的传感器安装需求嘛?那每个人的安装位置不同,我也没法按照统一的标准来画啊,所以这里也就偷个懒了。大家根据自己传感器的安装位置,在 ROS 相应的传感器驱动文件里手动通过 tf 工具中的 static_transform_publisher 来发布就行了。一下子讲的有点多,别急别急,下文都会详细介绍。 ## OpenCR OpenCR是大名鼎鼎的ROBOTIS公司出的,专门用来控制 turtlebot 3 底层驱动的开发板,支持 Arduino IDE 开发。ROBOTIS 这个公司,我相信你可能听说过他家的电机,几乎全世界最好的机器人项目都在用他们的电机,但你90%一定没用过他们的电机,因为实在太贵了…… 关于这块板子,具体介绍,看他们 GitHub 上的 wiki 就好了。如果手里没有这块板子,Arduino Mega 应该也是可以实现这个项目的。 由于本人喜欢玩新鲜的事务,加上 OpenCR 对 ROS 的支持较好,我只要稍微改一改底层驱动,就可以控制 HCRbot 了。所以我很早淘宝入手了一块玩玩,但是不建议大家现在买,因为现在太贵了,而且淘宝卖家的焊接工艺实在太差了,很多地方没焊好,幸好我提前做了一些检测,不然可能烧掉我整个系统。问了 ROBOTIS 中国的一家代理商,据说之后 OpenCR 会单独上市,到时候大家再去买好了。 至于 Arduino Mega 怎么与 ROS 系统对接,大家可以网上去查查,有很多类似的教程,或许我有空会专门再写这方面的教程吧(flag先立起来)。 # 整体系统架构 # HCRbot 的整体系统架构如下图所示: 好了废话终于讲完了,下面正式进入详细介绍章节。 # 参考 #
|
Angelo 发表于 2017-9-6 19:16 我是用 Odroid XU4 做的,TK1 应该也是没有问题的,ROS 包应该是兼容的。不过 TK1 最高只能装 ROS Indigo 版本,我的是 ROS Kinetic 版本。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed