基於ARM與 Clinux的RTU設計

2021-04-19 18:36:50 字數 3372 閱讀 6111

[日期:2008-8-20]

[字型:大

中 小]

在電力系統變電所以及電氣化鐵道牽引變電所遠動控制系統中,遠端資料採集與監控終端(rtu)是關鍵裝置,實現遙控、遙測、遙信等功能。

採用工業控制計算機,擴充套件測控硬體介面電路,是rtu設計常見的方法,但是這種方法設計的rtu成本高、體積大、耗電大。採用80c196等微控制器設計rtu,由於微控制器的運算處理和硬體擴充套件等能力較低,影響rtu的效能。而基於arm處理器設計的rtu,硬體上具有成本低、體積小、耗電省、處理能力強等優點;軟體上由於採用μclinux作業系統,有許多優秀的應用程式成果可以利用。正是由於這些優勢,採用arm和μclinux設計rtu已經成為乙個熱點[1]。

1 rtu硬體電路設計

1.1 rtu總體結構

rtu的核心部分是計算機,包括處理器、儲存器、人機介面等。為了執行rtu的測控功能,需要擴充套件大量外圍介面電路。不同變電所的測控物件數量差別很大。為了提高rtu的通用性,一種普遍採用的可行的辦法是將測控電路模組化。根據模組化的設計思想以及s3c4510b[2]和μclinux[3]的特點,rtu硬體總體結構設計的原理框圖如圖1。

各種電路按功能設計成相應模組,以母板匯流排為介面基礎。

主機板模組以s3c4510b為核心。主要配置是:16m位元組動態隨機儲存器sdram(兩片hy57v651620b),2m位元組的flash(一片am29lv160db);處理器內部整合兩個非同步序列通訊介面,串列埠0和串列埠1;乙個10mbps乙太網介面;看門狗與復位電路(max507);rtu母板匯流排驅動電路。

串列埠0作為控制台,用於除錯;串列埠1接lcd顯示屏和觸控螢幕,實現當地監控的人機介面。

測控介面電路主要有遙控模組、遙信模組(開關量採集)和遙測模組(模擬量採集)。遙控和搖信模組由母板匯流排直接擴充套件。遙測模組採用現場匯流排(can)通訊介面。為此在rtu母板匯流排上擴充套件can匯流排通訊模組,實現與遙測模組的通訊。

串列埠模組(pc16c550)從母板匯流排上擴充套件。用該模組連線數據機(modem),實現rtu遠端通訊。

1.2 rtu母板匯流排

rtu母板匯流排是測控硬體模組擴充套件的基礎,又是處理器匯流排上的乙個外設介面。

為便於模組的擴充套件,rtu母板匯流排定義如下:資料匯流排h-d0~h-d7;位址匯流排h-a0~h-a7;位址片選訊號h-s0~h-s6;讀寫控制訊號h-wr和h-rd;位址鎖存控制訊號h-ale;中斷服務請求控制訊號h-int0~h-int3;復位訊號h-reset。

使用處理器的如下匯流排訊號驅動rtu母板匯流排:位址匯流排a0~a11、資料匯流排d0~d7、讀使能控制訊號noe、寫使能控制訊號nwbe0、外設(i/o)位址片選訊號necs0,以及4根中斷控制訊號線ninreq0~ninreq3。

1.2.1 匯流排驅動電路

為相容測控介面電路較常用的器件,母板匯流排按照5v的ttl電平設計。s3c4510b匯流排是3.3v的cmos電平。

處理器匯流排與rtu母板匯流排存在速度和電平上的差別,不能直接相連,它們之間需要乙個匯流排驅動電路。

匯流排驅動電路是主機板模組的一部分。它實現處理器匯流排到rtu母板匯流排的介面擴充套件、電平轉換和驅動。匯流排驅動介面電路如圖2。

採用雙電源供電的雙向匯流排緩衝器74lvx4245,實現處理器資料匯流排與rtu母板資料匯流排之間的電平轉換和驅動。

三八解碼器u1,將2k位元組位址空間譯為8個位址片選訊號,稱為s0~s7,其中s0~s6由匯流排驅動晶元74ls244驅動後,作為rtu母板匯流排位址片選訊號。

1.2.2 位址鎖存訊號ale實現

一些常用的晶元,如can匯流排控制器sja1000、時鐘晶元ds12887等,內部帶乙個位址鎖存器,需要位址鎖存訊號ale,才能實現介面。s3c4510b沒有ale訊號,所以母板匯流排擴充套件ale訊號,才能實現這類器件的介面。

