中船重工715研究所 馮 冰
2ARM11嵌入式系統實時網絡通信和PWM波輸出控制的實現
中船重工715研究所 馮 冰
文章對ARM11嵌入式終端實時網絡通信特性分別從系統功能需求和網絡通信協議兩個方面進行了分析,同時對網絡通信協議和PWM波的驅動方式進行了介紹,最后就如何實現網絡終端服務器和客戶端雙進程的工作模式進行了研究,旨在為今后研究工作提供可靠的參考資料。
ARM11;實時網絡通信;雙進程;PWM波
所謂的嵌入系統就是指以應用為重點,軟硬件可以依據情況進行剪裁,該計算機專用系統對整體運行的功能性、可靠性等都有著較為嚴格的要求。而嵌入系統構成主要包括以下幾個部分:嵌入式處理器、嵌入式操作系統、相關支撐硬件以及應用軟件系統等,從構成方面分析可知,嵌入式系統是一個集成軟硬件一體的專用計算機系統。事實上,嵌入式系統技術發展主要分為三個階段。首先,嵌入式技術前期。在這一階段,專用計算機系統功能較為簡單,可編程控制器的核心也僅為單片機,基本功能主要有監測、設備指示以及伺服等,這種嵌入式系統雛形主要在工業控制、飛機等武器裝備中應用。第二階段嵌入式系統主要內容就是嵌入式CPU和嵌入式操作系統,而到了第三階段,嵌入式系統最大的特征就是芯片技術和互聯網技術的應用。
1.1 系統功能需求分析
ARM11嵌入式系統的一大特點就是網絡通信能力較強,可以利用網絡實現遠場控制。計算機同ARM11通信系統相比,前者無論是在數據處理效率和質量方面都占據一定的優勢,若將大量的數據信息交付給計算機系統進行處理,那么一方面可以極大的降低ARM11系統資源消耗,另一方面ARM11系統可以其他操作做出迅速地反應,鑒于此,ARM11系統可以將需要處理的數據傳輸給計算機系統,而計算機系統需要根據ARM11數據處理要求對所傳輸的數據進行處理并將處理結果利用網絡傳輸至ARM11控制模塊中。例如以網路控制PWM來進行說明。ARM11控制模塊需要將設備工作狀態數據信息傳輸至計算機,而計算機則需要利用網絡控制將PWM波的開關、占空比以及頻率設置等命令進行傳輸。
1.2 網絡通信協議選擇
通信協議問題在網絡通信中是一種必然的存在。當下,網絡協議主要有兩種,即UDP和TCP/IP協議。而實時性網絡通信要求實時收發,UDP在使用過程中不需要進行連接綁定,故而更加符合實時性這一要求,但是值得注意的,UDP協議的無法從根本上確保數據傳輸有效性,也就是當進行大量數據傳輸過程中,一旦傳輸速度過快,那么就可能會出現丟包問題,這種問題的發生在數據龐大且傳輸次數較多的數據庫中較為常見。這種問題的發生對可靠性要求較高的數據庫而言是十分嚴重的。而TCP/IP協議在實現通信連接之前首先需要進行連接綁定,從而有效地提升了數據傳輸的穩定性和有效性。
1.3 數據流分析
同ARM11通信系統相比,計算機系統在數據處理速度方面占據一定的優勢,例如可以將大量的數據處理任務分配給計算機,這樣一方面可以有效地降低ARM11資源的消耗,另一方面也為ARM11系統進行其他處理操作提供了更多的空間和時間。例如可以將顯示圖片處理任務分配給計算機,計算機系統則是依據ARM11顯示數據的處理標準對顯示圖片信息進行處理,并將最終的處理結果通過網絡傳輸至ARM11系統中同時使用LED進行顯示。
所謂的PWM波是指占空比和頻率都可以進行控制的方波,這種波不僅可以當做測試信號,同時也可以是控制信號,而為了實現占空比和頻率可控目標,在進行驅動程序設計過程中必須對占空比和頻率接口進行調整,同時將PWM接口進行關閉,而PWM驅動程序結構如圖1所示,從圖中可以看出驅動程序主要包括開關PWM輸出函數、設置頻率函數和設置占空比函數(見圖1)。
TCP/IP協議下的ARM11嵌入式終端單純以服務器或者是客戶端的模式應用是無法實現即時收發目標的,例如以當做服務器為例進行說明。ARM11終端接收計算機所傳輸的數據后,一旦計算機連接中斷,那么網絡終端傳輸過程也會停止,此時若想再次實現連接,那么計算機客戶端必須重新向終端發起連接命令,這種連接方式使得嵌入式終端運行收到了一定的限制,無法實現數據的即時發送。在這種情況下,可以通過對網絡中斷和計算機系統進行雙重工作模式的設置,即既可以是客戶端又可以是服務器,這樣一來就可以妥善的解決TCP/IP協議使用過程中存在的問題,終端可以在任何時間實現與計算機的連接和終端,實現了即時收發目標。

圖1 P WM驅動的程序結構
站在數據傳輸的有效性和網絡系統運行的實時性層面分析,在進行網絡通信和遠程控制PWM波輸出程序設計過程中,可以通過TCP/IP協議服務器和客戶端雙進程工作模式的應用來實現計算機處理PWM頻率和占空比數據,并將處理結構傳輸至ARM11客戶端。首先,軟件利用fork語句來進行服務器和客戶端進程的創建,同時通過pipe()語句來構建一個進程間數據通信通道。一旦進程建設完畢,ARM11網絡終端的兩個進程會在同一時間運行:客戶端需要傳輸數據時僅通過發起連接就可以實現網絡連接,當客戶端數據傳輸完畢首先需要對數據進行解碼處理,之后進行PWM波輸出等,當這一過程完成后可以將連接關閉,而客戶端也會一直處于等待連接狀態。
通常情況下,網絡終端和計算機服務器進程是處在一個工作狀態中,這樣一來可以實現任何一端都可以當做客戶端實現連接,或者是接收客戶端所傳輸的信息,實現了即時收發的目標,進而為實時網絡通信實時性的目標的實現提供了保證。ARM11嵌入式終端不會對一些復雜的數據進行處理,而是將該項任務交付給計算機系統來完成,而待計算機系統完成后會將處理結果反饋給嵌入式終端,極大的降低了ARM11資源消耗,同時響應按鍵、開光等處理操作也更加的靈敏。
綜上所述,ARM11嵌入式系統具有體積小、處理速度快、功能性強等方面的特點,符合網絡組網和網絡通信的實時性基本要求,同時以TCP/IP協議服務器客戶端雙進程工作模式的應用極大地提升了網絡通信的可靠性和穩定性,實現對PWM波輸出的控制。
[1]張堂華.淺析嵌入式實時系統CAN通信軟件設計[J].通訊世界,2016(18):25-26.
[2]鄧靜.基于嵌入式系統的生產線智能監控終端網絡通信的設計[J].科技創新與應用,2016(24):4-6.
[3]王靜.嵌入式通信網絡系統的抗毀性設計方法研究[J].現代電子技術,2016(16):64-67.