技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于嵌入式運(yùn)動(dòng)控制器系統(tǒng)的設(shè)計(jì)與開發(fā)

基于嵌入式運(yùn)動(dòng)控制器系統(tǒng)的設(shè)計(jì)與開發(fā)

時(shí)間:2008-07-21 11:01:00來(lái)源:ronggang

導(dǎo)語(yǔ):?本文綜合運(yùn)用嵌入式系統(tǒng)技術(shù)和運(yùn)動(dòng)控制技術(shù),采用X86架構(gòu)的PC104作為核心中央處理器的方案,詳細(xì)介紹了嵌入式運(yùn)動(dòng)控制器的硬件設(shè)計(jì)
摘 要:本文綜合運(yùn)用嵌入式系統(tǒng)技術(shù)和運(yùn)動(dòng)控制技術(shù),采用X86架構(gòu)的PC104作為核心中央處理器的方案,詳細(xì)介紹了嵌入式運(yùn)動(dòng)控制器的硬件設(shè)計(jì),及如何使用Windows CE Platform Builder開發(fā)平臺(tái),進(jìn)行裁減和定制嵌入式運(yùn)動(dòng)控制器的Windows CE操作系統(tǒng)平臺(tái),進(jìn)行軟件設(shè)計(jì)。 關(guān)鍵詞:嵌入式系統(tǒng),運(yùn)動(dòng)控制器,自動(dòng)控制 1 引言   目前,嵌入式技術(shù)已成為通訊、控制和消費(fèi)類產(chǎn)品的發(fā)展方向,嵌入式系統(tǒng)主要由嵌入式處理器、相關(guān)支撐硬件、嵌入式操作系統(tǒng)及應(yīng)用軟件系統(tǒng)等組成,它的開發(fā)應(yīng)用已被列入國(guó)家重點(diǎn)科技發(fā)展計(jì)劃,以其體積小、功能強(qiáng)、價(jià)格低的優(yōu)勢(shì)而得到日益廣泛的應(yīng)用,已成為工業(yè)自動(dòng)化應(yīng)用的一種趨勢(shì)。   運(yùn)動(dòng)控制器技術(shù),是綜合應(yīng)用自動(dòng)控制、計(jì)算機(jī)控制等相關(guān)技術(shù),對(duì)機(jī)械傳動(dòng)裝置中電機(jī)的位置、速度進(jìn)行實(shí)時(shí)的控制管理,使運(yùn)動(dòng)部件按照預(yù)期的軌跡和規(guī)定的運(yùn)動(dòng)參數(shù)完成相應(yīng)的動(dòng)作。嵌入式結(jié)構(gòu)的運(yùn)動(dòng)控制器把計(jì)算機(jī)嵌入到運(yùn)動(dòng)控制器中,能夠獨(dú)立運(yùn)行,它與計(jì)算機(jī)之間的通信采用了可靠的總線連接方式(采用針式連接器) ,更加適合工業(yè)應(yīng)用。 2 系統(tǒng)硬件平臺(tái)設(shè)計(jì)   嵌入式運(yùn)動(dòng)控制器主要包括兩個(gè)部分:嵌入式CPU主板和運(yùn)動(dòng)控制模塊[1][2][3][12]。運(yùn)動(dòng)控制模塊可采用固高科技有限公司的高性能運(yùn)動(dòng)控制板卡,在高性能運(yùn)動(dòng)模塊的基礎(chǔ)上,對(duì)嵌入式處理器部分有嚴(yán)格的要求,例如:對(duì)實(shí)時(shí)多任務(wù)有很強(qiáng)的支持能力,能完成多任務(wù)并且有較短的中斷響應(yīng)時(shí)間;具有功能較強(qiáng)的存儲(chǔ)區(qū)保護(hù)功能;可擴(kuò)展生長(zhǎng)的處理器結(jié)構(gòu),能迅速地開發(fā)出滿足各種應(yīng)用性能的嵌入式微處理器;功耗很低等等。 [align=center] 圖 1 PC104模塊[/align]   可選的方案包括:1)基于單片機(jī),適合于數(shù)據(jù)量小、速度較低、功能簡(jiǎn)單的現(xiàn)場(chǎng)控制,無(wú)法勝任要求高速、高精度的運(yùn)動(dòng)控制器。 2)基于ARM架構(gòu)或其他微控制器,優(yōu)勢(shì)在于簡(jiǎn)單的設(shè)計(jì)和高效的指令集,但是目前對(duì)現(xiàn)有通用軟件的兼容性不理想,必須培訓(xùn)專門的軟件人員。 3)PC104的X86架構(gòu),即X86體系結(jié)構(gòu)的CPU,主要是Intel公司的CPU,也包括AMD、威盛、ICOP(昭營(yíng)科技)等公司與其兼容的CPU。通過PC104總線,連接X86架構(gòu)的PC機(jī)主板與運(yùn)動(dòng)控制板卡,組成嵌入式運(yùn)動(dòng)控制器。在非常成熟的運(yùn)動(dòng)控制板卡技術(shù)的基礎(chǔ)上,這種形式的嵌入式運(yùn)動(dòng)控制器實(shí)現(xiàn)簡(jiǎn)單,開發(fā)時(shí)間較短。   因此選用了ICOP-6070嵌入式主板作為系統(tǒng)核心,具體接口見圖 1。除了核心控制模塊外,就是運(yùn)動(dòng)控制模塊,它是具體動(dòng)作的執(zhí)行者。嵌入式PC104主機(jī)板通過插件直接插裝在運(yùn)動(dòng)控制卡上,運(yùn)控卡上有兩個(gè)DB62插座,連接到端子板上,再由端子板給出控制電機(jī)信號(hào)。由于運(yùn)動(dòng)控制器和計(jì)算機(jī)模塊之間分別采用插針式的連接,相互獨(dú)立,運(yùn)動(dòng)控制器和PC板都可以作為一個(gè)獨(dú)立的模塊,生產(chǎn)升級(jí)容易,維修方便,可靠性也相對(duì)較高。   圖 2為嵌入式PC104主板和運(yùn)動(dòng)控制卡之間機(jī)械連接示意圖。 [align=center] 圖 2 核心模塊與運(yùn)控模塊的連接示意圖[/align]   系統(tǒng)的完整構(gòu)建過程如下:  ?。?) 將ICOP-6070嵌入式主板與固高運(yùn)動(dòng)控制卡通過PC104接口裝在一起。  ?。?) 然后將外部輸入設(shè)備和輸出設(shè)備接到嵌入式主板上。  ?。?) 其次通過兩個(gè)根62PIN的數(shù)據(jù)線將固高IO端子板和固高控制卡接在一起。   最后將24V的輸入信號(hào),輸入給固高IO端子板和嵌入式主板。 3 軟件平臺(tái)設(shè)計(jì)   工業(yè)嵌入式系統(tǒng)的主要指標(biāo)是:實(shí)時(shí)性、高效率、安全穩(wěn)定性與可靠性以及結(jié)構(gòu)緊湊、易于剪裁、良好的開放性??晒┣度胧綉?yīng)用的圖形操作系統(tǒng)有多種,比如Windows CE、Palm OS等,而Palm OS一般只應(yīng)用在手持設(shè)備上。適合工業(yè)環(huán)境應(yīng)用(過程)標(biāo)準(zhǔn)的系統(tǒng),目前有Windows CE 和Linux等幾種。   WinCE是微軟開發(fā)的多任務(wù)嵌入式操作系統(tǒng),模塊化及可伸縮性、實(shí)時(shí)性能好,通信能力強(qiáng)大,支持很多種嵌入式CPU(包括X86,arm等)。選擇Windows CE .net嵌入式操作系統(tǒng),作為本嵌入式運(yùn)動(dòng)控制系統(tǒng)的操作平臺(tái),最主要考慮Windows操作簡(jiǎn)單實(shí)用,多任務(wù)的操作,功能的強(qiáng)大,性能的穩(wěn)定,最主要是Windows程序移植方便,熟悉Windows程序開發(fā)的人員,能夠迅速掌握Windows CE .net程序的開發(fā),同時(shí)減少程序開發(fā)人員的難度。   3.1 操作系統(tǒng)平臺(tái)設(shè)計(jì)   為了能夠能在Windows CE .net操作系統(tǒng),必須定制一個(gè)Windows CE .net操作系統(tǒng)平臺(tái),平臺(tái)的生成可以使用Windows CE .net的工具Platform Builder 4.2。其生成平臺(tái)主要步驟如下:   (1) 將Windows CE .net 4.2的操作平臺(tái)裝入PC機(jī)。  ?。?) 將ICOP 6070的BSP程序安裝到PC機(jī)。  ?。?) 執(zhí)行“Platform Builder”,進(jìn)入平臺(tái)創(chuàng)建向?qū)?duì)話框,點(diǎn)擊“NEXT”接鈕。   在此對(duì)話框,須要為ICOP主板選擇“ICOP_VORTEX86”BSP程序。  ?。?) 繼續(xù)點(diǎn)取“NEXT”按鈕,在對(duì)話框中,可以選擇“Industrial Controller”功能項(xiàng)。   當(dāng)嵌入式平臺(tái)創(chuàng)建成功后,則需要對(duì)此平臺(tái)進(jìn)行編譯設(shè)置;在采用平臺(tái)創(chuàng)建向?qū)傻囊粋€(gè)平臺(tái)后,可能此平臺(tái)存在不需要的文件信息,又或缺少相關(guān)文件。   為此,要對(duì)此平臺(tái)進(jìn)行刪除、添加相關(guān)文件,配置相關(guān)編譯信息。  ?。?) 手動(dòng)添加對(duì)存儲(chǔ)硬盤和FAT文件系統(tǒng)的支持。先在目錄顯示區(qū)中的“Device Drivers” ->“Storage Devices”->“Storage Devices”找到“ATAPI PCI/IDE Storage Block Driver”信息,在此欄上點(diǎn)擊鼠標(biāo)右鍵,在彈出的對(duì)話框中,點(diǎn)取“Add to platform”一項(xiàng),此時(shí),此相關(guān)信息就被加入到平臺(tái)工程中。采用同樣方法,在目錄顯示區(qū)中的“Core OS” ->“Display based devices”->“File Systems and Data Store” ->“Store Manager”找到“FAT File System”信息,在此欄上點(diǎn)擊鼠標(biāo)右鍵,在彈出的對(duì)話框中,點(diǎn)取“Add to platform”,相關(guān)信息就被加入到平臺(tái)工程中。  ?。?) 需向平臺(tái)工程中加入對(duì)Windows SDK和MFC類庫(kù)的支持. MFC類庫(kù)支持在目錄顯示區(qū)中的“Core OS” ->“Display based devices”->“Applications and Services Development” ->“Microfot Foundation Classes(MFC)”。  ?。?) 嵌入式平臺(tái)的工程基本功能添加完畢后,就可以編譯此平臺(tái)。在編譯平臺(tái)之前,先進(jìn)行平臺(tái)設(shè)置,在“Platform Settings”對(duì)話框,選中選項(xiàng)“Enable Images Larger than 32MB”,保存更改設(shè)置。   (4) 編譯平臺(tái),生成Windows CE .NET操作系統(tǒng)的映像文件 NK.bin。  ?。?) 完成了嵌入式平臺(tái)的工程,可以將NK.bin下載到主板運(yùn)行,也以通過網(wǎng)絡(luò)下載到嵌入式主板上運(yùn)行。   3.2 嵌入式運(yùn)動(dòng)控制器驅(qū)動(dòng)程序   在使用運(yùn)動(dòng)控制器之前,必須先安裝運(yùn)動(dòng)控制器的驅(qū)動(dòng)程序,這樣才可以正確使用運(yùn)動(dòng)控制器,加入此驅(qū)動(dòng)程序的步驟如下:  ?。?) 將運(yùn)動(dòng)控制器驅(qū)動(dòng)程序文件GooGolDriver.dll拷貝到平臺(tái)的Release目錄下。  ?。?) 在平臺(tái)編輯環(huán)境中打開工程中project.reg文件,將如下文本內(nèi)容復(fù)制到此文件中。   [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\GooGolDriver]   "Dll"="GooGolDriver.dll"   "Order"=dword:0   "Index"=dword:1   "Prefix"="GOL"  ?。?) 在平臺(tái)編輯環(huán)境中打開工程中project.bib文件,將如下文本內(nèi)容復(fù)制到此文件中。   GooGolDriver.dll $(_FLATRELEASEDIR)\GooGolDriver.dll NK SH  ?。?) 上述操作可用于注冊(cè)驅(qū)動(dòng)程序和將驅(qū)動(dòng)程序GooGolDriver.dll打包到映像NK.bin。驅(qū)動(dòng)程序文件GooGolDriver.dll導(dǎo)出十個(gè)函數(shù),用于提供給系統(tǒng)調(diào)用,函數(shù)分別如下:GOL_Close,GOL_Deinit,GOL_Init,GOL_IOControl,GOL_Open,GOL_PowerDown,GOL_PowerUp,GOL_Read, GOL_Seek, GOL_Write。這十個(gè)函數(shù)不能夠直接調(diào)用,Windows CE .NET有專用的API函數(shù)可以調(diào)用它們。   3.3 運(yùn)動(dòng)控制器動(dòng)態(tài)鏈接庫(kù)安裝:   在使用運(yùn)動(dòng)控制器之前,須先安裝運(yùn)動(dòng)控制器的動(dòng)態(tài)鏈接庫(kù),才可以正確使用運(yùn)動(dòng)控制器。動(dòng)態(tài)鏈接庫(kù)包含對(duì)運(yùn)動(dòng)控制器的運(yùn)動(dòng)函數(shù)指令,如直線運(yùn)動(dòng)指令GT_LnXYZ,圓弧運(yùn)動(dòng)指令GT_ArcXY等等。加入此驅(qū)動(dòng)程序的步驟如下:  ?。?) 將文件gtdll.dll拷貝到平臺(tái)的Release目錄下。  ?。?) 在平臺(tái)編輯環(huán)境中打開工程中project.bib文件,將如下文本內(nèi)容復(fù)制到此文件中。   gtdll.dll $(_FLATRELEASEDIR)\gtdll.dll NK SH  ?。?) 上述操作可用于注冊(cè)驅(qū)動(dòng)程序和將驅(qū)動(dòng)程序GooGolDriver.dll打包到映像NK.bin中。 4 控制軟件的設(shè)計(jì)   構(gòu)建了系統(tǒng)軟件后,還需要進(jìn)行應(yīng)用軟件的開發(fā)設(shè)計(jì)。嵌入式軟件的開發(fā)平臺(tái)有多種,較為常見的開發(fā)平臺(tái)為:eMbedded Visual C++,與Windows操作系統(tǒng)下的開發(fā)環(huán)境Visual C++非常類似,所以熟悉windows操作系統(tǒng)Visual C++開發(fā)環(huán)境的人能夠較快掌握eMbedded Visual C++。   使用eMbedded Visual C++開發(fā)之前先安裝嵌入式操作平臺(tái)的SDK,否則無(wú)法打開eMbedded Visual C++。構(gòu)建嵌入式操作平臺(tái)的SDK操作如下:  ?。?)Platform Builder平臺(tái)開發(fā)環(huán)境中,點(diǎn)取“Project”->“Configure SDK”,配置將生成的SDK。在配置對(duì)話框中,可以修改將導(dǎo)出的SDK的文件名及其存入目錄、相關(guān)信息。SDK的文件名為ICOP6072_SDK.msi。  ?。?)配置好SDK導(dǎo)出的相關(guān)信息后,再點(diǎn)取“Project”->“Build SDK”,在此對(duì)話框中,可以導(dǎo)出一個(gè)SDK,在配置文件設(shè)置目錄下,創(chuàng)建一個(gè)ICOP6072_SDK.msi的文件。  ?。?)在Windows操作系統(tǒng)下雙擊ICOP6072_SDK.msi文件,安裝Icop 5072的嵌入式系統(tǒng)的SDK。  ?。?)至此,嵌入式系統(tǒng)的SDK安裝完畢,eMbedded Visual C++可以在此SDK的基礎(chǔ)下開發(fā)程序。   本軟件最主要的功能通過運(yùn)動(dòng)控制器的運(yùn)動(dòng)指令的調(diào)用,來(lái)實(shí)現(xiàn)在運(yùn)動(dòng)控制器的使用,滿足具體的應(yīng)用中的控制過程。   工業(yè)控制軟件是工控系統(tǒng)中用于控制工業(yè)生產(chǎn)的軟件部分,其安全性和可靠性的要求是非常高了。本控制軟件除了具有工業(yè)控制軟件的基本特點(diǎn)之外,還需有具有以下特點(diǎn):系統(tǒng)軟件的長(zhǎng)期穩(wěn)定工作的特性;控制軟件實(shí)時(shí)性;控制軟件操作的實(shí)用性、簡(jiǎn)單性;   根據(jù)工業(yè)控制軟件特點(diǎn),因此本軟件中沒有豐富的圖形顯示界面,主要從功能實(shí)現(xiàn)、軟件穩(wěn)定性、控制的實(shí)時(shí)性、軟件操作簡(jiǎn)單上編寫。以能夠完好的達(dá)到功能演示為目的編寫此程序。   在對(duì)嵌入式運(yùn)動(dòng)控制器操作之前,先必須初始化嵌入式運(yùn)動(dòng)控制器;為了更好的反應(yīng)當(dāng)前加工狀態(tài),須要實(shí)時(shí)讀取當(dāng)前加工機(jī)床的實(shí)際位置,根據(jù)此位置信息,把實(shí)際的加工情況用簡(jiǎn)單的三維圖形顯示出來(lái)。 5 小結(jié)   傳統(tǒng)基于PC的運(yùn)動(dòng)控制器,采用軟件實(shí)現(xiàn)的控制方法,無(wú)論性能如何提高,也不能勝任越來(lái)越高的高速高精度要求。嵌入式運(yùn)動(dòng)控制器的研究是一個(gè)系統(tǒng)的過程,為了確保性能的穩(wěn)定和可靠性,必須對(duì)軟硬件的設(shè)計(jì)有一個(gè)全面地認(rèn)識(shí)。本文提出的PC104設(shè)計(jì)方案解決了目前市場(chǎng)對(duì)嵌入式運(yùn)動(dòng)控制器的強(qiáng)大需求。本文的研究?jī)?nèi)容將對(duì)今后的研究工作起到一定的指導(dǎo)作用。 6 結(jié)束語(yǔ)   本系統(tǒng)是固高科技有限公司目前在嵌入式運(yùn)動(dòng)控制領(lǐng)域開發(fā)出的一套功能強(qiáng)、性能穩(wěn)定、體積小、價(jià)格低、適合工業(yè)控制的運(yùn)動(dòng)控制系統(tǒng),是在傳統(tǒng)PC-Based 運(yùn)動(dòng)控制器基礎(chǔ)上的重要?jiǎng)?chuàng)新。本文的創(chuàng)新在于:目前對(duì)嵌入式控制器的應(yīng)用介紹得較多,沒能夠?qū)诵牡难邪l(fā)技術(shù)進(jìn)行研究;另外本文對(duì)嵌入式系統(tǒng)操作系統(tǒng)平臺(tái)Windows CE的研究,使得客戶現(xiàn)有的Windows下編譯的應(yīng)用軟件,可以很方便的移植到CE下使用,減少開發(fā)周期,降低開發(fā)成本,快速見效益。 參考文獻(xiàn)   [1] 趙明富, 嵌入式系統(tǒng)的總線技術(shù)及其應(yīng)用,微計(jì)算機(jī)信息,2005,21(06Z).-42-44,3   [2] 余張國(guó)、李眾立、李磊民,基于ARM和MCX314A的嵌入式運(yùn)動(dòng)控制器,微計(jì)算機(jī)信息,2005,16   [3] 王田苗,嵌入式系統(tǒng)設(shè)計(jì)與實(shí)例開發(fā). 清華大學(xué)出版社, 2002:36~44   [4] 居效密、張中能, 嵌入式數(shù)據(jù)庫(kù)在數(shù)據(jù)密集型軟件中的應(yīng)用,計(jì)算機(jī)工程. 2003, 11:186~189   [5] 張東升, 基于嵌入式技術(shù)的數(shù)據(jù)采集器在通信監(jiān)控系統(tǒng)中的應(yīng)用. 哈爾濱工業(yè)大學(xué)碩士論文. 2003:8~14   [6] 蔣亞群、張春元, ARM微處理器體系結(jié)構(gòu)及其嵌入式SOC, 計(jì)算機(jī)工程, 2002, 28(11): 4~6   [7] 張連明、霍迎輝,嵌入式系統(tǒng)的設(shè)計(jì)與開發(fā). 國(guó)外電子元器件. 2004, (1):20~21   [8] 胡安平. PC104在工程中的應(yīng)用. 電子產(chǎn)品世界. 2002, (8):60~61   [9] 魏忠, 蔡勇, 雷紅衛(wèi). 嵌入式開發(fā)詳解. 電子工業(yè)出版社, 2003:30~56   [10] Abraham Silberschatz, Peter Galvin, Greg Gagne. Applied operating system concepts. John Wiley & Sons, Inc, 2000:100~125   [11] Jack Ganssle. Changes in Embedded Design Methodology. Embedded System Programming. 1999, 9:35~40   [12] J.E.Coolirg. Software design for real-time Systems. Chapman and Hall World Publishing Crop, 1998:200~221   基于嵌入式運(yùn)動(dòng)控制器系統(tǒng)的設(shè)計(jì)與開發(fā)

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:柔性測(cè)試助力汽車傳感器系統(tǒng)測(cè)試

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)