目录

一,实物or仿真

1,实物或仿真的利弊

2,从哪些角度去考虑是选择实物还是仿真

二,环境准备

1,首推ROS

2,其他环境

三,理论学习

四,实物搭建


一,实物or仿真

我想这个问题是在开发之前最容易想清楚的,所以我先说!

1,实物或仿真的利弊

对于做出实物,要比仿真耗费更多的时间,精力,物力,财力。

接触过硬件的朋友都会有体会,首先你会考虑性能价格等方面的因素去选择一款合适的硬件,然后你需要花时间去学会使用调试它,最头疼的是你调试的过程中会遇到很多只有你才会遇到的问题,像硬件烧坏,电气连接不稳定对初学者来说是最常见的问题,还有可能你用着用着发现不合适了,对不起,需要把上述过程再过一遍,这都需要时间和精力。关于物力,财力问题,我就举个例子来说,最早诞生于斯坦福大学PR1机器人,现在迭代到PR2,价值100多万,这不是一般科研单位能用的起的,说一个入门级的科研平台Turtlebot,二代标配也是几万块,就算是自己搭建,激光雷达,深度相机,机械臂这些都要上千,移动底盘可以自己搭,电机,里程计,电源,驱动这些自己可都做不出来,我目前了解到一款较便宜的桌面级的机械臂turtlebot-arm(PhantomX-Arm)也要几千,当然也可以自己画图买控制驱动舵机完完全全自己做,如果不是个团队或者懂点机械也不建议弄,结构不好,精度不够,参数不明确也没法用。

那也不是一无是处,做实物最大魅力正在于它的“麻烦”,很多人去玩这些是出于兴趣的,看到自己做的机械臂动了起来,自己做的底盘跑了起来,每解决一个问题,都可以通过这些实物展现出来,这种成就感是仿真给不了的。其次做仿真最终是要落地为实物的,当然这不一定是你做,这种锻炼是以后走向科研单位或是研发岗位的一种很好的积累。

仿真我就说一句话,它有自己天然的好处,理想环境里模拟再多干扰它始终不是真实环境。

2,从哪些角度去考虑是选择实物还是仿真

我挑重点说,综合考虑需求,能力,条件。

比如说,你没经费,又在这方面动起手来不擅长,也没必要锻炼,实验室条件也差劲,别考虑做实物了。又比如说,你要做出实物参加竞赛,做出产品,有这样的需求你就没有选择。仿真可以节省一部分麻烦,这样你可以节省精力放在算法,策略上,有重点的学习自己需要深入的地方。

我的需求是做本科毕业设计的,所以我的定位是学习使用为主,实物次之,改进算法为更高追求。无论是做实物还是侧重仿真,这两方面我都会分享自己学习过程中的心得。

二,环境准备

1,首推ROS

ROS(robot operating system),顾名思义,机器人操作系统,首先,专业,开源,具有很好机器人开发交流生态,机器人明星大都是基于ROS。ros的初衷是提高软件的复用率的,具体的发展历史,特点,优缺点自行查阅。

放些图吧,不然显得太枯燥。

这个是ROS的特点:

(图片来自古月老师课件,顺便说一下,胡老师在国内ROS教育的影响力对于学习ros的人,几乎没有不知道古月老师的)

2,其他环境

没有(有也不推荐,我也不会)。

三,理论学习

关于ROS的学习,ROS1依赖在ubuntu系统下,因此你需要一个linux系统,不建议使用虚拟机,虚拟机安装容易,使用起来问题较多,所以建议WIN+linux双系统。ros2据说可以在Windows下使用。

   安装系统之前,你要搞明白几个事情,Ubuntu版本与ROS版本之间的对应关系

最新(2021年)ROS1发行版本适用的Linux操作系统平台、语言工具要求、第三方库支持、版本推荐

对于初学者来说,建议较早的indigo或kinetic(我当时用的indigo,不过现在都2021年了,用新的吧),较早版本大家分享资料比较多,功能包安装方便

还有安装系统的时候,关于内存分配,最好自己找好教程,或者身边找个懂得,别把自己win系统搞崩了,别问我怎么知道的,经验之谈

我不是搞教学的,我是记录自己学习心得的,自己去购买古月老师的课程就好了,花钱买的才会珍惜学习。

