|
新聞詳情
基于 μC/OS-III 的智能電磁流量計在2冠狀肺炎疫情結(jié)速后的發(fā)展趨勢概 念: 首先著手于智能電磁流量儀表計在2020年冠裝新型病毒肺炎后的發(fā)展,介紹其發(fā)展的特點,隨著智能流量儀表功能的多樣化,單純的前、后臺程序開發(fā)機制已經(jīng)不能滿足越來越復雜化、多樣化的嵌入式應(yīng)用需求,傳統(tǒng)的人機界面也已不適宜用戶更加方便快捷的使用,因此應(yīng)該選擇合適的實時操作系統(tǒng), 針對不同操作系統(tǒng)的特性最后提出了基于 μC/OS-III 的智能流量儀表的人機界面設(shè)計的方法,并且就 μC/OS-III 在智能電磁流量計人機界面的應(yīng)用中進行舉例說明。 在工業(yè)生產(chǎn)中,經(jīng)常需要對生產(chǎn)過程中各種流動介質(zhì)(如液體、氣體和蒸汽、固體粉末)的流量進行檢測,以便有效地控制生產(chǎn)過程和了解更多有關(guān)生產(chǎn)的參數(shù)。 隨著智能流量儀表的不斷普及, 不斷優(yōu)化人機界面的設(shè)計也成為各個智能儀表生產(chǎn)廠家關(guān)注的發(fā)展方向。 為了提高智能流量儀表測量、處理數(shù)據(jù)的實時性和人機交互的可靠性, 本文提出了基于實施嵌入式操作系統(tǒng)μC/OS-III 的設(shè)計方法,優(yōu)化了人機界面的交互。 1 智能流量儀表概述 1 )自動化程度高。 智能流量儀表采用了微控制器為控制核心,具備良好的可編程能力,可以輕松完成數(shù)據(jù)自動采集、過程自動控制、故障自動診斷、數(shù)據(jù)自動處理等功能。 這不僅提高了工作效率,節(jié)省了勞動力,而且使自動化程度得到了提高。 2 )接口豐富。 智能電磁流量計往往都具備強大的系統(tǒng)功能接口,且接口種類多、數(shù)量多、功能強。 如模擬量輸入和輸出、開關(guān)量輸入和輸出、人機接口和通訊接口等。 3 )具備通訊能力。智能電磁流量計幾乎都具備通訊接口,如 RS-232C 接口、 RS485 接口、 USB 接口和以太網(wǎng)接口等, 使得儀表本身能與外界有良好的信息交互。 4 )多功能化、小型化和高可靠性。隨著科技的飛速發(fā)展使得微控制器芯片、外圍電路芯片等器件集成度逐漸提高。 芯片功能越來越強,少數(shù)的幾個芯片就可以實現(xiàn)強大的功能。 5 )人機界面信息的交互更加實時,通過各種信息的反饋及時提醒用戶在測量過程中出現(xiàn)的異常情況以保證參量參數(shù)的可靠性。 2 基于 μC/OS-III 在人機界面的應(yīng)用
μC/OS-III 中的每一個任務(wù)都是無限循環(huán)的 [ 3 ] 。 每個任務(wù)會有五種狀態(tài),并且處于五種狀態(tài)之一。 這五種狀態(tài)分別是:睡眠態(tài)、就緒態(tài)、運行態(tài)、等待態(tài)以及中斷服務(wù)態(tài)。 睡眠態(tài)是指任務(wù)只是以代碼的形式存在于程序空間, 并未交給操作系統(tǒng)進行管理; 就緒態(tài)是指系統(tǒng)為任務(wù)配備了任務(wù)控制塊且在任務(wù)就緒表中進行了就緒登記,使任務(wù)具備了運行的充分條件;運行態(tài)是指處于就緒態(tài)的任務(wù)如果經(jīng)調(diào)度器判斷獲得了 CPU 的使用權(quán)時的狀態(tài);等待態(tài)則是正在運行的任務(wù),需要等待一段時間或需要等待一個事件發(fā)生再運行; 中斷服務(wù)狀態(tài)是指一個正在運行的任務(wù)一旦響應(yīng)中斷申請就會中止運行而去執(zhí)行中斷服務(wù)程序。這五種狀態(tài)在系統(tǒng)管理下的轉(zhuǎn)換關(guān)系由圖 2 所示。 2.2 人機界面應(yīng)用實例 下面以電磁流量計為例說明基于 μC/OS-III 的人機界面設(shè)計。 先將 μC/OS-III 移植到 Cortex-M3 處理器上,這里選用的 是 STM32F103VET6 。電磁流量 計的應(yīng) 用程序若按照上 節(jié)的任 務(wù)種類劃分有: 數(shù)據(jù)采集任務(wù)、數(shù)據(jù)處理任務(wù), 4~20mA輸出任務(wù), Hart 通訊任務(wù)以及用戶交互任務(wù)。 先對不同的任 務(wù)進行 優(yōu)先級的劃分,如表 1 所示。 在多任務(wù)操作系統(tǒng)中,任務(wù)之間常常需要通過傳遞一個數(shù)據(jù)的方式來進行通訊。 為了適應(yīng)不同數(shù)據(jù)的需要,可以在內(nèi)存中創(chuàng)建一個存儲空間作為該數(shù)據(jù)的緩沖區(qū)[4]。如果把這個緩沖區(qū)叫做消息緩沖區(qū),那么在任務(wù)間傳遞數(shù)據(jù)的一個最簡單的方法就是傳遞消息緩沖區(qū)的指針。 因此,這種用來傳遞消息緩沖區(qū)指針的數(shù)據(jù)結(jié)構(gòu)就稱為消息郵箱。相對于 μC/OS-II ,μC/OS-III 有內(nèi)在性能測試,它允許用戶測得系統(tǒng)的最長關(guān)中斷時間,也就是提供了一些工具可以測量每個任務(wù)關(guān)中斷的時間;用戶在測得每個任務(wù)的最長禁止調(diào)度時間基礎(chǔ)上,可以測得系統(tǒng)禁止任務(wù)調(diào)度的最長時間,也是說做了個測量;每次發(fā)出的信息都帶有時間戳,用戶也容易得到任務(wù)級的響應(yīng)時間[5] 。 這樣便于優(yōu)化各個任務(wù)之間的通信,在保證測量數(shù)據(jù)準確的前提下提高響應(yīng)的時間。 3 結(jié)束語 |