99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

采用基于時間觸發(fā)形式的合作式調(diào)度器的開發(fā)及應用分析

電子設計 ? 來源:單片機與嵌入式系統(tǒng)應用 ? 作者:黃瑞龍,廖曉文 ? 2020-04-23 08:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引 言

電子控制系統(tǒng)一般都是實時系統(tǒng),常需處理許多并發(fā)事件的輸入數(shù)據(jù)流。這些事件的到來次序和幾率通常是不可預測的,而且還要求系統(tǒng)必須在事先設定好的時限內(nèi)做出相應的響應。對于如何控制系統(tǒng)的復雜行為,普遍采用的是事件觸發(fā)方案,即系統(tǒng)的所有行為響應系統(tǒng)外部事件而執(zhí)行。然而,中斷丟失與事件觸發(fā)系統(tǒng)的開銷是人們經(jīng)常忽略的一個問題,文獻[2]討論了一個這樣的例子:一個包含27個任務、采用RM調(diào)度算法的事件觸發(fā)系統(tǒng),CPU的實際利用率僅為18%。同時,電子控制系統(tǒng)也可以看作是一個能實時采集一組定義好的輸入值,同時在預先確定的時間間隔給出一個正確輸出的實時系統(tǒng)。為了滿足安全、低成本及程序盡可能簡單等苛刻要求,電子控制系統(tǒng)的開發(fā)最終走向時間觸發(fā)結(jié)構(gòu)。時間觸發(fā)意味著所有的與輸入采樣、計算及輸出結(jié)果等相關的動作在預先給定的時間前執(zhí)行,因而能保證準確的調(diào)度時間。

1、時間觸發(fā)系統(tǒng)的任務調(diào)度器

調(diào)度器是一種用于電子控制系統(tǒng)的運行環(huán)境,也可看作是一個簡單的操作系統(tǒng)。在電子控制系統(tǒng)中使用調(diào)度器可以縮短開發(fā)時間,提高軟件的模塊化程度。調(diào)度器具有合作式與搶占式兩種形式。如果一個被“喚醒”的高優(yōu)先級任務可以打斷其他正在運行的低優(yōu)先級任務,則調(diào)度器是搶占式的;反之,則是合作式的。由于其應用背景的特殊性,電子控制系統(tǒng)運行的任務絕大多數(shù)是周期性任務(如周期性的數(shù)據(jù)采集任務、LED顯示刷新任務等),并且任務的就緒時間、開始時間、執(zhí)行時間和截止期限等信息均可預先知道。因此,可以采用基于時間觸發(fā)形式的合作式調(diào)度器,即任務在特定時刻以周期性或單次方式被調(diào)度。

2、時間觸發(fā)合作式調(diào)度器的機制

時間觸發(fā)合作式調(diào)度器通常通過一個硬件定時器來實現(xiàn),所有的任務都是由時間觸發(fā)的,這也意味著除了定時器中斷以外,再也沒有其他形式的中斷。硬件定時器將被設置為產(chǎn)生一個周期中斷信號,這個中斷信號的頻率約為1kHz。

時間觸發(fā)合作式調(diào)度器的主要功能就是喚醒在預先確定好時間執(zhí)行的任務。在工作時間,調(diào)度器檢查靜態(tài)的任務鏈表,根據(jù)任務的周期判斷是否有任務需執(zhí)行,如果有則立即執(zhí)行任務;任務執(zhí)行完后繼續(xù)檢查任務鏈表,重復上一個過程。完成鏈表檢查后,由于節(jié)能的關系,CPU進入休眠狀態(tài),直到下一個時鐘節(jié)拍的到來。其任務調(diào)度機制如圖1所示。由于合作式調(diào)度器能保證在同一時刻,系統(tǒng)中只有一個任務被觸發(fā),而且在任何時刻系統(tǒng)中都可以保證有任務在執(zhí)行。這樣,系統(tǒng)的使用效率得到了提高。在分布式系統(tǒng)中,各個節(jié)點間存在著時間的漂移(由于每個節(jié)點所處的環(huán)境以及時鐘晶振的制作工藝等存在差異),所以必須動態(tài)地對節(jié)點時鐘進行調(diào)整,使整個系統(tǒng)的各個節(jié)點時鐘能夠同步。

采用基于時間觸發(fā)形式的合作式調(diào)度器的開發(fā)及應用分析

合作式調(diào)度器可靠而且可預測的主要原因是在任一時刻只有一個任務是活動的,這個任務運行直到完成,然后再由調(diào)度器來控制。如果搶占式調(diào)度,有多個活動任務,執(zhí)行“上下文切換”及“關鍵段保護”等將增加系統(tǒng)的開銷。圖2[3]比較了使用合作式調(diào)度器與搶占式調(diào)度器設計巡航系統(tǒng)的情況。可以看到,采用合作式調(diào)度模式可以精簡所需的代碼行數(shù),節(jié)省程序存儲器和數(shù)據(jù)存儲器空間。同時,許多研究表明,相對于搶占式調(diào)度器,除任務級的響應時間快很多外,合作式調(diào)度器還具有很多優(yōu)點。例如,文獻[4]指出與搶占式替代方案相比,合作式調(diào)度有以下四個優(yōu)點:簡單,可減小系統(tǒng)開銷,容易測試以及更容易讓權(quán)威機構(gòu)接受這種形式的調(diào)度。

