Implementation and Analysis of the Chaotic Synchronization Based on ARM System under Wireless Environment
劉權亮 馬
(太原理工大學新型傳感器與智能控制教育部與山西省重點實驗室,山西 太原 030024)
無線環境下基于ARM系統的混沌同步實現及分析
Implementation and Analysis of the Chaotic Synchronization Based on ARM System under Wireless Environment
(太原理工大學新型傳感器與智能控制教育部與山西省重點實驗室,山西 太原030024)
摘要:保密通信在現代化科技中扮演至關重要的角色,混沌同步電路是實現保密通信的一種方式。在無線環境下采用基于ARM的混沌同步平臺,使數字驅動電路產生與響應系統接收信號同步的Lorenz混沌信號,從而達到保密通信的作用。實驗表明,在通信參數與控制參數選擇合適的情況下,同結構、同參數、不同初始狀態下的混沌系統可以在此平臺上達到同步。由于邏輯電路在精度和可控度方面相比于模擬電路具有巨大優勢,因此基于ARM的混沌同步序列有廣泛的應用前景。
關鍵詞:混沌同步ARM無線傳輸嵌入式Linux線性反饋
Abstract:Secrecy communication plays a vital role in modern science and technology field; the chaos synchronization circuit is one of the modes to achieve secrecy communication. Under wireless environment, by adopting the chaos synchronization platform based on ARM, to make the digital driving circuit generate Lorenz chaos signal that can be synchronized with the signal received by response system, thus the goal of secrecy communication is reached. The results of experiments show that if appropriately select communication parameters and control parameters, the chaos systems having the same structure and same parameter while different initial state can be synchronized on this platform. Because logical circuit possesses great advantages than analog circuit in accuracy and controllability, the chaos synchronization sequence produced using ARM has wide applicable prospects.
Keywords:Chaos synchronizationARMWireless transmissionEmbeddedLinuxLinear feedback
0引言
自從混沌科學在20世紀60年代誕生以來,混沌同步現象被廣泛地應用于生物、醫學、圖像數據加密、保密通信、信號檢測等領域。1989年,Hubler發表的關于控制混沌的文章之后,混沌同步就引起了很多學者的關注。從加密的角度考慮,混沌信號由于其復雜和不可預測等特點,使得通過混沌掩蓋的信號可以很好地隱藏其信息,而混沌同步可使這種加密信號解密成為可能[1]。隨著集成電路數字化處理技術的發展,使用FPGA和DSP等技術產生混沌信號正逐漸成為一種趨勢。由于Linux系統的開源性及可靠性, ARM-Linux被廣泛應用于嵌入式系統,本文利用一個基于ARM的硬件平臺[2],移植Linux系統,通過上位機的操作,使驅動電路通過無線信號發出混沌序列,響應電路接收并通過控制進行混沌同步[3]。
1混沌信號原理
20世紀70年代,混沌學作為一門新的學科正式誕生,隨著混沌理論的研究深入,越來越多學者開始涉足該領域并且提出新的理論和混沌分析。在當代混沌研究當中,最常見的混沌信號有蔡氏混沌信號、Lorenz混沌信號和Colpitts混沌信號。
在Lorenz混沌系統模型中,a、b和c是決定系統特性的常數,可取任意正數,常用的組合是a=10、c=8/3、b=28。其中,b的取值決定了系統是否為混沌。當b<28時,系統收斂;當b≥28時,系統為混沌狀態,出現奇異吸引子。圖1顯示了當b取30時,在x-z、x-y、y-z和x-y-z軸上的相圖。
混沌的判定方法主要分為定量分析和定性分析。Lorenz混沌系統在相空間上進行分析時可以看到左右兩簇圍繞一個中心點運動。從圖1所示的相圖中可以看出,混沌的特征如下:對初始值的敏感,在不同的初始值條件下,系統的運動軌跡完成不同;局部結構和整體具有相似性當狀態方程的參數變化時,吸引子的外輪廓變化不大,但是空洞的位置和填充的過程卻截然不同。所以,可從相空間上來判定混沌系統是否工作在混沌狀態。同時,從時域上來說Lorenz混沌系統是非周期振蕩。

圖1 Lorenz相圖
2混沌系統的控制與同步
按照混沌同步控制的目的,可將混沌控制分為兩類:一類是根據要求,在不改變原系統軌道的前提下,控制混沌吸引子中的某條軌道,使其最終達到穩定;另一類則是選擇有期望的軌道作為目標進行控制。這兩類控制必須遵循的原則是同步控制對原系統的影響最小。混沌同步控制的方法有反饋同步法、驅動-響應同步法、主動-被動同步法、自適應同步法、激活控制法和基于觀測值的同步法等。在本次試驗中,運用反饋同步法,使輸出系統與相應系統之間的混沌信號實現同步[4]。反饋控制在實際應用過程中不僅具有較強的抗干擾性,并且可以對混沌信號軌道周期等參數進行控制。與其他方法相比,反饋控制結構簡單,易于實現[5]。定義輸出系統為:
(1)
(2)
(3)
線性反饋中定義結構簡單的響應系統方程為:
(4)
(5)
(6)
U=[u1,u2,u3]為加在對應狀態變量上的控制輸入項,通過公式可得驅動響應系統的誤差系統為:
(7)
(8)
(9)

(10)
k1=f(xn,yn)
(11)
(12)
(13)
(14)
通過公式可看出,Runge-Kutta算法計算過程便于改變步長,并且步長h、當前數值與斜率平均值決定下一點數值。在實際編程過程中,采用四階Runge-Kutta算法來產生混沌信號[7]。
圖2為四階Runge-Kutta計算采用流程圖。

圖2 四階Runge-Kutta計算采用流程圖

