文獻標識碼: A
文章編號: 0258-7998(2011)11-0037-03
電子腳環感應踏板是現代賽鴿競翔運動中一項重要的電子設備。在信鴿比賽中,感應踏板的靈敏度和精度直接影響著比賽的進程和最終名次,影響著比賽的公平和公正性。養鴿人在平時養鴿的過程中,電子感應踏板也是必不可少的訓放設備之一。
基于RFID技術[1]的125 kHz 6格電子腳環感應踏板接收范圍大、靈敏度高,目前在各類信鴿比賽中得到越來越廣泛的應用。
1 理論分析
賽鴿競翔歸巢時,低速掠過感應踏板,電子腳環在踏板的磁場中得電并向踏板發射電子腳環編碼信號,微處理器通過HTRC110的接收通道接收該信息,然后將其解碼得到電子腳環識別號。由于單格踏板探測范圍有限,因此使用6格大踏板。6格踏板使用6個獨立的天線,若6個天線同時工作將產生6個磁場,各磁場之間會產生同頻干擾。這種干擾尤其以相鄰的兩磁場之間最為嚴重,不相鄰磁場之間的干擾相對較輕,可以忽略。為此,本設計采用交替掃描法,將6格踏板按位置順序編號為1~6號,將彼此之間相隔一個踏板的1、3、5號和2、4、6號踏板分別歸為一組,微處理器每次僅掃描其中的一組,而將另一組天線磁場關閉。這樣便可以有效克服同頻干擾問題。電子腳環發送一個完整的編碼需要約32 ms,經實際測試,選定兩組踏板的掃描切換時間為80 ms時性能較佳。
2 系統硬件設計
如圖1所示,系統以ATMEGA64和HTRC110接收模塊為核心進行設計,采用一個12 MHz晶體振蕩器為6個HTRC110提供振蕩脈沖,HTRC110驅動天線電路產生磁場[2]。接收到的電子腳環編碼信號經HTRC110接收通道送至ATMEGA64進行解碼,解碼后得到的電子腳環識別號經串行口1送出。當需要擴大掃描接收范圍時,可以將多塊踏板串聯,組成一個大的串行通信通道。系統還配備了LED指示,當某格天線接收到電子腳環信號時,對應的LED點亮。
2.1 主控芯片電路
由于踏板工作時需同時掃描3路接收信號,這不僅要求處理器的速度要快,而且需要多個定時器,當多個踏板串聯時,還需要2個串行通信口。因此綜合考慮選用美國ATMEL公司的高性能、低功耗的 AVR 8 bit微處理器ATMEGA64作為本系統的核心[3]。該微控制器特點如下:
(1)先進的 RISC 結構(工作于16 MHz 時性能高達16 MIPS);(2)53個可編程的I/O口,2個全雙工UART串口;(3)4 KB內部數據RAM,64 KB Flash存儲器,可以在系統編程;(4)4個通用計數器、定時器陣列, SPI串口;(5)多種節電休眠和停機方式。
2.2 HTRC110接收模塊電路
接收模塊電路產生125 kHz感應磁場,給電子腳環提供工作時所需的能量,并接收來自腳環的編碼信號。接收電路中的主芯片使用HTRC110以實現125 kHz載波上的調制與解調[4]。HTRC110芯片只提供讀寫通道,具體的數據編碼方式由實際選用的腳環類型決定。在實際的應用中,一般選用HITAG系列或EM系列的卡片[5],將卡片設定為主動發送的ID卡格式。這種格式使用曼徹斯特編碼,其數據的傳送速率為2 kHz。
本系統的接收模塊電路如圖2所示。HTRC110時鐘可選用4 MHz、8 MHz、12 MHz或16 MHz,電路中選用一個12 MHz有源晶振,同時為主CPU和6個HTRC110芯片提供時鐘。HTRC110使用3線通信, SCLK、DOUT、DIN加上拉電阻后與微處理器的I/O口相連接。CON2插座用于外接天線,6組天線線圈均勻排列在踏板上。工作時,6個接收通道輪流交替接收信號。工作的通道開啟天線,接收DOUT引腳輸出的電子腳環編碼信號。不工作的通道關閉天線,以避免相鄰線圈之間的同頻干擾。
2.3 通信電路
通信電路負責傳送電子腳環編碼信號和控制信號。當多個踏板串聯工作時,本級踏板還負責接收下一級踏板上傳的信號并發送至更上一級踏板。串口0用于接收上一級踏板下發的控制信號,并向上一級踏板傳送電子腳環數據。串口1用于接收下一級踏板上傳的電子腳環數據,并向下一級踏板傳送控制信號。
如圖3所示,通信電路使用一片MAX232,利用兩個接收和發送通道將TTL電平轉換為標準RS232電平。
3 軟件設計
電子腳環感應踏板軟件主要由掃描接收程序、通信程序以及時鐘節拍服務程序三部分組成。掃描接收程序實現了對6路HTRC110接收通道的交替循環掃描,是軟件程序的重點。通信程序按一定的協議通過串口發送掃描到的電子腳環識別號,當多級踏板串聯工作時,通信程序接收從下一級踏板發送來的信息并上傳至上一級踏板。時鐘節拍服務程序實現定時管理,包括電子腳環解碼的脈寬計算、多級踏板串聯工作時各個踏板之間的步調協調等。電子腳環感應踏板軟件總框圖如圖4所示。
3.1 電子腳環識別碼掃描接收程序
系統開機初始化后設定HTRC110工作于接收模式,接收來自磁場中的電子腳環識別碼信號。當賽鴿低空掠過感應踏板時,賽鴿攜帶的電子腳環進入感應磁場,腳環上的天線電路得電復位,之后以2 KB/s的速率回送曼徹斯特編碼調制的電子腳環識別信號。調制波經HTRC110芯片解調后從DOUT引腳輸出曼徹斯特編碼信號。該信號上升沿為1,下降沿為0。每兩個數據沿之間的時間間隔為512 ?滋s,連續的0或連續的1之間插入一個狀態轉換沿,狀態轉換沿和數據沿之間的時間隔間為256 ?滋s。程序中使用16 bit定時器1作為計時器,記錄每兩個跳變沿之間的時間間隔;然后根據時間間隔和跳變沿的方向解碼數據[6]。每次掃描3個互相間隔的踏板,掃描時間持續80 ms,之后關閉當前掃描踏板的天線,開啟另一組3個踏板的天線進行掃描。
3.2 通信程序
通信程序主要實現三個功能:傳送電子腳環識別碼、傳送控制信號和傳送同步信號。踏板讀到有效的電子腳環識別碼后將其寫入串口0的發送緩沖區,同時將串口1接收的下一級踏板上傳的電子腳環數據也寫入串口0的發送緩沖區,通過串口0向上一級踏板發送腳環數據,最后一級踏板將所有腳環數據發送至鴿鐘。控制信號實現鴿鐘對所有踏板的檢測與監控,僅由鴿鐘發送。在串聯踏板的最后一級,使用端接器將串口1的發送端和串口0的接收端短接。這樣每個踏板的兩個串行端口和鴿鐘的串行口就組成了一個大的通信環。通過這個串行通信環路,鴿鐘實現對踏板的輪詢、檢測等各種控制。
3.3 時鐘節拍服務程序
當需要寬度較大的探測區域時,可以將多個踏板首尾相連。當多個踏板串聯工作時,為克服相鄰踏板之間的同頻干擾,必須使所有串聯的踏板同步工作,即相鄰的天線總是交錯打開與關閉。在程序設計中,與鴿鐘直接相連的踏板定義為主機,由主機每隔一段時間發送同步校正信號,使與主機串聯的所有踏板工作步調一致。
踏板上電復位后,每個踏板先將自己定義為主機,并通過串口1對外發送同步信號,同步信號為一個字節。當1、3、5號線圈開啟,2、4、6號線圈關閉時,發送同步信號為“0x00”;反之,當1、3、5號線圈關閉,2、4、6號線圈開啟時,發送同步信號為“0xff”。串聯的電子踏板接收到同步信號后同步關閉或開啟天線。主機在工作的過程中如果收到了來自串口0的同步信號,則自動轉變為子機,不再主動發送同步信號,而是轉發收到的同步信號。同樣,如果一段時間后沒有收到同步信號,則自動由子機轉變為主機,產生并發送同步信號。
本文介紹了電子腳環感應踏板的實現方法及應用的主要技術,硬件電路采用6路HTRC110接收通道,軟件采用交替循環掃描接收的方法。工程實踐表明這些方法都是可行的。同時由于自身電路的局限,工作現場的環境干擾,該產品的感應距離和對各類不同編碼腳環的適應性有待于提高。
參考文獻
[1] 郎為民.射頻識別(RFID)技術原理與應用[M].北京:機械工業出版社,2006.
[2] 譚秀卿.基于HTRC110的機動車非接觸識別系統設計[J]. 重型汽車,2006(4):9-13.
[3] 馬潮.AVR單片機嵌入式系統原理與應用實踐[M].北京:北京航空航天大學出版社,2007.
[4] Philips Semiconductors.The data sheet of HTRC110 hitag reader chip[S].1999.
[5] Philips Semiconductors.The data sheet of HTS IC H32/HTS IC H56/HTS IC H48 transponders[S].2003.
[6] 康文廣,王輝映.一種RFID的曼徹斯特解碼技術[J].單片機與嵌入式系統應用,2010(12):24-22.