模擬量控制類(lèi)---模擬量輸入與輸出 模擬量初步認(rèn)識(shí)與單位換算編程方式
【模擬量的認(rèn)識(shí)】
1、模擬量的概念:
模擬量是指變量在一定范圍內(nèi)連續(xù)變化的量,也就是在一定范圍內(nèi)可以取任
意值。
對(duì)于PLC而言,模擬量是以模擬量輸入和模擬量輸出兩種形式呈現(xiàn)。
我們常見(jiàn)的模擬量輸入信號(hào),如:溫度、壓力、稱(chēng)重、流量、濃度、濕度、PH值(酸堿度)、光照強(qiáng)度、位移測(cè)距、雷達(dá)測(cè)速等等,這些需要將數(shù)據(jù)傳送到PLC接收的信號(hào),都稱(chēng)為模擬量輸入信號(hào)。
而模擬量輸出信號(hào),如:控制閥門(mén)大小,控制變頻器頻率變化等。這些需要PLC輸出變化量信號(hào)來(lái)進(jìn)行的控制的方式,稱(chēng)為模擬量輸出信號(hào)。
2、模擬量的應(yīng)用場(chǎng)景:
模擬量的應(yīng)用并不僅限于工業(yè)生產(chǎn),在農(nóng)林牧副漁等行業(yè)中都是應(yīng)用很廣泛的,一些典型的應(yīng)用場(chǎng)景,如:污水處理(檢測(cè)PH值),高溫鍋爐類(lèi)(溫度控制),養(yǎng)殖行業(yè)(監(jiān)控雞舍羊圈等環(huán)境中的溫濕度等),魚(yú)塘水氧氣濃度監(jiān)控,電流電壓監(jiān)控,土壤養(yǎng)料元素監(jiān)控,水流量計(jì)檢測(cè),控制變頻器頻率改變?cè)偃タ刂齐姍C(jī)轉(zhuǎn)速等等。
3、模擬量的信號(hào)類(lèi)型:
電壓型:0-10v;電流型:4-20ma。
我司采用的模擬量信號(hào)目前主要以電流型信號(hào)為主,無(wú)論是模擬量輸入還是
模擬量輸出,都是支持4-20ma信號(hào),若模擬量輸入傳感器支持0-10v信號(hào),可以采用“電壓轉(zhuǎn)電流信號(hào)模塊”將采集的0-10v信號(hào)轉(zhuǎn)變成4-20ma后再接入到PLC模擬量輸入端;若PLC輸出需要控制的負(fù)載是0-10v信號(hào),可以采用“電流轉(zhuǎn)電壓信號(hào)模塊”將PLC輸出端的4-20ma信號(hào)轉(zhuǎn)變成0-10v信號(hào),再去控制相對(duì)應(yīng)的負(fù)載。
【模擬量輸入的單位換算公式】

公式中的量程是指?jìng)鞲衅鞯牧砍獭?/span>
我們?nèi)〉哪M量的信號(hào)類(lèi)型是4-20ma,模擬量輸入(PLC本機(jī)自帶模擬量入口和采集器模擬量入口)采集精度是12位,采集范圍是0-4095,為了方便計(jì)算,我們后面用于公式的采集值全部取值0-4000。如下圖所示,將傳感器量程范圍分別對(duì)應(yīng)好模擬量信號(hào)范圍以及采集值范圍,再將對(duì)應(yīng)數(shù)據(jù)套進(jìn)模擬量公式,換算得到模擬量實(shí)時(shí)值。

