新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 基于CAN總線的PC與RFID讀寫器通信實現(xiàn)

基于CAN總線的PC與RFID讀寫器通信實現(xiàn)

作者: 時間:2011-10-13 來源:網絡 收藏

射頻識別(Radio Frequency Identification,)是一種非接觸的無線自動識別技術,其基本原理是利用射頻信號和空間耦合(電感耦合或電磁耦合)傳輸特性對被識別物體的自動識別。近年來,技術迅速發(fā)展,被廣泛應用于工業(yè)、農業(yè)、體育休閑、交通管理和防偽防盜等眾多領域。根據應用的具體特點,本文以制衣流程過程為基礎,提出了一種RFID技術在制造業(yè)生產流水線上的應用方案及其詳細

本文引用地址:http://butianyuan.cn/article/155625.htm

制衣生產線和很多其他工業(yè)生產線一樣,每條流水線上有幾個、幾十個甚至更多的加工站點。為了在這種多站點生產線上應用RFID技術,一般需要在每一個工作站點部署一到兩個RFID(Reader)用以控制各個工作站點的任務調度,各工作站點和工作人員的自動管理。然而,由于工作站點的個數較多,生產線監(jiān)控管理上位機(Pc)還要實現(xiàn)各個工作站點的實時信息采集和監(jiān)控,這就要求與各個工作站點的RFID之間實現(xiàn)可靠的實時。為此,本文提出了用實現(xiàn)與RFID的方案。

1 與RS485

RS485總線曾經在工業(yè)控制系統(tǒng)的發(fā)展過程中發(fā)揮了重要作用。但是,隨著工業(yè)控制系統(tǒng)功能分散化、任務多元化、整體復雜化程度的提高,工業(yè)控制系統(tǒng)對于可靠性、實時性、靈活性的要求也越來越高,工業(yè)數據總線領域中原有的RS485總線通信標準已經不能滿足工業(yè)過程控制和制造業(yè)自動化的需要。在這種情況下,現(xiàn)場總線(Field Bus)技術以其自身的高性價比而成為了工業(yè)數據領域中的一種新通信方式。控制局域網絡(Control Area Network,)總線是目前業(yè)界公認的最有前途的幾種現(xiàn)場總線之一。

RS485總線的局限性主要表現(xiàn)在:(1)RS485總線可以互聯(lián)的設備節(jié)點數一般不超過32個,這顯然不能夠滿足多點工作站的需求和生產線的規(guī)模擴展的需要,比如每條制衣生產線的工作站點很多都在40個以上;(2)RS485總線多為查詢工作方式,由上位機定時輪詢各個工作站點,效率低,實時性差;(3)RS485總線構成的通信系統(tǒng)可靠性不好,當由于某種原因使得兩個或更多從節(jié)點同時向總線發(fā)送數據時,將導致通信混亂甚至RS485驅動損壞;(4)RS485總線通信過程實現(xiàn)復雜,由于RS485僅僅是一種電氣協(xié)議規(guī)定,并沒有實現(xiàn)可靠的通信方法,這給通信軟件開發(fā)與程序調度實現(xiàn)增加了額外負擔。

CAN總線是20世紀80年代德國Bosch公司為了解決現(xiàn)代汽車中眾多控制與測試儀器之間的數據交換而開發(fā)的一種串行數據通信協(xié)議,其對應的國際標準ISO11898已經在1993年11月由ISO組織頒布。與RS485總線相比較,CAN總線的主要技術優(yōu)勢表現(xiàn)在:(1)CAN總線可同時互聯(lián)的節(jié)點數目多,實際可連接1 10個節(jié)點;(2)CAN總線用數據塊編碼的方式替代了節(jié)點地址編碼,各節(jié)點通過濾波的方式實現(xiàn)多地址幀傳送;實現(xiàn)了面向數據而不是節(jié)點的通信,方便系統(tǒng)配置;(3)CAN 總線采用節(jié)點優(yōu)先權設定的非破壞性總線仲裁技術,有效避免了總線上的數據傳輸沖突,使網絡在高負載運行的情況下也不會出現(xiàn)網絡癱瘓的情況,可靠性高;(4)CAN 總線有自己的用戶層可靠通信協(xié)議和數據錯誤自診斷功能,采用循環(huán)冗余校驗判斷報文是否有傳輸錯誤,采用8B數據段區(qū)域,既滿足了工業(yè)領域中控制命令、數據傳輸等的一般要求,又保證了通信的實時性。這不僅方便了上位機軟件開發(fā),還有利于系統(tǒng)的穩(wěn)定可靠運行。

2通信實現(xiàn)的系統(tǒng)結構

圖1顯示了使用USB—CAN智能轉換卡連接與RFID讀寫器的生產線控制系統(tǒng)結構。在這一系統(tǒng)中,USB—CAN智能轉換卡是上位機PC 采集和發(fā)送信息的通道接13,USB—CAN 智能轉換卡下端通過雙絞線連接各個控制節(jié)點— — RFID讀寫器。RFID讀寫器通過延長線連接的天線讀取電子標簽信息,經過RFID讀寫器處理后再經過CAN總線傳送到上位機處理,同時通過CAN總線接收上位機的各種控制命令和信息提示。上位機負責整個系統(tǒng)的監(jiān)控和管理,其控制信息經過CAN總線而傳送到RFID讀寫器。

圖1應用CAN總線連接PC與RFID讀寫器的系統(tǒng)結構

2.1 CAN總線通信中應該注意的問題

