你当前的位置:首页 > 西门子案例 >

西门子S7-200在步进电机定位控制中的应用

返回文章列表 作者:网管 时间:02-07 来源:PLC&FA  字体:【

4.5 定位控制
如果确定了一个参考点(M0.3=1)而且没有联锁,那么就执行相对的定位控制。在子程序2中,控制器从输入字节IBO读出对偶码方式的定位角度后,再存入字节MB11。与此角度有关的脉冲数,根据下面的公式计算:
N=φ/360°×S
式中:N-控制脉冲数
φ-旋转角度
S-每转所需的步数
该程序所使用的步进电机采用半步操作方式(S=1000)。在子程序3中循环计算步数,如果现在按“START”按钮(I1.0),CPU将从输出端Q0.0输出所计算的控制脉冲个数,而且电机将根据相应的步数来转动,并在内部将“电机转动”的标志位M0.1置成1。
在完整的脉冲输出之后,执行中断程序0,此程序将M0.1置成0,以便能够再次起动电机。

4.6 停止电机
按“STOP”(停止)按扭(I1.1),可在任何时候停止电机。执行子程序0中与此有关的指令。

5 程序和注释


//标题:用脉冲输出进行定位控制
//主程序
LD SM0.1
//仅首次扫描周期SM0.1才为1。
R M0.0,128
//MD0至MD12复位
ATCH 0,19
//把中断程序0分配给中断事件19(脉冲串终止)
ENI
//允许中断
//脉冲输出功能的初始化
MOVW 500,SMW68
//脉冲周期T=500us
MOVW 0,SMW70
//脉冲宽度为0(脉冲调制)
MOVD 429496700,SMD72
//为参考点设定的最大脉冲数
//设置逆时针旋转
LDN M0.1 //若电机停止
A I1.5 //且旋转方向开关=1
S Q0.2,1 //则逆时针旋转(Q0.2=1)
//设置顺时针旋转
LDN M0.1 //若电机停止
AN I1.5 //且旋转方向开关=0
R Q0.2,1 //则逆时针旋转(Q0.2=0)
//联锁
LD I1.1
//若按“STOP”(停止)按钮
S M0.2,1 //则激活联锁(M0.2=1)
//解除联锁
LDN I1.1
//若“START”(启动)按钮松开
AN I1.0
//且“STOP”(停止)按钮松开
R M0.2,1 //则解除联锁(M0.2=0)
//确定操作模式(参考点定位控制)
LD I1.4
//若按“设置/取消参考点”按钮
EU //上升沿
CALL 1 //则调用子程序1
//启动电机
LD I1.0
//若按“START”(启动)按钮
EU //上升沿
AN M0.1 //且电机停止
AN M0.2 //且无联锁
AD≥ SMD72,1
//且步数≥1,则
MOVB 16#85,SMB67
//置脉冲输出功能(PTO)的控制位
PLS 0 //启动脉冲输出(Q0.0)
S M0.1,1
//“电机运行”标志位置位(M0.1=1)
//定位控制
LD M0.3
//若已激活“定位控制” 操作模式
AN M0.1 //且电机停止
CALL 2 //则调用子程序2
//停止电机
LD I1.1
//若按“STOP”(停止)按钮
EU //上升沿
A M0.1 //且电机运行,则
CALL 0 //则调用子程序0
MEND //主程序结束
//子程序1
SBR 0 //子程序0停止电机
MOVB 16#CB,SMB67
//激活脉宽调制
PLS 0 //停止输出脉冲到Q0.0
R M0.1,1
//“电机运行”标志位复位(M0.1=0)
RET //子程序0结束
SBR1
//子程序1,“确定操作模式”
LD M0.1 //若电机运行
CALL 0
//则调用子程序0,停止电机
//申请“参考点曲线”
LD M0.3
//若已激活“定位控制”,则
R M0.3,1
//参考点标志位;复位(M0.3=0)
R Q1.0,1
//取消“定位控制激活”信息(Q1.0=0)
MOVD 429496700,SMD72
//为新的“参考点曲线”设定最大的脉冲数。
CRET
//条件返回到主程序。
//申请“定位控制”
LDN M0.3
//若未设置参考点(M0.3=0),则
S M0.3,1
//参考点标志位置位(M0.3=1)
S Q1.0,1
//输出“定位控制激活”信息(Q1.0=1)
RET //子程序1结束
//子程序2
SBR2 //子程序2,“定位控制”
MOVB IB0,MB11
//把定位角度从IBO拷到MD8的最低有效字节MB11。
R M8.0,24
//MB8至MB10清零
DIV 9,MD8
//角度/9=q1+r1
MOVW MW8,MW14
//把r1存入MD12
MUL 25,MD8
//q1×25→MD8
MUL 25,MD12
DIV 9,MD12
// r1×25/9= q2+r2
CALL 3
//在子程序3中循环步数
MOVW 0,MW12 //删除r2
+D MD12,MD8
//把步数写入MD8
MOVD MD8,SMD72
//把步数传到SMD72
RET //子程序2结束
//子程序3
SBR3 //子程序3,“循环步数”
LDW≥MW12,5 //如果r2≥5/9,则
INCW MW14 //步数增加1。
RET
//子程序3结束
//中断程序0,“脉冲输出终止”
INT0 //中断程序0
R M0.1,1
//“电机运行”标志位复位(M0.1=0)
RET //子程序0结束

