siemens x
I/O 設(shè)備

AIBUS現(xiàn)場(chǎng)通訊總線的PLC工控設(shè)計(jì)方案

2025China.cn   2009年06月17日

摘要:在大規(guī)模應(yīng)用的場(chǎng)合下,以監(jiān)測(cè)、變送、通信儀表和上位計(jì)算機(jī)為主構(gòu)成的集散控制系統(tǒng)(DCS)無(wú)疑是一個(gè)較好的控制方案。
 
引言:廈門(mén)宇電公司生產(chǎn)的AI系列儀表具有良好的通訊功能,可以構(gòu)成以AIBUS通訊協(xié)議為基礎(chǔ)的現(xiàn)場(chǎng)總線。廠方提供的AIDCS應(yīng)用軟件,可運(yùn)行在中文WINDOWS 98/ME/XP等操作系統(tǒng)下,能實(shí)現(xiàn)對(duì)1~200臺(tái)AI系列各種型號(hào)儀表的集中監(jiān)控和管理。在大規(guī)模應(yīng)用的場(chǎng)合下,以監(jiān)測(cè)、變送、通訊儀表和上位計(jì)算機(jī)為主構(gòu)成的集散控制系統(tǒng)(DCS)無(wú)疑是一個(gè)較好的控制方案,本文試圖從程序設(shè)計(jì)方面探討AI儀表與常見(jiàn)的工業(yè)PLC控制系統(tǒng)的結(jié)合使用,這種多種通訊協(xié)議結(jié)合的應(yīng)用具有相當(dāng)?shù)膹V泛性和代表性。

靈活多變的控制方案
       工業(yè)PLC選用LG公司的MK-120S系列DR-30U,屬于中小型PLC,CPU處理速度0.1US/步,用戶程序容量7k步。它具備RS232和RS485兩個(gè)通訊接口。一般場(chǎng)合應(yīng)用,RS232可連接一臺(tái)人機(jī)界面,用以集中監(jiān)控智能表,RS485遠(yuǎn)程連接多臺(tái)AI-518智能表;復(fù)雜場(chǎng)合應(yīng)用時(shí),RS232可通過(guò)兼容EIA/TIA的標(biāo)準(zhǔn)串行接口RS232〈=〉485轉(zhuǎn)換器連接多臺(tái)AI-518智能表,RS485用來(lái)接兼容相同RS485協(xié)議的人機(jī)界面和多臺(tái)變頻器。這種靈活多變的控制方案具有性價(jià)比良好的優(yōu)點(diǎn),能夠以最少的硬件投資取得最好的控制特性,當(dāng)然這是與宇電表具備人工智能調(diào)節(jié)、通訊傳輸可靠的優(yōu)點(diǎn)分不開(kāi)的。

程序設(shè)計(jì)詳解
        程序設(shè)計(jì)以14臺(tái)AI-518智能表為例,對(duì)應(yīng)第1臺(tái)智能表,在AIBUS中的地址參數(shù)為1,在人機(jī)界面和PLC中定義的變量值為:測(cè)量值DATA1,給定值DATA2,報(bào)警變量PARA1,對(duì)應(yīng)第2臺(tái)智能表,它在AIBUS中的地址為2,其變量值為:測(cè)量值DATA3,給定值DATA4,報(bào)警變量PARA2...,以下如此類(lèi)推,其中DATA1-28和PARA1-14均為PLC的數(shù)據(jù)寄存器。由于宇電的AIBUS通訊協(xié)議使用方便,且以RS485為基礎(chǔ)的硬件通訊兼容性好,本文在PLC程序中將與智能表通訊及顯示的參數(shù)變量都給出定義方法,很容易把它推廣應(yīng)用到其它廠家的PLC上。


