《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng)
基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng)
摘要: 文中提出了一種基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng),給出了系統(tǒng)軟硬件的結(jié)構(gòu),充分利用以太網(wǎng)的優(yōu)勢,,實(shí)現(xiàn)靈活、可靠的通訊,。本系統(tǒng)可以完成對整個(gè)電子負(fù)載系統(tǒng)的運(yùn)行監(jiān)控,彌補(bǔ)了當(dāng)前市場上電子負(fù)載監(jiān)控系統(tǒng)的不足。文中采用三星公司高性能的ARM處理器S3C2440作為核心,開發(fā)了基于以太網(wǎng)電子負(fù)載監(jiān)控系統(tǒng),,對于實(shí)現(xiàn)電源設(shè)備遠(yuǎn)程自動(dòng)化測試有著重要意義。
Abstract:
Key words :

 

       隨著電子產(chǎn)品的廣泛應(yīng)用,,各種電源設(shè)備被使用,,而電源設(shè)備運(yùn)行可靠與否直接關(guān)系到系統(tǒng)運(yùn)行的安全性和準(zhǔn)確性,因此對這些電源設(shè)備的檢驗(yàn)非常重要,。電子負(fù)載即針對電源系統(tǒng)中輸出電能的設(shè)備或轉(zhuǎn)換裝置,如發(fā)電機(jī),、AC/DC,、DC/AC變換器、蓄電池,、整流器及電感,、電容等部件的輸出特性、可靠性(老化放電)進(jìn)行全面測試的設(shè)備?,F(xiàn)在廣泛應(yīng)用的電子負(fù)載存在許多不足,,如只能工作在單機(jī)面板操作模式下,缺乏上位機(jī)監(jiān)控功能,,數(shù)據(jù)顯示缺乏圖形界面,,顯示不直觀,人性化,;測試過程必須全程有人員進(jìn)行操作,,無法進(jìn)行編程控制測試;沒有以太網(wǎng)絡(luò)接口,,無法進(jìn)行遠(yuǎn)程通訊與控制,。而基于網(wǎng)絡(luò)的電子負(fù)載系統(tǒng)相對于傳統(tǒng)電子負(fù)載系統(tǒng)有以下突出優(yōu)點(diǎn):
 
  (1)測試工作在上位機(jī)集中進(jìn)行,通過自動(dòng)測試降低測試人員勞動(dòng)強(qiáng)度,,減少冗余人員,,提高測試效率;
 
  (2)便于及時(shí),、準(zhǔn)確,、全面直觀,、高效、連續(xù)地反映電源測試狀態(tài),,利于科學(xué)管理,;
 
  (3)遠(yuǎn)程監(jiān)控可長期保存大量工作數(shù)據(jù),并以此為依據(jù)進(jìn)行科學(xué)的測試分析,。
 
  目前,,傳統(tǒng)電子負(fù)載通常利用RS232,RS485或CAN等總線進(jìn)行網(wǎng)絡(luò)通訊,。但這些網(wǎng)絡(luò)的有效半徑較短,,并且孤立于Internet網(wǎng)絡(luò)以外,無法采用現(xiàn)代化網(wǎng)絡(luò)管理實(shí)現(xiàn)大范圍高效率的遠(yuǎn)程監(jiān)控,。針對以上不足,,文中采用三星公司高性能的ARM處理器S3C2440作為核心,開發(fā)了基于以太網(wǎng)電子負(fù)載監(jiān)控系統(tǒng),,對于實(shí)現(xiàn)電源設(shè)備遠(yuǎn)程自動(dòng)化測試有著重要意義,。
 
  1 監(jiān)控系統(tǒng)的總體結(jié)構(gòu)
  電子負(fù)載監(jiān)控系統(tǒng)是一個(gè)以ARM為核心的通訊網(wǎng)絡(luò)。系統(tǒng)結(jié)構(gòu),,如圖1所示,。
  ARM在以太網(wǎng)通訊中作為服務(wù)器端構(gòu)成網(wǎng)絡(luò)上的一個(gè)節(jié)點(diǎn),具有獨(dú)立的IP地址,,上位機(jī)作為客戶端通過對不同IP地址的訪問實(shí)現(xiàn)與網(wǎng)絡(luò)上不同節(jié)點(diǎn)的ARM服務(wù)器通訊,,連接或監(jiān)控某個(gè)節(jié)點(diǎn)上的電子負(fù)載。上位機(jī)通過以太網(wǎng)發(fā)送給負(fù)載的控制命令由ARM網(wǎng)絡(luò)控制器接收,,再通過ARM網(wǎng)絡(luò)控制器由RS232總線發(fā)送給電子負(fù)載,。電子負(fù)載根據(jù)接收到的控制命令將被測電源的各種數(shù)據(jù)和負(fù)載工作的各個(gè)參數(shù)通過RS232總線上傳給ARM。ARM將來自負(fù)載的數(shù)據(jù)采用TCP/IP協(xié)議通過以太網(wǎng)上傳給上位機(jī),,ARM可以通過擴(kuò)張串口連接多個(gè)負(fù)載,,同時(shí)通過路由器擴(kuò)展網(wǎng)絡(luò),實(shí)現(xiàn)多個(gè)ARM系統(tǒng)并行工作,,提高整個(gè)監(jiān)控系統(tǒng)的負(fù)載能力,。
 
  2 ARM網(wǎng)絡(luò)控制器硬件設(shè)計(jì)
  ARM系統(tǒng)硬件部分采用三星公司的ARM芯片S3C2440,S3C2440基于32 bit ARM920T內(nèi)核,,標(biāo)稱工作頻率為400 MHz,,配置一片64 MBytes Nand Flash和兩片32 MBtyes SDRAM,網(wǎng)絡(luò)芯片采用DM9000A,,配置了MAX3232擴(kuò)展串口與電子負(fù)載進(jìn)行連接,。結(jié)構(gòu)圖,如圖2所示,。
  3 ARM網(wǎng)絡(luò)控制器軟件設(shè)計(jì)
 
  ARM嵌入式網(wǎng)絡(luò)控制器的操作系統(tǒng)采用WindowsCE 5.0,,Windows CE 5.0是一個(gè)32位,、多線程、多任務(wù)的操作系統(tǒng),,同時(shí)也是模塊型的操作系統(tǒng),,可選擇、組合和配置windows CE 5.0的模塊和組件來創(chuàng)建用戶版的操作系統(tǒng),。windows CE 5.0通過中斷嵌套與優(yōu)先級(jí)處理機(jī)制滿足了測控系統(tǒng)的實(shí)時(shí)性要求,,同時(shí)具有類似于桌面系統(tǒng)的人機(jī)界面和應(yīng)用程序開發(fā)工具。
 
  在windows CE 5.0的開發(fā)中,。有兩個(gè)重要的方面,,一是內(nèi)核定制,二是應(yīng)用程序的開發(fā),。
 
  3.1 Windows CE內(nèi)核定制
 
  由于應(yīng)用環(huán)境的多樣性,,需要對Windows CE系統(tǒng)做不同的內(nèi)核定制。采用微軟公司的PlatformBuilder集成開發(fā)環(huán)境,,針對電子負(fù)載網(wǎng)絡(luò)監(jiān)控的特點(diǎn),,添加、刪除和修改某些系統(tǒng)模塊,,包括添加串口通信支持,,以太網(wǎng)通訊支持,ActiveSync支持(軟件調(diào)試時(shí)的通信支持)等,。此外,注冊表模式修改為HIVE模式,,使掉電后數(shù)據(jù)的存放到Flash中保存實(shí)現(xiàn)程序的自啟動(dòng),,參數(shù)掉電保存等功能。
 
  3.2 ARM端通訊軟件開發(fā)
  ARM網(wǎng)絡(luò)控制器作為負(fù)載和上位機(jī)連接的橋梁,,實(shí)現(xiàn)RS232總線和以太網(wǎng)的互聯(lián)完成電子負(fù)載的遠(yuǎn)程網(wǎng)絡(luò)監(jiān)控功能,。因此,ARM端通訊軟件功能包括:與多個(gè)電子負(fù)載的串行通信,;與上位機(jī)基于TCP/IP協(xié)議的通信,,提供可視化界面顯示當(dāng)前網(wǎng)絡(luò)連接參數(shù)和狀態(tài),用戶可以通過觸摸屏設(shè)置網(wǎng)絡(luò)連接參數(shù)如波特率和IP地址等,,系統(tǒng)提供連接日志供用戶查閱,。其中的核心功能是實(shí)現(xiàn)RS232總線和以太網(wǎng)的通訊互聯(lián),互聯(lián)模塊采用多線程的調(diào)用方式,,保證了系統(tǒng)通訊的實(shí)時(shí)性,。
 
  通訊幀格式定義為長度26位,格式為:同步頭,,負(fù)載地址,,命令字,,4~25 bit為相關(guān)信息內(nèi)容,校驗(yàn)碼,。
 
  (1)同步頭為AAH,,占l bit;
 
  (2)負(fù)載地址范圍為0~FE,,占1 bit,,確定該幀發(fā)送的目標(biāo)負(fù)載或接收源負(fù)載;
 
  (3)命令字占1 bit,,標(biāo)示了該幀的功能,; 
 
  (4)4~25 bit為命令參數(shù)和反饋參數(shù)。
 
         套接字即Socket是支持TCP/IP協(xié)議的網(wǎng)絡(luò)通信的基本操作單元,。通過Socket編程,,可以方便的訪問TCP/IP開發(fā)以太網(wǎng)通訊程序。Embedded VC++中基于TCP的Socket編程的服務(wù)器端程序工作流程如下:
 
  (1)創(chuàng)建套接字Socket(),;
 
  (2)將套接字綁定到一個(gè)本地地址和端口上bind(),;
 
  (3)將套接字設(shè)置為監(jiān)聽模式,接收上位機(jī)的請求(listen),;
 
  (4)等待上位機(jī)請求,,當(dāng)請求到來后,接受連接請求,,返回一個(gè)新的對應(yīng)于此次連接的套接字accept(),;
 
  (5)用返回的套接字于上位機(jī)進(jìn)行通信(send/reev);
 
  (6)關(guān)閉套接字,。
 
  串口通訊在Windows CE環(huán)境下與桌面Windows環(huán)境下類似,,通過CreateFile函數(shù)打開串口,ReadFile和WriteFile函數(shù)讀寫串口數(shù)據(jù),。
 
  修改注冊表使ARM系統(tǒng)上電后自動(dòng)運(yùn)行通訊軟件:首先進(jìn)行串口和以太網(wǎng)的初始化,,對每個(gè)串口創(chuàng)建單獨(dú)的接收線程和發(fā)送線程,Socket監(jiān)聽到上位機(jī)連接后,,創(chuàng)建與上位機(jī)連接的數(shù)據(jù)收發(fā)線程,。當(dāng)串口的接收線程接收到數(shù)據(jù)時(shí),觸發(fā)相應(yīng)的回調(diào)函數(shù),,調(diào)用Socket的發(fā)送線程把數(shù)據(jù)發(fā)送給上位機(jī),。當(dāng)上位機(jī)發(fā)送數(shù)據(jù)給ARM服務(wù)器時(shí),Socket的接收線程觸發(fā)相應(yīng)的回調(diào)函數(shù),,根據(jù)幀中負(fù)載地址,,調(diào)用對應(yīng)的串口發(fā)送線程向指定的目標(biāo)負(fù)載轉(zhuǎn)發(fā)數(shù)據(jù)。工作流程,如圖3所示,。