3、應用實例

太陽跟蹤系統(tǒng)是針對太陽能空調(diào)、高效太陽能光伏發(fā)電、高效太陽能熱水器等需要對太陽進行實時跟蹤的應用領域設計的,通過使設備的某一面時刻與太陽光保持垂直,獲取最大的太陽能量。

本文涉及的跟蹤系統(tǒng)采用傳感器跟蹤與天文定位跟蹤相結(jié)合的模式。即通過當?shù)氐慕?jīng)緯度與當前日期計算日出、日落時間,然后根據(jù)日落、日出的時間差及電機的步距角,每隔一段時間輸出一個脈沖控制設備自動往西。同時,根據(jù)光電傳感器輸入,每隔一段時間控制電機在東、西、南、北四個方向自動調(diào)節(jié)設備,使設備與太陽光保持垂直。圖3給出了太陽跟蹤器上下文環(huán)境圖,給出了系統(tǒng)與傳感器和執(zhí)行器接口的簡單描述。由圖3可知實現(xiàn)系統(tǒng)功能所需的任務、任務周期及執(zhí)行時間如表1所列。

在表1所列的任務中,Task2每120 ms執(zhí)行一次鍵盤掃描,用于設置當前時間、經(jīng)緯度及保存手動調(diào)節(jié)設備的輸入。Task6根據(jù)手動調(diào)節(jié)設備輸入及光電傳感器的輸入調(diào)節(jié)設備方位。Task7計算日出日落時間,每24小時執(zhí)行一次。Task3、Task4、Task5與Task6,采用swith_case結(jié)構(gòu),不在運行時間范圍內(nèi),程序直接跳出,否則運行相應的任務,Task8在到達日落時間或設備觸及西方向限位器時起作用,控制電機使設備對準太陽升起位置。

根據(jù)合作式調(diào)度器的原理與各任務的周期,設置定時器每4 ms產(chǎn)生一個周期中斷信號。因為有多個任務的執(zhí)行時間超過4 ms,Task1無法按規(guī)定的頻率執(zhí)行。此外,有多個任務的 最壞執(zhí)行時間超過30 ms,使鍵盤掃描的靈敏度受到影響。因此采用直接將Task1、Task2包含進定時器中斷服務子程序的方法,從而使所有任務的周期及執(zhí)行時間均能滿足系統(tǒng)任務可調(diào)度的要求。

4、結(jié) 語

在工程中采用事件觸發(fā)模式很大程度上會增加系統(tǒng)的復雜性,導致龐大的代碼結(jié)構(gòu)。這樣的代碼長度及復雜性不適合普通開發(fā)人員構(gòu)建,而商業(yè)實時操作系統(tǒng)往往價格昂貴,并且需要很大的操作系統(tǒng)開銷。采用基于時間觸發(fā)模式開發(fā)系統(tǒng)可以滿足實時、簡單、可預測性等工程要求。在應用實例中也可以看到,對于任務周期與執(zhí)行時間相差懸殊的任務,為滿足可調(diào)度性的要求,將需頻繁執(zhí)行的短任務加入定時器中斷服務子程序的方法延長了中斷處理的時間,同時削弱了系統(tǒng)實時響應能力及可預測能力。此外,也可以通過將執(zhí)行時間長的任務分解成幾個執(zhí)行時間短的任務來滿足任務可調(diào)度性。相對于事件觸發(fā)模式,時間觸發(fā)模式對工程技術人員的要求更高。

