www.467cc.cn-无人在线观看高清电影电视剧,无码少妇一区二区三区免费,午夜福利视频,欧美爆乳乱妇高清免费888

<sup id="a8eos"><samp id="a8eos"></samp></sup>
  • <strike id="a8eos"></strike>
  • <strike id="a8eos"><menu id="a8eos"></menu></strike>
  • <fieldset id="a8eos"><input id="a8eos"></input></fieldset>
  • <fieldset id="a8eos"><input id="a8eos"></input></fieldset>
    產(chǎn)品展廳收藏該商鋪

    您好 登錄 注冊

    當前位置:
    東莞市宇匠數(shù)控設(shè)備有限公司>技術(shù)文章>軟PLC任務線程的調(diào)度

    技術(shù)文章

    軟PLC任務線程的調(diào)度

    閱讀:105          發(fā)布時間:2020-8-12

    3. 3軟PLC任務線程的調(diào)度

    3. 3. 1多線程

    多線程程序是指在一個進程中同時運行多個線程,每個線程完成不同的任 務。采用多線程編程可充分利用進程中的共享資源、減少進程切換所需的資源切 換、從而大幅提升CPU的使用效率,多用于需要花大量時間處理以及處理大量 10數(shù)據(jù)等耗時的應用程序。

    PLC運行系統(tǒng)主要是對I/O輸入輸出影響區(qū)的數(shù)據(jù)進行處理,采用多線 程編程可提升控制系統(tǒng)的性能,因此在程序啟動后主線程會為每個任務創(chuàng)建對應 的線程。然而通用PC機只有一個CPU,每一時刻只能執(zhí)行一個任務線程,多個 線程之間通過快速地進行切換來實現(xiàn)運行。因此要實現(xiàn)軟PLC運行系統(tǒng)多任務 的并行運行就必須對任務線程進行調(diào)度,確保每個任務順序執(zhí)行。下面在介紹操 作系統(tǒng)調(diào)度原理的基礎(chǔ)上給出本軟PLC系統(tǒng)的調(diào)度方法。

    3. 3. 2線程調(diào)度原理

    線程是操作系統(tǒng)的小調(diào)度單位。對于通用PC機而言,計算機操作系統(tǒng)以 輪轉(zhuǎn)方式向每個任務線程提供運行時間片,利用“中斷”機制對線程的運行狀態(tài) 進行切換,從而確保每個任務線程都能得到CPU時間片而被執(zhí)行。

    3. 3. 3PLC運行系統(tǒng)任務線程的調(diào)度

    PLC運行系統(tǒng)需要對系統(tǒng)管理任務、通信任務、程序執(zhí)行任務以及I/O 讀寫任務進行調(diào)度。通信任務包括軟PLCHMI進程的通訊任務、軟PLC與軟 CNC的通訊任務,I/O讀寫任務包括I/O讀任務和I/O寫任務。每個任務線程對 應就緒、運行、終止和阻塞四種狀態(tài),因此對軟PLC運行系統(tǒng)多個任務的調(diào)度 可通過改變?nèi)蝿站€程的狀態(tài)來實現(xiàn)。本文結(jié)合以下兩種方式對任務線程進行調(diào) 度。

    直接調(diào)度

    直接調(diào)度按任務執(zhí)行的先后順序設(shè)定任務線程的優(yōu)先級進行調(diào)度,使任務線 程隊列中的優(yōu)先級高的任務優(yōu)先獲得CPU時間片而被操作系統(tǒng)調(diào)用執(zhí)行。

    RTX實時子系統(tǒng)提供了 128個線程優(yōu)先級,其系統(tǒng)內(nèi)核按照優(yōu)先級從高到 低的順序安排任務線程占有CPU資源。由于采用搶占式調(diào)度算法,所以RTX允 許高優(yōu)先級的任務打斷正在運行的低優(yōu)先級任務線程,以此搶占對CPU的控制 權(quán),這非常方便我們對軟PLC運行系統(tǒng)的每個任務線程進行調(diào)度和管理。

    在軟PLC運行系統(tǒng)的設(shè)計過程中,系統(tǒng)任務管理線程負責軟PLC運行系統(tǒng) 所有任務的調(diào)度,不應被軟PLC系統(tǒng)中的其它任務線程所打斷,因此設(shè)置為第 一優(yōu)先級。通訊任務線程和I/O讀寫任務線程用于提供操作數(shù)和指令,是執(zhí)行用 戶程序的先決條件,所以設(shè)置為第二優(yōu)先級。程序執(zhí)行任務設(shè)置為第三優(yōu)先級, 其中快速執(zhí)行任務線程的優(yōu)先級高于普通執(zhí)行任務線程。

    間接調(diào)度

    間接調(diào)度采用同步對象進行調(diào)度,利用多個任務為爭奪同一臨界資源引起的 互斥來協(xié)調(diào)多任務的運行。也就是說只有獲得同步對象句柄的任務線程才能被執(zhí)行,對共享資源進行操作,未獲得的任務線程只能等待同步對象被釋放。

    RTX提供四種同步對象信號量對象Semaphore事件對象Event互斥體 X寸象Mutex和共享內(nèi)存對象SharedMemory其中事件對象Event具有使用簡單、 易于實現(xiàn)多個任務的同步運行等優(yōu)點所以軟PLC運行系統(tǒng)為每個任務創(chuàng)建了 相應的事件對象利用數(shù)RtWaitForSingleObjectG等待單個事件對象的信號狀 態(tài)以及函數(shù)RtWaitForSingleObjects等待多個事件對象的信號狀態(tài)。當?shù)却龝r 間達到設(shè)定值時,改變當前執(zhí)行線程的狀態(tài),轉(zhuǎn)去執(zhí)行獲得同步事件對象句柄的 任務線程,執(zhí)行完返回當前任務線程繼續(xù)執(zhí)行;若設(shè)定的等待時間為INFINITE, 則當前任務線程一直等待同步事件對象句柄。這使程序運行過程中只有一個任務 線程能夠操作數(shù)據(jù)共享區(qū),從而保證數(shù)據(jù)訪問的安全性。

    PLC運行系統(tǒng)創(chuàng)建的事件對象初始時都處于FALSE(無信號)狀態(tài),在事 件被觸發(fā)后變?yōu)橛行盘枲顟B(tài),事件所對應的任務線程獲得臨界區(qū)資源被執(zhí)行,然 后利用RtResetEventG函數(shù)重置為無信號狀態(tài),讓軟PLC運行系統(tǒng)觸發(fā)其它事件 對象,以此協(xié)調(diào)多任務的運行。軟PLC任務線程的調(diào)度過程如圖3.8所示。

    本文采摘自“五軸數(shù)控加工中心軟PLC控制系統(tǒng)的研究”,因為編輯困難導致有些函數(shù)、表格、圖片、內(nèi)容無法顯示,有需要者可以在網(wǎng)絡中查找相關(guān)文章!本文由伯特利數(shù)控整理發(fā)表文章均來自網(wǎng)絡僅供學習參考,轉(zhuǎn)載請注明!

    收藏該商鋪

    登錄 后再收藏

    提示

    您的留言已提交成功!我們將在第一時間回復您~

    對比框

    產(chǎn)品對比 二維碼 意見反饋

    掃一掃訪問手機商鋪
    在線留言
    中文国产成人精品久久不卡| 97人人模人人爽视频一区二区| 久久九九有精品国产| 亚洲人成精品久久久久| 中文字幕有码无码aⅴ| 精品熟女少妇av免费久久| 免费无遮挡无码视频在线观看| 黑巨人与欧美精品一区| 公交车被CAO得合不拢腿视频| 99热播|