基于μC/OS-III的JKM-LDE電磁流量計人機界面設計
點擊次數(shù):2084 發(fā)布時間:2021-01-01 13:31:53
摘要:*先著手于智能流量儀表的發(fā)展,介紹其發(fā)展的特點,隨著智能流量儀表功能的多樣化,單純的前、后臺程序開發(fā)機制已經(jīng)不能滿足越來越復雜化、多樣化的嵌入式應用需求,傳統(tǒng)的人機界面也已不適宜用戶更加方便快捷的使用,因此應該選擇合適的實時操作系統(tǒng), 針對不同操作系統(tǒng)的特性*后提出了基于 μC/OS-III 的智能流量儀表的人機界面設計的方法,并且就 μC/OS-III 在JKM-LDE電磁流量計人機界面的應用中進行舉例說明。
在工業(yè)生產(chǎn)中,經(jīng)常需要對生產(chǎn)過程中各種流動介質(zhì)(如液體、氣體和蒸汽、固體粉末)的流量進行檢測,以便有效地控制生產(chǎn)過程和了解更多有關生產(chǎn)的參數(shù)。 隨著智能流量儀表的不斷普及, 不斷優(yōu)化人機界面的設計也成為各個智能儀表生產(chǎn)廠家關注的發(fā)展方向。 為了提高智能流量儀表測量、處理數(shù)據(jù)的實時性和人機交互的可靠性, 本文提出了基于實施嵌入式操作系統(tǒng) μC/OS-III 的設計方法,優(yōu)化了人機界面的交互。
1 智能流量儀表概述
JKM-LDE電磁流量計是一類新型的、 內(nèi)部裝有微處理器或單片機的微機化電子儀器,它是由傳統(tǒng)的電子儀器發(fā)展而來的,但在結(jié)構和內(nèi)涵上已經(jīng)發(fā)生了本質(zhì)的變化。 回顧電子儀器的發(fā)展歷程,從儀器的工作原理來看, 是從模擬式電子儀器階段發(fā)展到數(shù)字式電子儀器階段,再發(fā)展到智能型儀器階段。 智能流量儀表具有以下特點:
1 )自動化程度高。 智能流量儀表采用了微控制器為控制核心,具備良好的可編程能力,可以輕松完成數(shù)據(jù)自動采集、過程自動控制、故障自動診斷、數(shù)據(jù)自動處理等功能。 這不僅提高了工作效率,節(jié)省了勞動力,而且使自動化程度得到了提高。
2 )接口豐富。 JKM-LDE電磁流量計往往都具備強大的系統(tǒng)功能接口,且接口種類多、數(shù)量多、功能強。 如模擬量輸入和輸出、開關量輸入和輸出、人機接口和通訊接口等。
3 )具備通訊能力。JKM-LDE電磁流量計幾乎都具備通訊接口,如 RS-232C 接口、 RS485 接口、 USB 接口和以太網(wǎng)接口等, 使得儀表本身能與外界有良好的信息交互。
4 )多功能化、小型化和高可靠性。隨著科技的飛速發(fā)展使得微控制器芯片、外圍電路芯片等器件集成度逐漸提高。 芯片功能越來越強,少數(shù)的幾個芯片就可以實現(xiàn)強大的功能。
5 )人機界面信息的交互更加實時,通過各種信息的反饋及時提醒用戶在測量過程中出現(xiàn)的異常情況以保證參量參數(shù)的可靠性。
2 基于 μC/OS-III 在人機界面的應用
2.1 嵌入式實時操作系統(tǒng)
嵌入式系統(tǒng),就是為了實現(xiàn)特定的功能,將硬件和軟件連結(jié)起來的計算機系統(tǒng)。 然而,隨著科技的不斷發(fā)展,單純的前、后臺程序開發(fā)機制已經(jīng)不再能滿足越來越復雜化和多樣化的嵌入式應用需求,因而現(xiàn)在常常采用嵌入式實時操作系統(tǒng)( RTOS , RealTime Operating System )進行實時多任務程序的開發(fā)。 μC/OS-III 是基于 μC-OS 發(fā)展起來的, 它是美國嵌入式系統(tǒng)專家 Jean J Labrosse 用 C 語言編寫的一個搶占式的多任務實時內(nèi)核,其*大的特點是結(jié)構小巧。 μC/OS-III 是一個可擴展的,可固化的,搶占式的實時內(nèi)核,它管理的任務個數(shù)不受限制。 它是*三代內(nèi)核,提供了現(xiàn)代實時內(nèi)核所期望的所有功能包括資源管理、同步、內(nèi)部任務交流等。 μC/OS-III 也提供了很多特性是在其他實時內(nèi)核中所沒有的。 比如能在運行時測量運行性能,直接得發(fā)送信號或消息給任務,任務能同時等待多個信號量和消息隊列。 如圖 1 所示實時應用程序的設計通常包含多個任務,每個任務都是整體應用的一部分,都被賦予了一定的優(yōu)先級, 當讓也可以多個任務共一個優(yōu)先級, 且有獨自的一套CPU 寄存器和棧空間。
μC/OS-III 中的每一個任務都是無限循環(huán)的 。 每個任務會有五種狀態(tài),并且處于五種狀態(tài)之一。 這五種狀態(tài)分別是:睡眠態(tài)、就緒態(tài)、運行態(tài)、等待態(tài)以及中斷服務態(tài)。 睡眠態(tài)是指任務只是以代碼的形式存在于程序空間, 并未交給操作系統(tǒng)進行管理; 就緒態(tài)是指系統(tǒng)為任務配備了任務控制塊且在任務就緒表中進行了就緒登記,使任務具備了運行的充分條件;運行態(tài)是指處于就緒態(tài)的任務如果經(jīng)調(diào)度器判斷獲得了 CPU 的使用權時的狀態(tài);等待態(tài)則是正在運行的任務,需要等待一段時間或需要等待一個事件發(fā)生再運行; 中斷服務狀態(tài)是指一個正在運行的任務一旦響應中斷申請就會中止運行而去執(zhí)行中斷服務程序。這五種狀態(tài)在系統(tǒng)管理下的轉(zhuǎn)換關系由圖 2 所示。
2.2 人機界面應用實例
人機界面( Human Machine Interaction ,簡稱 HMI ),又稱用戶界面或使用者界面,是人與計算機之間傳遞、交換信息的媒介和對話接口,是計算機系統(tǒng)的重要組成部分。 在智能流量儀表的應用中,界面不僅顯示測量的流量數(shù)據(jù)和各種報警信息,還能通過界面參數(shù)的設定改變測量有關的參數(shù)。 它主要包括鍵盤和LCD 顯示。
下面以電磁流量計為例說明基于 μC/OS-III 的人機界面設計。 先將 μC/OS-III 移植到 Cortex-M3 處理器上,這里選用的是 STM32F103VET6 。電磁流量計的應用程序若按照上節(jié)的任務種類劃分有: 數(shù)據(jù)采集任務、數(shù)據(jù)處理任務, 4~20mA輸出任務, Hart 通訊任務以及用戶交互任務。 先對不同的任務進行優(yōu)先級的劃分,如表 1 所示。
在多任務操作系統(tǒng)中,任務之間常常需要通過傳遞一個數(shù)據(jù)的方式來進行通訊。 為了適應不同數(shù)據(jù)的需要,可以在內(nèi)存中創(chuàng)建一個存儲空間作為該數(shù)據(jù)的緩沖區(qū)。如果把這個緩沖區(qū)叫做消息緩沖區(qū),那么在任務間傳遞數(shù)據(jù)的一個*簡單的方法就是傳遞消息緩沖區(qū)的指針。 因此,這種用來傳遞消息緩沖區(qū)指針的數(shù)據(jù)結(jié)構就稱為消息郵箱。相對于 μC/OS-II , μC/OS-III 有內(nèi)在性能測試,它允許用戶測得系統(tǒng)的*長關中斷時間,也就是提供了一些工具可以測量每個任務關中斷的時間;用戶在測得每個任務的*長禁止調(diào)度時間基礎上,可以測得系統(tǒng)禁止任務調(diào)度的*長時間,也是說做了個測量;每次發(fā)出的信息都帶有時間戳,用戶也容易得到任務級的響應時間。 這樣便于優(yōu)化各個任務之間的通信,在保證測量數(shù)據(jù)準確的前提下提高響應的時間。
3 結(jié)束語
本文基于現(xiàn)代智能流量儀表的特點提出了基于 μC/OS-III的智能流量儀表人機界面設計, 將 μC/OS-III 移植到 Cortex-M3 處理器之后能有效地優(yōu)化程序,實現(xiàn)人機界面更加實時便捷的交互, 不僅能保證測量的可靠性還能實時對測量數(shù)據(jù)進行傳輸避免了多任務之間的沖突。
在工業(yè)生產(chǎn)中,經(jīng)常需要對生產(chǎn)過程中各種流動介質(zhì)(如液體、氣體和蒸汽、固體粉末)的流量進行檢測,以便有效地控制生產(chǎn)過程和了解更多有關生產(chǎn)的參數(shù)。 隨著智能流量儀表的不斷普及, 不斷優(yōu)化人機界面的設計也成為各個智能儀表生產(chǎn)廠家關注的發(fā)展方向。 為了提高智能流量儀表測量、處理數(shù)據(jù)的實時性和人機交互的可靠性, 本文提出了基于實施嵌入式操作系統(tǒng) μC/OS-III 的設計方法,優(yōu)化了人機界面的交互。
1 智能流量儀表概述
JKM-LDE電磁流量計是一類新型的、 內(nèi)部裝有微處理器或單片機的微機化電子儀器,它是由傳統(tǒng)的電子儀器發(fā)展而來的,但在結(jié)構和內(nèi)涵上已經(jīng)發(fā)生了本質(zhì)的變化。 回顧電子儀器的發(fā)展歷程,從儀器的工作原理來看, 是從模擬式電子儀器階段發(fā)展到數(shù)字式電子儀器階段,再發(fā)展到智能型儀器階段。 智能流量儀表具有以下特點:
1 )自動化程度高。 智能流量儀表采用了微控制器為控制核心,具備良好的可編程能力,可以輕松完成數(shù)據(jù)自動采集、過程自動控制、故障自動診斷、數(shù)據(jù)自動處理等功能。 這不僅提高了工作效率,節(jié)省了勞動力,而且使自動化程度得到了提高。
2 )接口豐富。 JKM-LDE電磁流量計往往都具備強大的系統(tǒng)功能接口,且接口種類多、數(shù)量多、功能強。 如模擬量輸入和輸出、開關量輸入和輸出、人機接口和通訊接口等。
3 )具備通訊能力。JKM-LDE電磁流量計幾乎都具備通訊接口,如 RS-232C 接口、 RS485 接口、 USB 接口和以太網(wǎng)接口等, 使得儀表本身能與外界有良好的信息交互。
4 )多功能化、小型化和高可靠性。隨著科技的飛速發(fā)展使得微控制器芯片、外圍電路芯片等器件集成度逐漸提高。 芯片功能越來越強,少數(shù)的幾個芯片就可以實現(xiàn)強大的功能。
5 )人機界面信息的交互更加實時,通過各種信息的反饋及時提醒用戶在測量過程中出現(xiàn)的異常情況以保證參量參數(shù)的可靠性。
2 基于 μC/OS-III 在人機界面的應用
2.1 嵌入式實時操作系統(tǒng)
嵌入式系統(tǒng),就是為了實現(xiàn)特定的功能,將硬件和軟件連結(jié)起來的計算機系統(tǒng)。 然而,隨著科技的不斷發(fā)展,單純的前、后臺程序開發(fā)機制已經(jīng)不再能滿足越來越復雜化和多樣化的嵌入式應用需求,因而現(xiàn)在常常采用嵌入式實時操作系統(tǒng)( RTOS , RealTime Operating System )進行實時多任務程序的開發(fā)。 μC/OS-III 是基于 μC-OS 發(fā)展起來的, 它是美國嵌入式系統(tǒng)專家 Jean J Labrosse 用 C 語言編寫的一個搶占式的多任務實時內(nèi)核,其*大的特點是結(jié)構小巧。 μC/OS-III 是一個可擴展的,可固化的,搶占式的實時內(nèi)核,它管理的任務個數(shù)不受限制。 它是*三代內(nèi)核,提供了現(xiàn)代實時內(nèi)核所期望的所有功能包括資源管理、同步、內(nèi)部任務交流等。 μC/OS-III 也提供了很多特性是在其他實時內(nèi)核中所沒有的。 比如能在運行時測量運行性能,直接得發(fā)送信號或消息給任務,任務能同時等待多個信號量和消息隊列。 如圖 1 所示實時應用程序的設計通常包含多個任務,每個任務都是整體應用的一部分,都被賦予了一定的優(yōu)先級, 當讓也可以多個任務共一個優(yōu)先級, 且有獨自的一套CPU 寄存器和棧空間。
μC/OS-III 中的每一個任務都是無限循環(huán)的 。 每個任務會有五種狀態(tài),并且處于五種狀態(tài)之一。 這五種狀態(tài)分別是:睡眠態(tài)、就緒態(tài)、運行態(tài)、等待態(tài)以及中斷服務態(tài)。 睡眠態(tài)是指任務只是以代碼的形式存在于程序空間, 并未交給操作系統(tǒng)進行管理; 就緒態(tài)是指系統(tǒng)為任務配備了任務控制塊且在任務就緒表中進行了就緒登記,使任務具備了運行的充分條件;運行態(tài)是指處于就緒態(tài)的任務如果經(jīng)調(diào)度器判斷獲得了 CPU 的使用權時的狀態(tài);等待態(tài)則是正在運行的任務,需要等待一段時間或需要等待一個事件發(fā)生再運行; 中斷服務狀態(tài)是指一個正在運行的任務一旦響應中斷申請就會中止運行而去執(zhí)行中斷服務程序。這五種狀態(tài)在系統(tǒng)管理下的轉(zhuǎn)換關系由圖 2 所示。
2.2 人機界面應用實例
人機界面( Human Machine Interaction ,簡稱 HMI ),又稱用戶界面或使用者界面,是人與計算機之間傳遞、交換信息的媒介和對話接口,是計算機系統(tǒng)的重要組成部分。 在智能流量儀表的應用中,界面不僅顯示測量的流量數(shù)據(jù)和各種報警信息,還能通過界面參數(shù)的設定改變測量有關的參數(shù)。 它主要包括鍵盤和LCD 顯示。
下面以電磁流量計為例說明基于 μC/OS-III 的人機界面設計。 先將 μC/OS-III 移植到 Cortex-M3 處理器上,這里選用的是 STM32F103VET6 。電磁流量計的應用程序若按照上節(jié)的任務種類劃分有: 數(shù)據(jù)采集任務、數(shù)據(jù)處理任務, 4~20mA輸出任務, Hart 通訊任務以及用戶交互任務。 先對不同的任務進行優(yōu)先級的劃分,如表 1 所示。
在多任務操作系統(tǒng)中,任務之間常常需要通過傳遞一個數(shù)據(jù)的方式來進行通訊。 為了適應不同數(shù)據(jù)的需要,可以在內(nèi)存中創(chuàng)建一個存儲空間作為該數(shù)據(jù)的緩沖區(qū)。如果把這個緩沖區(qū)叫做消息緩沖區(qū),那么在任務間傳遞數(shù)據(jù)的一個*簡單的方法就是傳遞消息緩沖區(qū)的指針。 因此,這種用來傳遞消息緩沖區(qū)指針的數(shù)據(jù)結(jié)構就稱為消息郵箱。相對于 μC/OS-II , μC/OS-III 有內(nèi)在性能測試,它允許用戶測得系統(tǒng)的*長關中斷時間,也就是提供了一些工具可以測量每個任務關中斷的時間;用戶在測得每個任務的*長禁止調(diào)度時間基礎上,可以測得系統(tǒng)禁止任務調(diào)度的*長時間,也是說做了個測量;每次發(fā)出的信息都帶有時間戳,用戶也容易得到任務級的響應時間。 這樣便于優(yōu)化各個任務之間的通信,在保證測量數(shù)據(jù)準確的前提下提高響應的時間。
3 結(jié)束語
本文基于現(xiàn)代智能流量儀表的特點提出了基于 μC/OS-III的智能流量儀表人機界面設計, 將 μC/OS-III 移植到 Cortex-M3 處理器之后能有效地優(yōu)化程序,實現(xiàn)人機界面更加實時便捷的交互, 不僅能保證測量的可靠性還能實時對測量數(shù)據(jù)進行傳輸避免了多任務之間的沖突。
上一篇:探究勵磁線圈對電磁流量計的影響