999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

高壓帶電作業(yè)機(jī)器人嵌入式控制系統(tǒng)設(shè)計(jì)

2011-12-29 00:00:00宮廷趙文文
考試周刊 2011年56期


  摘 要: 隨著機(jī)械控制技術(shù)的快速發(fā)展,基于傳統(tǒng)的工控機(jī)或者PLC的控制器已經(jīng)無法滿足高壓帶電作業(yè)機(jī)器人穩(wěn)定性、實(shí)時(shí)性、擴(kuò)展性,以及高效、低功耗的工業(yè)化要求。本文設(shè)計(jì)出了一套基于ARM的嵌入式控制器,并將μC/OS-Ⅱ移植其中作為操作系統(tǒng)。其在提高開發(fā)效率、縮短開發(fā)周期,以及提高可靠性等方面的優(yōu)勢(shì),可以很好地滿足工業(yè)控制器個(gè)性化、智能化的發(fā)展需要。
  關(guān)鍵詞: PLC ARM μC/OS-Ⅱ 嵌入式控制器 移植
  
  1.引言
  高空高壓帶電作業(yè)是指在不停電的狀態(tài)下對(duì)架空高壓線路進(jìn)行維修、更換設(shè)備等,以避免停電帶來的不便與損失。帶電作業(yè)已經(jīng)成為保證供電設(shè)備可靠運(yùn)行、提高電網(wǎng)運(yùn)行效率與質(zhì)量的重要手段;其經(jīng)濟(jì)社會(huì)效益是無法估量的。自1999年我國(guó)開始進(jìn)行帶電作業(yè)機(jī)器人研究至今,取得了巨大的成果,但隨著智能控制技術(shù)的不斷提高,節(jié)能、低功耗且穩(wěn)定性與實(shí)時(shí)性并舉成為工業(yè)控制機(jī)器人的發(fā)展趨勢(shì),具有嵌入式系統(tǒng)的控制器不僅可以滿足這方面的需要,在可擴(kuò)展性方面也表現(xiàn)得十分出色。
  基于ARM的開放式控制系統(tǒng)不僅價(jià)格合理、結(jié)構(gòu)簡(jiǎn)單,而且移植性好,能夠?qū)崿F(xiàn)功能模塊的最大化擴(kuò)展。這些功能模塊全部連接在總線上,互不影響、切換快速。這些優(yōu)點(diǎn)對(duì)于提高高壓帶電作業(yè)機(jī)器人的整體工作性能、效率與質(zhì)量具有重大的作用。因此本文設(shè)計(jì)了基于ARM的嵌入式控制器,采用模塊化結(jié)構(gòu),對(duì)于嵌入式技術(shù)的發(fā)展具有一定的技術(shù)意義。
  本課題項(xiàng)目高壓帶電作業(yè)機(jī)械手的控制車的設(shè)計(jì)圖如圖1。
  2.硬件結(jié)構(gòu)設(shè)計(jì)
  帶電作業(yè)機(jī)器人嵌入式控制器的設(shè)計(jì)主要包括硬件層和內(nèi)核層,按照本控制器的設(shè)計(jì)理念,硬件層應(yīng)滿足實(shí)時(shí)性、可擴(kuò)展性、低成本,以及基于標(biāo)準(zhǔn)的總線結(jié)構(gòu)。
  2.1微控制器
  其采用了PHILIPS公司的ARM7TDMI-S核、總線開放的單片機(jī)LPC2292。LPC2292是世界首款可加密的具有外部存儲(chǔ)器接口的ARM芯片,具有零等待256KB的片內(nèi)FLASH,16KB的SRAM,可簡(jiǎn)化系統(tǒng)設(shè)計(jì),提高性能及可靠性。芯片內(nèi)部具有UART、硬件I2C、SPI、PWM、ADC、定時(shí)器和CAN等眾多外圍部件,功能強(qiáng)大;144引腳LQFP封裝,3.3V和1.8V系統(tǒng)電源,內(nèi)部PLL時(shí)鐘調(diào)整,功耗低。
  2.2整體設(shè)計(jì)
  LPC2292具有144引腳的封裝、非常低的功耗、若干個(gè)32位定時(shí)器、8路10位ADC轉(zhuǎn)換器、2路CAN接口,以及PWM通道和9個(gè)外部中斷引腳,這使其特別適用工業(yè)控制應(yīng)用以容錯(cuò)維協(xié)議轉(zhuǎn)換器及許多其他應(yīng)用中護(hù)總線。此外,LPC2292內(nèi)部含有76(使用了外部存儲(chǔ)器)到112個(gè)(單片)可用GPIO口。并且含有寬范圍的串行通信接口,因此非常適合應(yīng)用于通信網(wǎng)關(guān)。
  3.控制系統(tǒng)軟件
  3.1實(shí)時(shí)操作系統(tǒng)介紹
  實(shí)時(shí)操作系統(tǒng)是繼傳統(tǒng)的前后臺(tái)系統(tǒng)后,針對(duì)其及時(shí)性比較差的問題而出現(xiàn)的一段在嵌入式系統(tǒng)啟e686a0073f96efbf20129534202bf466502cd9d971f0ebd74aca02385b63333f動(dòng)后首先執(zhí)行的背景程序,用戶的應(yīng)用程序是運(yùn)行于RTOS之上的各個(gè)任務(wù),RTOS根據(jù)各個(gè)任務(wù)的要求,進(jìn)行資源管理、消息管理、任務(wù)調(diào)度及異常處理等工作。在RTOS支持的系統(tǒng)中,每個(gè)任務(wù)均有一個(gè)優(yōu)先級(jí),RTOS根據(jù)各個(gè)任務(wù)的優(yōu)先級(jí),動(dòng)態(tài)的切換各個(gè)任務(wù),保證對(duì)實(shí)時(shí)性的要求。
  隨著智能控制的發(fā)展,以及工業(yè)化水平的不斷提高,實(shí)時(shí)操作系統(tǒng)的應(yīng)用是十分必要的。首先,實(shí)時(shí)操作系統(tǒng)提高了系統(tǒng)的可靠性,提高了開發(fā)效率縮短了開發(fā)周期;其次,嵌入式實(shí)時(shí)操作系統(tǒng)充分發(fā)揮了32位CPU的多任務(wù)潛力,特別適合于運(yùn)行多任務(wù)實(shí)時(shí)系統(tǒng)。在嵌入式實(shí)時(shí)操作系統(tǒng)環(huán)境下開發(fā)實(shí)施應(yīng)用程序使得程序的設(shè)計(jì)和擴(kuò)展變得容易,不需要大的改動(dòng)就可以增加新的功能。通過將應(yīng)用程序分割成若干獨(dú)立的任務(wù)模塊,使應(yīng)用程序的設(shè)計(jì)過程大為簡(jiǎn)化;而且對(duì)實(shí)時(shí)性要求苛刻的事件都得到了快速、可靠的處理,通過有效的系統(tǒng)服務(wù),嵌入式實(shí)時(shí)操作系統(tǒng)使得系統(tǒng)資源得到更好的利用。
  常見的嵌入式實(shí)時(shí)操作系統(tǒng)有:嵌入式Linux、VxWorks、OSE、eCos、μC/OS-Ⅱ。
  3.2實(shí)時(shí)操作系統(tǒng)的比較與選擇
  VxWorks操作系統(tǒng)成本高,結(jié)構(gòu)復(fù)雜,不適合小型應(yīng)用;Linux操作系統(tǒng)體系結(jié)構(gòu)復(fù)雜,產(chǎn)品化和商業(yè)化程度不夠,即使在Linux本來的PC目標(biāo)環(huán)境下,也難尋理想的技術(shù)支持,更不用說嵌入式環(huán)境下的Linux,這方面的弱勢(shì)對(duì)批量生產(chǎn)、大規(guī)模、長(zhǎng)時(shí)間運(yùn)行使用的工業(yè)化產(chǎn)品來說是致命的。因此,本文選擇μC/OS-Ⅱ作為操作系統(tǒng),其主要優(yōu)勢(shì)為:μC/OS-Ⅱ是一種免費(fèi)公開源代碼、結(jié)構(gòu)小巧、具有可剝奪實(shí)時(shí)內(nèi)核的實(shí)時(shí)操作系統(tǒng),成本低、實(shí)時(shí)性強(qiáng)、移植性能好、擴(kuò)展性能優(yōu)良。
  4.μC/OS-Ⅱ的移植
  4.1μC/OS-Ⅱ的簡(jiǎn)介
  μC/OS-Ⅱ是一個(gè)完整的、可移植、固化、裁剪的占先式實(shí)施多任務(wù)內(nèi)核,并且是用移植性很強(qiáng)的C語言編寫的,與微處理器硬件相關(guān)的部分是用匯編語言編寫的,使其可以供不同架構(gòu)的微處理器使用,至今,從8位到64位,μC/OS-Ⅱ已經(jīng)超過40種體系架構(gòu)的處理器上運(yùn)行。雖然μC/OS-Ⅱ是在PC機(jī)上開發(fā)和測(cè)試的,但μC/OS-Ⅱ的實(shí)際對(duì)象是嵌入式系統(tǒng),很容易移植到不同架構(gòu)的微處理器上。所謂移植,就是使一個(gè)實(shí)時(shí)內(nèi)核能在其他的微處理器或微控制器上運(yùn)行,要移植uC/OS,目標(biāo)處理器必須滿足以下要求:
  1)處理器的C編譯器能產(chǎn)生可重入代碼,且用C語言就可以開/關(guān)中斷;
  2)處理器支持中斷,并能產(chǎn)生定時(shí)中斷(通常為10—100Hz);
  3)處理器能支持一定數(shù)量的數(shù)據(jù)存儲(chǔ)硬件堆棧(可能是幾千字節(jié));
  4)處理器有將堆棧指針和其它CPU寄存器讀出并存儲(chǔ)到堆棧或內(nèi)存中的指令。
  像Motorola6805系列的處理器就不能滿足上面的后兩項(xiàng)要求,所以μC/OS-Ⅱ不能在這類處理器上運(yùn)行。因此在了解啟動(dòng)代碼之前對(duì)于ARM體系結(jié)構(gòu)與啟動(dòng)過程的了解非常重要。
  4.2移植工作
  與處理器相關(guān)代碼是移植中最關(guān)鍵的部分,內(nèi)核將上層應(yīng)用程序和底層硬件結(jié)合成為一個(gè)整體,要使內(nèi)核使用與不同硬件層就需要在內(nèi)核與硬件之間有一中間層,這就是與處理器相關(guān)的代碼,處理器不同代碼也不同,移植時(shí)我們必須進(jìn)行修改;在進(jìn)行μC/OS-Ⅱ的移植時(shí),我們也只需要修改這部分代碼即可。
  1)OS_CPU.H中需要設(shè)置一個(gè)常量來標(biāo)識(shí)堆棧增長(zhǎng)方向;
  2)OS_CPU.H中需要聲明幾個(gè)用于開關(guān)中斷和任務(wù)切換的宏;
  3)OS_CPU.H中需要針對(duì)具體處理器的字長(zhǎng)重新定義一系列數(shù)據(jù)類型;
  4)OS_CPU_A.ASM需要改寫4個(gè)匯編語言的函數(shù);
  5)OS_CPU_C.C需要用C語言編寫6個(gè)簡(jiǎn)單函數(shù);
  6)修改主頭文件INCLUDE.H,將上面的三個(gè)文件和其他的頭文件加入。
  INCLUDES.H是一個(gè)主頭文件,它出現(xiàn)在每個(gè).C文件的第一行,#include“includes.h”。INCLUDES.H文件使得工程項(xiàng)目中的每個(gè).C文件無需分別考慮它實(shí)際上需要哪些頭文件。
  OS_CPU.H包括了用#define語句定義的、與處理器相關(guān)的常數(shù)、宏,以及類型。與處理器相關(guān)的代碼為:
  #define OS_CRITICAL_METHOD2
  #define OS_ENTER_CRITICAL()ARMDisablet_int()
  #define OS_EXIT_CRITICAL()ARMEnable_int()
  
  #define OS_STK_GROWTH 1
  #define OS_TASK_SWOSCtxSw
  全局函數(shù)聲明:
  extern void OSCtxSw(void);
  extern void OSIntCtxSw(void);
  extern void ARMDisableInt(void);
  extern void ARMEnableInt(void);
  extern void OSTickISR(void);
  OS_CPU_C.C在μC/OS-Ⅱ的移植中需要編寫以下10個(gè)函數(shù):
  OSTaskStkInit()
  OSTaskCreateHook()
  OSTaskDelHook()
  OSTaskSwHook()
  OSTaskIdleHook()
  OSTaskStatHook()
  OSTimeTickHook()
  OSInitHookBegin()
  OSInitHookEnd()
  OSTCBInitHook()
  在這里我們移植OS_CPU_C.C文件時(shí),需要編寫的是任務(wù)堆棧初始化函數(shù)OSTaskStkInit和時(shí)鐘節(jié)拍中斷服務(wù)鉤子函數(shù)OSTimeTickHook。
  μC/OS-Ⅱ的移植需要改寫OS_CPU_A.ASM中的4個(gè)函數(shù):
  OSStartHighRdy()
  OSCtxSw()
  OSIntCtxSw()
  OSTickISR()
  如果編譯器支持插入行匯編代碼,就可以將所有與處理器相關(guān)的代碼放到OS_CPU_C.C文件中,而不必再有單獨(dú)的匯編語言文件。
  4.2μC/OS-Ⅱ的測(cè)試
  當(dāng)做完μC/OS-Ⅱ的移植后,緊接著就是驗(yàn)證其是否正常工作,首先應(yīng)該測(cè)試內(nèi)核自身的運(yùn)行狀況,可以在沒有應(yīng)用程序的情況下進(jìn)行測(cè)試,也就是讓內(nèi)核自己測(cè)試自己。這樣不僅可以使事情簡(jiǎn)單化,而且可以很清楚地發(fā)現(xiàn)問題是移植本身的問題而不是應(yīng)用代碼產(chǎn)生的問題。如果一些簡(jiǎn)單程序和時(shí)鐘節(jié)拍中斷服務(wù)子程序可以運(yùn)行起來,那么添加應(yīng)用程序就非常簡(jiǎn)單了。
  5.結(jié)語
  本文針對(duì)如今高壓帶電作業(yè)機(jī)器人生產(chǎn)作業(yè)中存在的一些問題,提出了基于ARM的實(shí)時(shí)嵌入式系統(tǒng)控制器的設(shè)計(jì),其可移植性、可擴(kuò)展性、可交換性,以及高效低成本的顯著優(yōu)勢(shì),不僅縮短了開發(fā)周期、提高了設(shè)備實(shí)時(shí)性、優(yōu)化了工作效率,而且其低功耗起到了節(jié)能的作用。可見,這種設(shè)計(jì)將是未來工業(yè)機(jī)器人智能化發(fā)展的必然趨勢(shì)。
  
  參考文獻(xiàn):
  [1]Jean J.Labrosse.嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ(第2版)[M].北京航空航天大學(xué)出版社,2007.09.
  [2]陳是知.μC/OS-Ⅱ內(nèi)核分析、移植與驅(qū)動(dòng)程序開發(fā)[M].人民郵電出版社,2007.09.
  [3]周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京航空航天大學(xué),2005.01.
  [4]戚暉,彭商賢.面向?qū)ο蟮母邏簬щ娮鳂I(yè)機(jī)器人控制系統(tǒng)[J].機(jī)器人,2002.05.

