激光測距傳感器應用
運用計劃:
一、傳送帶上箱子寬度的激光測距傳感器的解決計劃
現(xiàn)代工業(yè)上傳送帶是隨處可見的,傳送帶大大方便了自動化出產(chǎn),也大大的節(jié)省了人力資源,但是在工業(yè)出產(chǎn)中我們經(jīng)常需求知道傳送帶上箱子的寬度,用人工進行丈量明顯與自動化相違反,我們能夠運用激光測距傳感器進行丈量,運用兩個激光傳感器,在傳送帶的兩邊面對面裝置,由于尺度改動的箱子落到傳送帶上的方位是不固定的。這樣,每個傳感器都丈量出自己與箱子的間隔,設一個間隔為L1,一個間隔為L2,此信息送給PLC,PLC將兩個傳感器間總的間隔減去L1和L2,然后可計算出箱子的寬度
二、激光測距傳感器操控計劃
本計劃組成:
1:傳感器部分,其功用為收集有效數(shù)據(jù)??蔀榭蛻粲喿?,增加其他傳感器的數(shù)據(jù)收集(如溫度、濕度、
壓力等)
2:同時數(shù)據(jù)收集器,收集多路傳感器數(shù)據(jù)(目前最大支撐 4 路,如有特殊需求,能夠訂做),并且具有存
儲功用,確保數(shù)據(jù)無丟掉
3:數(shù)據(jù)傳輸部分,本計劃選用了 GPRS 數(shù)據(jù)傳輸方法,本方法傳輸數(shù)據(jù)穩(wěn)定,不受間隔約束,但速度比
較慢??蛻艨筛鶕?jù)實踐要求來替換傳輸方法,如有線方法,點對點無線方法等。
本計劃作業(yè)流程:
1:數(shù)據(jù)收集器,實時讀取服務器狀況(或由服務器直接發(fā)送指令給收集器,具體由數(shù)據(jù)傳輸方法而定),
根據(jù)服務器狀況指示進行接連丈量和中止。
2:數(shù)據(jù)收集期間,數(shù)據(jù)僅僅存儲到內(nèi)部存儲器,不對數(shù)據(jù)進行傳輸。避免數(shù)據(jù)丟掉。
3:當讀取到中止狀況時,中止傳感器作業(yè),同時開端數(shù)據(jù)傳輸,直到數(shù)據(jù)傳輸完畢,從頭進入待機狀況。
本計劃特色:
1:無數(shù)據(jù)丟掉現(xiàn)像,確保數(shù)據(jù)的完整性
2:如選用無線傳輸方法,則結(jié)構(gòu)簡單,裝置便。并且多路傳感器共用一個無線模塊,可降低本錢,減少量
據(jù)傳輸時間。
3:如選用有線傳輸方法,則大大減少了所需布線的數(shù)量,減少了作業(yè)量,降低了本錢
三、根據(jù)PLC操控器的激光測距體系
跟著激光技能的開展,激光測距傳感器在檢測范疇得到了越來越多的運用。本文所說的根據(jù)PLC的激光測距體系,對多臺激光測距傳感器所收集到的數(shù)據(jù)進行處理,并將數(shù)據(jù)傳送給上位機,完結(jié)了對多臺激光測距傳感器的監(jiān)控。
PLC操控體系硬件規(guī)劃
根據(jù)小型一體化PLC的激光測距體系的功用結(jié)構(gòu)圖如圖1所示。體系經(jīng)過PLC的自在口通訊,接納多臺激光測距傳感器發(fā)送過來的數(shù)據(jù),根據(jù)傳感器供給的數(shù)據(jù)格式解析數(shù)據(jù)包,計算出丈量的間隔。體系的功用還包含顯現(xiàn)丈量間隔、在非正常情況下報警、與上位機進行數(shù)據(jù)交換等。
PLC的CPU模塊選用HOLLiAS-LEC G3系列的LM3108模塊,其性能價格比很高,廣泛運用于工業(yè)操控的各個范疇。LM3108模塊的規(guī)范裝備包含兩個串行通訊接口PORT0和 PORT1,其中PORT0為RS485接口,PORT1為RS232接口。選用RS232接口樹立PLC與上位機的通訊,完結(jié)PLC程序的下裝和監(jiān)控。選用RS485接口樹立PLC與現(xiàn)場外表的通訊。
PLC操控體系軟件規(guī)劃
PLC選用自在口通訊方法接納激光測距傳感器的數(shù)據(jù),用%MB400~%MB411的12個字節(jié)作為通訊接納寄存器,寄存自在口通訊方法下所接納的 數(shù)據(jù)。所謂自在口通訊,是指用戶能夠經(jīng)過設置通訊方式來改動通訊接口的參數(shù),以習慣不同的通訊協(xié)議。在PLC程序中設定的激光測距傳感器的通訊參數(shù)如表1 所示。 PLC操控程序選用和利時公司的編程軟件PowerPro完結(jié),下面具體介紹數(shù)據(jù)解析程序。其它運用程序從略
3.1 數(shù)據(jù)解析程序的變量界說
PROGRAM PLC_PRG
VAR
SetRS485: Set_COMM2_PRMT; (* RS485自在口通訊參數(shù)設置 *)
SetRS485Q: BOOL; (* RS485自在口通訊參數(shù)設置標志 *)
Receive: COMM2_RECEIVE; (* RS485自在口通訊數(shù)據(jù)接納 *)
ReceiveQ: BOOL; (* RS485自在口通訊數(shù)據(jù)接納標志 *)
ReceivedData: STRING; (* 存儲ASCII碼數(shù)據(jù)的字符串 *)
Position1: INT; (* 開始字符的方位 *)
Position2: INT; (* 完畢字符的方位 *)
ReceivedData_STRING: STRING; (* ASCII碼方式的數(shù)據(jù) *)
ReceivedData_DWORD: DWORD; (* 十六進制方式的數(shù)據(jù) *)
END_VAR
PLC從激光測距傳感器接納到的數(shù)據(jù)是ASCII碼方式,所以需求將ACSII碼變換成PLC能夠操作的十六進制數(shù)。
首先在存儲ASCII碼數(shù)據(jù)的字符串ReceivedData中找到數(shù)據(jù)的開始字符“+”,并將其方位存儲在變量Position1中。然后再找到 數(shù)據(jù)的完畢字符“$R”,并將其方位存儲在變量Position2中。將方位Position2與方位Position1之間的字符取出,存入變量 ReceivedData_STRING中,此即為數(shù)據(jù)的ASCII碼方式。最后將該ASCII碼方式的數(shù)據(jù)ReceivedData_STRING變換 位十六進制方式的數(shù)據(jù)ReceivedData_DWORD,即完結(jié)了數(shù)據(jù)