日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于嵌入式操作系統(tǒng)μc/os-II實現(xiàn)焊縫軌跡智能跟蹤系統(tǒng)
基于嵌入式操作系統(tǒng)μc/os-II實現(xiàn)焊縫軌跡智能跟蹤系統(tǒng)
 更新時間:2008-8-4 5:07:53  點擊數(shù):3
【字體: 字體顏色


    <!-- $sign哪個頁面$digit位置$way等h不循環(huán)TR;X循環(huán)TR;$num顯示個數(shù) --><!--畫中畫廣告結(jié)束-->

  摘要:傳統(tǒng)嵌入式系統(tǒng)軟件設(shè)計中廣泛采用單任務(wù)順序機制,它常帶來的重要問題是系統(tǒng)安全性差,這將導(dǎo)致系統(tǒng)頻繁復(fù)位以致無法達到設(shè)計目標(biāo)。為此本系統(tǒng)在軟件設(shè)計中引入嵌入式操作系統(tǒng)μc/os-II并設(shè)計監(jiān)視任務(wù)實時監(jiān)視系統(tǒng)運行,使該問題得到了較好的解決。

    關(guān)鍵詞:嵌入式操作系統(tǒng) 監(jiān)視任務(wù) 消息隊列 安全性能

在傳統(tǒng)的嵌入式系統(tǒng)軟件設(shè)計中,多采用單任務(wù)順序機制。此機制的優(yōu)勢在于流程直觀,但它常帶來一個重要的問題--系統(tǒng)安全性差,即程序運行中任一環(huán)節(jié)出錯都會導(dǎo)致系統(tǒng)混亂,只能依靠看門狗復(fù)位重新運行。在焊縫跟蹤系統(tǒng)中,弧光干擾嚴重,若存在單任務(wù)順序機制,雖存在多種硬件高層干擾措施,系統(tǒng)有時仍需頻繁復(fù)位以致無法達到系統(tǒng)。為此在焊縫軌跡智能跟蹤系統(tǒng)中,作者將實時嵌放式操作系統(tǒng)μc/os-II用于單片機80c196的軟件設(shè)計中,并設(shè)計監(jiān)視任務(wù),較好地解決了該問題。μc/os-II是一種免費的操作系統(tǒng)且源代碼公開,其可靠性已在許多應(yīng)用中得到了證明。

1 系統(tǒng)概述

系統(tǒng)設(shè)計目標(biāo)為:在TIG焊條件下,焊接速度為24cm/min時,焊頭與焊縫偏差小于1mm。

系統(tǒng)的設(shè)計思路為:采用電弧傳感器采集焊頭相對焊縫不同位置時的焊接電流信號,將此信號經(jīng)信號處理得焊頭相對于焊縫的偏差置,此偏差量經(jīng)控制運算后得相應(yīng)的控制信號。將此控制信號輸出到電機,從而改變焊頭與焊縫的偏差。

系統(tǒng)的功能塊有信號采集、信號處理、控制運算、輸出等。另外由于本系統(tǒng)的弧光干擾嚴重,為防止程序運行中因一個環(huán)節(jié)出錯而導(dǎo)致系統(tǒng)混亂以致無法控制焊頭與焊縫的偏差,本系統(tǒng)設(shè)計了監(jiān)視模塊用來及時糾錯。

系統(tǒng)結(jié)構(gòu)圖如圖1所示,由外而內(nèi)可分三層,分別為硬件電路層、任務(wù)層及操作系統(tǒng)層。

2 硬件電路層設(shè)計

本系統(tǒng)的硬件電路層包括一塊信號采集板和一塊驅(qū)動板。前者的用途在于從電弧傳感器獲取電流信號并將其轉(zhuǎn)換成電壓信號。此電流信號能有效表征焊頭與焊縫的位置關(guān)系,此電壓信號將被任務(wù)層的信號采集任務(wù)獲取。后者的用途在于制任務(wù)層中輸出任務(wù)產(chǎn)生的命令(此命令作用于單片機輸出口)傳輸?shù)诫姍C,從而改變焊頭和焊縫的偏差。

3 任務(wù)層設(shè)計

3.1 系統(tǒng)任務(wù)層組成及其優(yōu)先權(quán)設(shè)置

系統(tǒng)任務(wù)層并行存在的幾個任務(wù)依其優(yōu)先權(quán)從高到低依次為:監(jiān)視任務(wù)、輸出任務(wù)、控制運算任務(wù)、信號處理任務(wù)、信號采集任務(wù)。優(yōu)先權(quán)的設(shè)置由各任務(wù)的執(zhí)行順序以及對系統(tǒng)安全性影響的大小決定。本系統(tǒng)采用靜態(tài)優(yōu)先權(quán),即運行過程中任務(wù)優(yōu)先權(quán)不變。

