林永欽
摘 要:本文提出了一種基于嵌入式技術(shù)的通用通信管理裝置設(shè)計(jì)方案。整套方案中通過(guò)對(duì)嵌入式Linux操作系統(tǒng)以及嵌入式控制PC操作平臺(tái)的合理應(yīng)用,面向外部提供以太網(wǎng)接口(1個(gè))、標(biāo)準(zhǔn)串行工作接口(8個(gè))、以及CAN現(xiàn)場(chǎng)總線(xiàn)接口(1個(gè)),可在各個(gè)領(lǐng)域計(jì)算機(jī)監(jiān)控系統(tǒng)的各個(gè)通信環(huán)節(jié)中加以應(yīng)用,具有良好的可靠性以及通用性,值得引起重視。
關(guān)鍵詞:嵌入式技術(shù);通信管理裝置;設(shè)計(jì)
中圖分類(lèi)號(hào):TP368 文獻(xiàn)標(biāo)識(shí)碼:A
0.引言
當(dāng)前通信管理裝置為滿(mǎn)足功能需求,面向以太網(wǎng)、現(xiàn)場(chǎng)總線(xiàn)等提供了多種對(duì)外連接方式,軟件方面則多搭載多任務(wù)嵌入式系統(tǒng)實(shí)現(xiàn)對(duì)不同通信接口的獨(dú)立編程并支持信息的交互式連接。但由于此類(lèi)通信管理裝置的運(yùn)行必須在上位機(jī)安裝目標(biāo)機(jī)的虛擬環(huán)境,導(dǎo)致內(nèi)存占用巨大,加之組態(tài)調(diào)試功能的實(shí)現(xiàn)必須以虛擬環(huán)境為依托,因此也增加了現(xiàn)場(chǎng)運(yùn)行人員的操作難度。所以,如何研究實(shí)現(xiàn)一種可適宜網(wǎng)絡(luò)以及現(xiàn)場(chǎng)總線(xiàn)技術(shù)發(fā)展方向,無(wú)須進(jìn)行二次開(kāi)發(fā)的通用型通信管理裝置已成為業(yè)內(nèi)人士高度重視的一項(xiàng)課題。
1.嵌入式通用通信管理裝置基本原理
整套通用通信管理裝置主處理器選用工業(yè)級(jí)PC104嵌入式控制PC,系統(tǒng)軟件選用嵌入式Linux系統(tǒng),面向外部提供以太網(wǎng)接口(1個(gè))、標(biāo)準(zhǔn)串行工作接口(8個(gè))、以及CAN現(xiàn)場(chǎng)總線(xiàn)接口(1個(gè))。
系統(tǒng)CPU采用基于X86的CPU工作模塊,提供標(biāo)準(zhǔn)ISA總線(xiàn),CPLD選型為EPM3256,共配置144個(gè)引腳以及256個(gè)宏單元,完全可滿(mǎn)足嵌入式設(shè)計(jì)的實(shí)際需求。在CPLD編譯碼處理基礎(chǔ)之上生成包括串口控制器、地址芯片以及CAN控制器等在內(nèi)的片選信號(hào)。電源模塊選型為APC086-005A模塊,輸出參數(shù)為5VDC/4A,輸入?yún)?shù)為220VDC/AC。
2.嵌入式通用通信管理裝置硬件設(shè)計(jì)
在硬件設(shè)計(jì)方面,引入嵌入式技術(shù)背景下,通用通信管理裝置的硬件結(jié)構(gòu)中主要體現(xiàn)以下技術(shù):第一,整套通用通信管理裝置硬件結(jié)構(gòu)內(nèi)部選用PC104嵌入式控制PC裝置,該P(yáng)C裝置結(jié)構(gòu)高度集成,與IBM-PC/AT有良好兼容性,且功耗低、體積小,有良好的適應(yīng)性。同時(shí),通信通道選用相互獨(dú)立的電路設(shè)計(jì)以及中斷設(shè)計(jì)方案,運(yùn)行性能安全可靠;第二,以嵌入式技術(shù)下的Linux操作系統(tǒng)作為通用通信管理裝置的軟件平臺(tái),利用中央處理器在任務(wù)切換方面的功能優(yōu)勢(shì),可支持多任務(wù)環(huán)境下通用通信管理裝置的高效運(yùn)行,具有良好的運(yùn)算速度以及通信處理能力;第三,通用通信管理裝置以固態(tài)電子盤(pán)作為儲(chǔ)存介質(zhì),能夠避免硬盤(pán)轉(zhuǎn)動(dòng)部件運(yùn)行中存在的不可靠性,通過(guò)連接看門(mén)狗的方式,確保PC單機(jī)嵌入控制下具有良好的運(yùn)行可靠性;第四,整套通用通信管理裝置所配備相關(guān)通信接口均支持獨(dú)立編程以及多種不同連接方式,能夠根據(jù)實(shí)際應(yīng)用場(chǎng)景滿(mǎn)足不同功能需求。
3.嵌入式通用通信管理裝置軟件設(shè)計(jì)
整套通用通信管理裝置開(kāi)發(fā)環(huán)境選用嵌入式Linux開(kāi)發(fā)系統(tǒng),系統(tǒng)操作平臺(tái)操作便捷穩(wěn)定,內(nèi)核小且多任務(wù)并存,具有確切應(yīng)用優(yōu)勢(shì)。同時(shí),基于Linux的操作平臺(tái)還具有內(nèi)核單一、源碼公開(kāi)的特點(diǎn),內(nèi)核中封裝保存所有與系統(tǒng)相關(guān)的功能,且上述功能能夠根據(jù)系統(tǒng)裝置實(shí)際使用需求動(dòng)態(tài)裝入或卸載。經(jīng)減載后整套Linux操作平臺(tái)內(nèi)核共包括以下幾個(gè)部分:第一是內(nèi)存管理模塊,第二是進(jìn)程管理模塊,第三是進(jìn)程間通信模塊,第四是文件系統(tǒng)管理模塊,第五是網(wǎng)絡(luò)接口模塊。硬件層主要功能實(shí)現(xiàn)面向應(yīng)用程序提供統(tǒng)一操作接口,同時(shí)以與硬件無(wú)關(guān)的高層抽象層直接控制硬件資源;解釋組件由文件系統(tǒng)類(lèi)型以及網(wǎng)絡(luò)協(xié)議構(gòu)成,主要目的是使內(nèi)核了解如何與特定設(shè)備實(shí)現(xiàn)結(jié)構(gòu)化數(shù)據(jù)交互處理;應(yīng)用程序?qū)觿t面向裝置提供實(shí)時(shí)性數(shù)據(jù)庫(kù),根據(jù)不同物理接口提供相對(duì)應(yīng)的交互函數(shù)以及數(shù)據(jù)庫(kù)存取函數(shù),支持對(duì)串口通信驅(qū)動(dòng)程序異常運(yùn)行狀態(tài)的監(jiān)督,支持驅(qū)動(dòng)軟件以及整套通用通信管理裝置的重啟。在軟件設(shè)計(jì)方面,應(yīng)重點(diǎn)關(guān)注以下幾個(gè)方面的問(wèn)題:
3.1裝置軟件設(shè)計(jì)
整套通用通信裝置采用結(jié)構(gòu)化思想完成軟件設(shè)計(jì)。基本思路是:首先完成通用通信裝置系統(tǒng)內(nèi)部相關(guān)硬件模塊的驅(qū)動(dòng)程序設(shè)計(jì),在此基礎(chǔ)之上增加管理機(jī)構(gòu)對(duì)周期性運(yùn)動(dòng)驅(qū)動(dòng)程序處理與調(diào)度任務(wù)負(fù)責(zé),最后完成應(yīng)用程序設(shè)計(jì)即可。通信裝置內(nèi)部軟件包括任務(wù)模塊程序、主程序、以及中斷程序。主程序中初始化應(yīng)完成包括設(shè)置通信口、讀取源數(shù)據(jù)、設(shè)置通信存儲(chǔ)緩沖區(qū)以及中斷向量等工作任務(wù);中斷程序初始化應(yīng)完成子程序定時(shí)中斷、串口中斷子程序等工作任務(wù);任務(wù)模塊程序初始化則應(yīng)完成系統(tǒng)常規(guī)處理以及信息中斷處理等工作任務(wù)。主程序在循環(huán)過(guò)程中獲取通信管理裝置中各個(gè)模塊的數(shù)據(jù)信息,經(jīng)集中處理后發(fā)送至相應(yīng)緩沖區(qū)內(nèi),同時(shí)就SCADA以及RTU模塊接收數(shù)據(jù)緩沖區(qū)中的相關(guān)指令進(jìn)行處理。
基于Windows的操作系統(tǒng)平臺(tái)支持下,軟件開(kāi)發(fā)語(yǔ)言選用Visual C++語(yǔ)言,搭載該編程語(yǔ)言實(shí)現(xiàn)梯形圖編寫(xiě)任務(wù)、同時(shí),利用編譯程序構(gòu)造工具生成與開(kāi)發(fā)語(yǔ)言相對(duì)應(yīng)的分析器,將分析器與VC開(kāi)發(fā)環(huán)境相結(jié)合,編譯梯形圖源語(yǔ)言。
3.2在線(xiàn)調(diào)試模塊
通用通信管理裝置與PC單機(jī)的通信通過(guò)以太網(wǎng)接口連接方式實(shí)現(xiàn),支持對(duì)各個(gè)串口規(guī)約腳本以及配置文件的下載。同時(shí),通過(guò)控制各通信接口標(biāo)準(zhǔn)解釋進(jìn)程的方式,間接支持對(duì)梯形圖的在線(xiàn)調(diào)試以及對(duì)通信接口的規(guī)約調(diào)試功能。
3.3跨平臺(tái)應(yīng)用
對(duì)于將嵌入式系統(tǒng)應(yīng)用于內(nèi)部的通信管理裝置而言,為面向不同外部工作接口提供驅(qū)動(dòng)軟件支持,多需要搭載上位機(jī)Windows操作系統(tǒng)安裝目標(biāo)機(jī)虛擬環(huán)境以及開(kāi)發(fā)語(yǔ)言包。在此基礎(chǔ)之上,根據(jù)待通信設(shè)備所對(duì)應(yīng)的通信規(guī)約要求編輯驅(qū)動(dòng)軟件源代碼,并經(jīng)交叉編譯的方式生成目標(biāo)機(jī)可執(zhí)行代碼。但在應(yīng)用層中,由于廠家生產(chǎn)標(biāo)準(zhǔn)不盡相同,在跨平臺(tái)應(yīng)用中尚無(wú)具有通用性的規(guī)約或標(biāo)準(zhǔn),因此研發(fā)人員必須在實(shí)際應(yīng)用中根據(jù)廠家以及產(chǎn)品特點(diǎn),對(duì)應(yīng)不同軟件規(guī)約并完成源碼級(jí)的編譯以及下載操作。針對(duì)該問(wèn)題,本研究中引入嵌入式技術(shù)支持通用通信管理裝置軟件的設(shè)計(jì),在梯形圖基礎(chǔ)之上完成對(duì)用戶(hù)應(yīng)用層通信規(guī)約的編程操作,搭載內(nèi)嵌式技術(shù)實(shí)現(xiàn)對(duì)解釋執(zhí)行梯形進(jìn)程的程序,待通信設(shè)備驅(qū)動(dòng)通過(guò)可視化梯形組態(tài)方式進(jìn)行編輯,在此基礎(chǔ)之上生成二進(jìn)制工作代碼,在目標(biāo)機(jī)中完成對(duì)代碼的下載即可。
結(jié)語(yǔ)
本文上述分析中介紹了一種以嵌入式技術(shù)為核心的通用通信管理裝置設(shè)計(jì)方案,在嵌入式技術(shù)的應(yīng)用下,可支持梯形圖進(jìn)行規(guī)約編程,整套通用通信管理裝置具有靈活性高、操作方便、步驟簡(jiǎn)單等優(yōu)勢(shì),完全可滿(mǎn)足通信管理裝置與相關(guān)功能設(shè)備數(shù)據(jù)交互通信功能的實(shí)現(xiàn),也能夠支持相關(guān)設(shè)備與以太網(wǎng)以及現(xiàn)場(chǎng)總線(xiàn)的高效連接。嵌入式技術(shù)應(yīng)用北京下,整套通用通信管理裝置以梯形圖作為開(kāi)發(fā)語(yǔ)言環(huán)境,符合現(xiàn)行國(guó)際標(biāo)準(zhǔn),可支持通信管理裝置的跨平臺(tái)應(yīng)用,具有良好的推廣應(yīng)用價(jià)值與發(fā)展?jié)摿Α?/p>
參考文獻(xiàn)
[1]李云春,秦先龍,王嘯,等.網(wǎng)絡(luò)處理器和通用處理器相結(jié)合的流量識(shí)別系統(tǒng)[J].高技術(shù)通信,2010,20(10):991-995.
[2]張帆,孫璇,馬建峰,等.供應(yīng)鏈環(huán)境下通用可組合安全的RFID通信協(xié)議[J].計(jì)算機(jī)學(xué)報(bào),2008,31(10):1754-1767.