應(yīng)用方案:
一、傳送帶上箱子寬度的激光測(cè)距傳感器的解決方案
現(xiàn)代工業(yè)上傳送帶是隨處可見(jiàn)的,傳送帶大大方便了自動(dòng)化生產(chǎn),也大大的節(jié)約了人力資源,但是在工業(yè)生產(chǎn)中我們經(jīng)常需要知道傳送帶上箱子的寬度,用人工進(jìn)行測(cè)量顯然與自動(dòng)化相違背,我們可以使用激光測(cè)距傳感器進(jìn)行測(cè)量,使用兩個(gè)激光傳感器,在傳送帶的兩側(cè)面對(duì)面安裝,因?yàn)槌叽缱兓南渥勇涞絺魉蛶系奈恢檬遣还潭ǖ摹_@樣,每個(gè)傳感器都測(cè)量出自己與箱子的距離,設(shè)一個(gè)距離為L(zhǎng)1,一個(gè)距離為L(zhǎng)2,此信息送給PLC,PLC將兩個(gè)傳感器間總的距離減去L1和L2,從而可計(jì)算出箱子的寬度
二、激光測(cè)距傳感器控制方案
本方案組成:
1:傳感器部分,其功能為采集有效數(shù)據(jù)?蔀榭蛻(hù)訂做,增加其他傳感器的數(shù)據(jù)采集(如溫度、濕度、
壓力等)
2:同時(shí)數(shù)據(jù)采集器,采集多路傳感器數(shù)據(jù)(目前最大支持 4 路,如有特殊需求,可以訂做),而且具有存
儲(chǔ)功能,保證數(shù)據(jù)無(wú)丟失
3:數(shù)據(jù)傳輸部分,本方案采用了 GPRS 數(shù)據(jù)傳輸方式,本方式傳輸數(shù)據(jù)穩(wěn)定,不受距離限制,但速度比
較慢?蛻(hù)可根據(jù)實(shí)際要求來(lái)更換傳輸方式,如有線方式,點(diǎn)對(duì)點(diǎn)無(wú)線方式等。
本方案工作流程:
1:數(shù)據(jù)采集器,實(shí)時(shí)讀取服務(wù)器狀態(tài)(或由服務(wù)器直接發(fā)送命令給采集器,具體由數(shù)據(jù)傳輸方式而定),
根據(jù)服務(wù)器狀態(tài)指示進(jìn)行連續(xù)測(cè)量和停止。
2:數(shù)據(jù)采集期間,數(shù)據(jù)只是存儲(chǔ)到內(nèi)部存儲(chǔ)器,不對(duì)數(shù)據(jù)進(jìn)行傳輸。以免數(shù)據(jù)丟失。
3:當(dāng)讀取到停止?fàn)顟B(tài)時(shí),停止傳感器工作,同時(shí)開(kāi)始數(shù)據(jù)傳輸,直到數(shù)據(jù)傳輸完畢,重新進(jìn)入待機(jī)狀態(tài)。
本方案特點(diǎn):
1:無(wú)數(shù)據(jù)丟失現(xiàn)像,保證數(shù)據(jù)的完整性
2:如采用無(wú)線傳輸方式,則結(jié)構(gòu)簡(jiǎn)單,安裝便。而且多路傳感器共用一個(gè)無(wú)線模塊,可降低成本,減少數(shù)
據(jù)傳輸時(shí)間。
3:如采用有線傳輸方式,則大大減少了所需布線的數(shù)量,減少了工作量,降低了成本
三、基于PLC控制器的激光測(cè)距系統(tǒng)
隨著激光技術(shù)的發(fā)展,激光測(cè)距傳感器在檢測(cè)領(lǐng)域得到了越來(lái)越多的應(yīng)用。本文所說(shuō)的基于PLC的激光測(cè)距系統(tǒng),對(duì)多臺(tái)激光測(cè)距傳感器所采集到的數(shù)據(jù)進(jìn)行處理,并將數(shù)據(jù)傳送給上位機(jī),實(shí)現(xiàn)了對(duì)多臺(tái)激光測(cè)距傳感器的監(jiān)控。
PLC控制系統(tǒng)硬件設(shè)計(jì)
基于小型一體化PLC的激光測(cè)距系統(tǒng)的功能結(jié)構(gòu)圖如圖1所示。系統(tǒng)通過(guò)PLC的自由口通信,接收多臺(tái)激光測(cè)距傳感器發(fā)送過(guò)來(lái)的數(shù)據(jù),根據(jù)傳感器提供的數(shù)據(jù)格式解析數(shù)據(jù)包,計(jì)算出測(cè)量的距離。系統(tǒng)的功能還包括顯示測(cè)量距離、在非正常情況下報(bào)警、與上位機(jī)進(jìn)行數(shù)據(jù)交換等。
PLC的CPU模塊選用HOLLiAS-LEC G3系列的LM3108模塊,其性能價(jià)格比很高,廣泛應(yīng)用于工業(yè)控制的各個(gè)領(lǐng)域。LM3108模塊的標(biāo)準(zhǔn)配置包括兩個(gè)串行通信接口PORT0和 PORT1,其中PORT0為RS485接口,PORT1為RS232接口。采用RS232接口建立PLC與上位機(jī)的通信,實(shí)現(xiàn)PLC程序的下裝和監(jiān)控。采用RS485接口建立PLC與現(xiàn)場(chǎng)儀表的通信。
PLC控制系統(tǒng)軟件設(shè)計(jì)
PLC采用自由口通信方式接收激光測(cè)距傳感器的數(shù)據(jù),用%MB400~%MB411的12個(gè)字節(jié)作為通信接收寄存器,存放自由口通信方式下所接收的 數(shù)據(jù)。所謂自由口通信,是指用戶(hù)可以通過(guò)設(shè)置通信模式來(lái)改變通信接口的參數(shù),以適應(yīng)不同的通信協(xié)議。在PLC程序中設(shè)定的激光測(cè)距傳感器的通信參數(shù)如表1 所示。 PLC控制程序采用和利時(shí)公司的編程軟件PowerPro完成,下面詳細(xì)介紹數(shù)據(jù)解析程序。其它應(yīng)用程序從略
3.1 數(shù)據(jù)解析程序的變量定義
PROGRAM PLC_PRG
VAR
SetRS485: Set_COMM2_PRMT; (* RS485自由口通信參數(shù)設(shè)置 *)
SetRS485Q: BOOL; (* RS485自由口通信參數(shù)設(shè)置標(biāo)志 *)
Receive: COMM2_RECEIVE; (* RS485自由口通信數(shù)據(jù)接收 *)
ReceiveQ: BOOL; (* RS485自由口通信數(shù)據(jù)接收標(biāo)志 *)
ReceivedData: STRING; (* 存儲(chǔ)ASCII碼數(shù)據(jù)的字符串 *)
Position1: INT; (* 起始字符的位置 *)
Position2: INT; (* 結(jié)束字符的位置 *)
ReceivedData_STRING: STRING; (* ASCII碼形式的數(shù)據(jù) *)
ReceivedData_DWORD: DWORD; (* 十六進(jìn)制形式的數(shù)據(jù) *)
END_VAR
PLC從激光測(cè)距傳感器接收到的數(shù)據(jù)是ASCII碼形式,所以需要將ACSII碼轉(zhuǎn)換成PLC能夠操作的十六進(jìn)制數(shù)。
首先在存儲(chǔ)ASCII碼數(shù)據(jù)的字符串ReceivedData中找到數(shù)據(jù)的起始字符“+”,并將其位置存儲(chǔ)在變量Position1中。然后再找到 數(shù)據(jù)的結(jié)束字符“$R”,并將其位置存儲(chǔ)在變量Position2中。將位置Position2與位置Position1之間的字符取出,存入變量 ReceivedData_STRING中,此即為數(shù)據(jù)的ASCII碼形式。最后將該ASCII碼形式的數(shù)據(jù)ReceivedData_STRING轉(zhuǎn)換 位十六進(jìn)制形式的數(shù)據(jù)ReceivedData_DWORD,即完成了數(shù)據(jù)
|