【PLC本機(jī)自帶模擬量輸入單位換算方式】
PLC本機(jī)自帶模擬量輸入,目前僅有型號(hào)為SFa-0806A2022(四代0806雙模擬量款)以及SFm-2424A4120(四軸帶兩路Ai)和SFm-2424A4122(四軸全功能)支持機(jī)身帶兩路模擬量輸入。
PLC自身的模擬量輸入采集值用Ai表示,采集值范圍是0-4000,直接套用公式進(jìn)行計(jì)算,此處以壓力傳感器為例,壓力傳感器輸出4-20ma信號(hào)到PLC機(jī)身的模擬量輸入端口,壓力傳感器量程范圍:10kg-80kg。
我們根據(jù)公式得到以下4組有效數(shù)據(jù),并將其保存在4個(gè)W32位寄存器里面:
①傳感器量程差值:80kg-10kg=70kg,所以W0=70;
②采集值最大范圍值:4000,所以W1=4000;
③4ma對(duì)應(yīng)的傳感器最小量程值:10kg,所以W2=10;
④最后運(yùn)算得到的實(shí)時(shí)值保存在W3寄存器里面。
得到相關(guān)數(shù)據(jù)之后,我們?cè)賹?shù)據(jù)套入公式,請(qǐng)注意,PLC運(yùn)算只能單條指令執(zhí)行,且不包含小數(shù)計(jì)算,所以我們需要對(duì)公式進(jìn)行拆分,按照“先乘除后加減”的規(guī)則添加運(yùn)算公式,對(duì)于每一步運(yùn)算的結(jié)果值,我們用V中間變量寄存器來(lái)過(guò)渡(中間變量掉電不保存數(shù)據(jù)),如下操作:
V0=實(shí)時(shí)采集值Ai1×W0;(先乘,Ai1表示第一路模擬量輸入通道)
V1=V0/W1;(后除)
W3=V1+W2。(再加減)
將得到的運(yùn)算謄寫(xiě)到PLC編程軟件,在組合幀編輯一組,取標(biāo)志M0斷為組長(zhǎng),可進(jìn)行實(shí)時(shí)運(yùn)算,得實(shí)時(shí)結(jié)果。

通過(guò)此運(yùn)算得到的W3就是實(shí)時(shí)壓力值,我們?cè)趯?shí)際的控制過(guò)程中,就是通過(guò)對(duì)壓力W3進(jìn)行比較控制的,比如壓力低于20kg時(shí),觸發(fā)電磁閥動(dòng)作,壓力高于50kg時(shí),觸發(fā)電磁閥停止,類(lèi)似這樣比較控制就是在時(shí)序環(huán)編輯,如下所示:X00是啟動(dòng)信號(hào),G10=20kg,G11=50kg,Y0是電磁閥。

【PLC擴(kuò)展采集器增加模擬量輸入單位換算方式】
PLC自身無(wú)模擬量入口或者模擬量入口過(guò)少需要外增,類(lèi)似這樣通過(guò)擴(kuò)展采集的方式來(lái)增加模擬量通道的方式,我們都需要通過(guò)CAN擴(kuò)展控制,在PLC軟件中需要先寫(xiě)一條CAN擴(kuò)展指令,一條擴(kuò)展指令表示擴(kuò)展一個(gè)采集器(4路),需要擴(kuò)展幾個(gè)采集器,就添加幾條擴(kuò)展指令(不同的采集器必須修改站號(hào),站號(hào)要對(duì)應(yīng)指令中的匹配ID)。
1-先設(shè)置擴(kuò)展程序:在軟件的通信配置-CAN總線(xiàn)擴(kuò)展處,編輯一條擴(kuò)展指令。

*使能標(biāo)志:M79,啟動(dòng)擴(kuò)展接收指令的一個(gè)標(biāo)志(這個(gè)標(biāo)志無(wú)特別說(shuō)明,任選一個(gè)M,嚴(yán)禁與錯(cuò)誤標(biāo)志相同)。在時(shí)序環(huán)或組合幀的程序中觸發(fā)M79通,此條通信指令將使能,只要M79不復(fù)位,此條指令一直有效。
*傳送方向:接收。為PLC接收模擬量采集器的數(shù)據(jù)。
*擴(kuò)展功能:擴(kuò)展外部16位寄存器。模擬量采集器采集到的數(shù)值是保存在PLC的G_16位通用寄存器里面。
*擴(kuò)展地址:擴(kuò)展地址就是G的寄存器序號(hào),如地址寫(xiě):1,表示從G1寄存器開(kāi)始,連續(xù)調(diào)用4個(gè)寄存器儲(chǔ)存采集器的4路模擬量信號(hào),那么按順序Ai1-Ai4這四個(gè)入口采集的數(shù)據(jù)分別保存在G1,G2,G3,G4這四個(gè)寄存器中。也就是Ai1--G1,Ai2--G2,Ai3--G3,Ai4--G4。
*匹配STDID:表示擴(kuò)展的采集器對(duì)應(yīng)的站號(hào),擴(kuò)展1個(gè)采集器,第一個(gè)擴(kuò)展指令I(lǐng)D就寫(xiě)1,那么這個(gè)采集器的站號(hào)就要對(duì)應(yīng)1;擴(kuò)展2個(gè)采集器,第2個(gè)擴(kuò)展指令I(lǐng)D就寫(xiě)2,那么第二個(gè)采集器的站號(hào)就要對(duì)應(yīng)2;只要ID跟采集器的站號(hào)對(duì)應(yīng)上才能起作用。
*數(shù)據(jù)長(zhǎng)度:每個(gè)寄存器要占用兩位,一個(gè)采集器有4路模擬量入口,所以數(shù)據(jù)長(zhǎng)度為8。
*錯(cuò)誤標(biāo)志:指令自帶,默認(rèn)。
2-再設(shè)置觸發(fā)擴(kuò)展標(biāo)志程序:
任意一個(gè)時(shí)序環(huán),或者組合幀里面設(shè)置一條觸發(fā)標(biāo)志M79通的指令,表示啟動(dòng)擴(kuò)展指令,如下所示在組合幀編輯觸發(fā)M79通。

