无码成人A片在线观看,性欧美videofree高清变态,中文字幕有码无码av,国产无人区卡一卡二扰乱码 ,最近高清日本免费

您現(xiàn)在的位置: 通信界 >> 測試儀表 >> 技術(shù)正文  
 
基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)[圖]
[ 通信界 / 21IC中國電子網(wǎng) / m.k-94.cn / 2011/8/17 18:54:11 ]
 

隨著工控技術(shù)的進(jìn)步和市場競爭的加劇,開發(fā)人員通常需要在盡可能短的時間內(nèi)設(shè)計出滿足用戶要求的測控系統(tǒng)。本文針對嵌入式系統(tǒng)的特點,以高性價比的32位ARM嵌入式處理器AT91RM9200為硬件核心,搭建了通用工控硬件平臺,在此平臺上移植嵌入式Linux操作系統(tǒng)和圖形界面開發(fā)環(huán)境MiniGUI。以此通用工控平臺為基礎(chǔ),可以方便地構(gòu)建工程應(yīng)用所需的絕大部分自動測控系統(tǒng)。其應(yīng)用無論是在性能還是在成本方面都極具競爭力,這預(yù)示著本平臺具有較好的應(yīng)用前景。

本工控平臺在硬件上,選擇ATMEL公司的AT91RM9200微處理器,并對其最小系統(tǒng)及外圍部件進(jìn)行設(shè)計,以適應(yīng)當(dāng)前工控現(xiàn)場更加豐富的技術(shù)要求,并結(jié)合工業(yè)測控Modbus協(xié)議,擴(kuò)展多種通信接口,滿足用戶的通信需求。與此同時,選擇嵌入式Linux操作系統(tǒng)為測控軟件的開發(fā)提供了性能優(yōu)良軟件平臺。

通用工控硬件平臺設(shè)計

1 AT91RM9200微處理器最小系統(tǒng)構(gòu)成

最小系統(tǒng)是保證微處理器可靠工作所必需的基本電路;贏T91RM9200微處理器的最小嵌入式系統(tǒng)由微處理器AT91RM9200、電源電路、晶體振蕩器電路、復(fù)位電路、JTAG接口、存儲器模塊、串行調(diào)試接口等電路組成。至此就具備了設(shè)計開發(fā)一款基于ARM微處理器的通用工控平臺的硬件基礎(chǔ)。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)

2 硬件平臺外圍接口電路

利用AT91RM9200豐富的內(nèi)置外設(shè),可以方便的擴(kuò)展外圍接口,如表2所示。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)

3 硬件平臺用戶接口

系統(tǒng)對外提供一個2*32針的標(biāo)準(zhǔn)3U插槽,共64針。3U插槽專門設(shè)計用于便攜式應(yīng)用,特別適合作為一體化的移動控制器用于工業(yè)測控、產(chǎn)品線、運輸系統(tǒng)和交通控制系統(tǒng)的應(yīng)用。

4 硬件平臺結(jié)構(gòu)

根據(jù)上述對AT91RM9200最小系統(tǒng)及各外圍部件的設(shè)計,最終構(gòu)成以AT91RM9200微處理器為硬件核心的通用工控硬件平臺,如圖1所示。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)
圖1 通用工控平臺硬件結(jié)構(gòu)

通用工控軟件平臺設(shè)計

1 基于ARM硬件平臺搭建Linux操作系統(tǒng)

ARM-Linux開發(fā)環(huán)境搭建

建立以嵌入式Linux為操作系統(tǒng)的工控平臺的開發(fā)環(huán)境和在Windows下安裝虛擬機Linux環(huán)境的軟件的開發(fā)環(huán)境,嵌入式Linux內(nèi)核編譯、應(yīng)用程序編譯都在該虛擬機完成。為了提高開發(fā)效率,以虛擬機中安裝的Linux為服務(wù)器,通過Windows客戶端使用Telnet或SSH登錄服務(wù)器,服務(wù)器可自由在客戶端中下載必需的開發(fā)工具及軟件,調(diào)試應(yīng)用程序時,可以先在PC的Linux環(huán)境下進(jìn)行模擬,然后通過DEBUG調(diào)試串口下載在目標(biāo)平臺下。這種開發(fā)環(huán)境的優(yōu)點是只需要一臺計算機就可以真實的模擬Linux,具體過程如圖2所示。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)
圖2 開發(fā)環(huán)境