ARM端通信工作流程
  用戶界面提供了各項(xiàng)通訊參數(shù)設(shè)置,,服務(wù)器控制,系統(tǒng)連接狀態(tài)顯示,,日志記錄顯示功能,。使用Embedded VC++中的Remote Zoomin抓取的軟件界面,如圖4所示,。
  4 上位機(jī)監(jiān)控軟件設(shè)計(jì)
  上位機(jī)監(jiān)控軟件采用Delphi作為開發(fā)環(huán)境,,控制電子負(fù)載在不同的工作模式下運(yùn)行如恒電流模式,恒電阻模式,,恒功率模式等,。依據(jù)電子負(fù)載的實(shí)時(shí)反饋數(shù)據(jù),將整個(gè)工作過程中負(fù)載的電壓,、電流,、功率等參數(shù)的變化以圖像、文本等多種形式顯示和記錄,,同時(shí)對負(fù)載瞬態(tài)運(yùn)行數(shù)據(jù)進(jìn)行綜合分析,,計(jì)算相關(guān)的性能指標(biāo)。上位機(jī)作為監(jiān)控網(wǎng)絡(luò)中的客戶端,,采用Intelnet Direct(Indy)控件,,Indy是一組開放源代碼的Internet組件,采用阻塞通訊方式,,為避免通訊環(huán)節(jié)中阻塞主線程工作,,所以創(chuàng)建單獨(dú)的接收線程實(shí)現(xiàn)網(wǎng)絡(luò)通訊,軟件工作流程,,如圖5所示,。
  上位機(jī)在初始化過程中按照設(shè)置的IP地址和端口范圍對網(wǎng)絡(luò)進(jìn)行掃描,得到網(wǎng)絡(luò)中ARM服務(wù)器的運(yùn)行狀態(tài),,將可用ARM服務(wù)器IP地址和端口返回。用戶選擇可用的目標(biāo)ARM服務(wù)器完成負(fù)載監(jiān)控系統(tǒng)的網(wǎng)絡(luò)連接,,實(shí)現(xiàn)上位機(jī)對負(fù)載的監(jiān)控,。上位機(jī)監(jiān)控軟件按照設(shè)定時(shí)間間隔向目標(biāo)負(fù)載發(fā)送控制命令,如狀態(tài)參數(shù)查詢命令,,負(fù)載接收到命令后發(fā)送返回?cái)?shù)據(jù),,監(jiān)控軟件根據(jù)返回?cái)?shù)據(jù)得到負(fù)載當(dāng)前運(yùn)行狀態(tài)信息。
 
  上位機(jī)監(jiān)控軟件采用多頁面,,對每個(gè)負(fù)載動(dòng)態(tài)生成單獨(dú)的監(jiān)控界面,,保證系統(tǒng)資源的有效利用。保留公共控制區(qū)域負(fù)載全局運(yùn)行狀態(tài)的顯示和全局控制功能按鈕,便于對全體負(fù)載運(yùn)行狀態(tài)進(jìn)行觀察并且完成多負(fù)載同步操作,。監(jiān)控軟件工作狀態(tài),;如圖6所示。
 
  文中提出了一種基于ARM的電子負(fù)載網(wǎng)絡(luò)監(jiān)控系統(tǒng),,給出了系統(tǒng)軟硬件的結(jié)構(gòu),,充分利用以太網(wǎng)的優(yōu)勢,實(shí)現(xiàn)靈活,、可靠的通訊,。本系統(tǒng)可以完成對整個(gè)電子負(fù)載系統(tǒng)的運(yùn)行監(jiān)控,彌補(bǔ)了當(dāng)前市場上電子負(fù)載監(jiān)控系統(tǒng)的不足,。本系統(tǒng)已成功應(yīng)用于某科研單位電源實(shí)驗(yàn)室的電源測試系統(tǒng)中,,與傳統(tǒng)系統(tǒng)相比,擴(kuò)展了監(jiān)控范圍,,提高了電源測試效率,。
 
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。