將u1的乙個位址片選訊號s7取反,寫資料到s7位址,可以模擬出ale控制訊號,並實現ale的功能。

1.2.3 rtu母板匯流排的位址和訪問速度

rtu母板匯流排作為處理器的乙個外設,其位址和訪問速度由處理器決定。

s3c4510b匯流排統一編址。necs0是外設位址片選訊號,佔外設位址空間起始的16k位元組。

necs0接u3使能端,決定rtu母板匯流排的基位址和訪問速度。s3c4510b控制暫存器extdbwth第20位置1、21位置0,表示necs0按8位方式定址。暫存器refextcon的低10位設為0x360,則necs0的基位址是0x3600000。

置控制暫存器extacon0為0x0fff,則s3c4510b對rtu母板匯流排的讀寫時間是7個cpu時鐘週期。

1.3 基於rtu母板匯流排的模組擴充套件

圖3是擴充套件can匯流排通訊模組的電路原理圖。can匯流排模組以sja1000為核心,通訊資料經高速光電耦合器g1、g2隔離,82c250驅動,從接線端子j2連線到外部can匯流排。p1是1w的5v轉5v的dc/dc電源模組。can模組使用h-s0作為片選訊號,其基位址是0x3600000。

圖3給出了sja1000與rtu母板匯流排的連線關係。sja1000匯流排相容ttl電平,資料匯流排和中斷訊號線有驅動能力,可以直接與母板匯流排介面。由圖3可見,從rtu母板匯流排上擴充套件測控電路簡單方便。

基於母板匯流排的其它模組擴充套件方法類似。

2 rtu軟體設計

μclinux從linux作業系統改進而來,適合執行在s3c4510b這種無記憶體管理單元mmu的處理器中。基於工控機-linux的rtu程式,可以很方便地移植到arm-μclinux設計的rtu中。

rtu程式的開發,包括應用程式開發和驅動程式開發兩部分,全部採用c語言編寫。

2.1 rtu應用程式除錯

jffs2(the journalling flash file system, version 2)是一種為嵌入式系統flash儲存檔案而設計的檔案系統。μclinux編譯選項,加入jffs2檔案系統。將2mb的flash分成mtd0和mtd1兩個區,各為1mb。mtd0是從0位址開始的儲存空間,用於儲存μclinux作業系統映象檔案。mtd1用於儲存應用程式。μclinux的/dev目錄中,有字元型裝置檔案mtd0、mtd1和對應的塊裝置檔案mtdblock0、mtdblock1。

有了jffs2檔案系統支援,使用檔案拷貝操作方法,即可將rtu的作業系統和應用程式在flash上更新。rtu的開發和現場除錯,可以脫離jtag**器工具,給rtu開發和維護提供了方便。

2.3 更新μclinux的步驟

1 嚴亞勤,吳文傳,張伯明. 基於嵌入式linux的網路rtu[j]. 電力自動化裝置,2004;24(9):27~29

2 μm_s3c4510b_rev1.pdf. www.samsung.com.

3 皺思秩.嵌入式linux設計與應用[m].北京:清華大學出版社,2002.第1版

基於ARM與 Clinux的RTU設計

摘要 基於arm處理器s3c4510b和 clinux的rtu總體結構設計 rtu硬體擴充套件方法以及在 cllinux環境下開發rtu應用程式的經驗。定義了一種rtu母板匯流排,介紹了由處理器匯流排驅動rtu母板匯流排的介面電路原理以及rtu母板匯流排上擴充套件硬體模組的方法。在電力系統變電所以及...

基於ARM與DSP的智慧型儀器系統設計

圖1 系統總體硬體框圖 3 系統硬體具體設計方案 3.1 arm與dsp的介面設計 ep7312和tms320vc5402連線的介面電路如圖2所示。vc5402通過hpi與arm進行連線。arm先向dsp寫入控制字,設定工作模式,然後將訪問位址寫入位址暫存器 hpia 再對資料鎖存器 hpid 進行...

基於ARM開發平台的uboot映象編譯與燒寫

在基於arm的開發平台下,系統啟動需要核心,bootloader,根檔案系統三大塊,今天博主記錄給arm開發平台編譯並燒寫uboot的步驟 ps 在本次過程開始前,務必安裝對應版本的arm linux gcc交叉編譯器 如若不是自己設計的開發板,一般廠家會提供配套的開發原始碼,可以針對soc進行配置...