您现在的位置是:首页 > PLC技术 > PLC技术
PLC在电梯控制中的PTO操作
来源:艾特贸易2018-08-13
简介PTO 功能生成指定脉冲数目的方波 ( 占空比为 50%) 脉冲列。周期的单位可选用μ s 或 ms ,周期的范围为 50 ~ 65 535 μ s 或 2 ~ 65 535 ms 。如果设定的周期为奇数,则不能保证占空比为 50%
PTO功能生成指定脉冲数目的方波(占空比为50%)脉冲列。周期的单位可选用μs或ms,周期的范围为50~65 535μs或2~65 535 ms。如果设定的周期为奇数,则不能保证占空比为50%。脉冲计数范围为1~4 294 967 295。
如果周期小于两个时间单位,则周期被默认为两个时间单位。如果指定的脉冲数为0,则脉冲数默认为1。
状态字节(SM66.7或SM76.7)中的PTO空闲位用来指示可编程脉冲列输出结束。可以在脉冲列结束时启动中断程序。如果使用多段操作,将在包络表(Profile Table)完成时调用中断程序(请参看下面的多段流水线)。
PTO功能允许脉冲列排队。当激活的脉冲列输出完成时,立即开始新脉冲列的输出,这样可以保证输出脉冲列的连续性。
有两种流水线(Pipelining)方式:单段流水线和多段流水线。
1)单段流水线
在单段流水线中,需要为下一脉冲列更新SM。启动了初始PTO段后,必须按照第二段波形的要求立即修改SM,并再次执行PLS指令。流水线中每次只能存储一段脉冲列的参数,第一段脉冲列发送完成后,接着输出第二段脉冲列;重复上述过程,输入新的脉冲列参数。除了下面的情况外,脉冲列之间可以平稳地过渡:
(1)改变了时间基准。
(2)利用PLS指令捕捉到新的脉冲列设置之前,激活脉冲列已经完成。当流水线已满时,如果试图装入脉冲列参数,状态寄存器中的PTO溢出位(SM66.6或SM76.6)被置1。可编程控制器进入RUN模式时,该位被初始化为0。如果检测到溢出,则必须手工清除该位。
2)多段流水线
在多段流水线中,CPU从V存储器的包络表中自动读取各脉冲列段的特性。该模式下仅使用特殊存储器区的控制字节和状态字节。选择多段操作时必须在SMW168或SMW178中装入包络表的V存储区的偏移地址。周期基准可选用μs或ms,包络表中的所有周期必须使用同一时间基准,在包络表运行过程中不能改变它。多段操作可用PLS指令启动,各段输入的长度为8字节,由16位周期值、16位周期增量值和32位脉冲数值组成。多段PTO操作的包络表如表8-13所示。
表8-13 多段PTO操作的包络表格式
多段PTO的另一特点是能以指定的脉冲数自动增加或减少周期。在周期增量区输入一个正值将增加周期,输入一个负值将减小周期,输入为0时周期不变。
如果指定的周期增量值使得在输出一定数量的脉冲后导致非法的周期值,则会产生一个算术溢出错误,同时终止PTO功能,输出改为由映像寄存器控制。另外,状态字节中的增量计算错误位(SM66.4或SM76.4)被设置为1。
将状态字节中的用户中止位(SM66.5或SM76.5)置为1,就可以中止正在运行的PTO包络。运行PTO包络时,SMB166或SMB176中提供当前激活的包络的段数。
3)与PTO/PWM有关的特殊存储器
PTO/PWMO和PTO/PWM1的状态字节、控制字节和其他PTO/PWM寄存器如表8-14所示。如果要装入新的脉冲数、脉冲宽度或周期,应在执行PLS指令前将它们装入相应的控制寄存器。
如果要使用多段脉冲列操作,则使用PLS指令之前应装入包络表的起始偏移量和包络表的值。可以在首次扫描时对PTO/PWM初始化,如果需要对它重新初始化,可以用SM0.1之外的其他条件调用初始化程序。
表8-14 PTO/PWM控制寄存器与有关的特殊存储器
4)包络表中数据的计算
PTO发生器的多段流水线功能在许多应用中,特别是在步进电机的控制中非常有用。图8-11中给出了步进电机的加速启动、恒速运行和减速过程,下面用此例说明如何生成包络表中的数据。本例中假设3段的脉冲总数为4000,启动和结束时的脉冲频率为2 kHz,最大脉冲频率为10 kHz。由于包络表中的值是用周期而不是用频率表示的,因此需要将给定频率值转换成周期值。起始和结束时的周期为500μs,最高频率的周期为100μs。第1段要求在200个脉冲左右时频率要上升到10 kHz。减速部分应在400个脉冲内完成。本例中可用一个简单的公式来计算PTO发生器调整脉冲周期的增量值:
周期增量=ECT-ICT/Q
式中的ECT、ICT和Q分别是该段结束时的周期、该段开始时的周期和脉冲数。利用此公式计算出的加速部分(1段)的周期增量为-2μs/周期,减速部分(3段)的周期增量为1μs/周期。因为第2段是输出波形的恒速部分,故该段的周期增量值为0。假设包络表放在从VB500开始的V存储器区中,表8-15给出了要求产生的波形的数据。表中的数据可以在程序中用指令送入V存储器区,另一种方法是在数据块中定义包络表中的值。
图8-11 步进电机的频率曲线
表8-15 多段PTO的包络表
段内最后一个脉冲的周期没有在包络表中直接给出,必须计算出来。如果需要两段之间的平滑转换,则前一段最后一个脉冲的周期应等于下一段的初始周期。前者的计算公式为:
段的最后一个脉冲的周期=ICT+ (DEL×(Q-1))
式中的ICT、DEL和Q分别是该段的初始周期、该段的周期增量和该段的脉冲数。
由于周期增量必须是以μs或ms为单位的整数,每个脉冲都需要修改周期,因此实际的情况要复杂得多。周期增量的计算可能需要用迭代的方法和对给定段的结束周期或脉冲数作一定的调整。
可利用下式计算完成给定包络段的时间:
式中Q、ICT和DEL的意义与前述的相同。
(作者稿费要求:需要高清无水印文章的读者3元每篇,请联系客服,谢谢!在线客服:)