3系統平臺
硬件系統由開發板與上位機兩部分組成,兩組開發板分別擔當驅動系統與響應系統,兩套系統各由Lorenz混沌模塊、無線模塊和配置模塊組成。其中,驅動電路的混沌模塊可根據Lorenz算法產生混沌信號,響應電路的混沌模塊可產生混沌信號,并且使之與驅動電路的混沌信號同步;無線模塊起到收發數據的功能,使系統之間進行無線通信;配置模塊的作用是通過上位機對混沌信號的參數等進行配置。上位機系統通過用戶界面,可以顯示出混沌軌跡相圖與參數配置選項,通過數據分析對混沌信號進行同步控制。
本次試驗硬件系統是以MINI6410微處理器為核心的嵌入式開發板,板上集成了Flash儲存模塊、無線通信模塊與串口模塊等。響應模塊的混沌形式與輸出模塊相同,且包含一個控制模塊,在其控制下,通過線性反饋的同步方法完成兩個混沌系統的軌跡同步,使兩個同結構同參數不同初始狀態的混沌系統的誤差系統達到全局線性穩定,從而使其達到同步。系統采用ARM11作為主控芯片,用來產生混沌信號。在PC機的軟件設計中,上位機的作用是通過軟件界面對混沌系統的參數進行配置,對無線通信的數據進行抓取、分析和顯示[8]。
操作系統方面選用Linux作為操作系統,通過對三星TINY6410構架進行移植和修改,包括移植修改時鐘頻率與無線驅動,使系統默認的頻率、分區與實際硬件相同。在無線驅動方面, 通過Firmware將無線驅動加載到模塊當中。設計中采用SDIO接口與處理器進行連接,SDIO接口的作用是:WLAN模塊通過其將協議棧的相關數據進行發送,最后通過配置內核,將修改好的內核下載到嵌入式ARM板的Flash當中,完成配置。在無線傳輸過程中,為了區分配置信息、混沌信號、反饋控制信息等不同類型數據,對通信層進行簡單定義區分,通過信息類型以及信息時間的標定來區分信息內容[9]。
運用M語言,采用GUIDE創建PC機的顯示控制界面,包括控制面板和數據顯示面板。Matlab軟件提供用戶界面多種對象元素,并且元素相互獨立。上位機制作界面主要包括GUI圖形界面設計和相應屬性設置,通過編程控制各個控件后進行MCC編譯,最終生成可以在PC機運行的EXE程序[10]。由GUIDE創建的兩個M文件由主函數和一系列子函數構成。通過顯示界面的三維坐標,可以實時觀察主從兩個混沌系統在X、Y、Z軸上的運動軌跡和同步過程,同步參數面板實時刷新產生的混沌數據。
啟動流程為:首先啟動開發板上的混沌程序,輸出系統與響應系統嘗試連接,連接成功后通過PC機軟件進入配置顯示界面,通過控制器的反饋系數、倫茲混沌參數、輸出混沌的初始狀態,反饋混沌的初始狀態;然后,開始運行混沌系統。此時,輸出系統與反饋系統的混沌數據會顯示在屏幕上,可觀察其同步軌跡,并根據混沌信號產生的實時數據,產生誤差曲線。同步曲線圖如圖3所示。

圖3 同步誤差曲線圖
4結束語
本文提出一種基于ARM平臺的無線混沌同步方法,通過實驗可以得出,當混沌系統的軌跡在一個小范圍中變化時,其同步性能較好,誤差較低;而當混沌軌跡跨幅較大時,其同步誤差也相應增大。 在ARM-Linux結構下,兩個混沌系統在同步控制之后會有極小的誤差存在,通過設置參數等方法,可以減小誤差。產生誤差的兩個主要因素是一方面在產生丟包時,系統失去來自主系統的控制信息,從而導致相對運動軌道的偏離,這可能與選取的通信協議有關;另一方面由于
在離散化的同時有截斷誤差的產生,致使主從系統在同步的過程中產生一定的偏差。
參考文獻
[1] 程艷云,樊春霞,蔣國平.混沌同步及其應用[J].南京郵電大學學報:自然科學版,2007,27(3):80-87.
[2] 喬雙,赫亮,赫麗,等.基于超混沌同步的無線發射/接收系統的研制[J].東北師大學報:自然科學版,2001(2):107-110.
[3] 謝永堅.基于ARM系統的混沌語音加密研究[J].現代電子技術,2013,36(13):97-99.
[4] 樊冰.幾種典型混沌同步方法的研究[D].大連:大連理工大學,2011.
[5] 黃報星.Lorenz系統的混沌同步與保密通信[J].吉林大學學報:工學版,2003(3):60-63.
[6] 王興元,段朝鋒.用線性反饋方法實現不確定Lorenz系統混沌控制[J].大連理工大學學報,2006,45(6):892-896.
[7] 須文波,閔富紅,徐振源.線性反饋控制混沌系統[J].甘肅工業大學學報,2003,29(2):74-76.
[8] 徐誠.Linux環境C程序設計[M].北京:清華大學出版社,2010.
[9] 劉芳華.基于ARM的WiFi無線通信終端的研究與實現[D].武漢:武漢科技大學,2010.
[10]王巧花,葉平,黃民.基于Matlab的圖形用戶界面(GUI)設計[J].煤礦機械,2005(3):60-62.
中圖分類號:TH71;TN918.8+2
文獻標志碼:A
DOI:10.16086/j.cnki.issn1000-0380.201508002
山西省科技攻關基金資助項目(編號:20130313007-5);
山西省青年科技研究基金資助項目(編號:20120210013-2)。
修改稿收到日期:2014-12-26。
第一作者劉權亮(1987-),男,現為太原理工大學控制工程專業在讀碩士研究生;主要從事新型傳感器與智能控制方面的研究。