搜索
bottom↓
回复: 38

【六轴机械臂 教程连载 】第一章 步进电机的闭环控制

  [复制链接]
(37745636)

出100入976汤圆

发表于 2020-7-11 12:54:20 | 显示全部楼层 |阅读模式
本帖最后由 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/proj ... r-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总线控制的,这样方便走线。
        而且参数配置也不方便,都是用按键或者是拨码开源。
        原理图我都设计改了,但是一直懒得去做,不知道有没有小伙伴帮个忙,一起学习学习。
       
       

        最后,祝大家周末快乐,分享以下我的午餐哈哈
       




       

       

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(37744990)

出0入10汤圆

发表于 2020-7-11 13:05:06 | 显示全部楼层
哇 顶一下!!楼主可以写一个关于这些开源中电机加减速的 一个专题!!   ps  最后一个图怎么肥事。鲍鱼啊  虾
(37743239)

出0入0汤圆

发表于 2020-7-11 13:34:17 | 显示全部楼层
不错,楼主细化讲下,
(37743188)

出55入66汤圆

发表于 2020-7-11 13:35:08 | 显示全部楼层
我以前也diy过机械臂,精度惨不忍睹
(37743114)

出0入0汤圆

发表于 2020-7-11 13:36:22 来自手机 | 显示全部楼层
我只羡慕楼主这小日子
(37742308)

出0入0汤圆

发表于 2020-7-11 13:49:48 来自手机 | 显示全部楼层
午餐不错^_^,在哔哩哔哩上看到过这个人的视频…
(37742152)

出20入36汤圆

发表于 2020-7-11 13:52:24 | 显示全部楼层
哪位大神介绍一下https://innfos.com/
这个公司感觉很牛逼啊~
(37741979)

出40入42汤圆

发表于 2020-7-11 13:55:17 | 显示全部楼层
看了楼主的午餐,我觉得自己刚才吃午餐的是渣渣
(37741068)

出0入0汤圆

发表于 2020-7-11 14:10:28 | 显示全部楼层
楼主上来就放大招。厉害!持续关注
(37740077)

出0入12汤圆

发表于 2020-7-11 14:26:59 | 显示全部楼层
楼主厉害了!
午餐都是增强X功能的菜,晚上要大干啊
(37739384)

出0入0汤圆

发表于 2020-7-11 14:38:32 | 显示全部楼层
感谢楼主回归.
(37738558)

出20入29汤圆

发表于 2020-7-11 14:52:18 | 显示全部楼层
厉害厉害,收藏 一下
(37735777)

出0入0汤圆

发表于 2020-7-11 15:38:39 | 显示全部楼层
强帖留名!
(37734207)

出0入0汤圆

发表于 2020-7-11 16:04:49 | 显示全部楼层
第二个项目是杨工的!收费的
(37734018)

出100入0汤圆

发表于 2020-7-11 16:07:58 来自手机 | 显示全部楼层
很用心,正想了解学习下这块
(37732620)

出200入0汤圆

发表于 2020-7-11 16:31:16 来自手机 | 显示全部楼层
关注一下
(37731920)

出0入0汤圆

发表于 2020-7-11 16:42:56 来自手机 | 显示全部楼层
留名留名
(37731408)

出0入0汤圆

发表于 2020-7-11 16:51:28 | 显示全部楼层
居然有鲍鱼
(37729947)

出0入0汤圆

发表于 2020-7-11 17:15:49 | 显示全部楼层
伙食真好
(37727883)

出0入0汤圆

发表于 2020-7-11 17:50:13 | 显示全部楼层
可以详细讲下
(37726342)

出0入0汤圆

发表于 2020-7-11 18:15:54 | 显示全部楼层
头像是本人? 楼主玩的high啊!
(37670143)

出0入0汤圆

发表于 2020-7-12 09:52:33 来自手机 | 显示全部楼层
楼主厉害了
(37476190)

出0入0汤圆

