久草成年免费福利在线视频-国产成人精品男人的天堂538-中文人妻av一区二区三区-一本色道久久综合免费-国产天堂mv在线2020-日韩av电影亚洲av电影-伊人中文字幕国产精品-日韩欧美tv在线播放-色狠狠久久五月综合,激情图区亚洲综合,超碰网av在线,国产乱子伦一区二区三区国色天香

網(wǎng)站首頁

HOME

關于我們

ABOUT US

產(chǎn)品展示

PRODUCT

新聞中心

NEWS

成功案例

CASE

下載中心

DOWNLOAD

人才招聘

RECRUIT

在線留言

MESSAGE

聯(lián)系我們

CONTACT US

    技術文章
    聯(lián)系我們
    西安航普電子有限責任公司
    電話:029-81870107
    郵箱:hangpudianzi@163.com
    網(wǎng)址:www.321088.com
    公司地址:西安市電子四路西京三號2號樓17層
     
     
    技術文章
    基于 ARM 和 Linux 通用工控平臺設計與實現(xiàn)
    更新時間:2017-09-07 13:10:55    點擊:1338次

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


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


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


    2 硬件平臺外圍接口電路
    利用AT91RM9200豐富的內(nèi)置外設,可以方便的擴展外圍接口,如表2所示。


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


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

    圖1 通用工控平臺硬件結(jié)構(gòu)

    通用工控軟件平臺設計
    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)核編譯、應用程序編譯都在該虛擬機完成。為了提高開發(fā)效率,以虛擬機中安裝的Linux為服務器,通過Windows客戶端使用Telnet或SSH登錄服務器,服務器可自由在客戶端中下載必需的開發(fā)工具及軟件,調(diào)試應用程序時,可以先在PC的Linux環(huán)境下進行模擬,然后通過DEBUG調(diào)試串口下載在目標平臺下。這種開發(fā)環(huán)境的優(yōu)點是只需要一臺計算機就可以真實的模擬Linux,具體過程如圖2所示。

    圖2 開發(fā)環(huán)境


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


    依據(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程序進行驗證
    $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平臺上運行,也證明交叉編譯工具鏈是有效并且可用的。


     Linux內(nèi)核編譯下載
    具體步驟如下:


    (1) 解壓Linux-2.6.21-2009-04 -10.bz2:tar  xjvf Linux-2.6.21 -2009-04-10.bz2;


    (2)  進入Linux-2.6.21目錄,內(nèi)核編譯:make uImage;


    (3) 編譯完成后,通過SSH把uImage文件拷貝到Windows環(huán)境下;


    (4)  配置U-Boot環(huán)境變量;


    (5)  配置tftp服務器:運行Linux系統(tǒng)下的tftp服務器,復制Linux內(nèi)核的uImage文件到tftp下載工作目錄下,啟動tftp服務,確保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)下設備驅(qū)動開發(fā)
    Linux上的設備驅(qū)動非常豐富,支持各種主流硬件設備和最新的硬件技術。設備驅(qū)動程序在Linux內(nèi)核中,是一個個獨立的“黑盒子”,使某個特定的硬件響應一個定義良好的內(nèi)部編程接口,同時完全隱藏設備的工作細節(jié)。通過一組標準化的調(diào)用,把這些調(diào)用映射到設備特定的操作上,則是設備驅(qū)動程序的任務。而在Linux系統(tǒng)里,每一個設備都被看作一個文件,打開的設備在內(nèi)核中由一個File結(jié)構(gòu)標志,內(nèi)核使用File_operations結(jié)構(gòu)訪問驅(qū)動程序的函數(shù)。每個設備與一組標準函數(shù)集關聯(lián)。


    3 Linux操作系統(tǒng)下應用程序開發(fā)
    采取在PC上編譯應用程序,運行測試通過后,再通過網(wǎng)絡或串口等方法下載到目標平臺/usr目錄下,對于較小的程序,使用串口下載比較方便,具體的步驟為


    (1)  PC模擬環(huán)境下開發(fā)程序,交叉編譯;


    (2)  待ARM平臺下Linux正常運行后,進入usr目錄,然后選擇下載的程序;


    (3)  下載完成后,chmod +x filenam修改文件屬性為可執(zhí)行命令;


    (4)  執(zhí)行剛下載的文件命令為./filename。

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


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

    1 移植MiniGUI前準備
    MiniGUI 1.3.3是MiniGUI的開源版本,并且資源豐富,性能穩(wěn)定,因此選用MiniGUI 1.3.3作為GUI的開發(fā)環(huán)境。進行MiniGUI移植需要準備表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)境的設置修改minigui配置文件,包括修改路徑,屏幕分辨率等。


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


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


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

    通用工控平臺人機界面開發(fā)
    1 人機交互界面需求分析及總體設計
    通用工控平臺通信人機交互界面是集功能演示、信息采集、設備狀態(tài)、通信交互等功能于一身的人機交互平臺,可以高效、直觀的顯示通用工控平臺的基本信息,同時有效的指導用戶的操作,提高使用效率,是用戶和通用工控平臺交互的主要方式。


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


    (1)  實時顯示該平臺具體信息,及本網(wǎng)內(nèi)在線的其他工控設備的信息;


    (2)  以該平臺為控制器實現(xiàn)對本網(wǎng)內(nèi)在線的其他常見設備的多線程信息采集與控制;


    (3)  以UDP及RS485兩種通信方式實時控制工控網(wǎng)絡內(nèi)部;


    (4)  對工控設備掉線自動斷開連接,防止用戶誤操作;


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

    圖3 人機交互界面整體設計方案

    圖4 總體效果圖


    2 界面設計流程
    利用MiniGUI進行界面設計流程如圖5所示。

    圖5 界面設計流程

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


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

    圖6 通信拓撲結(jié)構(gòu)

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


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


    (1)硬件接口豐富,適應工業(yè)測控領域各種需求;


    (2)使用3U插槽,增強通用性及擴展性;


    (3)基于Linux操作系統(tǒng)及MiniGUI圖形界面開發(fā)環(huán)境,人機交互界面友好便捷;


    (4)采用工業(yè)測控Modbus通信協(xié)議,基于串行RS485及網(wǎng)絡UDP構(gòu)建通信拓撲結(jié)構(gòu),應用范圍廣泛、性能可靠、實時性高。

    上一篇: 高速PCB可控性與電磁兼容性設計
    下一篇: 基于TMS32OVC5509 DSP的FIR數(shù)字濾波器的實現(xiàn)
    ?
    版權所有 ? 西安航普電子有限責任公司 未經(jīng)許可

    嚴禁復制 陜ICP備08100257號 建站/推廣/維護/安全:西安利友科技

    麻豆黄片在线观看-日韩日韩日韩日韩日韩熟女-中文字幕精品熟女人妻-69精品人妻久久久久久久 | 日韩 视频 在线观看-91精品久久久老熟女九色91-国产不卡av一区二区三区-久久人人爽人人网站 | 91中文日韩欧美-婷婷的五月激情综合-又爽又粗又猛又色又黄视频-91亚洲精品久久久久久久久久 | 91精品久久99-91久久综合精品久久久综合-成人a毛片在线观看-久久99久久99精品视频免费 | 91精品国产综合av蜜臀-极品亚洲精品国产精品国自产99-欧美丰满熟妇xxxx性久久久久-日韩成人在线大片 | 久久精品人人做人人爽97-97超碰色婷婷-热re99久久6国产精品-日韩男女大尺度激情视频 | 国产精选久久久久久-91精品国产乱码久久久竹菊-日韩高清av一区-久久综合色狠狠 | 久久国产精品免费久久久-1024你懂的人妻欧美日韩-久久久久亚洲精品免费-一本一道久久a久久综合蜜桃 | 中文字幕日韩特黄片-国产欧美一区二区三区精华液好吗-伊人久久嫩草视频-日韩.欧美.国产 | 欧美日韩色虐视频-欧美人妻日韩精品-日韩视频一区二区在线观看-91成人在线视频网址 | 特黄特色特爽黄大片-久久久久9999国产一特集毛片-日韩中文字幕二区av-亚洲区激情图片小说 | 日本中文字幕在线你懂的-内射极品美女少妇久久精品-91久久米精品国产91久久久-亚洲中文资源在线天堂 | 91精品国产高清久久久-国产少妇一区二区三区-色婷婷综合99在线色-欧美日韩人成综合黄色 | 日韩av欧美一区-日本久久综合久久-好好干天天日狠狠操-日本久久精品久久 | 国产又粗又长又大又爽又黄-丰满人妻一区二区三区精品高-久久久久亚洲精品日久生情-国产欧美日韩精品免费 | 999国产精品自拍视频-欧美日韩在线视频精品-国产成人精品视频人-91蜜桃麻豆媒体成人影院 | 国产精品高颜值网站-国产mv在线天堂视频在线观看-日韩论理片中文字幕-久久18学生精品 | 国产亚洲精久久久久久蜜臀-人妻中文字幕久久不卡-麻豆最新网址在线观看-青青视频免费久久 | 视频一区 精品-熟女记一区二区三区-国产男人的天堂久久-久久精品视频24 | 99精品网站视频在线观看-久久99精品视频推荐-日韩av在线电影免费看-精品丝袜美腿中文字幕 | 久久久久中文字幕精品-91久久精品在这里色伊人68-国产久久十八禁一区-大香蕉 一条大香蕉 | 久久美女大尺度免费视频-精品人妻伦一二三区久久春菊一-久久99久久久极品-天天操天天日天天天射 成人欧美一区二区三区的电影蜜臀-精品视频1区2区3区-18禁无遮挡久久久久久-亚洲av久久激情 | 久久er这里只有精品视频-久久精品欲女丰满人-久久精品国产亚洲av高清yw-国产一二三美女精品不卡在线观看 | 91精品久久99-91久久综合精品久久久综合-成人a毛片在线观看-久久99久久99精品视频免费 | 久久久精品人妻少妇-中文字幕一区精品91-日本一道大香蕉在线-欧美日韩亚洲免费在线 | 麻豆一级片高清免费在线观看-久久久久久久久久久久久一区-久久久久久99热蜜桃-国产亚洲精品一二三 | 久久精品国产99欧美精品调教-97视频免费在线观看视频-91农村精品一区二区在线-日韩2020无矿码一线二线 | 婷婷久久综合久综合-久久99人人妻免费精品视频-2023日韩成人欧美天天干-久久精品国产乱子伦中文 91人妻精品国产麻豆国产网站在线-亚洲婷婷精品av久久蜜桃久久-亚洲欧美日韩另类电影网-美女一区二区三区图片 | 国产又粗又硬又大爽黄老大爷-五月婷婷丁香六月基地-天天操天天操天天日天天日-激情五月激情亚洲久久综合色 | 激情五月婷婷俺也去-色综合久久激情五月-91麻豆精品小视频-国产五月婷婷久久在线 | 国产欧美日韩综合视频二区-精品人妻久久久久久888不-av日韩美女人妻丝袜欧-国产一区二区三区免费av | 麻豆av传媒免费在线观看-亚洲免费黄色在线电影-久久 久久 久久av-精品国产乱码久久久久久粉色 | 伊人久久综合五月天-日韩成人一级片免费观看-日日狠狠久久偷偷综合色-狠狠婷婷综合久久久久久88av | 日韩一二三av-久久久国产精品免费免费99-年轻的嫂子1中文字幕-欧美少妇伦理片电影 | 2021麻豆精品原创首一-少妇激情免费看一区二区-成人午夜sm精品久久久久久久-精品人妻久久久久一区二区三区 | 色婷婷狠狠狠...-亚洲天堂久久偷拍网-激情综合网之激情五月-日韩av第一区福利 | 人人射人人舔人人干-中文字幕日韩精品资源av在线-久久久久久久久久电影院-久久不射热爱视频精品在线观看 | 国产嫩草一区二区三区在线观看-91人妻精品久久久久久久久久-天天综合精品日日夜夜-日韩不卡av电影在线观看 | 麻豆av传媒免费在线观看-亚洲免费黄色在线电影-久久 久久 久久av-精品国产乱码久久久久久粉色 | 日韩可以在线播放的av网站-91久久视频在线播放-麻豆成年人精品视频-国产精品成人在线免费视频 | 高清不卡一卡二卡网址-国产麻豆国产精品-中文字幕 精品人妻-婷婷re99久久精品国产 |