主站蜘蛛池模板: 亚洲视频二| 国产永久无码观看在线| 91黄视频在线观看| 一级毛片免费高清视频| 麻豆国产精品视频| 国产白浆一区二区三区视频在线| 婷婷午夜影院| 99国产精品国产高清一区二区| 久一在线视频| 97人人做人人爽香蕉精品| 亚洲永久色| 精品久久国产综合精麻豆| 欧美在线综合视频| 国产成在线观看免费视频| 亚洲午夜福利精品无码不卡 | 在线免费看片a| 国产欧美视频在线| 伊人久久久久久久| 97se亚洲| 亚洲va视频| 国产亚洲欧美另类一区二区| 欧美国产日韩在线观看| 国产免费高清无需播放器| 国产99久久亚洲综合精品西瓜tv| 国产精品亚洲综合久久小说| 亚洲香蕉在线| 亚洲成肉网| 天堂成人在线| 国产精品自在在线午夜区app| 亚洲人成在线精品| 亚洲欧美人成电影在线观看| 青青草国产一区二区三区| 欧美精品高清| 亚洲国产精品日韩欧美一区| 午夜天堂视频| 宅男噜噜噜66国产在线观看| 国产网站免费看| 久久美女精品国产精品亚洲| 日韩AV无码一区| 国产成本人片免费a∨短片| 99国产精品国产高清一区二区| 欧美精品影院| 精品自窥自偷在线看| 国产精品无码作爱| 第一区免费在线观看| 国产人成在线视频| 亚洲免费成人网| 波多野结衣无码视频在线观看| 91久久偷偷做嫩草影院免费看| 日本精品中文字幕在线不卡| 丁香婷婷综合激情| 日韩毛片免费观看| 亚洲香蕉久久| 国产无码高清视频不卡| 久久99精品国产麻豆宅宅| 亚洲一区二区三区香蕉| 人妻无码AⅤ中文字| 就去色综合| 一级毛片免费观看不卡视频| 国产真实二区一区在线亚洲| 成人免费视频一区二区三区 | 亚洲欧洲日韩综合色天使| 十八禁美女裸体网站| 国内丰满少妇猛烈精品播| 女人18一级毛片免费观看 | 国产一区二区色淫影院| 国产最爽的乱婬视频国语对白 | 无码人妻免费| 国产精品自拍露脸视频| 97久久免费视频| 九九热在线视频| 高清乱码精品福利在线视频| 国产一区成人| 亚洲一区二区无码视频| 亚洲国产中文精品va在线播放| 99er这里只有精品| 久久毛片免费基地| 人妻91无码色偷偷色噜噜噜| 久久精品女人天堂aaa| 亚洲精品无码久久毛片波多野吉| 欧美日韩中文字幕在线| 精品久久国产综合精麻豆|