发表于 2020-7-14 15:45:06 | 显示全部楼层
确实不错,可以解决打印机丢步问题,还静音
(37474590)

出0入0汤圆

发表于 2020-7-14 16:11:46 来自手机 | 显示全部楼层
几年前做三轴的时候用过步进电机,做了S形加减速,闭环的没接触过
(37464386)

出0入0汤圆

发表于 2020-7-14 19:01:50 | 显示全部楼层
你好楼主,对闭环控制没有接触过。看了一下第二个开源项目的代码,有一些地方不解,请赐教。
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°了,定位的精度怎么保证的?
谢谢!
(37459786)

出11110入3729汤圆

发表于 2020-7-14 20:18:30 来自手机 | 显示全部楼层
打赏50汤圆!

庆祝论坛“打赏”功能实施, 现在开始发技术主题,可以获得打赏
https://www.amobbs.com/thread-5735948-1-1.html
(37449636)

出100入976汤圆

 楼主| 发表于 2020-7-14 23:07:40 | 显示全部楼层
thepresent 发表于 2020-7-14 19:01
你好楼主,对闭环控制没有接触过。看了一下第二个开源项目的代码,有一些地方不解,请赐教。
1:驱动芯片A4 ...

很抱歉,你理解的好像都不对
1、vref 是调整电流大小的, pwm要结合一阶RC滤波电路,最终是调节电压的,从 vref 这个词就可以看出来,具体公式可以看A4954芯片数据手册
2、前面差不多对吧, “电流大小是不是决定了电机的转动速度”不对,是控制力矩,不仅电机速度不是电流大小控制的,可以去了解一下步进电机的原理,里面线圈的绕制原理
3、步进电机的速度直接是接收脉冲决定的,这个y=1.5 应该是A、B相电流变化最小分辨率,没细看
(37189478)

出0入0汤圆

发表于 2020-7-17 23:23:38 | 显示全部楼层
楼主可以开课说一些开源的控制算法吗?
(37156279)

出0入0汤圆

发表于 2020-7-18 08:36:57 来自手机 | 显示全部楼层
厉害厉害,收藏
(36279957)

出100入976汤圆

 楼主| 发表于 2020-7-28 12:02:19 | 显示全部楼层
补充一个开源六轴机械臂项目:AR3 Robot
https://www.anninrobotics.com/

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
(36265991)

出0入0汤圆

发表于 2020-7-28 15:55:05 | 显示全部楼层
mjz1122 发表于 2020-7-11 16:04
第二个项目是杨工的!收费的

我买了
(36262824)

出0入0汤圆

发表于 2020-7-28 16:47:52 | 显示全部楼层
楼主午餐有鲍鱼吃。这种大小的鲍鱼,我们这里海鲜市场最少要五元一只。这顿饭食材成本得30块钱。
(36258046)

出0入0汤圆

发表于 2020-7-28 18:07:30 来自手机 | 显示全部楼层
AE007 发表于 2020-7-28 15:55
我买了

有资料可以分享一下吗
(36203980)

出0入0汤圆

发表于 2020-7-29 09:08:36 | 显示全部楼层
实际效果如何?
(36201349)

出0入0汤圆

发表于 2020-7-29 09:52:27 | 显示全部楼层
没看到闭环控制代码分析
(33092307)

出100入101汤圆

发表于 2020-9-3 09:29:49 | 显示全部楼层
LZ提到:这三个项目的方案都比较适合3d打印机上的应用,比较不适合机械臂上的应用,为什么?
(33061616)

出0入0汤圆

发表于 2020-9-3 18:01:20 | 显示全部楼层
学习,学习
(29614973)

出0入0汤圆

发表于 2020-10-13 15:25:23 | 显示全部楼层

留名留名
(29592759)

出0入0汤圆

发表于 2020-10-13 21:35:37 | 显示全部楼层
这个鲍鱼是什么吃法啊?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 ( 公安交互式论坛备案:44190002001997 粤ICP备09047143号 )

GMT+8, 2021-9-21 09:48

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表