鄧有緯
(1.國(guó)電南京自動(dòng)化股份有限公司,南京210032;2.南京國(guó)電南自維美德自動(dòng)化有限公司,南京210032)
在燃煤發(fā)電廠的輸煤系統(tǒng)中,使用著多種軌道設(shè)備,如葉輪給煤機(jī)、斗輪堆取料機(jī)等,這些設(shè)備在鋼軌上往復(fù)行走,進(jìn)行卸料或堆取料。目前,這些設(shè)備都利用可編程控制器 (programmable logic controller,PLC)實(shí)現(xiàn)了自動(dòng)控制,由于這些設(shè)備需要在鋼軌上往復(fù)行走,為了保證設(shè)備與控制系統(tǒng)無(wú)相對(duì)位移以方便接線,一般可將編程控制器安裝于設(shè)備上隨設(shè)備一起移動(dòng),否則位置變化的設(shè)備與位置固定的控制系統(tǒng)之間無(wú)法接線或接線成本過高。
然而根據(jù)熱值、硫分、灰分等參數(shù)[1]分區(qū)分堆存放的燃料往往需要驅(qū)動(dòng)軌道設(shè)備至指定位置或區(qū)間運(yùn)行,這就需要建立設(shè)備的自我位置感知,即設(shè)備的實(shí)時(shí)定位。最簡(jiǎn)單的設(shè)備位置感知是在需要位置指示的地方安裝位置開關(guān),并將其信號(hào)接入控制系統(tǒng)中,然而由于位置開關(guān)安裝在固定的位置,而控制系統(tǒng)隨設(shè)備移動(dòng),這又造成了位置變化的控制系統(tǒng)與位置固定的設(shè)備之間無(wú)法接線或接線成本過高。
針對(duì)上述問題,本文設(shè)計(jì)了一種基于RFID 的實(shí)時(shí)定位系統(tǒng),將RFID 讀卡器安裝在運(yùn)動(dòng)的設(shè)備上并接入控制系統(tǒng),將無(wú)源RFID 標(biāo)簽固定在各標(biāo)識(shí)位置,利用非接觸式自動(dòng)識(shí)別技術(shù)[2],使各固定位置的標(biāo)簽可被運(yùn)動(dòng)中的控制系統(tǒng)識(shí)別,建立設(shè)備與環(huán)境的感知和互聯(lián),即設(shè)備的實(shí)時(shí)定位。
為了實(shí)現(xiàn)設(shè)備的實(shí)時(shí)定位,以往大致采用以下幾種方法:
(1)動(dòng)作開關(guān)間接定位。動(dòng)作開關(guān)安裝于運(yùn)動(dòng)的設(shè)備上,并接線至控制系統(tǒng),將使開關(guān)動(dòng)作的觸頭布置于需要位置指示的地方,設(shè)備每經(jīng)過一個(gè)觸頭使開關(guān)動(dòng)作一次,通過校準(zhǔn)位置、運(yùn)動(dòng)方向和開關(guān)動(dòng)作的次數(shù)可以定位設(shè)備的位置。該方法在控制系統(tǒng)失電后需重新校準(zhǔn)位置,定位效率低、可靠性較差。
(2)旋轉(zhuǎn)編碼器定位。編碼器與運(yùn)動(dòng)的軸嚙合,編碼器安裝在運(yùn)動(dòng)設(shè)備上接入控制系統(tǒng),控制系統(tǒng)接收編碼器的脈沖,計(jì)算設(shè)備與校準(zhǔn)位置之間的距離。該方法在控制系統(tǒng)失電后需重新校準(zhǔn)位置,定位效率低且存在累積誤差[3]。
(3)位置開關(guān)+輸煤系統(tǒng)定位。將需要位置指示的地方布置位置開關(guān)接入輸煤程控系統(tǒng),由輸煤程控系統(tǒng)通過無(wú)線通信裝置或滑線載波將位置信號(hào)發(fā)送給控制系統(tǒng)。該方法實(shí)施不方便、時(shí)延較大,對(duì)設(shè)備控制的實(shí)時(shí)性差。
(4)位置開關(guān)+無(wú)線IO 定位。在需要位置指示的地方布置位置開關(guān)接入固定位置的無(wú)線IO 發(fā)射端,在控制系統(tǒng)上加裝無(wú)線IO 接收端,將位置開關(guān)信號(hào)通過無(wú)線IO 方式接入控制系統(tǒng)。該方法實(shí)施不方便,且費(fèi)用高。
(5)GPS 實(shí)時(shí)定位[4]。在軌道設(shè)備上安裝GPS 接收機(jī)隨設(shè)備移動(dòng),通過GPS 衛(wèi)星實(shí)現(xiàn)定位,該方法存在位置漂移,且在地溝、建筑物等密閉空間無(wú)法使用[5]。
(6)基于UWB 技術(shù)的定位[3]。將移動(dòng)標(biāo)簽安裝于軌道設(shè)備上隨設(shè)備運(yùn)動(dòng)并發(fā)射UWB 脈沖信號(hào),接收器安裝于固定位置接收信號(hào),通過計(jì)算移動(dòng)標(biāo)簽與固定位置接收器的距離計(jì)算軌道設(shè)備的位置,該方法費(fèi)用較高。
通過上述的實(shí)時(shí)定位方法可以看出,對(duì)于空間的物理定位來(lái)說,從定位方法上可分為計(jì)算定位和信標(biāo)定位兩種。計(jì)算定位即通過被定位物體與固定位置的距離,計(jì)算出被定位物體的位置,該定位方法的典型應(yīng)用即GPS 定位;信標(biāo)定位則是在需要位置指示的地方設(shè)置標(biāo)識(shí),說明當(dāng)前的位置,通過讀取該標(biāo)識(shí)得知被定位物體的位置,猶如高速公路樁號(hào)定位。一般來(lái)說信標(biāo)定位相比計(jì)算定位位置指示更加直觀,定位更加準(zhǔn)確。但信標(biāo)定位也有3 個(gè)方面的問題需要解決,否則將會(huì)影響其應(yīng)用。
(1)信標(biāo)作為位置指示,必須能區(qū)分個(gè)體,否則信標(biāo)產(chǎn)生相同的信號(hào),將降低定位效率。如動(dòng)作開關(guān)間接定位中,信標(biāo)觸頭使動(dòng)作開關(guān)產(chǎn)生相同的信號(hào),無(wú)法區(qū)分不同的個(gè)體,直接導(dǎo)致定位效率低。
(2)為提高定位精度,需在定位現(xiàn)場(chǎng)大量布置信標(biāo),因此信標(biāo)必須布置方便且價(jià)格便宜,否則大量的信標(biāo)布置會(huì)增加施工難度及成本。
(3)對(duì)于信標(biāo)的讀取,應(yīng)可以在運(yùn)動(dòng)中直接讀取,否則將會(huì)導(dǎo)致時(shí)延或讀取成本過高。如位置開關(guān)+輸煤系統(tǒng)定位,不能直接讀取,導(dǎo)致時(shí)延;而位置開關(guān)+無(wú)線IO 定位,為了直接讀取,增加無(wú)線IO裝置,增加了定位成本。
本文基于射頻識(shí)別技術(shù)(radio frequency Indentification,RFID),設(shè)計(jì)了軌道設(shè)備的信標(biāo)實(shí)時(shí)定位系統(tǒng),射頻識(shí)別是一種通過無(wú)線電波進(jìn)行不接觸快速信息交換的技術(shù),它將計(jì)算機(jī)、電、磁、通信、網(wǎng)絡(luò)技術(shù)融為一體,實(shí)現(xiàn)物體的跟蹤與信息共享,給物體賦予智能。該實(shí)時(shí)定位系統(tǒng)能克服信標(biāo)定位的3 個(gè)方面的問題,首先,每張無(wú)源RFID 標(biāo)簽都有唯一的ID 號(hào)[6],方便個(gè)體識(shí)別;其次,無(wú)源RFID 標(biāo)簽無(wú)功耗、抗污染及耐用性好[7]且價(jià)格足夠便宜,適宜大量布置;再者,利用RFID 的非接觸式自動(dòng)識(shí)別技術(shù)[2],運(yùn)動(dòng)中的RFID 讀卡器可以非接觸的直接讀取無(wú)源RFID 標(biāo)簽。
基于RFID 的實(shí)時(shí)定位系統(tǒng)原理是將無(wú)源RFID標(biāo)簽布置于軌道沿線,標(biāo)識(shí)物理位置,如同高速公路上的樁號(hào);安裝在軌道設(shè)備上的讀卡器通過發(fā)射天線發(fā)射特定頻率的射頻信號(hào),當(dāng)軌道設(shè)備經(jīng)過信標(biāo)所在位置時(shí),RFID 標(biāo)簽進(jìn)入有效工作區(qū)域產(chǎn)生感應(yīng)電流,從而獲得能量被激活,使得信標(biāo)將自身編碼信息通過內(nèi)置天線發(fā)出去[5];讀卡器接收天線接收信標(biāo)發(fā)送的載波信號(hào)傳送至讀卡器,讀卡器將其解碼發(fā)送至設(shè)備控制系統(tǒng),控制系統(tǒng)通過位置服務(wù)模塊獲取設(shè)備位置完成設(shè)備的實(shí)時(shí)定位。RFID 實(shí)時(shí)定位系統(tǒng)主要由3 部分組成:
(1)RFID 標(biāo)簽:安裝于軌道沿線具有唯一ID 的無(wú)源RFID 標(biāo)簽,反映安裝位置。
(2)RFID 讀卡器:包括發(fā)射、接收天線,安裝于運(yùn)動(dòng)設(shè)備上。
(3)位置服務(wù)模塊:存儲(chǔ)RFID 標(biāo)簽的ID 與其對(duì)應(yīng)的物理位置的地址表,接收來(lái)自讀卡器的標(biāo)簽ID 數(shù)據(jù),根據(jù)標(biāo)簽ID 查找地址表,獲取設(shè)備的位置。
RFID 信標(biāo)實(shí)時(shí)定位技術(shù),基本上能克服前述的幾種實(shí)時(shí)定位技術(shù)的缺點(diǎn),其主要表現(xiàn)如下:
(1)每個(gè)無(wú)源RFID 標(biāo)簽作為信標(biāo)都有唯一的ID,個(gè)體可區(qū)分且均能反應(yīng)一個(gè)獨(dú)立的位置點(diǎn)。
(2)位置反饋為物理位置指示,與軌道設(shè)備的行進(jìn)方向無(wú)關(guān)。
(3)非接觸式直接數(shù)據(jù)讀取,無(wú)接觸部件,可在運(yùn)動(dòng)中讀取。
(4)可在建筑物內(nèi)、地溝使用,對(duì)密閉空間無(wú)特殊要求,無(wú)使用環(huán)境限制。
(5)無(wú)源RFID 標(biāo)簽,毋需供電,不需接線,抗污染,耐久性好,價(jià)格便宜。
為了更詳細(xì)的體現(xiàn)設(shè)計(jì)與實(shí)現(xiàn),本文以實(shí)現(xiàn)葉輪給煤機(jī)在50 m 長(zhǎng)的卸煤溝實(shí)時(shí)定位為例進(jìn)行說明。葉輪給煤機(jī)采用Schneider M218 控制器進(jìn)行控制。
根據(jù)定位需求首先在葉輪給煤機(jī)運(yùn)行的軌道上,從近端至遠(yuǎn)端每隔1 m 布置1 張RFID 標(biāo)簽,并在M218 控制器的全局?jǐn)?shù)據(jù)中新建1 張表,依次存儲(chǔ)每張RFID 標(biāo)簽的ID 及其對(duì)應(yīng)位置,作為位置服務(wù)模塊的數(shù)據(jù)庫(kù)。本例中該表可用數(shù)組來(lái)存儲(chǔ),數(shù)組共51 個(gè)元素,分別代表軌道上從近端到遠(yuǎn)端的51個(gè)位置;每個(gè)元素又是1 個(gè)數(shù)組,存儲(chǔ)每個(gè)位置RFID標(biāo)簽的ID 和位置,ID 用8 字節(jié)ASCII 碼表示。全局的位置數(shù)據(jù)表定義如下:
RFID 讀卡器安裝在葉輪給煤機(jī)上,隨葉輪給煤機(jī)在軌道運(yùn)動(dòng),讀取沿軌道布置的RFID 標(biāo)簽,為了安裝方便,選擇讀卡距離為5~20 cm 的讀卡設(shè)備。過小的讀卡距離,要求較高的安裝精度;過大的讀卡距離則會(huì)導(dǎo)致沿軌道布置的多個(gè)RFID 標(biāo)簽進(jìn)入讀卡范圍,從而無(wú)法有效的分辨標(biāo)簽影響定位。
RFID 讀卡器在軌道上往復(fù)行走,隨意性強(qiáng),因此在標(biāo)簽進(jìn)入讀卡范圍后,讀卡器應(yīng)能主動(dòng)將ID發(fā)送給位置服務(wù)模塊進(jìn)行定位。因?yàn)闃?biāo)簽的布置是間斷的,讀卡事件的發(fā)生是一個(gè)隨機(jī)事件,控制系統(tǒng)無(wú)法確定何時(shí)發(fā)送指令給讀卡器獲取數(shù)據(jù)。所以RFID 讀卡器的數(shù)據(jù)上傳模式應(yīng)可設(shè)置為主動(dòng)上傳,讀到卡后主動(dòng)發(fā)送數(shù)據(jù)。同時(shí)由于RFID 讀卡器需將數(shù)據(jù)發(fā)送給位置服務(wù)模塊,因此讀卡器需具備與控制器通信的能力。
根據(jù)上述要求,選擇RFID 讀卡設(shè)備如下:設(shè)備采用RS485 自定義協(xié)議通信,讀卡距離8~20 cm,數(shù)據(jù)上傳模式為主動(dòng)上傳。其通訊參數(shù)、電纜連接、數(shù)據(jù)格式如表1~表3 所示。
表1 通訊參數(shù)Tab.1 Communication parameters
表2 電纜連接Tab.2 Cable connection
表3 數(shù)據(jù)格式Tab.3 Data format
M218 控制器內(nèi)置2 個(gè)串行通訊口SL1 和SL2,物理介質(zhì)接口為RS485,SL1 為RJ45,SL2 為端子連接方式。此處采用SL2 端子連接方式與RFID 讀卡器連接進(jìn)行通信,SL2 的針腳說明如表4 所示。
表4 SL2 針腳說明Tab.4 SL2 pin description
將RFID 讀卡器與M218 控制器進(jìn)行硬件連接,按照RFID 讀卡器通訊參數(shù)設(shè)定M218 控制器的波特率、數(shù)據(jù)位、停止位、校驗(yàn)方式等,然后通過軟件編程完成RFID 標(biāo)簽ID 讀取。
對(duì)于M218 控制器的自定義協(xié)議通信,軟件提供了SEND_RECV_MSG 功能塊,它可在選定介質(zhì)上發(fā)送消息,等待響應(yīng);或僅發(fā)送消息,不等待響應(yīng);或僅接收消息。本例中M218 控制器僅接收RFID 讀卡器數(shù)據(jù),因此“QuantityToSend”和“BufferToSend”管腳均設(shè)置為0,其數(shù)據(jù)交換編程如圖1 所示。
圖1 數(shù)據(jù)交換Fig.1 Data exchange
Execute 引腳需上升沿觸發(fā),對(duì)于冷、熱復(fù)位后的第一個(gè)任務(wù)周期就為Ture 的條件,系統(tǒng)無(wú)法檢測(cè)上升沿,則無(wú)法使功能塊工作,因此使用該功能塊進(jìn)行數(shù)據(jù)交換一般都發(fā)生在第一個(gè)任務(wù)周期結(jié)束后。
SEND_RECV_MSG 要正確的完成數(shù)據(jù)交換,還需和ASCII 碼管理器配合使用。根據(jù)選擇的讀卡器的數(shù)據(jù)格式對(duì)M218 的串行通訊口SL2 上的ASCII_Manager 進(jìn)行配置,如圖2 所示。
圖2 ASCII_Manager 參數(shù)設(shè)置Fig.2 ASCII_Manger parameter settings
對(duì)于“僅接收”操作,當(dāng)達(dá)到結(jié)束條件時(shí),交換完成(Busy 復(fù)位為0)。結(jié)束條件在如圖2 的ASCII_Manger 中進(jìn)行配置,可以是標(biāo)志位,也可以是幀的長(zhǎng)度,還可以是時(shí)間。上述參數(shù)項(xiàng)若設(shè)置為0,則表示不使用該項(xiàng)參數(shù),因此0 也不可以設(shè)置為起始字符或結(jié)束字符。如果配置了多個(gè)結(jié)束條件,則第一個(gè)為True 的條件會(huì)終止數(shù)據(jù)接收,本例中使用標(biāo)志位的結(jié)束條件。
在SEND_RECV_MSG 中“SizeRecvBuffer”管 腳的設(shè)置與ASCII_Manger 參數(shù)中的“收到的幀長(zhǎng)度”不是同一參數(shù),不可理解為用幀長(zhǎng)度來(lái)表示結(jié)束條件,它僅僅表示復(fù)制到接收緩沖區(qū)的數(shù)據(jù)量的大小,設(shè)置的數(shù)值小于實(shí)際接收的字符數(shù),將導(dǎo)致部分接收的數(shù)據(jù)不被復(fù)制到數(shù)據(jù)接收緩沖區(qū)。但無(wú)論設(shè)置為何值,起始字符、結(jié)束字符均不會(huì)被復(fù)制至數(shù)據(jù)接收緩沖區(qū)中。
對(duì)于“僅接收”操作,ASCII_Manager 中的“幀收到超時(shí)(ms)”與“TimeOut”均應(yīng)設(shè)置為0。因?yàn)閷?duì)于“僅接收”操作來(lái)說,SEND_RECV_MSG 功能塊一直在進(jìn)行數(shù)據(jù)交換(Busy 為1),直至等到結(jié)束條件使本次交換完成開始下次交換,由于讀卡是隨機(jī)事件,無(wú)法通過時(shí)間判斷數(shù)據(jù)交換完成,所以ASCII_Manager 中的“幀收到超時(shí)(ms)”設(shè)置為0,表示不用此作為結(jié)束條件;而“TimeOut”設(shè)置為0 則表示對(duì)數(shù)據(jù)交換的時(shí)間不限制,即無(wú)限時(shí)間。雖然對(duì)于這兩項(xiàng)參數(shù)設(shè)置非0 的數(shù)值均會(huì)導(dǎo)致交換結(jié)束,但代表的意義不一樣,“幀收到超時(shí)(ms)”表示以交換時(shí)間長(zhǎng)短為條件的結(jié)束條件,而“TimeOut”則表示交換在超時(shí)時(shí)間到期時(shí)停止,超時(shí)將導(dǎo)致“CommError”置1。
根據(jù)需求分析在控制器中建立了一張全局的數(shù)據(jù)表,該表存儲(chǔ)軌道上各位置的RFID 標(biāo)簽的ID 和位置。反過來(lái),讀取RFID 標(biāo)簽的ID,通過查表則能知道該標(biāo)簽在軌道上的位置。位置服務(wù)模塊程序如下:
讀卡完成后,在M218 控制器的主任務(wù)中調(diào)用位置服務(wù)模塊,如圖3 所示,Position_Index 即設(shè)備在軌道上的位置,本例中即第Position_Index 米處。
圖3 定位調(diào)用Fig.3 Positioning call
本例對(duì)葉輪給煤機(jī)的實(shí)時(shí)定位精度為1 m,為提高定位精度,只需沿運(yùn)行軌跡更加密集的布置標(biāo)簽。如本例在50 m 的卸煤溝中布置51 張標(biāo)簽,定位精度為1 m;若布置101 張標(biāo)簽,則定位精度可達(dá)到0.5 m;布置251 張標(biāo)簽則能達(dá)到0.2 m 的定位精度。且標(biāo)簽成本低,無(wú)源毋需接線,布置方便,不受環(huán)境限制。定位系統(tǒng)修改方便,只需更新RFID 標(biāo)簽ID 與位置對(duì)應(yīng)表。因此,該實(shí)時(shí)定位設(shè)計(jì)即使是對(duì)已投入運(yùn)營(yíng)的設(shè)備進(jìn)行改造亦是非常方便。
本文設(shè)計(jì)的基于RFID 的信標(biāo)智能定位系統(tǒng),對(duì)于具有固定軌跡的運(yùn)動(dòng)設(shè)備實(shí)現(xiàn)定位,具有較多優(yōu)點(diǎn),為輸煤系統(tǒng)中的軌道設(shè)備如斗輪機(jī)、葉輪給煤機(jī)等實(shí)時(shí)定位,提供了切實(shí)可行、成本低、安裝簡(jiǎn)單的定位方案,該定位系統(tǒng)的實(shí)現(xiàn)為軌道設(shè)備與環(huán)境的全面感知、普遍互聯(lián)提供了一種更為智能的途徑。