逢场作戏,我也分享一个ros学习博客:

https://blog.csdn.net/weixin_40038847/article/details/82020565

课件:ROS机器人操作系统基础教程

https://download.csdn.net/download/qq_37372155/12087535

下面是古月老师的推荐:

四,实物搭建

我一直强调需求和能力的问题,所以实物搭建也是一样的,前面说了,实物不是我的重点,得益于我指导老师的帮助,给我了一个turtlebot2学习平台,有kuboki底盘,有kinnet深度相机,底盘用来移动,相机用来建图和识别,要想抓取,肯定还缺个机械臂,我们身边没有搞机械的同学,这次只有自己这个学控制的自己动手了(我没钱)。

1、深度相机or激光雷达

价格上激光雷达较深度相机贵,但适应性和图像质量比深度相机好点,深度相机做平面的slam有点大材小用了,在ROS里面的建图功能包是只是选取深度图像的一个切面,当然深度相机一般还可以提供常规的彩色图像,这里可以结合传统的图像处理,还有做抓取最好用到深度图像,从深度信息层面上去识别物体,包括位置和姿态,知道了位置和姿态,然后对机械臂进行逆运动学规划。(我只有kinect,没得选)

2、自己做条机械臂

不建议先做这部分,可以先把slam玩够了,再说这个

首先知道需要什么,要想知道需要什么,看看ROS提供什么,这里不是本篇文章的重点,所以我就直接说,ROS里面有个/joint_states话题,实时提供机械臂各关节弧度值,以及速度、加速度等信息,据此我们可以通过订阅这个话题,把弧度值转化为你所需要的控制信号,我这里用的是数字舵机,因此需要把弧度转化为PWM给到舵机。

好,ros这边提供的东西有了,那你应该也就清楚机械臂这个执行单元需要什么了,首先上位机把PWM信号给到机械臂,需要通信协议,哎,这样说也不是很清楚,直接上图

  我做的已经看到了,我说下还可以怎样改进

1、Arduino控制板可以省略,上网本直接用IIC和驱动板通信,由于上网本没有现成的通信例程可以用,而Arduino有,因此加了一块Arduino UNO

2、机械臂结构的选择,大都6自由度,连杆长度,关节绕哪个轴运动参考UR,ABB,KUKA这些大明星就好了,好的结构对后面运动规划影响很大,经验之谈

3、舵机的选择,不同位置可以考虑不同扭矩的,但这样也带来一个问题,不同扭矩的舵机需要的电压也不一定一样。另外推荐使用UART舵机,控制上面可以省点功夫,还有舵机最好有角度反馈,做控制的人最喜欢有反馈了。

4、连杆,我更愿意称它为舵机连接件,有条件的用3D打印机打印吧,随心所欲,够轻,够结实就好。要求不高的不想打印去某宝几百块钱买个便宜的不支持ROS那种改装一下也OK的。

我本身也在学习阶段,说的比较主观和局限,正规的教学去看古月老师的课程吧。

这篇文章也是自己第一次写,废话较多,主要在于分享心得,接下来的分享将从程序层面上来说。

完整代码github托管地址:https://github.com/pengxinyi-up/mobile-grab-Robot

【系列文章】

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(一)——准备工作

实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

【实战+源码】RGB-D移动抓取服务机器人(三)——3D目标识别定位(相机标定、ORK、linemod、find_object_2d/3d)

