plc編程算法(1):開(kāi)關(guān)量
plc中無(wú)非就是三大量:開(kāi)關(guān)量,模擬量,脈沖量。搞清楚三者之間的關(guān)系,你就能熟練的掌握plc了。
1,開(kāi)關(guān)量也稱邏輯量,指的是兩個(gè)取值,0或1,on或off。它是常用的控制,對(duì)它進(jìn)行控制是plc的優(yōu)勢(shì),也是plc基本的應(yīng)用。
開(kāi)關(guān)量控制的目的是,根據(jù)開(kāi)關(guān)量的當(dāng)前輸入組合與歷史的輸入順序,使plc產(chǎn)生相應(yīng)的開(kāi)關(guān)量輸出,以使系統(tǒng)能按一定的順序工作。所以,有時(shí)也稱其為順序控制。
而采用順序控制又分為手動(dòng),半自動(dòng)或自動(dòng)。而采用的控制原理有分散,集中與混合控制方式。
2,模擬量是指一些連續(xù)變化的物理量,如電壓,電流,壓力,速度,流量等。
plc是由繼電控制引入微處理技術(shù)后發(fā)展而來(lái)的,可方便及可靠地利用開(kāi)關(guān)量控制。由于模擬量可轉(zhuǎn)換成數(shù)字量,數(shù)字量只是多位的開(kāi)關(guān)量,故經(jīng)轉(zhuǎn)換后的模擬量,plc也*可以可靠的進(jìn)行處理控制。
由于連續(xù)的生產(chǎn)過(guò)程常有模擬量,所以模擬量控制有時(shí)也稱過(guò)程控制。
如果要點(diǎn)不是標(biāo)準(zhǔn)的,須經(jīng)過(guò),把非標(biāo)準(zhǔn)的體積變成標(biāo)準(zhǔn)的電信號(hào),如4-20ma,1-5v,0-10v等。
同時(shí)還要有模擬量輸入單元(a / d),把這些標(biāo)準(zhǔn)的電信號(hào)轉(zhuǎn)換成數(shù)字信號(hào);模擬量輸出單元(d / a),以把plc處理后的數(shù)字量轉(zhuǎn)換成模擬量-標(biāo)準(zhǔn)的電信號(hào)。
同時(shí)還要有模擬量輸入單元(a / d),把這些標(biāo)準(zhǔn)的電信號(hào)轉(zhuǎn)換成數(shù)字信號(hào);模擬量輸出單元(d / a),以把plc處理后的數(shù)字量轉(zhuǎn)換成模擬量-標(biāo)準(zhǔn)的電信號(hào)。
因此標(biāo)準(zhǔn)電信號(hào),數(shù)字量之間的轉(zhuǎn)換就要用到各種運(yùn)算。這需要搞清楚模擬量單元的分辨率以及標(biāo)準(zhǔn)的電信號(hào)。
例如:
plc模擬單元的分辨率是1/32767,對(duì)應(yīng)的標(biāo)準(zhǔn)電量是0—10v,所要檢測(cè)的是溫度值0—100℃。那么0—32767對(duì)應(yīng)0—100℃的溫度值。然后計(jì)算出1℃所對(duì)應(yīng)的數(shù)字量是327.67。如果想把溫度值精確到0.1℃,把327.67 / 10即可。
這些都是plc內(nèi)部數(shù)字量的計(jì)算過(guò)程。模擬量控制包括:反饋控制,前饋控制,比例控制,模糊控制等。
3,脈沖量是其取值總是不斷的在0(連續(xù))和1(高峰值)之間交替變化的數(shù)字量。每秒鐘脈沖交替變化的次數(shù)稱為頻率。
plc脈沖量的控制目的主要是位置控制,運(yùn)動(dòng)控制,軌跡控制等。例如:脈沖數(shù)在角度控制中的應(yīng)用。步進(jìn)電機(jī)驅(qū)動(dòng)器的分開(kāi)是每圈10000,要求步進(jìn)電機(jī)旋轉(zhuǎn)90度。那么所要?jiǎng)幼鞯拿}沖數(shù)值= 10000 /(360/90)= 2500。
plc編程算法(2)-模擬量的計(jì)算
一,-10—10v;-10v—10v的電壓時(shí),在6000分辨率時(shí)被轉(zhuǎn)換為f448—0bb8hex(-3000—3000);12000分辨率時(shí)被轉(zhuǎn)換為e890—1770hex(-6000—6000)。
二,0—10v;0—10v的電壓時(shí),在12000分辨率時(shí)被轉(zhuǎn)換為0—1770hex(0—6000);12000分辨率時(shí)被轉(zhuǎn)換為0—2ee0hex(0—12000)。
三,0—20ma;0—20ma的電流時(shí),在6000分辨率時(shí)被轉(zhuǎn)換為0—1770hex(0—6000);12000分辨率時(shí)被轉(zhuǎn)換為0—2ee0hex(0—12000)。
四,4—20ma;4—20ma的電流時(shí),在6000分辨率時(shí)被轉(zhuǎn)換為0—1770hex(0—6000);12000分辨率時(shí)被轉(zhuǎn)換為0—2ee0hex(0—12000)。
以上僅做簡(jiǎn)單的介紹,不同的plc有不同的分辨率,和您所測(cè)量的物理量實(shí)現(xiàn)的尺寸不一樣。計(jì)算結(jié)果可能有一定的差異。
注:模擬輸入的配線的要求
1,使用屏蔽雙絞線,但不連接屏蔽層。
2,當(dāng)一個(gè)輸入不使用的時(shí)候,將v in和com端子短接。
3,模擬信號(hào)線與電源線隔離(ac電源線,高壓線等)。
4,當(dāng)電源線上有干擾時(shí),在輸入部分和電源單元之間安裝一個(gè)考慮波器。
5,確認(rèn)正確的接線后,首先給cpu單元上電,然后再給負(fù)載上電。
6,斷電時(shí)先切斷負(fù)載的電源,然后再切斷cpu的電源。
plc編程算法(3)-脈沖量的計(jì)算
脈沖量的控制多用于步進(jìn)電機(jī),伺服電機(jī)的角度控制,距離控制,位置控制等。以下由步進(jìn)電機(jī)為例來(lái)說(shuō)明各控制方式。
1,步進(jìn)電機(jī)的角度控制。首先要明確步進(jìn)電機(jī)的細(xì)分?jǐn)?shù),然后確定步進(jìn)電機(jī)轉(zhuǎn)一圈所需要的總脈沖數(shù)。計(jì)算“角度百分比=設(shè)定角度/ 360°(即一圈)”“角度動(dòng)作脈沖數(shù)=一圈總脈沖數(shù)*角度百分比。”
公式為:角度動(dòng)作脈沖數(shù)=一圈總脈沖數(shù)*(設(shè)定角度/ 360°)。
2,逐步電機(jī)的距離控制。首先延長(zhǎng)步進(jìn)電機(jī)轉(zhuǎn)一圈所需要的總脈沖數(shù)。然后確定步進(jìn)電機(jī)滾輪直徑,計(jì)算滾輪周長(zhǎng)。計(jì)算每個(gè)脈沖運(yùn)行距離。后計(jì)算設(shè)定距離所要運(yùn)行的脈沖數(shù)。
公式為:設(shè)定距離脈沖數(shù)=設(shè)定距離/ [(滾輪直徑* 3.14)/一圈總脈沖數(shù)]
3,步進(jìn)電機(jī)的位置控制就是角度控制與距離控制的綜合。
以上只是簡(jiǎn)單的分析步進(jìn)電機(jī)的控制方式,可能與實(shí)際有出入,成為各位同仁參考。
伺服電機(jī)的動(dòng)作與步進(jìn)電機(jī)的一樣,但要考慮伺服電機(jī)的內(nèi)部電子齒輪比與伺服電機(jī)的減速比。
(來(lái)源:網(wǎng)絡(luò),版權(quán)歸原作者)