江守亮 苗欣
摘 要:為滿足工業(yè)控制和列車網(wǎng)絡(luò)控制的需要,設(shè)計開發(fā)了一款基于PC/104的ARCNET通用網(wǎng)卡板,并對基于PC/104的2.4G射頻ARCNET通用網(wǎng)卡板的軟、硬件設(shè)計進(jìn)行了詳細(xì)介紹。該網(wǎng)卡板具有動態(tài)應(yīng)用配置、串口調(diào)試、無線2.4G射頻調(diào)試和事件故障統(tǒng)計功能,可滿足不同終端設(shè)備或不同工業(yè)網(wǎng)絡(luò)接入ARCNET網(wǎng)絡(luò)或ARCNET網(wǎng)絡(luò)接入其它工業(yè)網(wǎng)絡(luò)的要求,具有很高的通用性和可靠性,可縮短網(wǎng)絡(luò)產(chǎn)品的開發(fā)周期。
關(guān)鍵詞:工業(yè)控制;列車控制網(wǎng)絡(luò);通用網(wǎng)卡板;2.4G射頻;FPGA;PC/104;ARM;ARCNET
中圖分類號:TN710 文獻(xiàn)標(biāo)識碼:A 文章編號:2096-4706(2019)02-0036-03
Abstract:In order to meet the needs of industrial control and train network control,an ARCNET universal network card board based on PC/104 is designed and developed. The software and hardware design of 2.4 GHz radio frequency ARCNET universal network card board based on PC/104 are introduced in detail. The network card board has the functions of dynamic application configuration,serial debugging,wireless 2.4G radio frequency debugging and event fault statistics. It can meet the requirements of different terminal devices or different industrial networks to access ARCNET network or ARCNET network to access other industrial networks. It has high versatility and reliability,and can shorten the development cycle of network products.
Keywords:industrial control;train control network;general network card board;2.4GRF;FPGA;PC/104;ARM;ARCNET
0 引 言
當(dāng)前工業(yè)控制系統(tǒng)和鐵路應(yīng)用中的控制網(wǎng)絡(luò)多種多樣,主要包括工業(yè)以太網(wǎng)、TCN、CAN、Modbus、RS-485、PROFIBUS、ARCNET等。作為其中之一的ARCNET最早用于辦公網(wǎng)絡(luò),但由于其速度快、確定性、可擴(kuò)展性和支持長距離傳輸?shù)忍攸c(diǎn),非常適合過程實(shí)時控制[1],目前已在醫(yī)療病檢裝置、工業(yè)包裝機(jī)及高速動車組等相關(guān)工業(yè)控制和列車控制網(wǎng)絡(luò)領(lǐng)域中得到廣泛應(yīng)用[2,3]。
為此設(shè)計一款通用網(wǎng)卡板,能減少網(wǎng)絡(luò)部件的重復(fù)開發(fā),便于終端設(shè)備接入ARCNET網(wǎng)絡(luò)或作為網(wǎng)關(guān)設(shè)備同其它工業(yè)網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)交互并傳遞到相關(guān)終端設(shè)備,有利于網(wǎng)絡(luò)一致性和可靠性的提升,還可以降低開發(fā)成本和研發(fā)周期。同時該通用網(wǎng)卡板帶有2.4G射頻接口,可實(shí)現(xiàn)無線數(shù)據(jù)下載和軟件調(diào)試功能,提高工作環(huán)境的便攜性。基于PC/104接口,由于標(biāo)準(zhǔn)的一致性,方便統(tǒng)一機(jī)械和電氣接口,更利于同其它部件或系統(tǒng)的對接。
1 ARCNET通用網(wǎng)卡板方案
鑒于板卡的通用性采用標(biāo)準(zhǔn)的PC/104接口,便于其它設(shè)備的接入,使用FPGA仲裁機(jī)制判斷雙SPI Flash數(shù)據(jù)以通用板卡為主的數(shù)據(jù)寫入和數(shù)據(jù)讀取。采用TMS570LS0714雙核單片機(jī)[4]確保系統(tǒng)的安全可靠。ARCNET通用網(wǎng)卡板的主要功能為:
(1)實(shí)現(xiàn)ARCNET總線數(shù)據(jù)和終端設(shè)備之間的數(shù)據(jù)在雙SPI Flash之間的交換,確保終端設(shè)備可靠接入ARCNET網(wǎng)絡(luò);
(2)實(shí)現(xiàn)應(yīng)用人員對網(wǎng)絡(luò)節(jié)點(diǎn)收發(fā)數(shù)據(jù)內(nèi)容的動態(tài)配置及配置文件的下載功能;
(3)提供完善的串口調(diào)試和2.4G射頻無線調(diào)試功能;
(4)實(shí)現(xiàn)ARCNET網(wǎng)絡(luò)數(shù)據(jù)的偵聽功能;事件記錄功能。
2 ARCNET通用網(wǎng)卡板系統(tǒng)硬件設(shè)計
通用網(wǎng)卡板硬件設(shè)計包括兩個部分,分別是TMS 570 LS0714雙核單片機(jī)最小系統(tǒng)電路、FPGA控制的雙SPI Flash電路、事件記錄模塊、ARCNET協(xié)議電路、ARCNET接口電路、串口調(diào)試電路、2.4G射頻調(diào)試數(shù)據(jù)收發(fā)模塊、板級供電等。
2.1 系統(tǒng)硬件框圖
ARCNET通用網(wǎng)卡板系統(tǒng)硬件框圖如圖1所示。
2.2 系統(tǒng)硬件設(shè)計
根據(jù)總體方案需求開發(fā)的系統(tǒng)硬件電路作為軟件的執(zhí)行部件,主要由九部分組成,各部分在TMS570LS0714雙核單片機(jī)的總體調(diào)度下,完成通用網(wǎng)卡板對外的配置、調(diào)試和通信功能。
(1)最小系統(tǒng)電路:處理器采用TI公司的基于ARM[5]內(nèi)核的32位TMS570LS0714雙核單片機(jī),內(nèi)核采用1.2V供電,I/O采用3.3V供電,最大主頻160MHz;電路包括上電復(fù)位電路、外部時鐘電路、JTAG程序調(diào)試電路、串口調(diào)試電路,其主要作用是通過對外設(shè)及片上外圍電路的訪問實(shí)現(xiàn)ARCNET網(wǎng)絡(luò)和終端設(shè)備之間的數(shù)據(jù)收發(fā)和存儲,同時兼有串口調(diào)試、無線2.4G射頻數(shù)據(jù)調(diào)試和文件下載功能。
(2)ARCNET主電路:主要是ARCNET協(xié)議芯片COM20020。COM20020主要完成ARCNET網(wǎng)絡(luò)數(shù)據(jù)鏈路層數(shù)據(jù)收發(fā),支持令牌環(huán)傳遞,完成了高可靠的網(wǎng)絡(luò)傳輸方案,通信速率高達(dá)5Mbps,通過其與單片機(jī)的配合即可完成一個ARCNET網(wǎng)絡(luò)節(jié)點(diǎn)。
(3)兩個SPI Flash電路:主要功能單片機(jī)同PC/104總線端的終端設(shè)備交互數(shù)據(jù),F(xiàn)lash1用于單片機(jī)寫入數(shù)據(jù)和保存端口信息,終端設(shè)備通過PC/104總線讀出數(shù)據(jù);Flsah2用于終端設(shè)備通過PC/104總線寫入數(shù)據(jù),單片機(jī)讀出數(shù)據(jù)。
(4)事件記錄Flsah電路:主要用于單片機(jī)將受到的診斷數(shù)據(jù)或關(guān)鍵控制數(shù)據(jù)記錄到Flash中,便于后續(xù)上位機(jī)對某一時間段的數(shù)據(jù)進(jìn)行統(tǒng)計分析,用于故障診斷和狀態(tài)分析。
(5)FPGA電路:實(shí)現(xiàn)COM20020訪問時序控制、兩個SPI Flash數(shù)據(jù)讀寫仲裁判斷、并行總線轉(zhuǎn)SPI總線、事件記錄Flash同單片機(jī)的數(shù)據(jù)轉(zhuǎn)換、看門狗等功能。
(6)ARCNET接口電路:作為ARCNET網(wǎng)絡(luò)的物理層電路,主要包括光耦隔離電路、485收發(fā)器或光收發(fā)器模塊,通過軟件設(shè)置COM20020芯片使其工作在Backplane模式,板卡預(yù)留雙絞線和光收發(fā)模塊接口,可根據(jù)需要上件安裝。
(7)調(diào)試接口電路:調(diào)試電路分串口調(diào)試和2.4G射頻調(diào)試。串口調(diào)試主要用于板卡開發(fā)過程中的軟件調(diào)試和配置文件的下載,通過RS-232接口進(jìn)行數(shù)據(jù)通信;2.4G射頻調(diào)試同串口功能相同,但可實(shí)現(xiàn)無線軟件調(diào)試和數(shù)據(jù)調(diào)試,通過2.4G射頻接口電路和PC機(jī)端2.4G射頻收發(fā)電路實(shí)現(xiàn)數(shù)據(jù)交互。
(8)Buffer電路:實(shí)現(xiàn)5V到3.3V的電平轉(zhuǎn)換功能,實(shí)現(xiàn)通用網(wǎng)卡板與PC/104接口處的終端設(shè)備的電平轉(zhuǎn)換,避免數(shù)據(jù)的邏輯錯誤和器件損壞。
(9)板級供電電路:板級由外部5V供電輸入,板內(nèi)將5V電源轉(zhuǎn)換為3.3V和1.2V,分別為3.3V需求的邏輯芯片和1.2V單片機(jī)內(nèi)核供電。
3 系統(tǒng)軟件設(shè)計
通過系統(tǒng)硬件設(shè)計,為系統(tǒng)軟件設(shè)計提供了安全可靠的平臺環(huán)境。以硬件為載體,通用網(wǎng)卡板主要實(shí)現(xiàn)ARCNET端口通信,通過雙SPI Flash完成終端設(shè)備間的數(shù)據(jù)交換。不同的應(yīng)用環(huán)境,通信的數(shù)據(jù)量和數(shù)據(jù)內(nèi)容不同,為了規(guī)范板卡的通用,預(yù)先定義了雙SPI Flash的訪問方式,并專門開發(fā)了PC端配置工具,節(jié)省了配置開發(fā)編輯時間,同時配置工具還具有網(wǎng)絡(luò)診斷功能。
3.1 TMS570LS0714雙核單片機(jī)軟件設(shè)計
單片機(jī)軟件采用雙核進(jìn)行數(shù)據(jù)處理,軟件采用標(biāo)準(zhǔn)C語言進(jìn)行編寫,開發(fā)環(huán)境為TI的CCS(Code Composer Studio)。按照模塊化、層次化編程,便于后期軟件的移植。
軟件設(shè)計流程框圖如圖2所示。
單片機(jī)上電復(fù)位后,程序首先初始化外圍設(shè)備,包括CPU內(nèi)部資源初始化、COM20020協(xié)議芯片初始化、雙SPI Flash初始化、2.4G射頻模塊初始化、事件記錄Flash初始化。CPU內(nèi)部資源初始化主要完成鎖相環(huán)、串口、外部總線、內(nèi)部的ROM存儲器、RAM內(nèi)存、雙核CPU、定時器、外部中斷請求等相關(guān)寄存器的配置工作。另外,程序還讀取存儲在EEPROM中的配置文件,便于后續(xù)的應(yīng)用程序的使用。
初始化完成后,進(jìn)入500ms等待模式,用于判斷是否有外部輸入要求進(jìn)入特殊的配置文件下載模式。如果沒有則跳出等待,進(jìn)入大循環(huán)應(yīng)用程序,應(yīng)用程序進(jìn)入后,通過判斷板卡的使用模式是否是事件記錄模式,如果是的進(jìn)入事件記錄功能,否則進(jìn)入ARCNET正常的數(shù)據(jù)收發(fā)模式。
3.2 雙SPI Flash空間分配
為了保證ARCNET通用網(wǎng)卡板的通用性,定義了雙SPI Flash的使用規(guī)范,使用該板卡的終端設(shè)備均需要遵循以下的訪問方式來訪問雙SPI Flash。
SPI Flash主要由單片機(jī)寫入數(shù)據(jù)和配置文件信息,終端設(shè)備讀取配置信息,根據(jù)配置信息讀取相應(yīng)的數(shù)據(jù),F(xiàn)PGA對雙SPI Flash的使用狀態(tài)進(jìn)行判斷,假設(shè)SPI Flash1被單片機(jī)占用,F(xiàn)PGA將空閑的SPI Flash2提供給終端設(shè)備使用,反之是一樣的。SPI Flash被劃分為三個區(qū)域,分別為板卡狀態(tài)區(qū)、端口配置信息區(qū)、端口數(shù)據(jù)區(qū)。如圖3所示為雙SPI Flash的空間分配圖。板卡狀態(tài)區(qū)主要存放軟硬件版本、設(shè)備名稱、設(shè)備地址、配置文件創(chuàng)建時間等信息;端口配置信息區(qū)主要存放端口號、端口大小、端口類型等信息;端口數(shù)據(jù)區(qū)主要根據(jù)端口配置信息區(qū)劃分端口數(shù)據(jù)存放位置。
3.3 PC端應(yīng)用軟件
為了減少實(shí)際應(yīng)用的開發(fā)周期,采用Lab Window/CVI開發(fā)了PC端配置工具應(yīng)用軟件,專門給應(yīng)用開發(fā)人員使用。應(yīng)用開發(fā)人員僅需要通過PC端應(yīng)用軟件即可對ARCNET通用網(wǎng)卡板進(jìn)行ARCNET通信的靈活配置。配置完成后使用串口或2.4G射頻模塊連接通用網(wǎng)卡板,通過命令的方式采用X-MODEM協(xié)議下載配置文件。
PC端應(yīng)用軟件以配置表單的方式,主要包括板卡配置、配置文件生成、網(wǎng)絡(luò)診斷功能。圖4所示為ARCNET通用網(wǎng)卡板配置圖。
板卡配置用于終端設(shè)備工作模式的配置和相關(guān)通信數(shù)據(jù)格式的配置,完成宿主設(shè)置交換數(shù)據(jù)的物理空間和邏輯地址分配等相關(guān)信息,并可通過串口或2.4G視頻收發(fā)模塊讀取板卡上的原配置文件并檢查配置文件正確性或下載配置文件。
配置文件生成可實(shí)現(xiàn)板卡相關(guān)硬件接口通信方式的選擇和定義設(shè)備的名稱、設(shè)備地址和查看端口相關(guān)信息,最終生成配置文件,并將配置文件保存到PC端應(yīng)用軟件設(shè)置的默認(rèn)文件夾下。
網(wǎng)絡(luò)診斷功能主要對ARCNET通信網(wǎng)絡(luò)中的終端設(shè)備工作狀態(tài)進(jìn)行診斷,通過配置板卡為診斷模式,板卡會進(jìn)入偵聽模式,可將終端設(shè)備的相關(guān)信息存儲到事件記錄Flash,也同時通過串口或2.4G射頻收發(fā)模塊上傳數(shù)據(jù)到PC機(jī),通過網(wǎng)絡(luò)診斷功能完成列車相關(guān)數(shù)據(jù)的過程分析。
4 結(jié) 論
用TMS570LS0714雙核單片機(jī)設(shè)計的ARCNET通用網(wǎng)卡板,已通過試驗(yàn)測試。雙核單片機(jī)增強(qiáng)了系統(tǒng)的穩(wěn)定性和可靠性,動態(tài)的SPI Flash空間分配和靈活的PC端應(yīng)用軟件設(shè)計,提高了現(xiàn)場應(yīng)用開發(fā)人員的工作效率,2.4G射頻收發(fā)模塊的使用增強(qiáng)了調(diào)試的可移動性、便捷性。
參考文獻(xiàn):
[1] 倪文波,王雪梅.高速列車網(wǎng)絡(luò)與控制技術(shù) [M].成都:西南交通大學(xué)出版社,2008.
[2] 龔娟,陶艷.基于ARCNET的病房大樓尿檢裝置自動送信系統(tǒng)分析 [J].電腦編程技巧與維護(hù),2010(14):37+47.
[3] 巴全龍.基于OPNET的ARCNET列車通信控制網(wǎng)絡(luò)的建模與仿真 [D].成都:西南交通大學(xué),2012.
[4] 龔娟,陶艷.基于ARCNET的病房大樓尿檢裝置自動送信系統(tǒng)分析 [J].電腦編程技巧與維護(hù),2010(14):37.
[5] TMS 570LS0714 Data Sheet [Z].Texas Instruments Incor-porated,2016.
[6] 杜春雷.ARM體系結(jié)構(gòu)與編程 [M].北京:清華大學(xué)出版社,2015.
作者簡介:江守亮(1982-),男,漢族,山東即墨人,磁浮技術(shù)分管研發(fā)師,工程師,碩士研究生,碩士,研究方向:列車網(wǎng)絡(luò)與磁浮控制;苗欣(1973-),女,漢族,北京人,磁浮技術(shù)主審研發(fā)師,高級工程師,本科,學(xué)士,研究方向:列車網(wǎng)絡(luò)與磁浮控制。