【六轴机械臂 教程连载 】第一章 步进电机的闭环控制
本帖最后由 linccfzu 于 2020-7-11 12:54 编辑这里和大家分享一个 github 上开源的 六轴3D打印机械臂 ,分享一些在制作过程中学到的一些知识点
1、步进电机的闭环控制,以及加减速控制
2、机械臂控制中涉及的正向运动学和反向运动学
3、Matlab Robotics Toolbox的Dobot机械臂运动规划
4、ROS MoveIt 路径规划等;
这东西比较费钱,而且我学的不是很深,所以在这里只能分享一些学习过程,一些学习资料。
六轴3D打印机械臂效果图如下:
我自己做了一个,效果图如下:
不要问我为什么一半白一半黑,因为黑的是自己打印机打印,白的是网上光敏树脂打印的,太贵了打印不起。精度要求高的我就网上打,结构简单的我就自己打印。光打印结构就花了我大几百。
这个开源地址是:
https://github.com/SkyentificGit/SmallRobotArm
其中包含详细的组装教程,以及硬件接线教程。
我几年前还做过一个三轴的:
这个具体以前哪里找了我也忘了,不过类似这种结构的网上有很多,分享一个类似的,大家可以参考:
https://www.thingiverse.com/thing:1774473
还有我觉得最帅的还是这个,但是这个太贵了买不起,而且不开源也无法DIY,这个是无刷电机驱动的:
介绍地址:
https://www.kickstarter.com/projects/1383636492/the-smallest-servomotor-robotic-arm/posts
步进电机闭环控制器 开源项目介绍
机械臂要讲的内容有很多,今天主要介绍一些 步进电机的闭环控制 , 要提高机械臂的运动精度,很重要的还是控制器的控制算法。
要学习软件控制算法最简单直接的方式就是 看一些开源项目的代码,理解其中的奥妙。
第一个项目:Mechaduino
项目介绍:https://hackaday.io/project/11224-mechaduino
开源地址:https://github.com/jcchurch13
第二个项目:HyperStepper
开源地址:https://diy.sz.l.c.s.c.[把点去掉]com/p/HyperCNC/yi-ti-hua-di-cheng-ben-gao-su-gao-jing-du-quan-bi-huan-bu-jin-dian-ji
这个估计是在第一个基础上优化的,也是很不错。
第三个项目:MKS-SERVO42B
开源地址:https://github.com/makerbase-mks/MKS-SERVO42B
这个代码写的最好,值得学习。
这里就先介绍这些,具体的控制原理,代码理解,有点基础的应该看得懂,而且我也不怎么会文字表达,就先不细讲了。有需要的留言,我再出个原理、代码的细讲。
还有,这三个项目的方案都比较适合3d打印机上的应用,比较不适合机械臂上的应用,因为每个控制器都有三根控制线,如果6个控制器就要18+2根线,最好是能做一个485总线控制的,这样方便走线。
而且参数配置也不方便,都是用按键或者是拨码开源。
原理图我都设计改了,但是一直懒得去做,不知道有没有小伙伴帮个忙,一起学习学习。
最后,祝大家周末快乐,分享以下我的午餐哈哈
哇 顶一下!!楼主可以写一个关于这些开源中电机加减速的 一个专题!!{:lol:} ps最后一个图怎么肥事。鲍鱼啊虾 不错,楼主细化讲下, 我以前也diy过机械臂,精度惨不忍睹 我只羡慕楼主这小日子 午餐不错^_^,在哔哩哔哩上看到过这个人的视频… 哪位大神介绍一下https://innfos.com/
这个公司感觉很牛逼啊~ 看了楼主的午餐,我觉得自己刚才吃午餐的是渣渣 楼主上来就放大招。厉害!持续关注 楼主厉害了!
午餐都是增强X功能的菜,晚上要大干啊{:lol:} 感谢楼主回归. 厉害厉害,收藏 一下 强帖留名! 第二个项目是杨工的!收费的{:titter:} 很用心,正想了解学习下这块 关注一下 留名留名 居然有鲍鱼 伙食真好 可以详细讲下 头像是本人? 楼主玩的high啊! 楼主厉害了 确实不错,可以解决打印机丢步问题,还静音
几年前做三轴的时候用过步进电机,做了S形加减速,闭环的没接触过 你好楼主,对闭环控制没有接触过。看了一下第二个开源项目的代码,有一些地方不解,请赐教。
1:驱动芯片A4954的VREF引脚是不是利用PWM来实现步进电机的细分控制?
2:第二个项目中void Output(float theta,uint8_t effort) 函数应该是实现电机步进的主要函数了, 其中参数theta是不是角度的细分值,effort是不是代表了PID调节后的电流大小,这个电流大小是不是决定了电机的转动速度?
3:另外中断函数TIM6_IRQHandler里面有一个y+=1.5,注释说是Phase Advance,这样的话最后会不会多走1.5°了,定位的精度怎么保证的?
谢谢! 打赏50汤圆!
庆祝论坛“打赏”功能实施, 现在开始发技术主题,可以获得打赏
https://www.amobbs.com/thread-5735948-1-1.html thepresent 发表于 2020-7-14 19:01
你好楼主,对闭环控制没有接触过。看了一下第二个开源项目的代码,有一些地方不解,请赐教。
1:驱动芯片A4 ...
很抱歉,你理解的好像都不对
1、vref 是调整电流大小的, pwm要结合一阶RC滤波电路,最终是调节电压的,从 vref 这个词就可以看出来,具体公式可以看A4954芯片数据手册
2、前面差不多对吧, “电流大小是不是决定了电机的转动速度”不对,是控制力矩,不仅电机速度不是电流大小控制的,可以去了解一下步进电机的原理,里面线圈的绕制原理
3、步进电机的速度直接是接收脉冲决定的,这个y=1.5 应该是A、B相电流变化最小分辨率,没细看 楼主可以开课说一些开源的控制算法吗? 厉害厉害,收藏 补充一个开源六轴机械臂项目:AR3 Robot
https://www.anninrobotics.com/
mjz1122 发表于 2020-7-11 16:04
第二个项目是杨工的!收费的
我买了{:titter:} 楼主午餐有鲍鱼吃。这种大小的鲍鱼,我们这里海鲜市场最少要五元一只。这顿饭食材成本得30块钱。 AE007 发表于 2020-7-28 15:55
我买了
有资料可以分享一下吗 实际效果如何? 没看到闭环控制代码分析 LZ提到:这三个项目的方案都比较适合3d打印机上的应用,比较不适合机械臂上的应用,为什么? 学习,学习
留名留名 这个鲍鱼是什么吃法啊? https://github.com/makerbase-mks/MKS-SERVO42B楼主这个地址失效了,能否帮忙发一下资料 谢谢分享。 AE007 发表于 2020-7-28 15:55
我买了
(引用自31楼)
你好,他的店找不到了,资料能分享下不。
页:
[1]