MicroLogix1500控制器的HSC0功能文件子元素说明如下:
1.程序文件号(PFN)
PFN(程序文件号)变量用来定义中断子程序号,如果HSC0达到“高设定值/低设定值”、或超过“上溢出值/下溢出值”时,HSC0就会调用此子程序。该变量的整数值为被执行程序的文件号,有效范围为3~255。
2.故障代码(ER)
ER是故障代码标志位,故障代码为1,表示无效的文件号;故障代码为2,表示无效的模式;故障代码为3,表示无效的高设定值(模式0、1时,高设定值小于等于0;模式2~7时,高设定值小于或等于低设定值);故障代码为4,表示无效的上溢出值,高设定值大于上溢出值。
3.中断功能选通(FE)
FE(中断功能选通)位可由用户逻辑程序控制什么时候选通HSC中断,由HSC产生的中断将会按优先权执行。当HSC设定为自动启动时,如果HSC被自动启动,控制器就会自动将此位置1。
4.自动启动(AS)
AS是一个控制位,可用于控制程序中。用编程装置可设定自动启动位,并将它作为用户程序部分储存起来。如果此位为1,则只要控制器进入“运行”或“测试”模式,HSC功能就会自动被启动。
5.故障检测(ED)
ED是一个状态标志位,可用于控制程序中,用来检测HSC子系统是否有故障。此位为1的最常见故障是组态错误。如果此位为1,用户应该检测HSC:0.ER参数内的故障代码。此位由系统控制自动置1或清0。
6.允许高速计数(CE)
CE控制位可用来决定是否选通高速计数器。如果此位为1,则选通高速计数器,如果为0(默认值),则禁止选通高速计数器。如果计数器正在运行时CE位被置0,则计数器的累加值保持不变;如果再将CE位置1,则计数器会从原来的累加值恢复计数。此位由用户程序控制,而且在重新上电时仍保持CE位的值不变。
7.设定参数(SP)
SP是控制位,用来将新的变量装入到HSC子系统中。具有HSC:0/SP地址的OTE指令被启动(从“断开”到“接通”的瞬变)时,所有存储在HSC功能文件中的变量被逐一检查,然后将各变量送入HSC子系统,HSC就会按新的设定变量工作。
此位由用户程序控制,而且在重新上电时保持其值不变。此位由用户置1或清0。当HSC正在运行时,可以将SP的值进行切换,而计数值并不会丢失。
8.允许中断(UIE)
UIE是控制位,用来选通或禁止HSC子程序的执行。当以下条件符合时,如果用户想让控制器转去执行中断子程序,则必须将UIE位置1:
1)达到低设定值。
2)达到高设定值。
3)上溢出:加法计数,超过上溢出值。
4)下溢出:减法计数,超过下溢出值。
如果此位为0,HSC子系统就不会自动扫描HSC子程序。此位可以由用户程序控制(使用OTE、UIE、UID指令)。当用OTE、UIE或UID指令在程序扫描期间允许中断,则这些指令必须是梯形图中的最后指令(最后分支中的最后指令),且此指令是梯形程序中的唯一输出指令。
9.正在执行中断程序(UIX)
当HSC子系统开始执行中断子程序时,UIX位被置1。当控制器完成中断子程序处理后,UIX位被清0。UIX位可以作为逻辑条件用于控制程序中,以便检测HSC中断程序是否正在执行。
10.用户中断等待执行(UIP)
UIP是一个状态标志位,表示某个中断程序被等待执行。此状态位可被监视,也可用于控制程序中,以便确定什么时候某个中断子程序不能立即被执行。此位由系统控制,自动置1或清0。
11.用户中断丢失(UIL)
UIL是一个状态标志位,表示某中断已丢失。MicroLogix1500控制器允许一个中断正在进行,同时最多可有两个中断处于等待执行状态。如果发生用户中断丢失,则UIL位由控制器置1。
12.低设定值屏蔽(LPM)
LPM是一个控制位,用来允许或禁止发生“低设定值中断”。如果此位置0,即使HSC检测到符合“达到低设定值”条件,用户中断程序也不会被执行。此位由用户程序控制,控制器重新上电也会保持其值不变。用户程序可对此位清0或置1。
13.低设定值中断(LPI)
LPI是一个状态位,当HSC累加值达到“低设定值”,则此位被置1,同时触发HSC中断。此位可用于控制程序中,以识别是否发生了低设定值中断。如果控制程序需要根据低设定值而执行特殊控制,则此位可以作逻辑条件来使用。
此位可由控制程序清0,而且,只要检测到以下条件成立,HSC子系统就会将此位清0。
1)高设定值中断开始执行。
2)下溢出中断开始执行。
3)上溢出中断开始执行。
4)控制器进入程序执行模式。
14.达到低设定值(LPR)
LPR是一个状态标志位,只要HSC的累加值(HSC:0.ACC)小于或等于低设定值变量(HSC:0.LOP),此位就会被置1。只要控制器处于程序执行模式,HSC子系统就会连续刷新LPR位的值。
15.高设定值屏蔽(HPM)
HPM是一个控制位,用来允许或禁止发生“高设定值中断”。如果此位置0,即使HSC检测到符合“达到高设定值”条件,用户中断程序也不会被执行。此位由用户程序控制,控制器重新上电也会保持其值不变。用户程序可对此位清0或置1。
16.高设定值中断(HPI)
HPI是一个状态位,当HSC累加值达到“高设定值”,则此位被置1,同时触发HSC中断。此位可用于控制程序中,以识别是否发生了高设定值中断。如果控制程序需要根据高设定值而执行特殊控制,则此位可以作逻辑条件来使用。
此位可由控制程序清0,而且只要检测到以下条件成立,HSC子系统就会将此位清0:
1)高设定值中断开始执行。
2)下溢出中断开始执行。
3)上溢出中断开始执行。
4)控制器进入程序执行模式。
17.达到高设定值(HPR)
HPR是一个状态标志位,只要HSC的累加值(HSC:0.ACC)大于或等于高设定值变量(HSC:0.HIP),此位就会被置1。只要控制器处于程序执行模式,HSC子系统就会连续刷新HPR位的值。
18.下溢出状态(UF)
UF是一个状态标志位,只要HSC的累加值(HSC:0.ACC)小于或等于下溢出变量(HSC:0.UNF),此位就会被置1。此位是由HSC子系统自动置1,用户根据需要来使用、跟踪UF位的状态,并将此位清0。下溢出状态并不会引起控制器故障。
19.下溢出屏蔽(UFM)
UFM是一个控制位,用来允许或禁止发生“下溢出中断”。如果此位被置0,即使HSC检测到符合“达到下溢出值”条件,用户中断程序也不会被执行。此位由用户程序控制,控制器重新上电也会保持其值不变。用户程序可对此位清0或置1。
20.下溢出中断(UFI)
UFI是一个状态位,当HSC累加值达到“下溢出值”,则此位被置1,同时触发HSC中断。此位可用于控制程序中,以识别是否发生了下溢出中断。如果控制程序需要根据下溢出值来执行特殊控制,则此位可以作逻辑条件来使用。
此位可由控制程序清0,而且,只要检测到以下条件成立,HSC子系统就会将此位清0:
1)低设定值中断开始执行。
2)高设定值中断开始执行。(www.xing528.com)
3)上溢出中断开始执行。
4)控制器进入程序执行模式。
21.上溢出状态(OF)
OF是一个状态标志位,只要HSC累加值(HSC:0.ACC)的计数大于或等于上溢出变量(HSC:0.OVF),此位就会被置1。此位是由HSC子系统自动置1。上溢出状态并不会引起控制器故障。
22.上溢出屏蔽(OFM)
OFM是一个控制位,用来允许或禁止发生“上溢出中断”。如果此位被置0,即使HSC检测到符合达到“上溢出值”条件,用户中断程序也不会被执行。此位由用户程序控制,控制器重新上电也会保持其值不变。用户程序可对此位清0或置1。
23.上溢出中断(OFI)
OFI是一个状态位,当HSC累加值达到“上溢出值”,则此位被置1,同时触发HSC中断。此位可用于控制程序中,以识别是否发生了上溢出中断。如果控制程序需要根据上溢出值来执行特殊控制,则此位可以作逻辑条件来使用。
此位可由控制程序清0,而且,只要检测到以下条件成立,HSC子系统就会将此位清0:
1)低设定值中断开始执行。
2)高设定值中断开始执行。
3)下溢出中断开始执行。
4)控制器进入程序执行模式。
24.计数方向(DIR)
DIR是一个由HSC子系统控制的状态标志位。当HSC累加器为加法计数,则此位被置1;当HSC累加器为减法计数,则此位被置0。如果累加值停止,则DIR位的值仍然保持停止计数前的位值(0/1)。只有当计数方向改变时,DIR位的值才会改变。只要控制器处于运行模式,HSC子系统就会连续刷新此位的值。
25.模式完成(MD)
MD是一个状态标志位,如果HSC被组态为模式0或模式1,而且计数器的累加值加法计数到“高设定值”,HSC子系统就会将此位置1。
26.减法计数(CD)
CD位用于双向计数器。如果允许高速计数位CE为1,则CD位被置1;如果CE位为0,则CD位被清0。
27.加法计数(CU)
如果允许高速计数位CE为1,则CU位被置1;如果CE位为0,则CU位被清0。
28.HSC模式(MOD)
29.累加值(ACC)
HSC子系统检测到的计数值储存在ACC内。当HSC处于模式0或1,如果累加值达到高设定值,变成上溢出状态,则ACC的值被清0。
30.高设定值(HIP)
HIP是计数的上设定点,当计数达到高设定值,HSC就会产生中断。要想将“高设定值”数据装入HSC子系统,控制器必须完成以下各项中的一项:
1)切换“设定参数”(HSC:0/SP)控制位(从0变到1)。当SP位被置1,则当前存储在HSC功能文件中的各个数据会被传送到HSC子系统中。
2)使用HSL指令装入新的HSC参数。被装入的“高设定值”数据必须小于或等于驻留的“上溢出值”(HSC:0.OVF)参数,否则,将产生HSC故障。
31.低设定值(LOP)
LOP是计数的下设定点,当计数达到低设定值,HSC就会产生中断。要想将“低设定值”数据装入HSC子系统,控制器必须完成以下各项中的一项:
1)切换“设定参数”(HSC:0/SP)控制位(从0变到1)。当SP位被置1,则当前储存在HSC功能文件中的各个数据会被传送到HSC子系统中。
2)使用HSL指令装入新的HSC参数。被装入的“低设定值”数据必须大于或等于驻留的“下溢出值”(HSC:0.UNF)参数,否则,将产生HSC故障。
32.上溢出值(OVF)
OVF定义了计数器的上计数极限值。如果累加值大于此变量,就会产生“上溢出中断”,同时,HSC子系统将累加值从“上溢出值”改变为“下溢出值”,计数器继续从“下溢出值”加法计数(在此过程中,输入的计数信号不会被漏掉)。用户可以在-2147483648~2147483647之间选定上溢出值,但必须是“上溢出值”大于“下溢出值”。
要想将“上溢出值”数据装入HSC子系统,控制器必须切换“设定参数”(HSC:0/SP)控制位(从0变到1)。当SP位被置1,则当前储存在HSC功能文件中的各个数据会被传送到HSC子系统中。被装入的“上溢出值”数据必须大于驻留的“高设定值”(HSC:0.HIP)参数,否则,将产生HSC故障。
33.下溢出值(UNF)
与上溢出值(OVF)类似。
34.输出屏蔽位(OMB)
OMB定义了MicroLogix1500控制器基本单元上(O:0/0~O:0/11)的哪些输出点可以被HSC直接控制。根据HSC累加值是否达到“高设定值”或“低设定值”,HSC子系统可以直接使输出点“接通”或“断开”,而无须经过梯形程序的控制。
例如HSC:0.HPO(高设定值输出)为0000000000001111,输出屏蔽位(OMB)为0000000000001101,则基本单元的O:0/0,O:0/2,O:0/3被置为1,而O:0/1没有被屏蔽,仍受到程序的控制。
35.高设定值输出(HPO)
HPO是用来定义:当累加值达到“高设定值”时,MicroLogix1500控制器基本单元上输出点的状态(0/1)。
高设定值输出位的数值可以在开始设定中组态好,也可以在控制器工作时进行组态。当控制器正在工作时,可使用HSL指令或SP位来装入新的参数值。
36.低设定值输出(LPO)
与高设定值输出(HPO)类似。7.1.3 高速计数器指令
1.参数装入指令(HSL)
参数装入指令(HSL)属于输出指令,如图7-1所示。
图7-1 参数装入指令(HSL)
HSL指令允许将高设定值、低设定值、高设定值输出源、低设定值输出源等参数送入到高速计数器内。执行参数分别解释如下:
1)HSC Number:计数器号,指定所使用的高速计数器号。0=HSC0,1=HSC1。
2)High Preset:高设定值,指定在“高设定值寄存器”内的数值。高设定值的数据范围是:-32768~32767(字)或-2147483648~2147483647(长字)。
3)Low Preset:低设定值,指定在“低设定值寄存器”内的数值。低设定值的数据范围是:-32768~32767(字)或-2147483648~2147483647(长字)。
4)Output High Source:高设定值输出源,指定在“高设定值输出寄存器HPO”内的数值。高设定值输出源的数据范围是0~FFFF。
5)Output Low Source:低设定值输出源,指定在“低设定值输出寄存器LPO”内的数值。低设定值输出源的数据范围是0~FFFF。
2.累加值复位指令(RAC)
累加值复位指令(RAC)属于输出指令,如图7-2所示。
图7-2 累加值复位指令(RAC)
RAC指令可使高速计数器复位,并允许将一个特定值写到HSC的累加器内。RAC指令使用如下参数:
1)Counter Number:计数器号,指定所使用的计数器。0=HSC0;1=HSC1。
2)Source:源,指定被送入HSC累加器的数据所在的位置。数据范围是-2147483648~2147483647。
若HSC工作在模式0或模式1,则当计数值达到高设定值时,HSC进入溢出状态,累加器内的值自动清0,所以在这两种模式下工作时不需要该指令。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。