3-設(shè)置模擬量換算程序:


PLC擴(kuò)展的模擬量輸入采集值用寄存器G表示,采集值范圍是0-4000,直接套用公式進(jìn)行計(jì)算,此處以溫度傳感器為例,溫度傳感器輸出4-20ma信號(hào)到PLC
機(jī)身的模擬量輸入端口,溫度傳感器量程范圍:100℃-500℃。
我們根據(jù)以上公式得到以下4組有效數(shù)據(jù),并將其保存在4個(gè)W32位寄存器里面,前面壓力傳感器案例調(diào)用的W0~W3寄存器,這里我們就調(diào)用W4~W7。
①傳感器量程差值:500℃-100℃=400℃,所以W4=70;
②采集值最大范圍值:4000,所以W5=4000;
③4ma對(duì)應(yīng)的傳感器最小量程值:100℃;也就是W2=100;
④最后運(yùn)算得到的實(shí)時(shí)值保存在W7寄存器里面。
得到相關(guān)數(shù)據(jù)之后,我們?cè)賹?shù)據(jù)套入公式,按照“先乘除后加減”的規(guī)則添加運(yùn)算公式,對(duì)于每一步運(yùn)算的結(jié)果值,我們用V中間變量寄存器來(lái)過(guò)渡(中間變量掉電不保存數(shù)據(jù)),如下操作:
V2=實(shí)時(shí)采集值G1×W4;(先乘,G1表示采集器第一路模擬量輸入通道)
V3=V2/W5;(后除)
W7=V3+W6。(再加減)
將得到的運(yùn)算謄寫(xiě)到PLC編程軟件,在組合幀編輯一組,取標(biāo)志M0斷為組長(zhǎng),可進(jìn)行實(shí)時(shí)運(yùn)算,得實(shí)時(shí)結(jié)果。

通過(guò)此運(yùn)算得到的W7就是實(shí)時(shí)溫度值,我們?cè)趯?shí)際的控制過(guò)程中,就是通過(guò)對(duì)溫度W7進(jìn)行比較控制的,比如溫度低于150℃時(shí),觸發(fā)加熱棒動(dòng)作,溫度高于350℃時(shí),觸發(fā)電磁閥停止,類(lèi)似這樣比較控制就是在時(shí)序環(huán)編輯,如下所示:X01是啟動(dòng)信號(hào),G12=150,G13=350,Y1是加熱棒。

【PLC模擬量輸出控制方式】
目前僅有型號(hào)為SFa-0806A2022(四代0806雙模擬量款)以及SFm-2424A4102(四軸帶兩路Ao)和SFm-2424A4122(四軸全功能)這三款型號(hào)支持兩路模擬量輸出,模擬量輸出暫不支持?jǐn)U展。
PLC發(fā)送的模擬量輸出信號(hào)也是4-20ma,無(wú)需單位換算公式,只需要一條賦值運(yùn)算指令就可以完成,以下程序以控制變頻器頻率為例:

指令解析:
Ao1:表示模擬量輸出值,其中“1”表示第一路模擬量輸出通道,若取用第二路通道,則選用Ao2,其輸出的范圍值是4-20ma。
G0:表示在變頻器頻率范圍值0-50HZ,需要在觸摸屏上面輸入數(shù)值,比如G0輸入1,那么輸出模擬量數(shù)值是Ao1=G0×80=80,就是G0整體放大80倍才是對(duì)應(yīng)的模擬量輸出采集值80;若G0輸入10,那么模擬量數(shù)值A(chǔ)o1=G0×80=800,就是整體放大800倍,模擬量輸出采集值就對(duì)應(yīng)800。
因?yàn)锳o1范圍值是4-20ma,模擬量精度是12位,其采集值范圍是0-4000,而G0變頻器的范圍值是0-50,三者要對(duì)應(yīng),所以對(duì)照運(yùn)算就需要將G0的值需要放大80倍。