这个程序能改成控制两个步进电机和伺服电机的吗?

51单片机控制两个步进电机的程序_百度知道
51单片机控制两个步进电机的程序
用51单片机控制两个步进电机实现正转,反转,加速,停止的功能电路图如下!...
用51单片机控制两个步进电机实现正转,反转,加速,停止的功能电路图如下!
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
死爱芙蓉知道合伙人
采纳数:121
获赞数:213
不要使用89C52或者51,用12C5A60S2或其他1T单片机,因为89C51控制2个,速度跟不上,指令执行较慢用2个定时器,在定时器中断种处理步进电机有4相的,2相的,等,4线的,6线的,5线的等,控制起来,只有5线跟别人不怎么相同,但却是最简单的,4线只要控制好A+ A- B+ B-也是差不多
单片机的战斗机知道合伙人
单片机的战斗机
采纳数:31
获赞数:45
擅长:暂未定制
我有现成的,需要的话私聊
si yi wu liu qi san san er ba
知道合伙人
获赞数:24
看来有好心人给你写哦
QQ知道合伙人
这是两个L297+L298吗?需要代做吗
QQ知道合伙人
采纳数:1983
获赞数:1985
需要给你写吗
其他2条回答
为你推荐:
其他类似问题
您可能关注的内容
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。PLC控制步进电机的实例(图与程序) - 三菱PLC论坛 - 中国工控网论坛 - 中国自动化领域权威论坛
商务管理平台
专业频道:
工控商务&|
所在位置: --
中国工控网搜索:
&自动化调查
&企业中心论坛热点
&自动化企业招聘
&自动化求职信息
&登陆:密码:&&&&
三菱PLC论坛分类&&
发表人:江山多娇7
发表时间: 11:00:00
&本栏论题:
PLC控制步进电机的实例(图与程序)& [44448]
&&&&PLC控制步进电机的实例(图与程序)&&&
•采用绝对位置控制指令(DRVA),大致阐述FX1S控制步进电机的方法。由于水平有限,本实例采用非专业述语论述,请勿引用。&&&
•FX系列PLC单元能同时输出两组100KHZ脉冲,是低成本控制伺服与步进电机的较好选择!&&&
•PLS+,PLS-为步进驱动器的脉冲信号端子,DIR+,DIR-为步进驱动器的方向信号端子。&&&
•所谓绝对位置控制(DRVA),就是指定要走到距离原点的位置,原点位置数据存放于32位寄存器D8140里。当机械位于我们设定的原点位置时用程序把D8140的值清零,也就确定了原点的位置。&&&
•实例动作方式:X0闭合动作到A点停止,X1闭合动作到B点停止,接线图与动作位置示例如左图(距离用脉冲数表示)。&&&
•程序如下图:(此程序只为说明用,实用需改善。)&&&
•说明:&&&
•在原点时将D8140的值清零(本程序中没有做此功能)&&&
•32位寄存器D8140是存放Y0的输出脉冲数,正转时增加,反转时减少。当正转动作到A点时,D8140的值是3000。此时闭合X1,机械反转动作到B点,也就是-3000的位置。D8140的值就是-3000。&&&
•当机械从A点向B点动作过程中,X1断开(如在C点断开)则D8140的值就是200,此时再闭合X0,机械正转动作到A点停止。&&&
•当机械停在A点时,再闭合X0,因为机械已经在距离原点3000的位置上,故而机械没有动作! &&&
•把程序中的绝对位置指令(DRVA)换成相对位置指令(DRVI):&&&
•当机械在B点时(假设此时D8140的值是-3000)闭合X0,则机械正转3000个脉冲停止,也就是停在了原点。D8140的值为0&&&
•当机械在B点时(假设此时D8140的值是-3000)闭合X1,则机械反转3000个脉冲停止,也就是停在了左边距离B点3000的位置(图中未画出),D8140的值为-6000。
•一般两相步进电机驱动器端子示意图:&&&
•FREE+,FREE-:脱机信号,步进电机的没有脉冲信号输入时具有自锁功能,也就是锁住转子不动。而当有脱机信号时解除自锁功能,转子处于自由状态并且不响应步进脉冲。&&&
•V+,GND:为驱动器直流电源端子,也有交流供电类型。&&&
•A+,A-,B+,B-分别接步进电机的两相线圈。
以下是关于《PLC控制步进电机的实例(图与程序)》论题的回复(共15篇)
回复人:lupei 
&回复时间: 11:07:00
&&&&本人现有北京纵横科技的hmibuilder组态软件150点,中间变量不算点,现欲清仓出售,1000块一套,正版,有软件狗,包装盒里有详细的说明书和功能手册,有兴趣的qq联系。&&&
回复人:gouhunpiao 
&回复时间: 14:27:00
&&&&。。。。。。。。
回复人:hhh519 
&回复时间: 10:11:00
&&&&。。。。。。。
回复人:清风顽子 
&回复时间: 9:27:00
&&&&学习了,谢谢!
回复人:wyc2005 
&回复时间: 9:45:00
&&&&学习了,谢谢!
回复人:瑞立 
&回复时间: 15:43:00
&&&&图看明白了。&&&
可是程序没看明白。。
问下 M0表示的是什么啊
回复人:tangshiwei 
&回复时间: 9:37:00
&&&&学习了,谢谢!
回复人:维修电工许 
&回复时间: 15:16:00
&&&&学习了,谢谢
回复人:红尘笑 
&回复时间: 20:03:00
&&&&还用的是三菱的呀,谢谢
回复人:周 
&回复时间: 11:11:00
&&&&学习了,谢谢
回复人:ruok 
&回复时间: 0:09:00
回复人:67ya 
&回复时间: 12:47:00
&&&&.......
回复人:李君武 
&回复时间: 18:27:00
&&&&好资料,值得学习,谢谢。
回复人:佛系武功独步 
&回复时间: 8:34:00
&&&&感觉你描述的有问题啊?D8140你确定是原点位置?
回复人:<font color="#CC48582 
&回复时间: 15:57:00
&&&&学习了
如果要回复本栏论题,请首先中国工控网www.chinakong.com
?如果你已经是中国工控网www.chinakong.com成员,请直接登录。
?如果你还不是中国工控网www.chinakong.com成员,请首先注册,注册为免费!
&&&&&&&&&&&
&&&&&&&&&&&
&&自动化资料下载
&&自动化产品
&&&中国工控网(www.chinakong.com)&版权所有&豫ICP备号
管理员信箱:&&服务热线:&&办公电话:9&&传真:8
洛阳博德工控自动化技术有限公司
中国&&&&洛阳1 Pages: 1/11& & &Go
wyfeng1018
级别: 正式会员
发帖数量: 3 个
工控威望: 56 点
下载积分: 143 分
在线时间: 17(小时)
注册时间: 最后登录:
三菱FX3U控制步进电机程序,原创,下载后改改数据就能用,已经注解
本帖最近评分记录:下载积分:+1(gxqxjd99) 下载积分:+1(slcmpxz) 真诚感谢!下载积分:+1(机械增压) 真诚感谢!下载积分:+1(wangshikui) 热心助人!下载积分:+2(385385) 好贴好贴!下载积分:+1(栗子先生) 下载积分:+1(性金哥) 真诚感谢!
科技改变生活
级别: 网络英雄
发帖数量: 4482 个
工控威望: 8191 点
下载积分: 7334 分
在线时间: 1616(小时)
注册时间: 最后登录:
看看学习了,谢谢楼主分享
三人行者必有我师 ,择其善者而从之
级别: 论坛先锋
发帖数量: 1266 个
工控威望: 1409 点
下载积分: 58558 分
在线时间: 934(小时)
注册时间: 最后登录:
wei0212007
级别: 论坛先锋
发帖数量: 1004 个
工控威望: 1012 点
下载积分: 6193 分
在线时间: 928(小时)
注册时间: 最后登录:
不错。很清晰。
级别: 工控侠客
发帖数量: 82 个
工控威望: 2051 点
下载积分: 24098 分
在线时间: 92(小时)
注册时间: 最后登录:
謝謝分享!
工控無國界
级别: 正式会员
发帖数量: 3 个
工控威望: 54 点
下载积分: 87 分
在线时间: 3(小时)
注册时间: 最后登录:
感谢楼主分享
级别: 探索解密
发帖数量: 56 个
工控威望: 138 点
下载积分: 610 分
在线时间: 53(小时)
注册时间: 最后登录:
谢谢楼主分享!!!!!
级别: 正式会员
发帖数量: 26 个
工控威望: 79 点
下载积分: 110 分
在线时间: 28(小时)
注册时间: 最后登录:
级别: 正式会员
发帖数量: 10 个
工控威望: 61 点
下载积分: 96 分
在线时间: 0(小时)
注册时间: 最后登录:
看看学习了,谢谢楼主分享
级别: 探索解密
发帖数量: 117 个
工控威望: 177 点
下载积分: 6099 分
在线时间: 141(小时)
注册时间: 最后登录:
学习一下,感谢分享
级别: 探索解密
发帖数量: 39 个
工控威望: 104 点
下载积分: 239 分
在线时间: 13(小时)
注册时间: 最后登录:
谢谢分享!学习学习!
级别: 探索解密
发帖数量: 10 个
工控威望: 103 点
下载积分: 1 分
在线时间: 29(小时)
注册时间: 最后登录:
挺好的,谢谢楼主。
1 Pages: 1/11& & &Go步进电机控制-C程序及仿真_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&100W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
步进电机控制-C程序及仿真
&&步进电机控制C程序及仿真
阅读已结束,下载本文需要
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
&#xe64e;加入VIP
还剩21页未读,
定制HR最喜欢的简历
你可能喜欢只要能看懂,调试步进电机就不成问题!
步进电机已经渗透入我们生活的方方面面,本文介绍了一些重要的步进电机相关技术,为开发人员基本了解步进电机的工作原理提供了足够的信息,同时也介绍了用微控制器或数字信号处理器控制步进电机的方法。
步进电机也叫步进器,它利用电磁学原理,将电能转换为机械能,人们早在20世纪20年代就开始使用这种电机。随着嵌入式系统(例如打印机、磁盘驱动器、玩具、雨刷、震动寻呼机、机械手臂和录像机等)的日益流行,步进电机的使用也开始暴增。
不论在工业、军事、医疗、汽车还是娱乐业中,只要需要把某件物体从一个位置移动到另一个位置,步进电机就一定能派上用场。步进电机有许多种形状和尺寸,但不论形状和尺寸如何,它们都可以归为两类:可变磁阻步进电机和永磁步进电机。本文重点讨论更为简单也更常用的永磁步进电机。
▼步进电机的构造
如图1所示,步进电机是由一组缠绕在电机固定部件--定子齿槽上的线圈驱动的。通常情况下,一根绕成圈状的金属丝叫做螺线管,而在电机中,绕在齿上的金属丝则叫做绕组、线圈、或相。如果线圈中电流的流向如图1所示,并且我们从电机顶部向下看齿槽的顶部,那么电流在绕两个齿槽按逆时针流向流动。根据安培定律和右手准则,这样的电流会产生一个北极向上的磁场。
现在假设我们构造一个定子上缠绕有两个绕组的电机,内置一个能够绕中心任意转动的永久磁铁,这个可旋转部分叫做转子。图2给出了一种简单的电机,叫做双相双极电机,因为其定子上有两个绕组,而且其转子有两个磁极。如果我们按图2a所示方向给绕组1输送电流,而绕组2中没有电流流过,那么电机转子的南极就会自然地按图中所示,指向定子磁场的北极。
再假设我们切断绕组1中的电流,而按图2b所示方向给绕组2输送电流,那么定子的磁场就会指向左侧,而转子也会随之旋转,与定子磁场方向保持一致。
接着,我们再将绕组2的电流切断,按照图2c的方向给绕组1输送电流,注意:这时绕组1中的电流流向与图2a所示方向相反。于是定子的磁场北极就会指向下,从而导致转子旋转,其南极也指向下方。
然后我们又切断绕组1中的电流,按照图2d所示方向给绕组2输送电流,于是定子磁场又会指向右侧,从而使得转子旋转,其南极也指向右侧。
最后,我们再一次切断绕组2中的电流,并给绕组1输送如图2a所示的电流,这样,转子又会回到原来的位置。
至此,我们对电机绕组完成了一个周期的电激励,电机转子旋转了一整圈。也就是说,电机的电频率等于它转动的机械频率。
如果我们用1秒钟顺序完成了图2所示的这4个步骤,那么电机的电频率就是1Hz。其转子旋转了一周,因而其机械频率也是1Hz。总之,一个双相步进电机的电频率和机械频率之间的关系可以用下式表示:
fe=fm*P/2 (1)
其中,fe代表电机的电频率,fm代表其机械频率,而P则代表电机转子的等距磁极数。
从图2中我们还可以看出,每一步操作都会使转子旋转90°,也就是说,一个双相步进电机每一步操作造成的旋转度数可由下式表示:
1 step= 180°/P (2)
由等式(2)可知,一个双极电机每动作一次可以旋转180°/2=90°,这与我们在图2中看到的情形正好相符。此外,该等式还表明,电机的磁极数越多,步进精度就越高。常见的是磁极数在12和200个之间的双相步进电机,这些电机的步进精度在15°和 0.9°之间。
图3给出的例子是一个双相、6极步进电机,其中包含3个永久磁铁,因而有6个磁极。第一步,如图3a所示,我们给绕组1施加电压,在定子中产生一个北极指向其顶部的磁场,于是,转子的南极(图3a中红色的“S”一端)转向了该图的上方。接着,在图3b中,我们给绕组2施加电压,定子中产生一个北极指向其左侧的磁场。
于是,转子的一个距离最近的南极转向了图的左方,即转子顺时针转动了30°。第三步,在图3c中,我们又向绕组1施加一个电压,在定子中产生一个北极指向图下方的磁场,从而又使转子顺时针旋转30°到达图3c所示的位置。而在图3d中,我们给绕组2施加电压,在定子中产生一个北极指向定子右侧的磁场,再一次使转子顺时针旋转30°,到达图3d所示的位置。
最后,我们再向绕组1施加电压,产生一个如图3a所示的北极指向定子上方的磁场,使得转子顺时针旋转30°,结束一个电周期。如此可以看出,4步电激励造成了120°的机械旋转。也就是说,该电机的电频率是机械频率的3倍,这一结果符合等式(1)。此外,我们从图3和等式(2)也能看出,该电机的转子每一步旋转30°。
如果同时向两个绕组输送电流,还能增大电机的扭矩,如图4所示。这时,电机定子的磁场是两个绕组各自产生的磁场的矢量和,虽然这一磁场每一次动作仍然只使电机旋转90°,就象图2和图3中一样,但因为我们同时激励两个电机绕组,所以此时的磁场比单独激励一个绕组时更强。由于该磁场是两个垂直场的矢量和,因此它等于单独每个场的2×1.414倍,从而电机对其负载施加的扭矩也成正比增大。
▼电机的激励顺序
既然我们知道了一系列激励会使步进电机旋转,接下来就要设计硬件来实现所需的步进序列。一块能让电机动起来的硬件(或结合了硬件和软件的一套设备)就叫做电机驱动器。
从图4中可以看出我们怎样激励双相电机的绕组才能使电机转子旋转,图中,电机内的绕组抽头分别被标为1A、1B、2A和2B。其中,1A和1B是绕组1的两个抽头,2A和2B则是绕组2的两个抽头。
首先,要给脚1B和2B施加一个正电压,并将1A和2A接地。然后,给脚1B和2A施加一个正电压,而将1A和2B接地,这一过程其实取决于导线绕齿槽缠绕的方向,假设导线缠绕的方向与上一节所述相符。依次进行下去,我们就得到了表1中总结的激励顺序,其中,“1”表示正电压,“0”表示接地。
电流在电机绕组中有两种可能的流向,这样的电机就叫做双极电机和双极驱动序列。双极电机通常由一种叫做H桥的电路驱动,图5给出了连接H桥和步进电机两根抽头的电路。
H桥通过一个电阻连接到一个电压固定的直流电源(其幅度可根据电机的要求选取),然后,该电路再经过4个开关(分别标为S1、S2、S3和S4)连接到绕组的两根抽头。这一电路的分布看起来有点象一个大写字母H,因此叫做H桥。
从表1中可以看出,要激励该电机,第一步应将抽头2A设为逻辑0,2B设为逻辑1,于是,我们可以闭合开关S1和S4,并断开开关S2和S3。接着,需要将抽头2A设为逻辑1,2B设为逻辑0,于是,我们可以闭合S2、S3,并断开S1和S4。与此类似,第三步我们可以闭合S2、S3并断开S1和S4,第四步则可以闭合S1、S4并断开S2、S3。
对绕组1的激励方法也不外乎如此,使用一对H桥就能产生需要的激励信号序列。表2所示就是激励过程中每一步开关所在的位置。
注意,如果R=0,而开关S1和S3又不小心同时闭合,那么流经开关的电流将达到无穷大。这时,不但开关会被烧坏,电源也可能损坏,因此电路中使用了一个非零阻值的电阻。尽管这个电阻会带来一定的功耗,也会降低电机驱动器的效率,但它可以提供短路保护。
▼单极电机及其驱动器
前面我们已经讨论了双极步进电机和驱动器。单极电机与双极电机类似,不同的是在单极电机中外部能够接触到的只有每个绕组的中心抽头,如图6所示。我们将从绕组顶部抽出的抽头标为抽头B,底部抽出的标为抽头A,中间的为抽头C。
有时我们会遇到一些抽头没有标注的电机,如果我们清楚步进电机的构造,就很容易通过测量抽头之间的阻值,识别出哪些抽头属于哪根绕组。不同绕组的抽头之间阻抗通常为无穷大。如果经测量,抽头A和C之间的阻抗为100欧姆,那么抽头B和C之间的阻抗也应是100欧姆,而A和B之间的阻抗为200欧姆。200欧姆这一阻抗值就叫做绕组阻抗。
图7给出一个单极电机的单相驱动电路。从中可以看出,当S1闭合而S2断开时,电流将由右至左流经电机绕组;而当S1断开,S2闭合时,电流流向变为由左至右。因此,我们仅用两个开关就能改变电流的流向(而在双极电机中需要4个开关才能做到)。表3所示为单极电机驱动电路中,每一步激励时开关所处的位置。
虽然单极电机的驱动器控制起来相对简单,但由于在电机中使用了中心抽头,因此它比双极电机更复杂,而且其价格通常比双极电机贵。此外,由于电流只流经一半的电机绕组,所以单极电机只能产生一半的磁场。
在知道了单极电机和双极电机的构造原理之后,当我们遇到一个没有标示抽头也没有数据手册的电机时,我们就能自己推导出抽头和绕组的关系。带4个抽头的电机就是一个双相双极电机,我们可以通过测量导线之间的阻抗来分辨哪两个抽头属于同一个绕组。带6个抽头的电机可能是一个双相单极电机,也可能是一个三相双极电机,具体情况可以通过测量导线之间的阻抗来确定。
▼电机控制
本文前面讨论的电机控制理论可以采用全硬件方案实现,也可以用微控制器或DSP实现。图8说明了如何用晶体管作为开关来控制双相单极电机。每个晶体管的基极都要通过一个电阻连接到微控制器的一个数字输出上,阻值可以从1到10M欧姆,用于限制流入晶体管基极的电流。每个晶体管的发射极均接地,集电极连到电机绕组的4个抽头。电机的中心抽头均连接到电源电压的正端。
每个晶体管的集电极均通过一个二极管连接到电压源,以保护晶体管不被旋转时电机绕组上的感应电流烧坏。转子旋转时,电机绕组上会出现一个感应电压,如果晶体管集电极没有通过二极管连接到电压源,感应电压造成的电流就会涌入晶体管的集电极。
举个例子,假设数字输出do1为高而do2为低,于是do1会使晶体管T1导通,电流从+V流经中心抽头和T1的基极,然后由T1的发射极输出。但此时do2处于断开状态,因此电流无法流经T2。这样推理下去,我们就能将表3改为驱动电机所需的微控制器数字输出的改变顺序。
一旦清楚了驱动电机所需的硬件和数字输出的顺序,我们就可以对最顺手的微控制器或DSP编写软件,实现这些序列。
▼固件控制
我本人在一块Microchip PIC16F877上,利用1N4003二极管和2SD1276A达灵顿晶体管实现了以上谈到的电机控制器。PIC的PortA第0位到第3位用来做数字输出。电机采用在Jameco购买的5V双相单极电机(Airpax [Thomson]生产,型号为M82101-P1),并且用同一个5V电源为PIC和电机供电。但在真正应用时,为避免给微控制器的电源信号引入噪声,建议大家还是分别用不同的电源为电机和微控制器供电。
列表1给出了控制程序的汇编源代码,该程序每50毫秒旋转电机一次。首先,程序会将微控制器的数字输出初始化为表4中第一步的值,然后每隔50毫秒(此时间常数由程序中的常量waitTime定义)按照正确的顺序循环输出数字信号。若需使电机反向旋转,只需按与表4所示相反的顺序输出数字信号即可。
本人所用的电机为24极电机,即每一步输出可以控制电机旋转180°/24=7.5°。电机每50毫秒旋转7.5°,也就是每2.4秒转一周。如果将常量waitTime减小一半,电机转速会加快一倍。但因为转子受惯性、摩擦力和其他机械限制,所以电机转速有一个上限,当定子磁场旋转过快时,转子的转速无法跟上,导致电机的旋转也无法跟上,开始跳动(skipping)。如果这时再降低欧姆aitTime,电机很可能干脆就停止旋转。
除了本文重点讨论的双相电机以外,步进电机还有其他类型,如三相步进电机或四相步进电机。另外还有一些双相步进电机,它们只有一个中心抽头,同时连接到两个绕组的中心点,这类步进电机外部有5个抽头引出。
同样,步进电机也不是电机家族中的唯一成员,最古老也最简单的电机是直流(DC)电机。早期的直流电机使用电刷,现在已经不再流行。如今常见的无刷直流电机,就是利用电子线路代替电刷进行换向的直流电机,这类电机中不存在电刷老化问题,因此其寿命比有刷直流电机长很多。
还有一种感应电机,其工作原理与步进电机或直流电机完全不同。直流电机采用的是直流电压源,而感应电机则采用交流(AC)电压源,并且步进电机和直流电机中转子与定子磁场的旋转是同步的,而感应电机中转子的转速滞后于定子磁场的转速。
作者:Dan Simon
电子与计算机工程系
克里夫兰州立大学
★ 深圳市传动网科技是以运动控制产业为核心,整合产业上下游的资源,定位为“品牌·资讯·资源·电商”,打造可信赖的高端服务平台。公司整合旗下综合门户网站“中国传动网”,纸媒《伺服与运动控制》、《控制与传动》、《机器人与智能系统》、CD传动电商、微信、中国运动控制产业联盟。秉承“创造价值、专业专心”的经营理念,致力于工业自动化及智能制造企业的品牌建设及价值传播与优化。
品牌o资讯o资源o电商
可信赖的高端服务平台
大牛们,指教啦!▼
责任编辑:
声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。
今日搜狐热点

我要回帖

更多关于 步进电机和伺服电机 的文章

 

随机推荐