責任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23838

    瀏覽量

    673927
  • 控制系統(tǒng)

    關注

    41

    文章

    6780

    瀏覽量

    112153
  • 操作系統(tǒng)

    關注

    37

    文章

    7144

    瀏覽量

    125565
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于時間觸發(fā)嵌入系統(tǒng)的設計與應用

    近年來,嵌入發(fā)展迅速,采用51單片機死循環(huán)的事件觸發(fā)編程方式已逐漸不能滿足企業(yè)對產(chǎn)品穩(wěn)定性和安全性的要求。在實際應用中,往往會面臨同時應付多外設、多任務的情況,則對它們的相互調(diào)度必不
    發(fā)表于 01-03 10:13 ?1726次閱讀
    基于<b class='flag-5'>時間</b><b class='flag-5'>觸發(fā)</b>嵌入<b class='flag-5'>式</b>系統(tǒng)的設計與應用

    [原創(chuàng)]戶用電熱熱能量表的合作開發(fā)

      戶用電熱熱能量表的合作開發(fā)   一、合作內(nèi)容    &
    發(fā)表于 10-09 09:04

    【安富萊】【μCOS-III教程】第2章 基于時間觸發(fā)合作...

    本帖最后由 硬漢Eric2013 于 2015-1-4 16:41 編輯 第2章基于時間觸發(fā)合作調(diào)度
    發(fā)表于 12-29 16:26

    【安富萊】【μCOS-III教程】第3章 基于時間觸發(fā)的混合式...

    本帖最后由 硬漢Eric2013 于 2015-1-4 17:05 編輯 第3章基于時間觸發(fā)的混合式調(diào)度 本期教程帶領大家學習混合式調(diào)度
    發(fā)表于 01-04 17:00

    【安富萊】【RTX操作系統(tǒng)教程】第10章 任務調(diào)度-搶占,時間片和合作

    RTX支持的調(diào)度方式10.2 什么是調(diào)度10.3 搶占調(diào)度10.4
    發(fā)表于 01-25 13:57

    轉(zhuǎn):第14章 任務調(diào)度—搶占,時間片和合作

    的特別說明14.2 FreeRTOS支持的調(diào)度方式14.3 什么是調(diào)度14.4 搶占調(diào)度1
    發(fā)表于 08-30 09:55

    第10章 任務調(diào)度-搶占時間片和合作

    什么是調(diào)度10.3 搶占調(diào)度10.4 時間調(diào)度
    發(fā)表于 10-04 18:11

    【NUCLEO-F412ZG試用體驗】合作調(diào)度(試用第二彈)

    看到了一本書--時間觸發(fā)嵌入系統(tǒng)設計模式,介紹了合作調(diào)度
    發(fā)表于 11-14 12:28

    時間觸發(fā)嵌入系統(tǒng)設計模式(使用8051微控制開發(fā)可靠應用

    時間觸發(fā)嵌入系統(tǒng)設計模式:使用8051微控制開發(fā)可靠應用主要關注使用軟件模式迅速地開發(fā)
    發(fā)表于 10-28 23:20 ?692次下載
    <b class='flag-5'>時間</b><b class='flag-5'>觸發(fā)</b>嵌入<b class='flag-5'>式</b>系統(tǒng)設計模式(使用8051微控制<b class='flag-5'>器</b><b class='flag-5'>開發(fā)</b>可靠應用

    時鐘觸發(fā)器的結(jié)構(gòu)形式觸發(fā)方式

    時鐘觸發(fā)器的結(jié)構(gòu)形式
    發(fā)表于 08-19 11:04 ?28次下載

    利用時間觸發(fā)式系統(tǒng)開發(fā)嵌入產(chǎn)品

    利用時間觸發(fā)式系統(tǒng)開發(fā)嵌入產(chǎn)品
    發(fā)表于 02-07 17:04 ?14次下載

    時間觸發(fā)嵌入系統(tǒng)的設計方案

    ,可出于成本和技術上的考慮,微控制往往不會選取其進行設計。在實際應用中,往往會面臨同時應付多外設、多任務的情況,則對它們的相互調(diào)度必不可少。時間觸發(fā)嵌入
    發(fā)表于 10-17 15:44 ?4次下載
    <b class='flag-5'>時間</b><b class='flag-5'>觸發(fā)</b>嵌入<b class='flag-5'>式</b>系統(tǒng)的設計方案

    基于8051的時間觸發(fā)嵌入系統(tǒng)的設計

    本文詳細介紹了時間觸發(fā)嵌入系統(tǒng)設計模式之使用8051系列微控制開發(fā)的可靠應用。
    發(fā)表于 11-24 15:43 ?17次下載
    基于8051的<b class='flag-5'>時間</b><b class='flag-5'>觸發(fā)</b>嵌入<b class='flag-5'>式</b>系統(tǒng)的設計

    基于AVR微控制時間觸發(fā)多任務調(diào)度的設計與應用

    和技術上的考慮,微控制往往不會選取其進行設計。在實際應用中,往往會面臨同時應付多外設、多任務的情況,則對它們的相互調(diào)度必不可少。 時間觸發(fā) 嵌入
    發(fā)表于 02-07 09:02 ?2054次閱讀

    基于時間觸發(fā)多任務調(diào)度的嵌入系統(tǒng)設計與應用

    和技術上的考慮,微控制往往不會選取其進行設計。在實際應用中,往往會面臨同時應付多外設、多任務的情況,則對它們的相互調(diào)度必不可少。時間觸發(fā)嵌入
    發(fā)表于 01-25 16:37 ?2458次閱讀
    基于<b class='flag-5'>時間</b><b class='flag-5'>觸發(fā)</b>多任務<b class='flag-5'>調(diào)度</b><b class='flag-5'>器</b>的嵌入<b class='flag-5'>式</b>系統(tǒng)設計與應用