3.2 任務(wù)的狀態(tài)

本系統(tǒng)中各任務(wù)的狀態(tài)有4種:等待態(tài)、就緒態(tài)、運行態(tài)以及中斷態(tài)。狀態(tài)的轉(zhuǎn)換關(guān)系如圖2所示。

當(dāng)一個任務(wù)點用CPU時該任務(wù)處于運行態(tài),其優(yōu)先權(quán)必較所有就緒態(tài)任務(wù)優(yōu)先權(quán)高。若系統(tǒng)運行導(dǎo)致就緒態(tài)某一任務(wù)的優(yōu)行權(quán)高于運行態(tài)任務(wù)優(yōu)先僅,則調(diào)用調(diào)度函數(shù),運行態(tài)任務(wù)將喪失對CPU的占用權(quán)而轉(zhuǎn)為就緒態(tài),優(yōu)先權(quán)最高的就緒態(tài)任務(wù)轉(zhuǎn)為運行態(tài)。某一時刻只能有一個任務(wù)處于運行態(tài)。任務(wù)在就緒態(tài)和運行態(tài)間的轉(zhuǎn)化被稱為任務(wù)切換。

當(dāng)運行態(tài)的任務(wù)期待某一消息時(即別的任務(wù)和該任務(wù)的數(shù)據(jù)傳遞,本設(shè)計中任務(wù)間的數(shù)據(jù)傳遞被稱為消息),該任務(wù)將喪失對CPU的占用權(quán)而轉(zhuǎn)為等待態(tài),等待時間可由系統(tǒng)設(shè)定。若等待時間內(nèi)該任務(wù)收到消息,任務(wù)將轉(zhuǎn)為就緒態(tài),否則將被時間管理函數(shù)強行轉(zhuǎn)為就緒態(tài)。

中斷發(fā)生時運行態(tài)的任務(wù)將轉(zhuǎn)入中斷態(tài),喪失對CPU的占用權(quán)。因為斷中可能有消息發(fā)送使等待態(tài)的任務(wù)轉(zhuǎn)入就緒態(tài),故中斷返回后將首先運行調(diào)度函數(shù),決定任務(wù)狀態(tài)。

3.3 任務(wù)的構(gòu)成

系統(tǒng)中每個任務(wù)均有以下三部分組成:應(yīng)用程序、任務(wù)堆棧以及任務(wù)控制塊。其中只有應(yīng)用程序被燒入ROM,而任務(wù)本身則置于ROM,待系統(tǒng)運行時再予于建立。

任務(wù)堆棧以存儲CPU寄存器內(nèi)容。當(dāng)某任務(wù)由運行態(tài)變?yōu)槠渌鼱顟B(tài)時,CPU寄存器內(nèi)容壓入相應(yīng)任務(wù)堆棧,反之則將相應(yīng)任務(wù)堆棧內(nèi)容置入CPU寄存器。

作為系統(tǒng)中定義中一個數(shù)據(jù)結(jié)構(gòu),任務(wù)控制塊的內(nèi)容包括任務(wù)堆棧的地址、任務(wù)當(dāng)前狀態(tài)、任務(wù)優(yōu)先權(quán)等。操作系統(tǒng)通過查詢?nèi)蝿?wù)控制塊內(nèi)容實現(xiàn)對任務(wù)的管理。

3.4監(jiān)視任務(wù)的設(shè)計

因系統(tǒng)工作環(huán)境干擾強烈,雖已采取多種軟硬件抗干擾措施如光電隔離、軟件陷阱等,仍有可能因瞬間擾動使系統(tǒng)陷入混亂,導(dǎo)致 系統(tǒng)只能依靠看門狗復(fù)位重新運行,以致無法實現(xiàn)設(shè)計目標(biāo)。為此本系統(tǒng)采用監(jiān)視任務(wù)監(jiān)督其它任務(wù)是否正常運行,若未能正常運行則采取相應(yīng)措施以盡量減少看門狗復(fù)位次數(shù)。

監(jiān)視任務(wù)設(shè)計思路為:被監(jiān)視任務(wù)正常運行時其執(zhí)行時間是可預(yù)估的,被監(jiān)視任務(wù)在其即將運行完畢時向監(jiān)視任務(wù)發(fā)送消息說明自身運行正常。被監(jiān)視任務(wù)運行時,監(jiān)視任務(wù)處于等待態(tài),等待被監(jiān)視任務(wù)給它發(fā)送消息,等待時間被設(shè)定為預(yù)計的任務(wù)正常運行所需的最大時間。若等待時間內(nèi)監(jiān)視任務(wù)收到消息,則認為發(fā)送消息的任務(wù)運行正常,依照各任務(wù)執(zhí)行順序的先后下一任務(wù)開始運行,監(jiān)視任務(wù)等待下一任務(wù)發(fā)送的消息。若等待時間已過,監(jiān)視任務(wù)仍未收到消息,則系統(tǒng)的時間管理函數(shù)將強行把監(jiān)視任務(wù)為就緒態(tài)。因監(jiān)視任務(wù)的優(yōu)先權(quán)是最高的,它將搶占對CPU的控制權(quán)并采取相應(yīng)的糾錯方案。本系統(tǒng)中針對常見故障建立對策庫,并將之置于 ROM,以便實現(xiàn)應(yīng)用中根據(jù)故障的具體情況采取相應(yīng)措施。