交叉編譯

交叉編譯就是在一個平臺上生成另一個平臺上的可執(zhí)行代碼。所謂平臺,實際上包含兩個概念:體系結(jié)構(gòu)及操作系統(tǒng)。根據(jù)上述建立的開發(fā)環(huán)境,目標(biāo)平臺是基于ARM體系結(jié)構(gòu)的運行嵌入式Linux操作系統(tǒng),而開發(fā)編譯環(huán)境是基于PC中虛擬機上的Linux操作系統(tǒng)。若在目標(biāo)平臺上運行程序,則須在PC開發(fā)環(huán)境下對代碼進(jìn)行交叉編譯以適應(yīng)目標(biāo)平臺。

依據(jù)環(huán)境變量PREFIX,將編譯好的工具鏈安裝到指定文件夾就可以使用了。

例如,修改arm-Linux-gcc-2.95.3的環(huán)境變量為:

PATH=$PATH:$HOME/bin:$PREFIX/bin:/usr/local/arm/2.95.3/bin:/sbin:/usr/sbin:/usr/local/sbin,同時編寫hello.c程序進(jìn)行驗證
     $arm-Linux-gcc hello.c -o hello-arm
     $file hello-arm
     hello-arm: ELF 32-bit LSB executable, ARM, version1 (ARM), for GNU/Linux 2.0.0, dynamically linked (uses shared libs),not stripped

這表明生成的hello-arm可以在ARM平臺上運行,也證明交叉編譯工具鏈?zhǔn)怯行Р⑶铱捎玫摹?/p>

Linux內(nèi)核編譯下載

具體步驟如下:

(1) 解壓Linux-2.6.21-2009-04 -10.bz2:tar  xjvf Linux-2.6.21 -2009-04-10.bz2;
     (2)  進(jìn)入Linux-2.6.21目錄,內(nèi)核編譯:make uImage;
     (3) 編譯完成后,通過SSH把uImage文件拷貝到Windows環(huán)境下;
     (4)  配置U-Boot環(huán)境變量;
     (5)  配置tftp服務(wù)器:運行Linux系統(tǒng)下的tftp服務(wù)器,復(fù)制Linux內(nèi)核的uImage文件到tftp下載工作目錄下,啟動tftp服務(wù),確保PC和AT91RM9200接入同一網(wǎng)段;
     (6) 下載內(nèi)核映像文件,并在U-Boot提示符下擦除Flash;
     (7) 下載內(nèi)核映像文件到Flash中;

Linux文件系統(tǒng)

軟件平臺使用cramfs文件系統(tǒng),其特點是:系統(tǒng)訪問某個位置的數(shù)據(jù)時,立即計算出該數(shù)據(jù)在cramfs中的位置,解壓到RAM中,然后通過內(nèi)存訪問來獲取數(shù)據(jù),cramfs中的解壓縮之后的內(nèi)存中的數(shù)據(jù)存放位置都是由cramfs文件系統(tǒng)本身來管理,用戶并不需要實現(xiàn)過程,因此增加了透明度,給開發(fā)人員節(jié)約了時間。

2 Linux操作系統(tǒng)下設(shè)備驅(qū)動開發(fā)

