新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式實(shí)時(shí)操作系統(tǒng)的現(xiàn)場控制系統(tǒng)

基于嵌入式實(shí)時(shí)操作系統(tǒng)的現(xiàn)場控制系統(tǒng)

作者: 時(shí)間:2010-01-12 來源:網(wǎng)絡(luò) 收藏

 1 引言

本文引用地址:http://butianyuan.cn/article/152146.htm

  今天,隨著控制、計(jì)算機(jī)、通訊、網(wǎng)絡(luò)等技術(shù)的發(fā)展,信息交換領(lǐng)域正在迅速覆蓋從工廠的設(shè)備層到控制、管理的各個(gè)層次。以太網(wǎng)的工業(yè)控制網(wǎng)絡(luò)具有數(shù)據(jù)傳輸率高、可靠性好、易維護(hù)、可遠(yuǎn)程傳輸、互操作性好等優(yōu)點(diǎn)。隨著互聯(lián)網(wǎng)技術(shù)的普及與推廣,以及網(wǎng)絡(luò)通信速率的提高、交換技術(shù)的發(fā)展,使得它受到了全球的擁護(hù)和軟硬件支持,并得到了迅速發(fā)展和普及。本文設(shè)計(jì)和開發(fā)了具有工業(yè)以太網(wǎng)功能的控制設(shè)備。

  2 的選擇

  的種類繁多,大體上可以分為兩種:商用型和免費(fèi)型的。商用型的功能穩(wěn)定、可靠、有完善的技術(shù)支持和售后服務(wù),但往往價(jià)格昂貴,如QNX和Windows CE等。免費(fèi)型的操作系統(tǒng)在價(jià)格方面具有優(yōu)勢,目前主要有Linux和μC/OS-II。由于商用實(shí)時(shí)操作系統(tǒng)的成本太高,采用免費(fèi)軟件是最好的選擇,因此實(shí)時(shí)操作系統(tǒng)最終選擇了μC/OS-II。

  3 μC/OS-Ⅱ下多任務(wù)程序的設(shè)計(jì)

  程序的一開始通過一些宏定義對與μC/OS-Ⅱ運(yùn)行環(huán)境相關(guān)的一些配置參數(shù)、服務(wù)器的IP地址、網(wǎng)關(guān)以及子網(wǎng)掩碼等局域網(wǎng)參數(shù)做了設(shè)置,主程序中負(fù)責(zé)硬件初始化,初始化實(shí)時(shí)多任務(wù)操作統(tǒng),初始化TCP/IP協(xié)議棧,建立任務(wù),為其分配優(yōu)先級,激活各任務(wù)將其置為就緒態(tài)。然后在系統(tǒng)內(nèi)核RTOS的調(diào)度下,各個(gè)任務(wù)按照優(yōu)先級的不同依次投入運(yùn)行,任務(wù)運(yùn)行結(jié)構(gòu)如圖1所示。

任務(wù)運(yùn)行調(diào)度示意圖

圖1 任務(wù)運(yùn)行調(diào)度示意圖

  3.1 故障監(jiān)控任務(wù)

  監(jiān)控任務(wù)用來監(jiān)視當(dāng)前程序運(yùn)行狀態(tài),它的優(yōu)先級為最高,它判斷前一個(gè)運(yùn)行任務(wù)的運(yùn)行狀態(tài),如果有錯(cuò)誤發(fā)生就采取相應(yīng)的糾錯(cuò)方案,否則退回到等待狀態(tài)。被監(jiān)視任務(wù)正常運(yùn)行時(shí)其執(zhí)行時(shí)間是可預(yù)估的,被監(jiān)視任務(wù)在其即將運(yùn)行完畢時(shí)向監(jiān)視任務(wù)發(fā)送消息說明自身運(yùn)行正常。被監(jiān)視任務(wù)運(yùn)行時(shí),監(jiān)控任務(wù)處于等待態(tài),等待被監(jiān)視任務(wù)給它發(fā)送消息,等待時(shí)間被設(shè)定為預(yù)計(jì)的任務(wù)正常運(yùn)行所需的最大時(shí)間。若等待時(shí)間內(nèi)監(jiān)視任務(wù)收到消息,則認(rèn)為發(fā)送消息的任務(wù)運(yùn)行正常,依照各任務(wù)執(zhí)行順序的先后下一任務(wù)開始運(yùn)行,監(jiān)視任務(wù)等待下一任務(wù)發(fā)送的消息。若等待時(shí)間已過,監(jiān)控任務(wù)仍未收到消息,則系統(tǒng)的時(shí)間管理函數(shù)將強(qiáng)行把監(jiān)視任務(wù)設(shè)置為就緒態(tài)。因?yàn)楸O(jiān)控任務(wù)的優(yōu)先權(quán)是最高的,監(jiān)控任務(wù)將首先投入運(yùn)行,它將搶占對CPU的控制權(quán)并采取相應(yīng)的糾錯(cuò)方案,進(jìn)行相應(yīng)的故障處理,從而避免死機(jī)的發(fā)生。任務(wù)實(shí)現(xiàn)的流程圖如圖2所示。

故障監(jiān)控任務(wù)流程圖

圖2 故障監(jiān)控任務(wù)流程圖

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