说一说关节机械手臂和"运动学"那些事
本帖最后由 逍遥李 于 2021-10-16 13:35 编辑#申请原创#
@21小跑堂 @21小跑堂 @21小跑堂
先说下背景:前段时间做了一个机械臂的模型,参考的是比较经典常见的结构,两关节的,带夹爪算是3个自由度,自己玩玩。
一、硬件平台介绍:
1.1)先来看看夹爪,使用SG90舵机,加上两个齿轮(缺齿齿轮),底部一个固定片,第一次玩这个,都按简单的来设计的,短视频无法直接传,回头放链接,下面是截图可以看清楚。
1.2)看看装配起来的整个机械臂效果,当时是为一个履带车设计的,准备装在车的前装甲上,所以夹爪的角度是对地面有点夹角,不过也不怎么影响抓取,视频最后传上来再放
二、控制与运动
其实机械臂结构很简单的,难的是控制,就目前应用中的机械臂来说,其运动学可以分为正运动学和逆运动学。
正运动学就是“控制各关节参数让机械臂的爪子到达空间某一点”,说简单点就是把一个东西搬到某处;
而逆运动学与之相反,是“已知空间某一点,计算各关节参数从而让机械臂夹爪到达该点”。换句话说就是:去空间某一点抓取某物,这个过程对于我们人类来说简直不要太简单,但对于机械臂来说非常麻烦,很多时候是有多组解。
今天我就这个最简单的机械臂,聊一下正运动学问题
首先对这个机械臂的关节进行简化,夹爪那块就不管了,把它简化成一个点D,如图:
图中,OC和OA两杆其实就是两个舵机驱动的动力臂。接下来就是正运动学中,使用OA和OC两杆的长度L1,L2,以及其各自对X轴夹角α,β这四个参数来表达D点在XOY中坐标系的坐标,乍一看不好理解,看明白了这个推导过程说简单也简单。
这里有两种方法:
2.1)直接用坐标变换,步骤有点多,不好打字,上图:
上面的过程,就是先对坐标系旋转,再平移。
2.2)如果没有学过坐标变换或者矩阵有点不好理解,那看看下面这种初中解法,学过几何就能理解:
看看两种方法,对比发现结果是一样的。
三)程序
关于运动学这些我现在还没使用,只是做了一个蓝牙遥控,通过APP遥控每个关节动作,哈哈。
另外,还写了一个连续的动作,可以抓取,提升,释放(见视频展示)。
https://v.youku.com/v_show/id_XNTgxMjc1MzA0NA==.htmlhttps://v.youku.com/v_show/id_XNTgxMjY0MDcwMA==.html
程序使用的是mixly,图形界面,因为后面考虑带小孩玩的,直接上代码小孩接受不了,图形界面就友好多了,理解也容易。
四)改进版本的机械爪
楼下网友@LcwSwust提醒注意舵机扫齿,重新设计了一个带弹簧的机械爪
https://v.youku.com/v_show/id_XNTgxMzM2NjcwOA==.html
模型搞定后,开始切割,大概2分钟切好
部分零件设计的有“水口”,是为了防止切割内部形状时外部脱离,所以最后可能需要手工处理一下
最后,关键的还要找一只弹簧,这里就用圆珠笔里面常用的那种,切开,分成两段长度差不多
最后,就是这些零件,按照设计图装配起来
总结一下实际效果:
首先,的确可以避免扫齿,当夹取宽度较打的目标时候,爪子的末端关节是无法回归到设计位置的,但是由于弹簧的作用,也可以保持一定的加持力,同事,爪子的始端关节也就是连接舵机的关节,是可以自由运动的,可以准确运动到程序控制的角度,也就避免了扫齿现象。
不足之处:弹簧的拉力不是太足,需要选更合适的弹簧。
本帖最后由 逍遥李 于 2021-10-16 13:33 编辑
占个楼,后续有新改进放到这里。
程序:使用的是米思齐这个工具,家里有小学生的可以了解下,非常适合少儿编程,免费的,好上手。
第二版夹爪的切割过程
https://v.youku.com/v_show/id_XNTgxMzY1MDc4MA==.html
不怕扫齿? LcwSwust 发表于 2021-10-13 08:48
不怕扫齿?
你是说关节臂的驱动舵机吗?所以程序里面要限制好每个舵机的极限位置,不能超过这个角度,当时我是用手机遥控点动,每次增加一度,串口打印的角度,然后重新写回去就好了 逍遥李 发表于 2021-10-13 08:59
你是说关节臂的驱动舵机吗?所以程序里面要限制好每个舵机的极限位置,不能超过这个角度,当时我是用手机 ...
是啊,夹爪也是,换作金属齿舵机应该能好些。
也可在传动部件间加弹簧之类的用于限制力度。
如果能从电路上控制力矩就更好了,比如给舵机供电加限流措施。
LcwSwust 发表于 2021-10-13 09:42
是啊,夹爪也是,换作金属齿舵机应该能好些。
也可在传动部件间加弹簧之类的用于限制力度。
如果能从电路 ...
是的是的,这个跟定只能低载荷玩玩的,金属齿轮好点 关节舵机换成减速步进电机会不会更好玩? cjseng 发表于 2021-10-13 11:20
关节舵机换成减速步进电机会不会更好玩?
是的,力矩会更大,但是这样以来绝对位置需要特殊处理一下,需要给每个关节加装零位置传感器。 cjseng 发表于 2021-10-13 11:20
关节舵机换成减速步进电机会不会更好玩?
是的,力矩会更大,但是这样以来绝对位置需要特殊处理一下,需要给每个关节加装零位置传感器。 逍遥李 发表于 2021-10-13 12:40
是的,力矩会更大,但是这样以来绝对位置需要特殊处理一下,需要给每个关节加装零位置传感器。 ...
我以前用舵机做过一个小东西,发现舵机使用寿命不长,齿轮会被扫坏,后来干脆用步进了,每个电机加个微动开关作为零点,每次开机,先执行归零动作。
不知道你做的这个是多轴联动,还是一个个轴单独动,一个轴到位了,再动下一个。多轴联动的话,插补运算量比较大。 cjseng 发表于 2021-10-13 12:57
我以前用舵机做过一个小东西,发现舵机使用寿命不长,齿轮会被扫坏,后来干脆用步进了,每个电机加个微动 ...
嗯嗯 有道理,我这个不是联动的,逐个动,第一次玩这种机械臂,可以考虑用步进,就是不知道步进电机齿轮如何啊 逍遥李 发表于 2021-10-13 13:04
嗯嗯 有道理,我这个不是联动的,逐个动,第一次玩这种机械臂,可以考虑用步进,就是不知道步进电机齿轮 ...
步进是开环控制,给多少脉冲就走几步,就算失步了,走过头就走过头,不会纠正。舵机走过头会自动纠正,弄得不好,就会在目标点位置抖动,齿轮容易坏。
步进电机一般不带齿轮,减速箱是另外的,只不过装配到一起了,当然舵机内部也是个电机。
有一种带减速机的步进,几块钱一个,一圈6400步。
cjseng 发表于 2021-10-13 13:14
步进是开环控制,给多少脉冲就走几步,就算失步了,走过头就走过头,不会纠正。舵机走过头会自动纠正,弄 ...
{:handshake:}原来如此,学习了!多谢!下次再搞就试试这个方案 买一套给孩子玩挺好的 地瓜patch 发表于 2021-10-13 14:46
买一套给孩子玩挺好的
{:lol:} 感兴趣的话,帮你切一套啊,舵机和控制器自己准备{:loveliness:},我还准备再优化一下…… 优秀~~
Gavin3389 发表于 2021-10-22 09:06
优秀~~
谢谢{:handshake:} 激光切割机多少钱搞的? zengjuanyu 发表于 2021-10-22 16:54
激光切割机多少钱搞的?
两千多,不算贵的,四五十瓦就好了
页:
[1]
2