高速計數(shù)器定義指令和高速計數(shù)器指令及編程
發(fā)布于2023-02-08 10:21
25
2
標簽:高速計數(shù)器
高速計數(shù)器定義指令(HDEF)選擇指定高速計數(shù)器HSCx的操作模式。模式選擇定義高速計數(shù)器的時鐘、方向、開始和重設(shè)功能??梢詫⒁粋€高速計數(shù)器定義指令用于每個高速計數(shù)器。高速計數(shù)器指令如圖5-63所示。
設(shè)置ENO=0的錯誤條件:0003(輸入點沖突);0004(中斷中的非法的指令):000A(HSC重新定義)。
高速計數(shù)器指令
高速計數(shù)器(HSC)指令基于HSC特殊內(nèi)存位的狀態(tài)以配置和控制高速計數(shù)器。參數(shù)N指定高速計數(shù)器數(shù)目。高速計數(shù)器指令可以配置為最多12種不同的操作模式。
每個計數(shù)器有用于時鐘、方向控制、重設(shè)和啟動的輸入。對于雙相計數(shù)器,兩個時鐘都可以在最大計數(shù)率下運行。在倍數(shù)模式下,可以選擇1倍(1x)或4倍(4x)最大計數(shù)率。所有運行在最大計數(shù)率的計數(shù)器不會互相干擾。高速計數(shù)器指令的有效操作數(shù)見表5-20。
設(shè)置ENO=0的錯誤條件:0001(HSC在HDEF前):0005(同時HSC/PLS)。
高速計數(shù)器常作為鼓式定時器的驅(qū)動器,在定時器中,以恒定速度旋轉(zhuǎn)的軸安裝有遞增轉(zhuǎn)軸編碼器。軸編碼器提供每轉(zhuǎn)的指定計數(shù)數(shù)字,重設(shè)脈沖在每轉(zhuǎn)產(chǎn)生一次。時鐘和來自軸編碼器的重設(shè)脈沖提供到高速計數(shù)器的輸入。
高速計數(shù)器用第一個幾次預(yù)置載入,期望的輸出在當前計數(shù)小于當前預(yù)置的時間期間激活。安裝計數(shù)器以在當前計數(shù)等于預(yù)置以及重設(shè)產(chǎn)生時提供中斷。當每個當前計數(shù)數(shù)值等于預(yù)置數(shù)值中斷事件產(chǎn)生時,載入新的預(yù)置,設(shè)置下一個輸出狀態(tài)。當重設(shè)中斷事件產(chǎn)生時,設(shè)置第一個預(yù)置和第一個輸出狀態(tài),重復(fù)周期。
因為中斷發(fā)生率遠遠低于高速計數(shù)器的計數(shù)率,所以,可以實現(xiàn)高速操作的精確控制,而對全部的PLC掃描循環(huán)影響相當小。連接中斷的方法,允許每次載入新預(yù)置在獨立的中斷程序中完成以便易于狀態(tài)控制。此外,所有中斷事件也可以在單個中斷程序中處理。
不同類型的高速計數(shù)器
所有計數(shù)器功能對于同樣的計數(shù)器操作模式是一樣的。有4種基本計數(shù)器類型:單相計數(shù)器帶有內(nèi)部方向控制,單相計數(shù)器帶有外部方向控制,雙相計數(shù)器帶有兩個時鐘輸入和AB相正交計數(shù)器。注意每種模式不能為每個計數(shù)器所支持,可以使用每種類型:沒有重設(shè)或啟動輸入、有重設(shè)和沒有啟動、或啟動和重設(shè)輸入都有。
對于高速計數(shù)器,必須注意以下3點:
(1)當激活重設(shè)輸入時,它清除當前值并保持清除直到取消激活重設(shè)。
(2)當激活啟動輸入時,就允許計數(shù)器計數(shù)。取消激活啟動的同時,計數(shù)器的當前值保持為常量,時鐘事件忽略。
(3)如果重設(shè)激活而啟動非現(xiàn)用,重設(shè)被忽略,而當前值不變。如果啟動輸入成為現(xiàn)用,而重設(shè)輸入為現(xiàn)用,當前值被清除。
在使用高速計數(shù)器前,須使用HDEF指令(高速計數(shù)器定義)選擇計數(shù)器模式。使用第一個掃描內(nèi)存位SM0.1(此位在第一次掃描時接通,然后斷開),來調(diào)用包含HDEF指令的子程序。
高速計數(shù)器編程
1.高速計數(shù)器編程概述
使用高速計數(shù)器指令向?qū)渲糜嫈?shù)器。向?qū)Оㄏ铝行畔?計數(shù)器的類型和模式、計數(shù)器預(yù)設(shè)值、計數(shù)器當前值和初始計數(shù)方向。要啟動高速計數(shù)器指令向?qū)?,選擇工具(Tools)>指令向?qū)?InstructionWizard)菜單命令,然后從指令向?qū)Т翱谶x擇高速計數(shù)器指令。
對高速計數(shù)器編程,進行以下設(shè)置:
(1)定義計數(shù)器和模式;
(2)設(shè)置控制字節(jié);
(3)設(shè)置當前值(起始值);
(4)設(shè)置預(yù)設(shè)值(目標數(shù)值);
(5)分配和啟用中斷程序;
(6)激活高速計數(shù)器。
2.定義計數(shù)器模式和輸入
使用高速計數(shù)器定義指令來定義計數(shù)器模式和輸入。
與高速計數(shù)器有關(guān)的時鐘、方向控制、重設(shè)和啟動功能的輸入,見表5-21.同樣的輸入不能用于兩種不同的功能,但沒有被其高速計數(shù)器的顯示模式使用的輸入可以用于其他用途。例如,如果HSC0正被用于模式1,它使用I0.0和I0.2,I0.1可用于HSC3的邊沿中斷。