- 博客(27)
- 收藏
- 关注
原创 aubo i5 + realsense D435i识别抓取实践四
aubo i5 + realsense D435i识别抓取实践四]前言一、抓取思路和流程二、部分实现代码1.结构体定义2.获取工件位置信息3.发布工件坐标系4.计算各个关键点的姿态5.机械臂初始化操作6.机械臂执行总结前言前面已经通过手眼标定得到了相机与机械臂末端的位姿关系,然后又通过物体识别得到了物体在相机坐标系下的位姿,这样我们就可以得到物体相对机械臂末端或者物体相对机械臂基坐标的位姿,最后实现对物体的抓取。一、抓取思路和流程这里首先梳理一下抓取思路流程:根据物体在相机下的位姿建立一个临时的
2020-09-24 11:31:39
3608
6
原创 aubo i5 + realsense D435i识别抓取实践三
aubo i5 + realsense D435i识别抓取实践三前言一、安装ORK二、安装couchDB数据库并添加模型1.安装数据库2.验证数据库安装成功3.在数据库中创建一条可乐罐模型的数据4.训练模型三、物体识别1.启动realsense相机2.修改识别配置文件3.运行识别程序前言前面完成了相机与机械臂的手眼标定,接下来我们将使用realsense D435i进行物体识别来获取相机坐标系下物体的位置信息。这里我们用到的核心工具是ORK (Object Recognition Kitchen) ,
2020-09-24 11:03:24
3916
2
原创 aubo i5 + realsense D435i识别抓取实践二
aubo i5 + realsense D435i识别抓取实践二前言一、手眼标定是什么?二、标定软件安装1.aruco_ros安装2.vision_visp安装3.easy_handeye安装4.realsense驱动安装5.安装realsense ROS软件包三、配置1.launch文件修改2.打印二维码四、手眼标定1.启动launch文件2.标定步骤3.发布tf关系前言前面配置好了aubo机械臂的ROS软件包,机械臂可以正常运行后,接下来我们进行机械臂与相机的手眼标定。手眼标定分为eye_on_ha
2020-09-24 10:45:45
5262
7
原创 aubo i5 + realsense D435i识别抓取实践一
aubo i5 + realsense D435i识别抓取实践一前言一、下载编译aubo机械臂ROS包1.创建工作空间2.aubo ROS软件包二、moveit仿真1.启动moveit和规划器2.启动gazebo三、连接机器人并控制机器人1.启动机械臂launch文件总结1.编译或启动时找不到moveit库或者找不到moveit库0.9.15版本2.aubo包与moveit包放在一起编译出错,提示package冲突前言运行环境系统:ubuntu 16.04ROS: kineticMoveit :
2020-09-24 10:23:10
3544
8
原创 git与github的使用方法
git使用方法一、git与github是什么什么是git?Git和GitHub的区别?二、git常用指令三、建立本地git仓库1.安装git2.创建本地仓库三、在github上创建仓库一、git与github是什么什么是git?git是一个分布式版本管理工具。可以进行:(1) 记录代码的修改删除过程;(2) 代码回溯;(3) 分支管理;(4) 便于团队协作;(5) 可以本地使用,无需联网。Git和GitHub的区别?GitHub可以远程托管git库,并提供了一个web界面。下载git管理
2020-09-22 13:34:40
224
1
原创 ROS基础九之gazebo仿真
gazebo仿真系统配置gazebo仿真环境搭建URDF文件配置launch文件配置运行系统配置gazebo仿真环境搭建URDF文件配置launch文件配置运行
2020-09-07 07:51:09
5609
2
原创 ROS基础四之roscpp/rospy节点编写
roscpp/rospy编写subscriber/listener编写roscpp实例rospy实例service/client编写roscpp实例rospy实例actionlib编写roscpp实例rospy实例subscriber/listener编写roscpp实例rospy实例service/client编写roscpp实例rospy实例actionlib编写roscpp实例rospy实例...
2020-09-02 08:38:36
1214
原创 ROS基础五之launch文件
launch文件launch语法launch文件关键字launch文件实例launch语法launch文件关键字launch文件实例
2020-09-02 07:37:42
817
原创 ROS基础三之自定义msg/srv/action
自定义msg/srv/action自定义msg自定义srv自定义action自定义msg/srv/action编译与使用自定义msg自定义srv自定义action自定义msg/srv/action编译与使用
2020-08-30 19:25:35
1010
原创 ROS基础二之工作空间与功能包
工作空间与功能包工作空间与功能包工作空间与功能包定义创建工作空间创建功能包编译功能包工作空间与功能包工作空间与功能包定义ROS的工作空间是指ROS运行时搜索的工作目录,通常用来编译、运行、管理功能包。功能包是指用户或作者根据不同功能定义的功能模块,是ROS中最小的管理单元,一个功能包中通常包含src源文件夹、launch文件夹、include头文件夹、script文件夹、config文件夹、package.xml、CMakeLists.txt。src源文件:通常将.cpp文件放在该目录下lau
2020-08-30 13:16:14
997
原创 ROS基础一之ROS常用指令集合
ROS常用指令集合1.功能包相关指令2.topic相关指令3.service相关指令4.msg/srv相关指令5.param相关指令6.node相关指令7.rqt相关指令8.消息录制与回放指令9.故障诊断相关指令10.调试相关配置1.功能包相关指令2.topic相关指令3.service相关指令4.msg/srv相关指令5.param相关指令6.node相关指令7.rqt相关指令8.消息录制与回放指令9.故障诊断相关指令10.调试相关配置...
2020-08-30 10:49:48
3518
原创 零基础学C++之高级篇四
零基础学C++之高级篇四零基础学C++之高级篇四文件操作流简介C++中的流类库类库的使用IOS类中的枚举类型流的输入/输出文件打开打开方式默认打开方式打开文件同时创建文件文件读写文件流写文本文件读取文本文件二进制文件的读写实现文件复制文件指针移动操作文件错误与状态文件的追加文件结尾的判断在指定位置读写文件文件和流的关联和分离删除文件零基础学C++之高级篇四文件操作流简介C++中的流类库类...
2020-04-14 20:51:07
1977
原创 零基础学C++之高级篇三
零基础学C++之高级篇三零基础学C++之高级篇三RTTI与异常处理RTTI(运行时类型识别)什么是RTTIRTTI与引用RTTI与多重继承RTTI映射语法异常处理抛出异常异常捕获异常匹配标准异常零基础学C++之高级篇三RTTI与异常处理RTTI(运行时类型识别)什么是RTTIRTTI与引用RTTI与多重继承RTTI映射语法异常处理抛出异常异常捕获异常匹配标准异常...
2020-04-11 22:05:08
267
原创 零基础学C++之高级篇二
零基础学C++之高级篇二零基础学C++之高级篇二STL标准模板库序列容器向量类模板双端队列类模板链表类模板关联式容器set类模板mutliset类模板map类模板mutlimap类模板算法非修正序列算法修正序列算法排序算法数值算法迭代器输出迭代器输入迭代器前向迭代器双向迭代器随机访问迭代器零基础学C++之高级篇二STL标准模板库序列容器向量类模板双端队列类模板链表类模板关联式容器s...
2020-04-11 21:36:59
398
原创 零基础学C++之高级篇一
零基础学C++之高级篇一零基础学C++之高级篇一模板函数模板函数模板的定义函数模板的作用重载函数模板类模板类模板的定义与声明简单类模板设置默认模板参数为具体类型的参数提供默认值有界数组模板模板的使用定制类模板定制类模板成员函数链表类模板链表链表类模板类模板的静态数据成员零基础学C++之高级篇一模板模板是C++的高级特性,分为函数模板和类模板。模板使程序员能够快速建立具有类型安全的类库集合和函...
2020-04-10 20:44:49
190
原创 零基础学C++进阶篇四
零基础学C++进阶篇四零基础学C++进阶篇四继承与派生继承类的继承继承后可访问性构造函数访问顺序子类显示调用父类构造函数子类隐藏父类的成员函数重载运算符重载运算符的必要性重载运算符的形式与规则重载运算符的运算转换运算符多重继承多重继承定义二义性多重继承的构造顺序多态虚函数概述利用虚函数实现动态绑定虚继承抽象类零基础学C++进阶篇四继承与派生继承类的继承继承后可访问性构造函数访问顺序子...
2020-04-08 22:35:47
162
原创 零基础学C++之进阶篇三
零基础学C++之进阶篇三零基础学C++之进阶篇三类和对象c++类类概述类的声明与定义类的实现对象的声明构造函数构造函数概述复制构造函数析构函数类成员访问类成员内联成员函数静态类成员隐藏的this指针嵌套类局部类友元友元概述友元类友元方法命名空间定义命名空间使用命名空间在多个文件中定义命名空间定义嵌套的命名空间定义未命名的命名空间零基础学C++之进阶篇三类和对象c++类类概述类的声明与定义...
2020-04-06 16:15:31
463
原创 零基础学C++之进阶篇二
零基础学C++之进阶篇一零基础学C++之进阶篇一结构体与共用体结构体结构体定义结构体变量结构体成员及初始化结构体的嵌套结构体大小重命名数据类型结构体与函数结构体变量做函数参数结构体指针做函数参数结构体数组结构体数组声明与引用指针访问结构体数组共用体共用体的定义与声明共用体的大小共用体的特点枚举类型枚举类型的声明枚举类型变量枚举类型的运算零基础学C++之进阶篇一结构体与共用体结构体结构体定义...
2020-04-05 20:18:09
139
原创 零基础学C++之进阶篇一
零基础学C++之进阶篇一零基础学C++之进阶篇一数组、指针、引用一维数组一维数组的声明一维数组的引用一维数组的初始化二维数组二维数组的声明二维数组的引用二维数组的初始化字符数组指针变量与指针指针运算符和取地址运算符指针运算指向空的指针和空类型指针指向常量的指针和指针常量指针与数组指针与一维数组指针与二维数组指针与字符数组指针在函数中的应用传递地址指向函数的指针从函数中返回指针指针数组引用引用概述使...
2020-04-05 12:10:50
157
原创 零基础学C++之基础篇四
零基础学C++之基础篇四函数函数概述函数的定义函数的声明函数的参数及返回值空函数形参与实参默认参数可变参数函数调用传值调用嵌套调用递归调用变量作用域重载函数内联函数变量的存储类别auto变量static变量register变量extern变量函数程序是由函数组成的,一个函数就是程序中的一个模块。函数既可以互相调用,也可以将互相联系密切的语句放在一个函数内,还可以将复杂的函数分解成多个子函数。...
2020-04-02 23:22:57
296
原创 零基础学c++之基础篇三
零基础学C++之基础篇三零基础学C++之基础篇三条件判断语句决策分支判断语句if语句if...else语句if...else if语句条件运算符——三目运算符switch语句判断语句的嵌套循环语句while和do...while循环for循环循环控制循环嵌套零基础学C++之基础篇三条件判断语句决策分支计算机的主要功能是提供用户计算功能,但在计算的过程中会遇到各种各样的情况,针对不同的情况会...
2020-04-01 22:52:56
257
原创 零基础学C++之基础篇二
零基础学C++之基础篇一零基础学C++之基础篇二运算符算术运算符关系运算符逻辑运算符赋值运算符位运算移位运算符条件运算符结合性和优先级零基础学C++之基础篇二运算符是指可以进行运算操作的符号。提供给运算符进行操作的数值称为操作数,由于所有的操作数都可以返回一个值,因此它们都是表达式。C++中有好几类运算符,其中最常用的是赋值运算符和数学运算符。凡是用于计算值的操作都可以看作是表达式,,表达式...
2020-03-30 23:26:48
180
原创 零基础学C++之基础篇一
C++基础篇一常量及符号整型常量实型常量字符常量字符串常量变量标识符插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入常量及符号常量是程序运行过程中不可改变的数值,常量可分为整型...
2020-03-29 11:11:01
361
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人