如何實(shí)現(xiàn)用PLC采集高于其高速計(jì)數(shù)器最高計(jì)數(shù)頻率的脈沖數(shù)據(jù)的探討
如何實(shí)現(xiàn)用PLC采集高于其高速計(jì)數(shù)器最高計(jì)數(shù)頻率的脈沖數(shù)據(jù)的探討
如何實(shí)現(xiàn)用PLC采集高于其高速計(jì)數(shù)器最高計(jì)數(shù)頻率的脈沖數(shù)據(jù)的探討
目前的PLC 其內(nèi)部都含有高速計(jì)數(shù)器,其最高計(jì)數(shù)頻率為50KHz(一般均為10KHz或20KHz)以下,對(duì)高于其最高頻響的輸入脈沖,PLC的高速計(jì)數(shù)器就無(wú)能為力了。那么對(duì)高于其最高頻響的輸入脈沖,用PLC能否進(jìn)行數(shù)據(jù)采樣呢?答案是可以的,但必須要借助于硬件電路方可實(shí)現(xiàn)。下面將介紹如何用硬件配合PLC編程,來(lái)實(shí)現(xiàn)對(duì)高于PLC的高速計(jì)數(shù)器的最高頻響的輸入脈沖進(jìn)行數(shù)據(jù)采集的方法。
數(shù)據(jù)采集通常有二種方式:1、定時(shí)計(jì)數(shù)采集數(shù)據(jù)。比如輸入一脈寬=10毫秒的方波脈沖,在此10毫秒方波脈寬內(nèi)計(jì)數(shù)器由0開(kāi)始計(jì)數(shù),方波結(jié)束后計(jì)數(shù)器停止計(jì)數(shù),其方波后沿讀取計(jì)數(shù)值的采集方式。2、等間隔連續(xù)采集數(shù)據(jù)。比如對(duì)正在計(jì)數(shù)中的計(jì)數(shù)器每隔0.1秒讀取一次計(jì)數(shù)值的采集方式。下面將分別介紹這二種數(shù)據(jù)采集的實(shí)施方案:
一、 用硬件計(jì)數(shù)器配合PLC高速計(jì)數(shù)器進(jìn)行等間隔定時(shí)計(jì)數(shù)的數(shù)據(jù)采集
圖一為用硬件計(jì)數(shù)器配合PLC高速計(jì)數(shù)器進(jìn)行定時(shí)計(jì)數(shù)采集數(shù)據(jù)的硬件電路圖,
(一)、硬件電路圖工作原理解析
圖一中的JI輸入接口:其1腳接 JM 脈沖 即為高頻計(jì)數(shù)脈沖;3腳接 KM 控制 即
為計(jì)數(shù)控制門信號(hào)。U1A(4520)為4位二進(jìn)制計(jì)數(shù)器,U
以U
使U2的Q0=0,輸入給U3的6腳,使該反相器截止,其輸出(U3的11腳)電流=0,即使U4的1-2腳間的發(fā)光二極管斷路而不發(fā)光,其對(duì)應(yīng)的15、16腳間的光敏三極管因無(wú)光照而阻斷,即使PLC的I2.0=0。如Q0=1,當(dāng)給U2的 CLK端輸入一正脈沖,其前沿觸發(fā)U2,使U2的Q0=1,輸入給U3的6腳,使該路反相器導(dǎo)通,其輸出(U3的11腳)電流=(12-2)÷1K=10ma,使U4的1-2腳間的發(fā)光二極管導(dǎo)通而發(fā)光,使對(duì)應(yīng)的15、16腳間的光敏三極管因受光照而飽和導(dǎo)通,將+24V電壓加在PLC的I2.0上,即使PLC的I2.0=1。
就是說(shuō),當(dāng)給U2的CLK端輸入一正脈沖,其脈沖前沿觸發(fā)U2,使U1A的Q0~Q3
數(shù)據(jù)通過(guò)U2的D0~D3,鎖存在U2的Q0~Q3里。再通過(guò)U3、U4電平轉(zhuǎn)換,將U1A計(jì)數(shù)器的計(jì)數(shù)結(jié)果傳送到PLC的I2.0~I2.3端。即PLC的輸入口接收到此時(shí)刻該計(jì)數(shù)值的最低4位數(shù)數(shù)據(jù)。
U2的CLK端輸入的正脈沖信號(hào),來(lái)自于U
波(即計(jì)數(shù)門脈沖)的后沿負(fù)跳變觸發(fā)由U
在用PLC作定時(shí)采集數(shù)據(jù)時(shí),其KM 控制信號(hào)保持置1(即不輸入控制信號(hào)),由Q1.0每隔一定時(shí)間(如0.1秒)發(fā)出一個(gè)負(fù)脈沖。經(jīng)U6B反相輸出為正脈沖,使U6A-1腳為1(控制門打開(kāi)),JM 脈沖 通過(guò)U6A觸發(fā)U1A的EN端,使其計(jì)數(shù)。
Q1.1為復(fù)位信號(hào),是由PLC發(fā)出的指令,它經(jīng)過(guò)U5-1的電位轉(zhuǎn)換,變24V幅度為12V幅度的脈沖,輸入給U
圖中PLC的I0.6為其高速計(jì)數(shù)器的計(jì)數(shù)輸入端,其信號(hào)來(lái)自U1A的輸出端D4,即
16分頻輸出端。如U
當(dāng)測(cè)量某一脈沖寬度時(shí),或定時(shí)采樣的計(jì)數(shù)時(shí)間要求小于毫秒級(jí)時(shí)(用PLC的I/O口是無(wú)法勝任這樣極窄的定時(shí)計(jì)數(shù)的控制的),應(yīng)選用KM 控制 信號(hào)作計(jì)數(shù)器的計(jì)數(shù)控制門。
在此用硬件控制門控制計(jì)數(shù)采樣的方式下,PLC在開(kāi)機(jī)的第一個(gè)掃描周期將Q1.0置1,且使SM0.1=Q1.1將U
當(dāng)KM 控制 端輸入的負(fù)方波結(jié)束時(shí),U6A的1腳電壓=0,U1A停止計(jì)數(shù)。PLC高速計(jì)數(shù)器必然也停止計(jì)數(shù)。KM 控制 端輸入負(fù)方波的后沿經(jīng)U6B倒相變?yōu)樨?fù)跳變,觸發(fā)由U6C、U6D組成的單穩(wěn)態(tài),使之產(chǎn)生5mS的正方波輸入到I0.5, I0.5=1的前沿讀取HC1值,再延時(shí)1ms 輸出給Q1.1、I1.0一脈沖信號(hào),使U1A與高速計(jì)數(shù)器清0,為下一次計(jì)數(shù)做準(zhǔn)備。
(二)、用PLC進(jìn)行等間隔定時(shí)計(jì)數(shù)的采集數(shù)據(jù)的編程
初始狀態(tài)為:將圖一硬件電路中的KM 控制端保持高電位(+12V),Q1.0輸出為1,使圖中的U6B輸出為0,即停止計(jì)數(shù)(使JM 脈沖不能通過(guò)U6A加在U1A的EN計(jì)數(shù)端)。
PLC編程:在第一個(gè)掃描周期使Q1.1=1(即SM0.1=Q1.1),將計(jì)數(shù)器清0,之后Q1.1復(fù)位。PLC采用每間隔0.1秒產(chǎn)生一次時(shí)間中斷,使Q1.0=0,即容許計(jì)數(shù)器從0開(kāi)始加計(jì)數(shù),延時(shí)10毫秒,Q1.0輸出=1,經(jīng)U6B倒相,使U
1、 主程序:
2、子程序SBR-0:
3、中斷初始化程序:
4、中斷子程序:
(三)、由硬件提供定時(shí)計(jì)數(shù)控制門的PLC編程
PLC在開(kāi)機(jī)的第一個(gè)掃描周期將Q1.0置1,且使SM0.1=Q1.1將U
當(dāng)KM 控制 端輸入的負(fù)方波結(jié)束時(shí),U6A關(guān)門,U1A停止計(jì)數(shù)。PLC高速計(jì)數(shù)器必然也停止計(jì)數(shù)。KM 控制 端輸入負(fù)方波的后沿經(jīng)U6B倒相變?yōu)樨?fù)跳變,觸發(fā)由U6C、U6D組成的單穩(wěn)態(tài),使之產(chǎn)生正方波輸入到I0.5,PLC在 I0.5=1的前沿讀取高速計(jì)數(shù)器的計(jì)數(shù)值HC1,經(jīng)整理送入VW100。其后沿延時(shí)1ms輸出給Q1.1、I1.0一正脈沖,使U1A與高速計(jì)數(shù)器清0,為下一次計(jì)數(shù)做準(zhǔn)備。 詳見(jiàn)梯形圖 :
SBR_0 子程序
二、 用硬件計(jì)數(shù)器配合PLC編程進(jìn)行等間隔讀取計(jì)數(shù)值的數(shù)據(jù)采集
由于PLC I/O口的動(dòng)作相應(yīng)時(shí)間比硬件電路的動(dòng)作時(shí)間有所滯后,故采用如圖一所
示的用硬件計(jì)數(shù)器與PLC高速計(jì)數(shù)器配合使用進(jìn)行等間隔讀取計(jì)數(shù)值的采集方法是會(huì)產(chǎn)生取值錯(cuò)誤的,因?yàn)闊o(wú)論是硬件還是PLC發(fā)出讀取命令,其硬件計(jì)數(shù)器與PLC讀取的數(shù)值從時(shí)間上總是不為同時(shí)刻的計(jì)數(shù)值,造成采集數(shù)據(jù)不準(zhǔn)確。為了使讀數(shù)正確,計(jì)數(shù)器應(yīng)全部選用硬件計(jì)數(shù)器而不用PLC高速計(jì)數(shù)器。見(jiàn)圖二:選用4個(gè)四位二進(jìn)制硬件計(jì)數(shù)器(4520)組成16位二進(jìn)制計(jì)數(shù)器。
(一)、電路說(shuō)明:
圖二為全硬件計(jì)數(shù)器的數(shù)據(jù)采集電路圖,它既適用于連續(xù)讀取計(jì)數(shù)值的采集方式,也適用于定時(shí)計(jì)數(shù)的采樣方式。
圖中U7A與非門,其二個(gè)輸入:1、F 為高數(shù)計(jì)數(shù)脈沖,可適用于10MHz以下的頻率脈沖。2、K 為計(jì)數(shù)控制門信號(hào),K為0時(shí)禁止計(jì)數(shù)脈沖通過(guò)U7A(即關(guān)門),K為1時(shí)容許計(jì)數(shù)脈沖通過(guò)U7A(即開(kāi)門)。在連續(xù)讀取計(jì)數(shù)值的工作方式下,K保持置1。在定時(shí)計(jì)數(shù)方式下,K輸入為正方波信號(hào),在正方波寬度內(nèi),U7A門打開(kāi),容許計(jì)數(shù)器從0開(kāi)始計(jì)數(shù)。正方波結(jié)束使U7A門的2腳電壓=0(即關(guān)閉),計(jì)數(shù)停止。該方波的后沿負(fù)跳變觸發(fā)由U
U1、U2為雙4位2進(jìn)制計(jì)數(shù)器(4520),構(gòu)成16位二進(jìn)制計(jì)數(shù)器,其U
圖中的Q1.0 為U3、U4的并入鎖存、串行移位的命令信號(hào);Q1.1 為U1、U2計(jì)數(shù)器的復(fù)位信號(hào);Q1.2為U3、U4 并入與串出方式轉(zhuǎn)換信號(hào)。
(二) 、PLC配合硬件電路進(jìn)行連續(xù)讀取計(jì)數(shù)器計(jì)數(shù)值的梯形圖:
(1)、主程序:
(2)、中斷初始化子程序:
(3)、中斷子程序:
(三)、PLC配合硬件電路進(jìn)行定時(shí)采樣編程的梯形圖:
(1)、主程序:
(2)、中斷初始化子程序
(3)、定時(shí)采樣中斷子程序:
通過(guò)以上對(duì)圖一、圖二電路原理的解析及與PLC編程說(shuō)明,可以看出,用全硬件計(jì)數(shù)器進(jìn)行PLC的數(shù)據(jù)采集,比用硬件計(jì)數(shù)器與PLC高速計(jì)數(shù)器配合使用進(jìn)行數(shù)據(jù)采集要更好一些:
1、 圖二用COS全硬件計(jì)數(shù)器其計(jì)數(shù)頻率可高達(dá)十幾MHz以上(用TTL會(huì)更高),而且可適用于定時(shí)計(jì)數(shù)與連續(xù)讀取計(jì)數(shù)值這二種數(shù)據(jù)采集方式。
2、 圖一用硬件計(jì)數(shù)器與高速計(jì)數(shù)器配合計(jì)數(shù),由于只用一級(jí)4位二進(jìn)制計(jì)數(shù)器,就限制了最高計(jì)數(shù)頻率為幾百KHz,如再增加一級(jí)4位二進(jìn)制計(jì)數(shù)器,PLC的輸入口就得用8位,而且還要增加好多硬件電路,做起來(lái)比現(xiàn)在的全硬件計(jì)數(shù)器的線路還要復(fù)雜,費(fèi)用也高,而且只適用于定時(shí)計(jì)數(shù)這一種采樣方式。
用硬件計(jì)數(shù)器配合PLC編程的數(shù)據(jù)采集方法,不僅解決了PLC因?qū)Ω哂谄涓咚儆?jì)數(shù)器最高頻響的脈沖不能計(jì)數(shù)而無(wú)法實(shí)現(xiàn)數(shù)據(jù)采集的難題,而且硬件電路簡(jiǎn)單、用件少、成本造價(jià)低(百元以下),PLC編程也很簡(jiǎn)單。
就寫到這里,如有什么錯(cuò)誤之處或疑惑問(wèn)題,可以提出,愿與大家探討。謝謝大家!
提交
對(duì)多輸出點(diǎn)PLC設(shè)計(jì)與編程的實(shí)例展示與解析
簡(jiǎn)短精煉的3例編程展示及編程思路與技巧解析
解析用S7-200編寫的幾個(gè)程序的構(gòu)思與技巧
超聲波時(shí)差法測(cè)量流量的公式推導(dǎo)及檢測(cè)方法的探討
PLC增擴(kuò)輸出口的硬件電路圖及與之配合使用的PLC梯形圖的構(gòu)思與解析