6 结束语

通过对硬件和软件的合理设计,用较为价廉的西门子S7-200系列PLC作为核心控制部件,构成的定位系统能够达到精确定位的目的。特别应指出的是通过灵活、巧妙的应用PLC的指令系统,可使系统实现高精度定位。

文章相关
现有0条评论 | 更多评论..

我要发表看法



  如果您还不是本站会员
欢迎加入
  • ※ 评论注意事项:
  • 不是会员或未登陆发表评论,评论人名字显示为匿名。
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规。
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任。
  • 本站管理人员有权保留或删除评论中的任意内容。
  • 参与本评论即表明您已经阅读并接受上述条款。
站内搜索
本栏热门
PLC输出的集成脉冲可通过步进电机进行定位控制。关于定位控制,调节和控制操作之间存在一些区别。步进电机不需要连续的位置控制,而在控制操作中得到应用。在以下的程序例子中,借助于CPU214所产生的集成脉冲输出,通过步进电机来实现相对的位置控制。
电梯的电气系统由拖动系统和控制系统两部分组成。传统的电气控制系统采用的继电器逻辑控制由于触点多、故障率高、可靠性差、体积大等缺点,正逐渐被淘汰。目前电梯设计使用可编程控制器(PLC),要求功能变化灵活,编程简单,故障少,噪音低。维修保养方便,节能省工,抗干扰能力强
本文以某物流控制中的机械手控制为例,分析了PLC与步进驱动装置的控制方法,本系统涉及的主要硬件是S7-200 PLC和SH-2H057步进驱动器。
(1) S7-200 PLC系列是西门子公司的可编程控制器,这一系列产品可以满足多种多样的自动化控制要求,由于具有紧凑的设计、良好的扩展性
化工厂、电子厂的漂染冲洗液或电镀冲洗液等工业废水为合乎排放要求,必须经过分离、沉淀等多级处理,使用污水潜水泵对此工业污水进行提升、汇集、调节等处理。PLC因其经济性、灵活性可靠性而得到广泛的应用,PLC的软件可以完成以往传统的接触器继电器式控制无法实现的控制功能
在工业生产中,常需要用闭环控制方式来实现温度、压力、流量等连续变化的模拟量控制。无论使用模拟控制器的模拟控制系统,还是使用计算机(包括PLC)的数字控制系统,PID控制都得到了广泛的应用。PID控制器是比例-积分-微分控制的简称,具有(1) 不需要精确的控制系统数学模型;

设为首页| 加入收藏| 联系我们
Copyright 2004-2007 Www.plc365.coM All Rights Reserved
免费提供PLC可编程控制器编程资料,应用案例,软件下载
请使用1024*768分辨率浏览本站以达到最佳视觉效果