咨詢電話
ENGLISH0755-88840386發(fā)布時(shí)間:2020-09-21 10:51:24 |來源:網(wǎng)絡(luò)轉(zhuǎn)載
稱重系統(tǒng)在實(shí)際生'產(chǎn)中有著廣泛的應(yīng)用,自動(dòng)打包秤是稱重控制系統(tǒng)的一個(gè)典型應(yīng)用。目前常用的控制系統(tǒng)實(shí)現(xiàn)方式有計(jì)算如控制方式、單片機(jī)控制方式、PLC控制方式三種??芷湛刂浦I大多是釆用串口通信方式將膈數(shù)據(jù)讀到控制系統(tǒng)中進(jìn)行處理,以實(shí)現(xiàn)對(duì)設(shè)備的控制。由于說C具有通用靈活、可靠性高、擴(kuò)熊能力強(qiáng)、易于編程等優(yōu)點(diǎn),釆用PLC作為主控機(jī)構(gòu)成的自%稱重控制系統(tǒng)得到廣泛的應(yīng)用。本文以自動(dòng)打包秤的PLC控制系統(tǒng)為例,說明如何使用松下fW)型PLC蠢過串口讀取智能稱重儀表中的重量數(shù)據(jù)。
1控制系統(tǒng)的硬件構(gòu)成
自動(dòng)打包秤的控制系統(tǒng)主要由PLC、稱重傳感器'、稱重儀表、行程開關(guān)、電動(dòng)機(jī)和氣缸等部件構(gòu)成,如圖1。系統(tǒng)的核心采甬松下FP0-C10型PLC,稱重儀表釆南上海耀華XK3190-A9型數(shù)顯稱重儀表。稱重儀表將稱重傳感器傳來的重量數(shù)據(jù)經(jīng)過赤編,按照儀表的通信協(xié)議格式將重量數(shù)據(jù)逋過RS232串口傳給PLC的內(nèi)部寄存器。PLC根據(jù)采集到的重量數(shù)據(jù)和控制梯形圖實(shí)現(xiàn)對(duì)外部控制。
2PLC與稱重儀表串口通信的實(shí)現(xiàn)
(1)稱重儀表的數(shù)據(jù)傳輸協(xié)議
XK3190-A9稱重儀表的通信方式有連續(xù)方式和指令方式兩種。本文釆用指令方式讀取儀表中的數(shù)據(jù)。具體操作方式如下。
儀表按照上位機(jī)發(fā)送的指令,輸出相應(yīng)的數(shù)據(jù),上位機(jī)每發(fā)一次指令,儀表就相應(yīng)的輸出一幀數(shù)據(jù),上位機(jī)發(fā)送的指令格式見表1。
表1中:異或=2©3。
儀表輸出的格式見表2。
表2儀表輸出格式
表2中:異或=2由3$,,,©m-1®
其中,當(dāng)命令為D時(shí)(即:讀凈重?cái)?shù)據(jù)),儀表輸出的第4?〃字節(jié)中內(nèi)容見表3。
(2)通信參數(shù)設(shè)的置
XK3190-A9稱重儀表的串口通信蔘數(shù)設(shè)置為:波特率:4800;無校8位數(shù)據(jù)位;1位停止位。
PLC和稱重儀表的串口通信參數(shù)必須一致,才能實(shí)現(xiàn)他們之間的通信。因此對(duì)PLC的系統(tǒng)寄存器設(shè)置如圖2所示。重點(diǎn)是設(shè)置NO.412、NO.413、NO.414H個(gè)參數(shù)值。
表3儀表輸出的第4?"字節(jié)中的內(nèi)容
(3)通信的實(shí)現(xiàn)
高級(jí)指令F144(TRNS)是PLC中一條專門用RS232串行通信口向外部設(shè)備發(fā)送數(shù)據(jù)或從外部設(shè)備接受數(shù)據(jù)的指令。
該指令的格式為[F144TRNS,S,n]
發(fā)送時(shí):發(fā)送存儲(chǔ)在數(shù)據(jù)表中由“S”地址開始的“n”個(gè)字節(jié)。該指令能夠自動(dòng)添加和發(fā)送起始符和結(jié)束符(在NO.413中設(shè)置)。
接收時(shí):當(dāng)接受完成標(biāo)志R9038編程OFF時(shí),開始從RS232口接受數(shù)據(jù),并自動(dòng)保存到由系統(tǒng)寄存器NO.417和NO.418設(shè)定的數(shù)據(jù)寄存器中。
本次設(shè)計(jì)中PLC采用指令方式讀取XK3190-A9稱重儀表中的凈重?cái)?shù)據(jù)。參照表1的說明,PLC向儀表發(fā)送的ASCII碼數(shù)據(jù)為:“024144303503”。按照PLCNO.413的設(shè)定,PLC能夠自動(dòng)將開始標(biāo)志位(02)和結(jié)束標(biāo)志位(03)自動(dòng)添加到數(shù)據(jù)上的。因此通過F144(TRNS)指令實(shí)際發(fā)送的數(shù)據(jù)就是“41443035”。
當(dāng)儀表接受到上述指令后,立即會(huì)將當(dāng)前顯示的凈重?cái)?shù)據(jù)反饋回來,PLC將此數(shù)據(jù)接受存放到指定的寄存器中。
以稱重儀表當(dāng)前顯示的數(shù)據(jù)為47.60Kg為例。儀表發(fā)送的ASCII碼數(shù)據(jù)為:“0241442B30303437363032313903”。而PLC實(shí)際接受到的數(shù)據(jù)是不包括開始標(biāo)志位(02)和結(jié)束標(biāo)志位(03)的。因此通過NO.417和NO.418指定的寄存器中存放的數(shù)據(jù)是"41442B303034373630323139”。這些數(shù)據(jù)中所需要的只是“34373630”這四組用來表示凈重的數(shù)據(jù),因此,需要從NO.417和NO.418指定的寄存器中將凈重?cái)?shù)據(jù)提取出來。
本次設(shè)計(jì)中每隔0.1s,PLC就向儀表發(fā)送一次讀取指令,讀取儀表中的凈重?cái)?shù)據(jù)。具體程序如圖3:
由于從儀表讀取的數(shù)據(jù)是ASCII碼形式,因此需要將提取的凈重?cái)?shù)據(jù)轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)。數(shù)據(jù)轉(zhuǎn)換程序數(shù)據(jù)的提取和轉(zhuǎn)換程序如圖4。
這樣內(nèi)部通用寄存器WR30中的數(shù)據(jù)就是稱重儀表所秤得的二進(jìn)制凈重?cái)?shù)據(jù)。
將WR30中的數(shù)據(jù)與預(yù)先設(shè)定的數(shù)據(jù)做比較,控制PLC的各個(gè)輸岀口的通斷,實(shí)現(xiàn)自動(dòng)打包控制過程。
3結(jié)語
本系線通過串口釆集智能儀表的數(shù)據(jù),省卻了其他模擬量數(shù)據(jù)模塊,節(jié)約了成本,提高了系統(tǒng)運(yùn)行可靠性,系統(tǒng)還便于同上位工控機(jī)聯(lián)網(wǎng),形成大型工控網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn)。該控制系統(tǒng)具有體積小、結(jié)構(gòu)簡單、功耗低、安裝方便、性能穩(wěn)定等特點(diǎn),對(duì)于PLC用于其他小型自動(dòng)化檢測控制生產(chǎn)線有一定借鑒意義。
文章來源于網(wǎng)絡(luò)轉(zhuǎn)載,侵刪