【实战+源码】RGB-D移动抓取服务机器人(四)——完结篇(ROS机器人、系统设计、运动规划、目标定位)

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(一)——准备工作相关推荐

  1. 基于深度学习的旋翼无人机机械臂抓取

    基于深度学习的旋翼无人机机械臂抓取 摘要:随着空中机器人技术的快速发展与日益成熟,无人机在越来越多的领域得到了广泛的应用.而多旋翼无人机作为最常用的无人机之一,以其体积小.运动灵活.定点悬停等优势广泛 ...

  2. 项目实战——基于计算机视觉的物体位姿定位及机械臂抓取(单目标定)

    项目实战--基于计算机视觉的物体位姿定位及机械臂抓取(单目标定) 请各位读者朋友注意,这里面很多东西涉及到我的毕设,写作辛苦,请勿滥用,转载请务必注明出处!         单目标定主要分为两个部分, ...

  3. 基于机器视觉的ROS机械臂抓取实验

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨曾三 来源丨 混沌无形 点击进入->3D视觉工坊学习交流群 摘要:为了减少机械臂在产品分类 ...

  4. 基于学习的机械臂抓取研究综述

    1.基于学习的机械臂抓取研究综述 Kleeberger, K., Bormann, R., Kraus, W. et al. A Survey on Learning-Based Robotic Gr ...

  5. Dobot magician机械臂抓取实战---前言

    一.机械臂抓取流程 二.常见的抓取方案 1.机械臂+2D相机(简单.成功率低) (1)RGB相机内参标定 (2)RGB与机械臂进行九点标定 2.机械臂+2D+3D相机(复杂.成功率高) (1)RGB相 ...

  6. ROS18.04+ Gazebo9 + robotiq85 视觉机械臂抓取仿真

    本文章参考博主光头明明的博客进行实现.但是由于明明版本为 kinetic + Gazebo7,实现时存在很多问题不好解决,因此通过此文章记录解决方法. 参考博主链接: https://blog.csd ...

  7. Dobot magician机械臂抓取实战---机器人导论(1)

    一.机器人的相关概念 位置和姿态的描述: 位置和姿态是描述物体的两个重要特性. 位置描述:在笛卡尔坐标系中,空间中的任意一点P点位置可用3*1的列向量表示, =. 姿态描述:构建末端执行器的坐标系{B ...

  8. 【实战+源码】RGB-D移动抓取服务机器人(四)——完结篇(ROS机器人、系统设计、运动规划、目标定位)

    毕业设计已经完成三个多月了,四月底答辩结束,上周办完离校手续!善始善终,最后一篇结束把这个题目告一段落! 完整代码github托管地址:https://github.com/pengxinyi-up/ ...

  9. 【实战+源码】RGB-D移动抓取服务机器人(三)——3D目标识别定位(相机标定、ORK、linemod、find_object_2d/3d)

    因为冠肺疫情的原因,在家效率不高,但时间充沛,就针对3D目标的相关东西梳理一下. 完整代码github托管地址:https://github.com/pengxinyi-up/mobile-grab- ...

最新文章

  1. eclipse保存自动组织导入、删除不必要的导入、格式化代码
  2. poj 2115 C Looooops(扩展欧几里德算法)
  3. JavaScript运算符的优先级(案例讲解)
  4. python基础之“换行符”的应用
  5. [Selenium] CSS3 选择器
  6. UI实用素材模板|app底部导航栏的图标可临摹素材,教你分析!
  7. Python学习总结之一 -- 基础篇
  8. 2018年机器学习算法工程师——秋招自我总结
  9. python+selenium+tkinter打造网易云音乐下载器
  10. 掌勤综合劳务管理系统
  11. sin2x麦克劳林公式_sinx泰勒公式展开
  12. phpmyadmin 安装下载使用教程
  13. 机器视觉:工业相机专业词汇中英文详解
  14. body加背景图片没反应_css设置背景图片不显示问题
  15. 【日常训练】2019-10-24am_xjoi结界[生与死的境界]/codeforces878E_贪心
  16. 程序员必知必会的那些邪恶的脚本
  17. python爬虫:案例三:去哪儿酒店价格信息
  18. 富友支付接口对接不是必填的值如何处理
  19. c语言表示整型变量,在表示 C语言的整型变量时,表示“无符号长整型”的符号是( )。...
  20. MSF编码+VS编译木马免杀

热门文章

  1. btrfs 使用方法
  2. 开模锻造压力机行业调研报告 - 市场现状分析与发展前景预测
  3. 李王张刘这些姓氏经常见了,那么这些姓氏你有没有见过?
  4. 窝囊少爷 第二章 冰火两重天
  5. 广义相对论的数学公式 | Mathematical formula of general relativity
  6. Tyvj P1143 飘飘乎居士的约会
  7. 单片机四路抢答器课程C语言设计,四路抢答器单片机课程设计.doc
  8. 【HIVE】 hive元数据查询语句集合
  9. 【iOS】知乎日报第二周总结
  10. 爬虫学习笔记-如何看api指向的网址