Linux上的設(shè)備驅(qū)動非常豐富,支持各種主流硬件設(shè)備和最新的硬件技術(shù)。設(shè)備驅(qū)動程序在Linux內(nèi)核中,是一個個獨立的“黑盒子”,使某個特定的硬件響應(yīng)一個定義良好的內(nèi)部編程接口,同時完全隱藏設(shè)備的工作細(xì)節(jié)。通過一組標(biāo)準(zhǔn)化的調(diào)用,把這些調(diào)用映射到設(shè)備特定的操作上,則是設(shè)備驅(qū)動程序的任務(wù)。而在Linux系統(tǒng)里,每一個設(shè)備都被看作一個文件,打開的設(shè)備在內(nèi)核中由一個File結(jié)構(gòu)標(biāo)志,內(nèi)核使用File_operations結(jié)構(gòu)訪問驅(qū)動程序的函數(shù)。每個設(shè)備與一組標(biāo)準(zhǔn)函數(shù)集關(guān)聯(lián)。

3 Linux操作系統(tǒng)下應(yīng)用程序開發(fā)

采取在PC上編譯應(yīng)用程序,運行測試通過后,再通過網(wǎng)絡(luò)或串口等方法下載到目標(biāo)平臺/usr目錄下,對于較小的程序,使用串口下載比較方便,具體的步驟為

(1)  PC模擬環(huán)境下開發(fā)程序,交叉編譯;
     (2)  待ARM平臺下Linux正常運行后,進(jìn)入usr目錄,然后選擇下載的程序;
     (3)  下載完成后,chmod +x filenam修改文件屬性為可執(zhí)行命令;
     (4)  執(zhí)行剛下載的文件命令為./filename。

通用工控平臺人機交互通信機制實現(xiàn)

嵌入式GUI為嵌入式系統(tǒng)提供了一種應(yīng)用于特殊場合的人機交互接口。新一代嵌入式GUI的主要特征有:以用戶為中心、多通道、智能化、高帶寬。嵌入式Linux 系統(tǒng)中,幾乎所有的GUI 都建立在FrameBuffer設(shè)備上。

MiniGUI 是一個根據(jù)嵌入式系統(tǒng)應(yīng)用特點量身定做的完整的圖形支持系統(tǒng)。將現(xiàn)代窗口和圖形技術(shù)帶入到嵌入式設(shè)備,是一個非常適合于嵌入式設(shè)備的高效、可靠、可定制、小巧靈活的圖形用戶界面支持系統(tǒng),主要優(yōu)點可總結(jié)為支持多種嵌入式操作系統(tǒng),具備優(yōu)秀的可移植性;可伸縮的系統(tǒng)架構(gòu),易于擴(kuò)展;功能豐富,可靈活剪裁;得到小體積高性能間的最佳平衡且具有廣泛的應(yīng)用領(lǐng)域。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)

1 移植MiniGUI前準(zhǔn)備

MiniGUI 1.3.3是MiniGUI的開源版本,并且資源豐富,性能穩(wěn)定,因此選用MiniGUI 1.3.3作為GUI的開發(fā)環(huán)境。進(jìn)行MiniGUI移植需要準(zhǔn)備表3所列的文件,它們可在互聯(lián)網(wǎng)上獲得。

2 PC模擬器開發(fā)環(huán)境搭建

建立自己的開發(fā)目錄,解壓文件libminigui-1.3.3.tar.gz和minigui-res-1.3.3.tar.gz;編譯安裝MiniGUI運行所需庫文件libminigui;安裝資源文件minigui-res-1.3.3;修改/etc/ld.so.conf 文件,加入一行/usr/local/lib,然后執(zhí)行[root]# ldconfig 按照硬件平臺配置與開發(fā)環(huán)境的設(shè)置修改minigui配置文件,包括修改路徑,屏幕分辨率等。

PC模擬器開發(fā)環(huán)境搭建完畢后,就可在 PC上開發(fā)應(yīng)用程序,在 qvfb中執(zhí)行,驗證程序的正確后,就可以進(jìn)行交叉編譯下載運行。

3 交叉編譯Minigui1.3.3