(1)USB—CAN 智能轉換卡所支持的最擴展幀轉換率為5000幀/s,如果是標準幀或者請求幀,其速率會更快。在使用USB—CAN智能轉換卡實現(xiàn)CAN總線與上位機的連接時要充分考慮節(jié)點的規(guī)模和應用中的最大的瞬間數據傳輸總量,以保證系統(tǒng)的實時性和可靠性。
(2)上位機PC中USB—CAN設備的驅動程序安裝,不同于RS485總線和CAN/RS232接13卡,USB接13需要安裝USB—CAN設備自帶的設備驅動程序才能正常工作。
(3)CAN總線終端匹配電阻的連接,為了增強CAN總線通信的可靠性,CAN總線網絡的兩個斷電通常要連接兩個終端匹配電阻。匹配電阻值的大小根據CAN總線網絡使用的傳輸介質的阻抗特性而定。系統(tǒng)中采用的是阻抗特性為120歐姆的雙絞線,連接方式如圖2所示。

圖2用雙絞線連接的CAN總線網絡

2.2通信協(xié)議說明

CAN總線的ISO標準中規(guī)定了自己的通信協(xié)議格式,在這個應用中為使用方便并滿足更多節(jié)點擴展的需要,信息幀統(tǒng)一采用符合CAN2.0B協(xié)議(表1)實現(xiàn)系統(tǒng)中的信息傳輸。與RFID讀寫器通信的協(xié)議幀的意義表示(表2)以及與CAN總線協(xié)議擴展幀的對應解釋如下,其中表1中x表示CAN協(xié)議中的保留位。

表1 CAN總線CAN2.0B協(xié)議奠結構


表2 RFID通信協(xié)議奠的規(guī)定

在RFID通信協(xié)議幀的規(guī)定中,信息被分為4個域(表1),其中,信號類型域用來表示信息的傳輸方向,即是上位機發(fā)送到RFID讀寫器還是相反, 占用CAN2.0協(xié)議擴展幀數據域的第1個字節(jié)(字節(jié)6)。站點域,即報文識別碼區(qū)域,總共有4個字節(jié)(29位二進制數+3位保留位,字節(jié)2~5),此處采用報文識別碼的前兩個字節(jié)作為目的地址字節(jié),作為識別符參與濾波的有效部分,以達到表示每個工作站的目的地址的作用;采用后兩個字節(jié)的13位二進制數表示信息的來源地址,它們不參與濾波;通信中采用的是數據幀,而非遠程幀,所以數據域的長度為1-8個字節(jié),由CAN2.0協(xié)議擴展幀中的DLC區(qū)域表示;規(guī)定中的數據域實際上只剩下7個字節(jié)(字節(jié)7—13),用以表示通信中的命令或信息內容。這里的信息對應內容即是CAN 總線通信協(xié)議幀解析時,程序要做的工作。

2.3 USB-CAN智能轉換卡與上位機PC通信的軟件實現(xiàn)

以中科院自動化所開發(fā)的手操器式RFID讀寫器作為終端通信節(jié)點,以某公司生產的USBCAN—I型USB—CAN轉換接13卡作為連接PC 與CAN 總線的硬件設備,Microsoft.NET 2003的MFC開發(fā)環(huán)境,本文實現(xiàn)了CAN總線的PC與多RFID讀寫器之間的通信。在上位機PC要實現(xiàn)的功能中,首先是要配置CAN總線通信的相關參數,如定時器設置、濾波方式、工作模式等,并初始化USB—CAN智能轉換卡,然后才可以啟動USB—CAN設備。圖3顯示了上位機PC與RFID讀寫器通信過程操作的主要流程。

圖3上位機PC與USB-CAN通信主要流程

該流程中,信息的讀取解析與發(fā)送過程是通信的核心部分,其相應的USB 13監(jiān)聽線程程序的說明如下:

該段程序中協(xié)議規(guī)定的命令類型解析部分和數據內容處理部分是PC實現(xiàn)與RFID讀寫器通信的核心。程序實現(xiàn)時應特別注意協(xié)議幀中保留位的處理方法。在接收到一幀信息時報文識別碼區(qū)域共占用4個字節(jié),但是字節(jié)5低三位作為保留位而沒有使用,因此解析字節(jié)2~字節(jié)5時應首先將這4個字節(jié)的內容右移3位去掉保留位的內容,然后處理報文識別碼的真正內容,否則就會解析出錯。

該段程序在確認相應的命令類型的基礎之上,對接收到的各種數據信息作出進一步解析和響應(在ProcessData(、、、 )函數中實現(xiàn))。ProcessData( )函數所完成的任務,要根據不同工程中規(guī)定的協(xié)議意義做出解析和響應。比如,在本文的通信中把十六進制的“AABB”放入擴展幀中的字節(jié)7-13中表示上位機的握手查詢命令,而如果接收到的幀中7~13字節(jié)的內容是十六進制的“BB AA+站點當前接入的設備ID”,則表示RFID讀寫器的握手應答信息。

3結論

在介紹了RFID技術的一些應用后,針對生產線上幾十個RFID讀寫器的應用情況,對RS485總線和CAN總線的關鍵技術特性作出了詳細的對比,給出了一種基于CAN總線的PC與多RFID讀寫器通信的硬件結構和軟件實現(xiàn)的關鍵部分說明。在RFID技術廣泛應用的今天,這樣一種基于CAN總線的PC與多RFID讀寫器的連接通信方式對于促進RFID技術在工業(yè)自動化領域中的應用具有積極意義。



評論


相關推薦

技術專區(qū)

關閉