現(xiàn)以信號采集任務(wù)中常出現(xiàn)的一個擾動為例加以介紹。信號采集任務(wù)進行信號采集前者先查詢一個標(biāo)志位,該標(biāo)志位顯示焊接是否開始。若該標(biāo)志位置1表明焊接已經(jīng)開始,任務(wù)開始信號采集,否則任務(wù)一直查詢直至該標(biāo)志位置1。若該位在位置時由于瞬間振動導(dǎo)致未能置位成功以致信號采集任務(wù)不斷查詢該標(biāo)志位,將導(dǎo)致系統(tǒng)混亂。若未采用監(jiān)視任務(wù),則系統(tǒng)只能依靠看門狗復(fù)位。在本設(shè)計中由于操作系統(tǒng)的采用,使各任務(wù)的關(guān)系由傳統(tǒng)的順序機制變成并行機制。監(jiān)視任務(wù)在預(yù)定的等待時間仍未收到信號采集任務(wù)發(fā)送的消息,被時間管理函數(shù)置為就緒態(tài),且由于其優(yōu)先權(quán)較信號采集任務(wù)高,將獲得CPU的使用權(quán),使信號采集任務(wù)重新運行以消除擾動的影響,即刷新看門狗寄存器的值,將信號采集任務(wù)置為就緒態(tài),并將信號采集任務(wù)的任務(wù)堆棧的斷點地址值改為采集任務(wù)起始地址后重新將自身置為等待態(tài)。

4 操作系統(tǒng)層設(shè)計

4.1 任務(wù)建立

因任務(wù)并未常駐ROM,操作系統(tǒng)的首要功能為建立所有任務(wù),將其初始化并置剛建立的任務(wù)為就緒態(tài)。

4.2 消息隊列

4.2.1 消息隊列的結(jié)構(gòu)

本設(shè)計中將任務(wù)間傳送的數(shù)據(jù)稱為消息。因系統(tǒng)中任務(wù)間有多個數(shù)據(jù)傳送,故采用消息隊列。消息隊列實質(zhì)是一個由指針組成的循環(huán)緩沖區(qū),如圖3所示。

其中osqstart為指向消息隊列起始地址的指針,osqend為消息隊列結(jié)束單元的下一地址的指針,osqstart、osqend使消息隊列構(gòu)成一個循環(huán)的緩沖區(qū)。osqsize為消息隊列的總單元數(shù),該值的大小視任務(wù)的需要而定。osqentry為消息隊列中消息數(shù),其值隨數(shù)據(jù)存取而改變。

osqin 為指向消息隊列存入下一條消息的指針。osqout為指向消息隊列取出下一條消息的指針。系統(tǒng)初始化及osqin、osqout到達osqend時將被調(diào)整指向消息隊列起始地址。系統(tǒng)完成消息隊列創(chuàng)建后即開始對其進行初始化,將osqentry置為0,osqin、osqout指向消息隊列起始地址。消息隊列的存取采取先進先出的原則,osqin、osqout隨數(shù)據(jù)的存取相應(yīng)改變。

4.2.2 系統(tǒng)中的消息隊列

本系統(tǒng)中共有4個消息隊列,各消息隊列用途分別為:

消息隊列1被信號采集任務(wù)用于發(fā)送消息給信號處理,監(jiān)視任務(wù);消息隊列2被信號處理任務(wù)用于發(fā)送消息給控制運算,監(jiān)視任務(wù);消息隊列3被控制運行任務(wù)用于發(fā)送消息給輸出任務(wù),監(jiān)視任務(wù);消息隊列4被輸出任務(wù)用于發(fā)送消息給監(jiān)視任務(wù)。

本系統(tǒng)定義數(shù)據(jù)結(jié)構(gòu)--隊列控制塊業(yè)實現(xiàn)對多個消息隊列的管理,

[1] [2] [3]  下一頁
  • 上一篇: 圖形LCD模塊的菜單方式人機交互界面
  • 下一篇: 基于TPIC6B273的LED驅(qū)動控制設(shè)計
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責(zé)信息內(nèi)容的真實性、準(zhǔn)確性和合法性。
    機電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1