解壓arm-Linux-2.95.3.bz2文件安裝交叉編譯工具?cross-2.95.3,安裝之后修改.bashrc腳本,設(shè)置環(huán)境變量:PATH="$PATH:/sbin:/usr/local/arm/2.95.3/bin:/usr/local/bin:/usr/local"。

接下來依次安裝 zlib庫,png庫、libttf庫,它們的作用分別是:其他的庫的編譯基礎(chǔ)、顯示PNG圖形、顯示文字。完成以上附加庫的交叉編譯工作后就可以編譯libminigui了。把/usr/local/arm/2.95.3/arm-Linux/lib中相應(yīng)的庫拷到目標(biāo)板/usr/lib目錄下,拷貝時先對庫文件執(zhí)行arm-Linux-strip命令,去除文件中的調(diào)試信息。同時把資源文件復(fù)制到目標(biāo)平臺的/usr/local/lib目錄下。這樣就完成了交叉編譯工作,可以將PC上調(diào)試好的應(yīng)用程序下載到目標(biāo)硬件平臺下進(jìn)行應(yīng)用了。

通用工控平臺人機界面開發(fā)

1 人機交互界面需求分析及總體設(shè)計

通用工控平臺通信人機交互界面是集功能演示、信息采集、設(shè)備狀態(tài)、通信交互等功能于一身的人機交互平臺,可以高效、直觀的顯示通用工控平臺的基本信息,同時有效的指導(dǎo)用戶的操作,提高使用效率,是用戶和通用工控平臺交互的主要方式。

該人機交互界面顯示器選用PHILIPS公司的14英寸彩色顯示屏,軟件運行環(huán)境選用嵌入式操作系統(tǒng)Linux 2.6.21和GUI開發(fā)環(huán)境MiniGUI 1.3.3構(gòu)成,整個軟件的設(shè)計過程需要完成以下功能:

(1)  實時顯示該平臺具體信息,及本網(wǎng)內(nèi)在線的其他工控設(shè)備的信息;
     (2)  以該平臺為控制器實現(xiàn)對本網(wǎng)內(nèi)在線的其他常見設(shè)備的多線程信息采集與控制;
     (3)  以UDP及RS485兩種通信方式實時控制工控網(wǎng)絡(luò)內(nèi)部;
     (4)  對工控設(shè)備掉線自動斷開連接,防止用戶誤操作;

通用工控平臺通信人機交互界面主要是針對UDP和RS485兩種組網(wǎng)方式基于Modbus協(xié)議完成工控系統(tǒng)中功能演示、信息采集、設(shè)備狀態(tài)、通信交互的功能,設(shè)計上要求簡單實用,操作方便,而復(fù)雜的界面會帶來不必要的開銷并影響性能。根據(jù)需求分析設(shè)定人機交互界面整體設(shè)計方案及效果圖如圖3、圖4所示。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)
圖3 人機交互界面整體設(shè)計方案

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)
圖4 總體效果圖

2 界面設(shè)計流程

利用MiniGUI進(jìn)行界面設(shè)計流程如圖5所示。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)
圖5 界面設(shè)計流程

基于工業(yè)測控Modbuss協(xié)議的通信實現(xiàn)方案

一個好的工控平臺必須具備高效通信的功能,才能跟上工業(yè)發(fā)展的要求。本文所設(shè)計的通用工控平臺,可以作為控制中心對通信網(wǎng)絡(luò)內(nèi)的其他設(shè)備進(jìn)行數(shù)據(jù)采集和控制,包括工控現(xiàn)場典型意義上的數(shù)模轉(zhuǎn)換設(shè)備,模數(shù)轉(zhuǎn)換設(shè)備,數(shù)字量設(shè)備等,隨時掌握各個工作現(xiàn)場的情況。由于Modbus協(xié)議是工業(yè)測控領(lǐng)域的標(biāo)準(zhǔn)通信協(xié)議,協(xié)議簡單,應(yīng)用廣泛,因此本平臺通信軟件的設(shè)計就采用Modbus協(xié)議。

