师兄和同门在做SLAM的时候,经常会用到的 octomap ,也就是八叉树地图。octomap相比于点云地图来说大大减小了地图的存储空间。既然octomap可以用于导航和避障,那么自然也可以导入moveit!,作为机械臂路径规划过程中的障碍物,方便机械臂和障碍物之间进行碰撞检测。 这里首先要提一下Movelt!并没有整合了物体识别和环境建模这些模块,而是利用传感器采集的数据导入的。而我的想法就
视觉抓取中非常重要的一个部分就是对抓取物体的识别,无论是二维图像还是三维点云,在ROS中都可以找到对应的功能包,https://blog.csdn.net/qq_34935373/article/details/103757619该篇博客就基于模板匹配算法的find_object_2d包进行了简单的测试,本次测试的是三维的物体识别的框架,该框架是基于物体的三维模型进行训练并识别,大致的思想也是模板
笛卡尔运动规划Python接口https://blog.csdn.net/qq_32618327/article/details/99966978 笛卡尔运动规划C++接口https://blog.csdn.net/flyfish1986/article/details/81189737 Moveit!官网API介绍:http://docs.ros.org/kinetic/api/move
之前的博客为了实现延时特定时间(4ms)并在这段时间内产生PWM波形,使用了两种方法,第一种通过计数的方式,比较low;第二种使用PRU的工业级定时器IEP,时钟频率200MHZ,使用也很简单。 但是随着实验的进行,因为是六自由度的机械臂,计划使用三块beaglebone来控制,也就是一块板子控制两个伺服电机,beaglebone自带两个PRU核,PRU1和PRU2,每个核都具有31个寄存器,
底层的电机控制已经基本完成,还需要解决的最后一个问题就是根据机械臂的运动,将机械臂的位姿状态信息发回到上位机的ROS,让RVIZ中的机械臂和现实中的机械臂保持一致。 目前没有反馈的信息发回到上位机,所以每当点击 Update ,然后Plan and Execute之后,机械臂都是从初始位置重新规划,而不是接着上一次运动到的位置作为起点规划。 在修改move_group配置文件的时候,做过如
每个PRU都连接着一个OCP主口,它允许访问linux主机设备对应的内存地址。此功能允许PRU控制通用GPIO的输入和输出状态。PRU可访问Linux主机内存,但是访问速度要慢上好几倍,因为内存访问需要路由到外部的PRU-ICSS,在通过PRU-ICSS接口从/OCP从口接收返回结果。 首先测试用 PRU 通过/OCP主口访问 通用 GPIO 口。 设备树覆盖层如下,用示波器连接beagl
上一篇博客为了实现延时特定时间(4ms)并在这段时间内产生PWM波形,方法是通过计算PWM的单次循环时间(PWM的周期),然后计算出循环次数,使用计数器计数,每次循环判断计数器的值是否等于循环次数。这种方法比较简单,对于不熟悉PRU 的我来说比较好用,对于只改变占空比不改变周期,延时时间不变的波形很容易实现,因为PWM的周期和延时是不变的,所以循环次数也不会改变,轮询检测就搞定了。 但是随着实
上位机的程序redwall_arm_server.cpp 功能是作为ROS的move_group客户端接收ROS规划的机械臂路点信息,进行三次样条插补获得各个关节或自由度的运动PVAT数据,然后通过TCP通信将处理好的数据发送给下位机的beaglebone轴控制器: /* ROS action server */ #include <ros/ros.h> #include &l
在之前的move_group界面中,当点击plan and execute之后,move_group就会帮我们规划出一条通往指定位姿的轨迹,发布在follow_joint_trajectory上,通过rostopic echo /redwall_arm/follow_joint_trajctory/goal,可以看到其中包含了positions: velocities: acceleration
通过ROS控制真实机械臂
博客
泡泡
积分
勋章
通过ROS控制真实机械臂(18) --- 构建 octocmap 用于碰撞检测和避障
通过ROS控制真实机械臂(17) --- 视觉抓取之ORK实现三维物体识别
通过ROS控制真实机械臂(14) --- 笛卡尔运动规划
通过ROS控制真实机械臂(13) --- PRU-ICSS 定时器 DMTIMER 实现定时功能
通过ROS控制真实机械臂(12) --- joint_states 消息的发布,更新机械臂位姿
通过ROS控制真实机械臂(11) --- 通过 PRU-ICSS 访问 GPIO 实现电机正反转
通过ROS控制真实机械臂(10) --- PRU-ICSS定时器 Industrial Ethernet Peripheral (IEP) 实现定时功能
通过ROS控制真实机械臂(9)---上、下位机和PRU程序
通过ROS控制真实机械臂(7)---三次样条插补
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信