基於ARM與 Clinux的RTU設計

2021-06-10 01:51:53 字數 3715 閱讀 1661

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

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

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

1 rtu硬體電路設計

1.1 rtu總體結構

rtu的核心部分是計算機,包括處理器、儲存器、人機介面等。為了執行rtu的測控功能,需要擴充套件大量外圍介面電路。不同變電所的測控物件資料差別很大。為了提高rtu的通用性,一種普遍採用的可行的辦法是將測控電路模組化。根據模組化的設計思想以及s3c4510b和μclinux的特點,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母板匯流排作為處理器的乙個外設,其位址和訪問速度由處理器決定。

圖2

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

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

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應用程式除錯

使用jtag**器工具和相應工具軟體,將μclinux作業系統燒寫到主機板模組的flash中。μclinux在主機板模組上執行後,可以使用μclinux提供的工具軟體在flash上更新自身及應用程式。

連線pc機的串列埠與主機板模組的串列埠0。用windows超級終端,與主機板模組建立互動關係。將主機板模組與pc機接入同乙個區域網,配置合適的ip位址。

2.2 jffs2檔案系統應用

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)用ftp傳輸作業系統檔案image.rom到/ramdisk/目錄;(2)擦除mtd0分割槽:eraseall/dev/mtd0;(3)將image.rom寫入mtd0:cp/ramdisk/image.rom/dev/mtd0。

當提示操作完成後,復位主機板模組即執行新的作業系統。由於μclinux作業系統主sdram中執行,更新作業系統過程中不能停電。

圖3

2.4 應用程式在flash上的更新與執行

mount -t jffs2/dev/mtdblock1/mnt

基於本文設計的rtu,連線到乙個電網資料採集與監控系統,經試執行,效能穩定可靠。證明文中設計的rtu的原理是正確的。

基於ARM與 Clinux的RTU設計

日期 2008 8 20 字型 大 中 小 在電力系統變電所以及電氣化鐵道牽引變電所遠動控制系統中,遠端資料採集與監控終端 rtu 是關鍵裝置,實現遙控 遙測 遙信等功能。採用工業控制計算機,擴充套件測控硬體介面電路,是rtu設計常見的方法,但是這種方法設計的rtu成本高 體積大 耗電大。採用80c...

基於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進行配置...