工業(yè)測控領(lǐng)域常見的組網(wǎng)方式主要有UDP方式和RS485方式,分別以自身獨特的優(yōu)勢在工業(yè)組網(wǎng)占據(jù)著一定地位。為實現(xiàn)工控平臺通用性的設(shè)計目標(biāo),本平臺將兩種組網(wǎng)方式融合在通信人機交互界面中,圖6為本平臺通信的拓?fù)浣Y(jié)構(gòu)圖。

基于ARM和Linux通用工控平臺設(shè)計與實現(xiàn)
圖6 通信拓?fù)浣Y(jié)構(gòu)

結(jié)語

在基于ARM和Linux的通用工控平臺的研制過程中,硬件平臺選擇合適的ARM微處理器AT91RM9200,并對其外圍部件進(jìn)行擴(kuò)展,以適應(yīng)當(dāng)前工控現(xiàn)場更加豐富的技術(shù)要求,并結(jié)合現(xiàn)場總線技術(shù),擴(kuò)展多種通信接口,滿足用戶的通信需求;軟件平臺采用嵌入式領(lǐng)域應(yīng)用最廣的Linux為操作系統(tǒng),同時構(gòu)建交叉編譯環(huán)境,并充分利用開源軟件,基于圖形界面開發(fā)的MiniGUI,針對工控領(lǐng)域的總線協(xié)議Modbus設(shè)計出基于UDP和RS485兩種通信結(jié)構(gòu)的工控人機交互界面,實現(xiàn)了以網(wǎng)絡(luò)溝通能力強、接口豐富為技術(shù)指標(biāo)的基于ARM和Linux的通用工控平臺。

本通用工控平臺的主要特色有:

(1)硬件接口豐富,適應(yīng)工業(yè)測控領(lǐng)域各種需求;
     (2)使用3U插槽,增強通用性及擴(kuò)展性;
     (3)基于Linux操作系統(tǒng)及MiniGUI圖形界面開發(fā)環(huán)境,人機交互界面友好便捷;
     (4)采用工業(yè)測控Modbus通信協(xié)議,基于串行RS485及網(wǎng)絡(luò)UDP構(gòu)建通信拓?fù)浣Y(jié)構(gòu),應(yīng)用范圍廣泛、性能可靠、實時性高。

 

作者:21IC中國電子網(wǎng) 合作媒體:21IC中國電子網(wǎng) 編輯:顧北

 

 

 
 熱點技術(shù)
普通技術(shù) “5G”,真的來了!牛在哪里?
普通技術(shù) 5G,是偽命題嗎?
普通技術(shù) 云視頻會議關(guān)鍵技術(shù)淺析
普通技術(shù) 運營商語音能力開放集中管理方案分析
普通技術(shù) 5G網(wǎng)絡(luò)商用需要“無憂”心
普通技術(shù) 面向5G應(yīng)運而生的邊緣計算
普通技術(shù) 簡析5G時代四大關(guān)鍵趨勢
普通技術(shù) 國家網(wǎng)信辦就《數(shù)據(jù)安全管理辦法》公開征求意見
普通技術(shù) 《車聯(lián)網(wǎng)(智能網(wǎng)聯(lián)汽車)直連通信使用5905-5925MHz頻段管理規(guī)定(
普通技術(shù) 中興通訊混合云解決方案,滿足5G多元業(yè)務(wù)需求
普通技術(shù) 大規(guī)模MIMO將帶來更多無線信道,但也使無線信道易受攻擊
普通技術(shù) 蜂窩車聯(lián)網(wǎng)的標(biāo)準(zhǔn)及關(guān)鍵技術(shù)及網(wǎng)絡(luò)架構(gòu)的研究
普通技術(shù) 4G與5G融合組網(wǎng)及互操作技術(shù)研究
普通技術(shù) 5G中CU-DU架構(gòu)、設(shè)備實現(xiàn)及應(yīng)用探討
普通技術(shù) 無源光網(wǎng)絡(luò)承載5G前傳信號可行性的研究概述
普通技術(shù) 面向5G中傳和回傳網(wǎng)絡(luò)承載解決方案
普通技術(shù) 數(shù)據(jù)中心布線系統(tǒng)可靠性探討
普通技術(shù) 家庭互聯(lián)網(wǎng)終端價值研究
普通技術(shù) 鎏信科技CEO劉舟:從連接層構(gòu)建IoT云生態(tài),聚焦CMP是關(guān)鍵
普通技術(shù) SCEF引入需求分析及部署應(yīng)用
  版權(quán)與免責(zé)聲明: ① 凡本網(wǎng)注明“合作媒體:通信界”的所有作品,版權(quán)均屬于通信界,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:通信界”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。 ② 凡本網(wǎng)注明“合作媒體:XXX(非通信界)”的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé)。 ③ 如因作品內(nèi)容、版權(quán)和其它問題需要同本網(wǎng)聯(lián)系的,請在一月內(nèi)進(jìn)行。