1、程序的設(shè)計(jì)流程敘述如下("http://"后為程序段備注):
(1) PLC上電初始化智能表的地址循環(huán)變量P為1;//P為PLC的數(shù)據(jù)寄存器。
(2) 14臺(tái)智能表的“給定值DATAX”進(jìn)行寫(xiě)條件輪詢;//X為偶數(shù),且0<X<=28。
(3) 對(duì)上面的14個(gè)寫(xiě)條件相“或”為M-write;//M-write為PLC的輔助繼電器。
(4) 調(diào)用智能表讀/寫(xiě)子程序。
(5) 地址循環(huán)變量從1-14變化時(shí),將DATA1-28,PARA1-14分別賦值為DDISP,DSET和DALARM;//這三個(gè)參數(shù)均為數(shù)據(jù)寄存器,是14臺(tái)表的讀/寫(xiě)/報(bào)警公共地址指針。
(6) 以100MS的時(shí)鐘為周期發(fā)送讀/寫(xiě)幀,對(duì)接收到的字節(jié)按“讀/寫(xiě)”字節(jié)區(qū)分,進(jìn)行間接地址傳送,其格式類(lèi)似為:MOV DREV #DDISP, MOV DREV+1 #DSET,其中“DREV”為PLC串口通訊指令定義的接收幀的第1個(gè)字(共接收到符合AIBUS標(biāo)準(zhǔn)的10個(gè)字節(jié))中;“DREV+1”為接收幀的第2個(gè)字;接收到的第3個(gè)字“DREV+2”包含智能表的報(bào)警信息,應(yīng)對(duì)其進(jìn)行字/位的“與/或”變換后再進(jìn)行間接地址傳送。
(7) 地址循環(huán)變量+1;
(8) 地址變量增加到14時(shí)重置為1;
(9) 程序結(jié)束語(yǔ)句;
(10) 智能表讀/寫(xiě)子程序


2、智能表的“給定值DATAX”寫(xiě)條件編程方法
        指定1號(hào)表的舊給定值保存在“DOLD1”中,當(dāng)要在人機(jī)界面上進(jìn)行1號(hào)表的寫(xiě)“給定值DATA1”操作時(shí),由于改變的新“給定值DATA1”與舊值“DOLD1”不同, 將此賦值給1號(hào)表寫(xiě)入標(biāo)志M1(M1為PLC的輔助繼電器),再將“給定值DATA1”傳送到舊給定值“DOLD1”中去,同時(shí)將1號(hào)表的地址寫(xiě)指針P賦為1,并將“給定值DATA1”傳送到14臺(tái)表的公共寫(xiě)入值“DWRITE”中;對(duì)應(yīng)地址參數(shù)不同的智能表應(yīng)以此類(lèi)推。


3、智能表報(bào)警信息的編程方法
     由于接收幀的第3字的高字節(jié)為報(bào)警信息,所以應(yīng)將第3字的高低字節(jié)倒置,得到報(bào)警的8位字節(jié)“HEX-ALARM”。按照AIBUS的標(biāo)準(zhǔn),這8位字節(jié)的0-5位置1狀態(tài)分別代表上限、下限、正偏差、負(fù)偏差和超量程報(bào)警,將“HEX-ALARM”與“HEX1F”按位相與,其結(jié)果賦值給“DD-ALARM”。在智能表的正常狀態(tài),“DD-ALARM”的值均為0;在報(bào)警狀態(tài)下,其值必不為零。將“DD-ALARM”是否為零的狀態(tài)賦值給“DALARM”,以顯示對(duì)應(yīng)智能表的報(bào)警狀態(tài)。按照這種思路,稍稍修改程序,就可以在人機(jī)界面上集中顯示多臺(tái)智能表是否發(fā)生上限、下限、正偏差、負(fù)偏差和超量程報(bào)警,從而讓我們更好地了解控制現(xiàn)場(chǎng)的情況。


4、智能表讀/寫(xiě)子程序的設(shè)計(jì)流程
       由于僅僅要讀測(cè)量值/寫(xiě)給定值,按AIBUS通訊協(xié)議的要求,PLC對(duì)儀表的參數(shù)代號(hào)00H(給定值)進(jìn)行加法操作就可以。因此智能表讀/寫(xiě)子程序的設(shè)計(jì)流程如下:
