ARM在以太網通訊中作為服務器端構成網絡上的一個節(jié)點,具有獨立的IP地址,上位機作為客戶端通過對不同IP地址的訪問實現(xiàn)與網絡上不同節(jié)點的ARM服務器通訊,連接或監(jiān)控某個節(jié)點上的電子負載。上位機通過以太網發(fā)送給負載的控制命令由ARM網絡控制器接收,再通過ARM網絡控制器由RS232總線發(fā)送給電子負載。電子負載根據(jù)接收到的控制命令將被測電源的各種數(shù)據(jù)和負載工作的各個參數(shù)通過RS232總線上傳給ARM。ARM將來自負載的數(shù)據(jù)采用TCP/IP協(xié)議通過以太網上傳給上位機,ARM可以通過擴張串口連接多個負載,同時通過路由器擴展網絡,實現(xiàn)多個ARM系統(tǒng)并行工作,提高整個監(jiān)控系統(tǒng)的負載能力。
2 ARM網絡控制器硬件設計
ARM系統(tǒng)硬件部分采用三星公司的ARM芯片S3C2440,S3C2440基于32 bit ARM920T內核,標稱工作頻率為400 MHz,配置一片64 MBytes Nand Flash和兩片32 MBtyes SDRAM,網絡芯片采用DM9000A,配置了MAX3232擴展串口與電子負載進行連接。結構圖,如圖2所示。
3 ARM網絡控制器軟件設計
ARM嵌入式網絡控制器的操作系統(tǒng)采用WindowsCE 5.0,Windows CE 5.0是一個32位、多線程、多任務的操作系統(tǒng),同時也是模塊型的操作系統(tǒng),可選擇、組合和配置windows CE 5.0的模塊和組件來創(chuàng)建用戶版的操作系統(tǒng)。windows CE 5.0通過中斷嵌套與優(yōu)先級處理機制滿足了測控系統(tǒng)的實時性要求,同時具有類似于桌面系統(tǒng)的人機界面和應用程序開發(fā)工具。
在windows CE 5.0的開發(fā)中。有兩個重要的方面,一是內核定制,二是應用程序的開發(fā)。
3.1 Windows CE內核定制
由于應用環(huán)境的多樣性,需要對Windows CE系統(tǒng)做不同的內核定制。采用微軟公司的PlatformBuilder集成開發(fā)環(huán)境,針對電子負載網絡監(jiān)控的特點,添加、刪除和修改某些系統(tǒng)模塊,包括添加串口通信支持,以太網通訊支持,ActiveSync支持(軟件調試時的通信支持)等。此外,注冊表模式修改為HIVE模式,使掉電后數(shù)據(jù)的存放到Flash中保存實現(xiàn)程序的自啟動,參數(shù)掉電保存等功能。
3.2 ARM端通訊軟件開發(fā)
ARM網絡控制器作為負載和上位機連接的橋梁,實現(xiàn)RS232總線和以太網的互聯(lián)完成電子負載的遠程網絡監(jiān)控功能。因此,ARM端通訊軟件功能包括:與多個電子負載的串行通信;與上位機基于TCP/IP協(xié)議的通信,提供可視化界面顯示當前網絡連接參數(shù)和狀態(tài),用戶可以通過觸摸屏設置網絡連接參數(shù)如波特率和IP地址等,系統(tǒng)提供連接日志供用戶查閱。其中的核心功能是實現(xiàn)RS232總線和以太網的通訊互聯(lián),互聯(lián)模塊采用多線程的調用方式,保證了系統(tǒng)通訊的實時性。
通訊幀格式定義為長度26位,格式為:同步頭,負載地址,命令字,4~25 bit為相關信息內容,校驗碼。
(1)同步頭為AAH,占l bit;
(2)負載地址范圍為0~FE,占1 bit,確定該幀發(fā)送的目標負載或接收源負載;
(3)命令字占1 bit,標示了該幀的功能;
(4)4~25 bit為命令參數(shù)和反饋參數(shù)。
套接字即Socket是支持TCP/IP協(xié)議的網絡通信的基本操作單元。通過Socket編程,可以方便的訪問TCP/IP開發(fā)以太網通訊程序。Embedded VC++中基于TCP的Socket編程的服務器端程序工作流程如下:
(1)創(chuàng)建套接字Socket();
(2)將套接字綁定到一個本地地址和端口上bind();
(3)將套接字設置為監(jiān)聽模式,接收上位機的請求(listen);
(4)等待上位機請求,當請求到來后,接受連接請求,返回一個新的對應于此次連接的套接字accept();
(5)用返回的套接字于上位機進行通信(send/reev);
(6)關閉套接字。
串口通訊在Windows CE環(huán)境下與桌面Windows環(huán)境下類似,通過CreateFile函數(shù)打開串口,ReadFile和WriteFile函數(shù)讀寫串口數(shù)據(jù)。
修改注冊表使ARM系統(tǒng)上電后自動運行通訊軟件:首先進行串口和以太網的初始化,對每個串口創(chuàng)建單獨的接收線程和發(fā)送線程,Socket監(jiān)聽到上位機連接后,創(chuàng)建與上位機連接的數(shù)據(jù)收發(fā)線程。當串口的接收線程接收到數(shù)據(jù)時,觸發(fā)相應的回調函數(shù),調用Socket的發(fā)送線程把數(shù)據(jù)發(fā)送給上位機。當上位機發(fā)送數(shù)據(jù)給ARM服務器時,Socket的接收線程觸發(fā)相應的回調函數(shù),根據(jù)幀中負載地址,調用對應的串口發(fā)送線程向指定的目標負載轉發(fā)數(shù)據(jù)。工作流程,如圖3所示。[!--empirenews.page--]
用戶界面提供了各項通訊參數(shù)設置,服務器控制,系統(tǒng)連接狀態(tài)顯示,日志記錄顯示功能。使用Embedded VC++中的Remote Zoomin抓取的軟件界面,如圖4所示。
4 上位機監(jiān)控軟件設計
上位機監(jiān)控軟件采用Delphi作為開發(fā)環(huán)境,控制電子負載在不同的工作模式下運行如恒電流模式,恒電阻模式,恒功率模式等。依據(jù)電子負載的實時反饋數(shù)據(jù),將整個工作過程中負載的電壓、電流、功率等參數(shù)的變化以圖像、文本等多種形式顯示和記錄,同時對負載瞬態(tài)運行數(shù)據(jù)進行綜合分析,計算相關的性能指標。上位機作為監(jiān)控網絡中的客戶端,采用Intelnet Direct(Indy)控件,Indy是一組開放源代碼的Internet組件,采用阻塞通訊方式,為避免通訊環(huán)節(jié)中阻塞主線程工作,所以創(chuàng)建單獨的接收線程實現(xiàn)網絡通訊,軟件工作流程,如圖5所示。
上位機在初始化過程中按照設置的IP地址和端口范圍對網絡進行掃描,得到網絡中ARM服務器的運行狀態(tài),將可用ARM服務器IP地址和端口返回。用戶選擇可用的目標ARM服務器完成負載監(jiān)控系統(tǒng)的網絡連接,實現(xiàn)上位機對負載的監(jiān)控。上位機監(jiān)控軟件按照設定時間間隔向目標負載發(fā)送控制命令,如狀態(tài)參數(shù)查詢命令,負載接收到命令后發(fā)送返回數(shù)據(jù),監(jiān)控軟件根據(jù)返回數(shù)據(jù)得到負載當前運行狀態(tài)信息。
上位機監(jiān)控軟件采用多頁面,對每個負載動態(tài)生成單獨的監(jiān)控界面,保證系統(tǒng)資源的有效利用。保留公共控制區(qū)域負載全局運行狀態(tài)的顯示和全局控制功能按鈕,便于對全體負載運行狀態(tài)進行觀察并且完成多負載同步操作。監(jiān)控軟件工作狀態(tài);如圖6所示。
5 結束語
文中提出了一種基于ARM的電子負載網絡監(jiān)控系統(tǒng),給出了系統(tǒng)軟硬件的結構,充分利用以太網的優(yōu)勢,實現(xiàn)靈活、可靠的通訊。本系統(tǒng)可以完成對整個電子負載系統(tǒng)的運行監(jiān)控,彌補了當前市場上電子負載監(jiān)控系統(tǒng)的不足。本系統(tǒng)已成功應用于某科研單位電源實驗室的電源測試系統(tǒng)中,與傳統(tǒng)系統(tǒng)相比,擴展了監(jiān)控范圍,提高了電源測試效率。
北京2022年10月19日 /美通社/ -- 隨著云計算、大數(shù)據(jù)的普及發(fā)展,過去的"云"是服務于大企業(yè)的計算模型,而十多年過去了,越來越多的應用及業(yè)務走上"云端",對計算核心數(shù)需求...
關鍵字: ARM 大數(shù)據(jù) 云游戲 CPU北京2022年10月18日 /美通社/ -- 10月14日,國際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報告》,報告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...
關鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心