通信視界
華為余承東:Mate30總體銷量將會超過兩千萬部
趙隨意:媒體融合需積極求變
普通對話 苗圩:建設(shè)新一代信息基礎(chǔ)設(shè)施 加快制造業(yè)數(shù)字
普通對話 華為余承東:Mate30總體銷量將會超過兩千萬部
普通對話 趙隨意:媒體融合需積極求變
普通對話 韋樂平:5G給光纖、光模塊、WDM光器件帶來新機
普通對話 安筱鵬:工業(yè)互聯(lián)網(wǎng)——通向知識分工2.0之路
普通對話 庫克:蘋果不是壟斷者
普通對話 華為何剛:挑戰(zhàn)越大,成就越大
普通對話 華為董事長梁華:盡管遇到外部壓力,5G在商業(yè)
普通對話 網(wǎng)易董事局主席丁磊:中國正在引領(lǐng)全球消費趨
普通對話 李彥宏:無人乘用車時代即將到來 智能交通前景
普通對話 中國聯(lián)通研究院院長張云勇:雙輪驅(qū)動下,工業(yè)
普通對話 “段子手”楊元慶:人工智能金句頻出,他能否
普通對話 高通任命克里斯蒂安諾·阿蒙為公司總裁
普通對話 保利威視謝曉昉:深耕視頻技術(shù) 助力在線教育
普通對話 九州云副總裁李開:幫助客戶構(gòu)建自己的云平臺
通信前瞻
楊元慶:中國制造高質(zhì)量發(fā)展的未來是智能制造
對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 楊元慶:中國制造高質(zhì)量發(fā)展的未來是智能制造
普通對話 對話亞信科技CTO歐陽曄博士:甘為橋梁,攜"電
普通對話 對話倪光南:“中國芯”突圍要發(fā)揮綜合優(yōu)勢
普通對話 黃宇紅:5G給運營商帶來新價值
普通對話 雷軍:小米所有OLED屏幕手機均已支持息屏顯示
普通對話 馬云:我挑戰(zhàn)失敗心服口服,他們才是雙11背后
普通對話 2018年大數(shù)據(jù)產(chǎn)業(yè)發(fā)展試點示范項目名單出爐 2
普通對話 陳志剛:提速又降費,中國移動的兩面精彩
普通對話 專訪華為終端何剛:第三代nova已成為爭奪全球
普通對話 中國普天陶雄強:物聯(lián)網(wǎng)等新經(jīng)濟(jì)是最大機遇
普通對話 人人車?yán)罱。航衲臧l(fā)力金融 拓展汽車后市場
普通對話 華為萬飚:三代出貴族,PC產(chǎn)品已走在正確道路
普通對話 共享退潮單車入冬 智享單車卻走向盈利
普通對話 Achronix發(fā)布新品單元塊 推動eFPGA升級
普通對話 金柚網(wǎng)COO邱燕:天吳系統(tǒng)2.0真正形成了社保管