作者kennykobe (凤山下智久)
看板Mechanical
标题Re: [问题] 步进马达如何归零
时间Tue Oct 17 10:38:01 2017
※ 引述《kennykobe (凤山下智久)》之铭言:
: 目前现在用Raspberry pi控制步进马达来转,不过目前遇到的问题是
: 4个步进马达转好几百圈之後,每一个步进马达停的位置都不一样
: 不清楚是因为每一个步进马达买来之後,原始的位置就不同
: 还是因为程式方面没有做让步进马达归零的动作,目前使用的步进马达是5V步进马达(4相
: 5线 28BYJ-48-5V)
: 程式码如下:
: def forward( steps ):
: for i in range( steps ):
: setStep(0, 1, 1, 0)
: time.sleep(0.01)
: setStep(1, 1, 0, 0)
: time.sleep(0.01)
: setStep(1, 0, 0, 1)
: time.sleep(0.01)
: setStep(0, 0, 1, 1)
: time.sleep(0.01)
: setStep(0, 1, 1, 0)
: def backward( steps ):
: for i in range( steps ):
: setStep(0, 0, 1, 1)
: time.sleep(0.01)
: setStep(1, 0, 0, 1)
: time.sleep(0.01)
: setStep(1, 1, 0, 0)
: time.sleep(0.01)
: setStep(0, 1, 1, 0)
: time.sleep(0.01)
: setStep(0, 0, 1, 1)
: def setStep(w1, w2, w3, w4):
: GPIO.output(coil_A_1_pin, w1)
: GPIO.output(coil_A_2_pin, w2)
: GPIO.output(coil_B_1_pin, w3)
: GPIO.output(coil_B_2_pin, w4)
: setStep(0, 0, 0, 0)
: forward(45)
: backward(45)
: 请各位大大帮忙解惑了,感激不尽!!
目前参考了这个网站,想采用第2种方式
http://www.555motor.com/news/821.php
想请问各位大大有没有做过呢? 需要准备什麽东西呢?
还是有网站或教学影片呢? Thanks!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.248.18.139
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Mechanical/M.1508207886.A.840.html
1F:推 woodsy: 1,2种就是大家在讲的 第三种没看过 无法理解作用方法 10/17 10:43
觉得第2种比第1种好做,大大知道怎麽做吗?需要买什麽感测器呢?
※ 编辑: kennykobe (60.248.18.139), 10/17/2017 10:57:12
2F:推 L7C4: 搜寻光遮断器或光电素子 10/17 14:23
3F:推 woodsy: 一般位置感应器就好 归零机构意义上就是位置而已 10/17 14:33
4F:→ woodsy: 第一种也是一样的意思 只是一个用感应器确认位置 10/17 14:33
5F:→ woodsy: 一个用撞墙来归位 我觉得你想得太复杂了 10/17 14:34
感谢大大,因为没碰过也没听过这些东西,所以都没有什麽想法@@
照大大这样解释,感应器只是用来确定步进马达有走到设定的归零位置,那归零这动作
是让步进马达停止吗(切掉Raspberry Pi跟步进马达的GPIO讯号)?
※ 编辑: kennykobe (60.248.18.139), 10/17/2017 15:52:26
6F:→ wisdom: 第三种就是步进驱动器要有相电流监控,马达堵转时电流会上 10/17 22:35
7F:→ wisdom: 升,驱动器侦测到电流上升就认定是堵转(同1方法),就立刻 10/17 22:36
8F:→ wisdom: 断电。相较1的方式,对马达本体的损伤可视为0 10/17 22:36
9F:→ woodsy: 原来第三个意思是这样 前阵子想过这种控制法 还没试过 10/18 13:15