1、地址循環(huán)變量P+80->P1; //P1為PLC的數(shù)據(jù)寄存器
2、P1*H100->P2;//P2為PLC的數(shù)據(jù)寄存器
3、P1+P2->PP; //PP為智能表在AIBUS中的協(xié)議地址,定義在發(fā)送幀中第1字
4、M-write條件成立時(shí):
(1)傳送HEX43到發(fā)送幀的第2字;//HEX43為寫(xiě)智能表標(biāo)志
(2)傳送“DWRITE”到發(fā)送幀的第3字;
(3)“DWRITE”+HEX43+地址循環(huán)變量P,其結(jié)果傳送到發(fā)送幀的第4字;//進(jìn)行寫(xiě)字節(jié)校驗(yàn)
5、M-write條件不成立時(shí):
(1)傳送HEX52到發(fā)送幀的第2字;//HEX52為讀智能表標(biāo)志
(2)傳送HEX00到發(fā)送幀的第3字;
(3)HEX43+地址循環(huán)變量P,其結(jié)果傳送到發(fā)送幀的第4字;//進(jìn)行讀字節(jié)校驗(yàn)

經(jīng)驗(yàn)總結(jié)及程序效果
        在對(duì)程序調(diào)試過(guò)程中,應(yīng)利用PLC的串口監(jiān)測(cè)工具對(duì)與智能表的通訊情況進(jìn)行監(jiān)控,必要時(shí)延長(zhǎng)讀/寫(xiě)幀的發(fā)送時(shí)鐘周期,觀察每次讀/寫(xiě)幀的字節(jié)數(shù)、讀/寫(xiě)字節(jié)、報(bào)警及校驗(yàn)字節(jié)是否符合AIBUS協(xié)議的要求。
        當(dāng)在人機(jī)界面上修改某臺(tái)智能表的給定值時(shí),智能表的刷新速度很快,而在集中顯示的人機(jī)界面上就有一定時(shí)間延遲。分析:“寫(xiě)給定值” 操作在100ms內(nèi)即可返回10個(gè)字節(jié),但其中第2字代表的給定值(16進(jìn)制格式)實(shí)際為上一次的賦值,需要對(duì)這臺(tái)智能表再進(jìn)行一次讀操作時(shí)才向PLC返回方才寫(xiě)入的給定值。由于程序是按照“寫(xiě)給定值”優(yōu)先的原則設(shè)計(jì),當(dāng)對(duì)智能表的寫(xiě)設(shè)定值操作結(jié)束后,智能表按剛才“寫(xiě)給定值”操作的協(xié)議地址繼續(xù)以100ms時(shí)間間隔進(jìn)行“讀測(cè)量值”操作,其輪詢?nèi)园碅IBUS協(xié)議地址1—〉14的次序,則在人機(jī)界面上“寫(xiě)給定值”操作后,刷新顯示的延遲時(shí)間=(100ms+PLC程序循環(huán)時(shí)間)×14+(智能表-)PLC-)人機(jī)界面的信號(hào)傳輸時(shí)間),實(shí)測(cè)顯示延遲時(shí)間最大不超過(guò)3秒。為改善這種顯示延遲情況,可以在本文上述第二段中插入1行程序,將新“給定值DATA1”直接傳送到對(duì)應(yīng)智能表的人機(jī)界面顯示值“DATAX”(X為偶數(shù),且0<X<=28)中,即可實(shí)現(xiàn)遠(yuǎn)程智能表與人機(jī)界面的同步顯示。
      按以上設(shè)計(jì)原則編好的程序運(yùn)行效果良好,顯示穩(wěn)定,刷新可靠,實(shí)現(xiàn)了對(duì)14臺(tái)智能表在人機(jī)界面上的集中監(jiān)控。


 

(轉(zhuǎn)載)

標(biāo)簽:AIBUS 我要反饋 
2024世界人工智能大會(huì)專(zhuān)題
即刻點(diǎn)擊并下載ABB資料,好禮贏不停~
優(yōu)傲機(jī)器人下載中心
西克
2024全景工博會(huì)
專(zhuān)題報(bào)道