基于全局視覺的多仿生機器魚系統(Multiple Robotic Fish System,MRFS)一般由機器魚子系統、視覺子系統、決策與仿真子系統和無線通信子系統四部分組成。其中,無線通信子系統主要負責決策與仿真子系統和機器魚子系統的信息交互?,F階段,機器魚子系統和決策與仿真子系統之間多采取單向通信,即決策與仿真子系統形成的控制命令通過計算機串口和無線發射單元發送給機器魚子系統,而機器魚子系統則是通過自帶的無線接收單元來接收單元來接收上位機的命令,并由機器魚載AVR單片機對接收到的命令進行處理,從而控制多仿生機器魚的行為,使其完成某一任務。所以,該通信系統應能利用一臺發射器來向多個機器魚來發送相應的命令。本文根據MRFS實時、準確的實際要求,對通信子系統的硬件設計和通信協議進行了分析描述。
1 多仿生機器魚通信子系統的硬件設計
MRFS通信系統由無線發射單元、通信線纜和均線接收單元組成。無線發射單元通過電纜和主機相連,以便將決策子系統的命令以無線廣播的方式發送給每個機器魚自帶的接收單元;而無線接收單元則和機器魚載單片機相連,主要是根據命令來控制機器魚的行為。該通信子系統的結構框圖如圖1所示。
1.1 無線發射單元的硬件設計
在本文介紹的設計方法中,無線發射單元的核心部件采用了一種新型的超小型、超低功耗、高速無線數傳MODEM無線收發模塊PTR2030,圖2所示是該模塊的引腳排列示意圖。其引腳功能如下:
VCC:正電源;
CS:頻道選擇端,該端必須為高(即CS=1),以選擇工作頻道為315 MHz;
DO:數據輸出端;
DI:數據輸入端;
GND:電源地;
PWR:節能控制端,當PWR為高電平時,為正常工作狀態;PWR為低電平時,為待機微功耗狀態;
TXEN:發射接收控制端,當TXEN為1時,模塊為發射狀態;TXEN為0時,模塊為接收狀態。
該模塊由單IC組合而成,接收發射合一,內置環形天線,體積小,非常適合嵌入式設備;它采用FSK調制方式,工作頻率為國際通用的315MHz數傳頻段,抗干擾能力很強;單向傳輸速率可達20 KB/s,而且工作電壓低(2.7~3.3 V),功耗小,待機狀態時的電流僅為8 μA;此外,模塊還與CMOS和TTL邏輯兼容,可直接與單片機串口相連,編程非常方便。
由于決策子系統生成的控制命令是由主機通過常用的RS-232串行接口發出的,而PTR2030可以接收的是TTL/CMOS電平,因此,該接口電路需要進行電平轉換。本設計采用Intersil公司生產的電平轉換芯片ICL232來完成該轉換。ICL232芯片包含兩路驅動器和接收器,可以完全滿足系統的要求。PTR2030的PWR端接高電平可使其處于工作狀態;TXEN端可通過ICL232由上位機編程控制;DI端和DO端則通過ICL232和上位機的RXD和TXD相聯。ICL232將RS-232電平轉化為TTL電平后,可通過諷制發射模塊PTR2030以無線電波的形式發射出去。無線發射單元的原理圖如圖3所示。
1.2 無線接收單元的硬件設計
決策子系統的控制命令由無線發射單元以無線電波方式發送后,經無線接收單元解調為單片機可識別的信號并送到機器魚載單片機進行處理,以實現對各機器魚的控制。由于單片機系統可以直接接收TTL/CMOS電平,所以,PTR2030和單片機之間不需要進行電平轉化,可以直接連接。這樣,PTR2030無線MODEM的DI端應接單片機串口的發送端,DO端應接單片機串口的接收端。利用單片機的I/O端口可以對模塊的發射、頻道轉換和低功耗模式進行控制。在MRFS系統中,機器魚載單片機采用ATMEL公司推出的新型AVR單片機ATmega16L。該芯片具有先進的RISC架構,其數據吞吐率高達1 MIPS/MHz,故能較好的處理系統在功耗和處理速度之間的矛盾,非常適用于機器魚或機器人這樣實時性和可靠性要求較高的智能系統。該無線接收單元原理圖如圖4所示。
2 通信協議的設計
在MRFS中,一臺PC機(上位機)通常需要對應多個機器魚(下位機),因此,該系統屬于主從式數據傳輸系統。本設計采用單工通信方式(即決策系統的命令由PC機發送給各個機器魚載單片機),機器魚的運動信息通常是由視覺子系統提供給PC機,而機器魚本身不向PC機發送命令。單工通信系統的協調完全由發送端控制,發送端采用帶地址碼的數據幀發送數據或命令,然后由各機器魚全部接收,并將接收的地址碼與自己的地址碼進行比較,地址碼不同則忽略數據(不做任何響應);地址碼相同,則證明某個機器魚已被PC機尋址,該機器魚則根據發送的數據或命令進行不同的響應。這種傳輸方式可保證在任何一個瞬間,只有一個機器魚被尋址,從而避免了相互干擾。圖5所示是某個機器魚通信子程序的流程圖。由于本系統采用的是無線數據傳輸方式,因而數據必須進行規定格式的處理,其數據包的格式如下:
3 糾錯編碼的設計
在無線通信系統中,盡管硬件電路中已引入了一些抗干擾措施,但數據在傳輸過程中,不可避免地還會受到各種干擾,從而使通信接收端收到的數據與發送端實際發出的數據出現不一致的現象。因此,為了保證系統的可靠性,設計時必須在通信系統中加入差錯控制編碼(糾錯編碼)措施。常用的糾錯控制方式主要有三種:檢錯重發(ARQ)、前向糾錯(FEC)和混合糾錯(HEC)。本系統是單工通信方式,適合采用既有檢錯功能又有糾錯功能的BCH (7,4)前向糾錯分組碼控制,因而需要使用兩字節的長度來發送一字節的有效信息。事實證明,該糾錯方式無論在多機器魚系統還是在足球機器人系統都取得了較好的效果。
4 結束語
本文介紹了多仿生機器魚通信子系統的接收和發射單元的硬件設計和通信協議。討論了機器魚通信子系統的軟件運行程序和通信中的糾錯編碼設計方法。該方法可極大的提高MRFS的可靠性,從而為拓展MRFS功能提供了一個可靠的平臺。
責任編輯:gt
-
天線
+關注
關注
68文章
3196瀏覽量
140784 -
無線
+關注
關注
31文章
5450瀏覽量
173244 -
計算機
+關注
關注
19文章
7488瀏覽量
87852
發布評論請先 登錄
相關推薦
評論