<address id="9993j"><address id="9993j"><listing id="9993j"></listing></address></address><form id="9993j"><nobr id="9993j"><meter id="9993j"></meter></nobr></form>

    <output id="9993j"><nobr id="9993j"></nobr></output>

    <noframes id="9993j">
        <address id="9993j"><address id="9993j"></address></address>

          <noframes id="9993j"><address id="9993j"><th id="9993j"></th></address>

          <noframes id="9993j">

            <em id="9993j"><form id="9993j"><nobr id="9993j"></nobr></form></em>

            新聞中心

            EEPW首頁 > 設計應用 > 基于STM32和μCOS的醫用注射泵系統軟件設計

            基于STM32和μCOS的醫用注射泵系統軟件設計

            作者:王婉 劉振洗 胡林軍 郭書磊 時間:2017-11-28來源:電子產品世界收藏
            編者按:本文提出一種采用STM32F103ZET6處理器平臺,使用μC/OS-II操作系統,借助μC/GUI控件進行界面開發的注射泵控制系統。采用基于模塊化分層的軟件設計方法,滿足注射泵對多功能、易用界面、低功耗和多任務的需求,以提高醫用注射泵的工作效率及可靠性。

            作者 / 王婉 劉振洗 胡林軍 郭書磊 中國電子科技集團公司第四十一研究所(安徽 蚌埠 233010)

            本文引用地址:http://www.snowlakeshores.com/article/201711/372159.htm

            王婉(1989-),女,碩士,助理工程師,研究方向:醫療電子。

            摘要:本文提出一種采用F103ZET6處理器平臺,使用操作系統,借助控件進行界面開發的注射泵控制系統。采用基于模塊化分層的軟件設計方法,滿足注射泵對多功能、易用界面、低功耗和多任務的需求,以提高的工作效率及可靠性。

            引言

              是一種新型泵力儀器,將少量藥液精確、均勻、持續地泵入病人體內,操作便捷、可靠性好。注射泵應具備的功能有:設置輸液速度和輸液量,隨時更改輸液參數,程序預設和數據保存,對異常情況進行報警。使用搶救危重患者,能減輕護士工作量,提高工作效率,準確、安全、有效地配合醫生搶救。

            1 系統概述

              本文設計的系統采用閉環控制思想,結合嵌入式技術、傳感檢測技術和電機控制技術,從而實現高精度、高可靠性的醫用注射泵系統開發。系統整體組成框圖如圖1所示,注射泵控制系統主要包括注射器推桿位置檢測模塊、阻塞壓力檢測模塊、注射器規格檢測模塊、聲光報警模塊、LCD顯示模塊、注射參數存儲模塊和電源管理模塊。注射泵工作時,F103ZET6(以下簡稱)處理器發出PWM脈沖使步進電機旋轉,而步進電機通過機械傳動裝置將旋轉運動變成直線運動,推動注射器的活塞進行注射,同時STM32通過采集傳感器反饋的數據指導注射泵工作。

            2 軟件設計

            2.1 整體軟件架構

              本系統采用STM32F103ZET6處理器平臺,以 實時操作系統為系統平臺,并應用了圖形支持軟件。采用基于模塊化分層的軟件設計方法,具體如圖2所示。包括應用軟件層、系統軟件層和硬件外設配置層,每一層又分為不同的功能模塊,方便注射泵的調試和功能擴展。

              應用軟件層通過系統建立任務,包括系統主任務、界面任務、鍵盤掃描任務、旋轉編碼器檢測任務和報警指示燈顯示任務。

              系統軟件層包括移植于STM32處理器的μC/GUI圖形系統、μC/OS-Ⅱ操作系統和中斷管理系統。μC/GUI界面程序實現實時顯示注射泵的各種參數和運行狀態,如注射器規格、輸液速度、預輸液量、已輸液量、電池電量、注射運行標志及報警信息提示等,使操作者能夠實時掌握注射泵的工作狀態,并提供良好的人機交互界面;μC/OS-Ⅱ操作系統負責執行任務調度、任務管理、時間管理、內存管理和任務間的通信與同步等基本功能;異常與中斷處理模塊提供中斷服務程序,主要包括系統時鐘節拍處理函數、按鍵及編碼器定時掃描中斷、電源管理模塊定時掃描中斷、產生PWM脈沖的定時中斷、EEPROM讀寫中斷、注射器規格及脫落檢測中斷。

              硬件外設配置層主要完成外圍器件的驅動及應用配置。包括LCD驅動配置,壓力傳感器應用配置,注射器檢測用傳感器驅動配置,按鍵、編碼器、LED燈及蜂鳴器應用配置,注射器推桿位置檢測用傳感器應用配置,EEPROM驅動配置和步進電機驅動配置。

              該設計具有界面化控制、多任務處理、數據實時傳遞,并配合人性化的鍵盤板,能極大地提高使用者的工作效率。

            2.2 系統主程序設計

              系統的主程序講述的是整個系統的執行過程,如圖3所示。在所有的初始化工作完成后,進入系統主界面,通過按鍵設置注射參數,包括注射模式、藥物量、注射時間、注射速度等參數,然后檢測注射器規格,開始注射。傳感檢測模塊實現閉環控制、保證本系統安全可靠運行,對注射過程進行注射阻塞檢測、注射器脫落檢測和注射器推桿位置檢測,如果不滿足要求則進行報警、停止注射。并在剩余藥量小于預定值時進行注射近空報警,提醒用戶提前做好準備。

            2.3 功能模塊軟件實現

            2.3.1 步進電機控制

              本設計采用兩相混合式步進電機,步進電機根據電機驅動器的控制信號進行工作。通過改變PWM脈沖頻率和占空比控制電機的運動速度。電機運動方向固定為正轉,使能信號由STM32的GPIO引腳控制,高電平使能控制信號輸出,電機轉動。

              PWM脈沖由STM32的內部定時器產生,通過改變相關寄存器配置來改變脈沖頻率與占空比。PWM 配置分以下幾個步驟:

              1)定時器時鐘經預分頻器分頻后為計數器提供時鐘;

              2)重裝載寄存器和輸出比較寄存器的數值不斷與計數器比較;

              3)計數器的數值與重裝載寄存器相等時,復位計數器并翻轉輸出信號;

              4)計數器數值與輸出比較寄存器相等時,翻轉輸出信號。

            2.3.2 注射器檢測

              一般的醫用注射泵均使用ml注射器,常用的規格有10ml、20ml、30ml和50ml,系統在進行注射前需要獲取注射器規格,注射過程中如果注射器發生脫落,需要及時報警并停止輸液。本設計使用光電開關檢測注射器規格和注射器脫落與否。檢測注射器規格的信號連接至STM32的GPIO引腳,通過外部中斷的方式檢測對應GPIO引腳的電平變化來判斷注射器規格同理,可以檢測注射器是否脫落。

            2.3.3 注射器推桿位置檢測

              注射過程中需要通過注射器推桿位移的變化來計算已注射藥量,本設計使用位移傳感器檢測注射器推桿位置。將檢測信號連接至STM32的ADC模塊,在注射時,首先測出注射器推桿的初始位置電壓值,然后實時獲取推桿運動中的電壓值,根據兩個電壓值之差,就可得出注射器推桿運動的距離,繼而算出已注射容量。

            2.3.4 阻塞壓力檢測

              當針頭堵塞或輸液管路打折等原因造成輸液不暢時,液路系統壓力大于正常注射時的壓力,可通過檢測注射器推桿處的壓力值進行判斷。檢測的壓力信號連接至STM32的ADC引腳,STM32采集變換并放大1000倍后的電壓值,然后根據應變片壓力和電壓的線性關系,計算出實時壓力值,如果壓力值大于預設的報警值,則進行報警,并停止注射。

            2.3.5 聲光報警

              當注射泵出現異常工作時,需要及時進行警告處理。本系統采用蜂鳴器、LED、LCD三種方式進行報警。蜂鳴器和LED分別接到STM32的GPIO引腳,當注射完成或注射阻塞時,對應的LED點亮并蜂鳴報警;當電池電量不足、注射器脫落、注射器推桿錯位、注射即將完成時,LCD提示并蜂鳴報警。

            2.3.6 注射參數存儲

              為了方便查詢上次關機時的輸液模式、參數等信息,本設計添加了參數存儲功能。EEPROM采用I2C總線與STM32交換數據,每次開機時,讀取EEPROM存儲的參數值并顯示,每次設置的參數值改變時都進行重新存儲。

            2.3.7 鋰電池供電管理

              本設計具有交、直流兩種供電方式,并且兩種方式能自動切換。使用電源管理模塊獲取電池的電量信息,通過SMBD和SMBC將鋰電池連接到STM32的I2C總線,采用SMBus總線模式定時讀取電池信息,并在LCD實時顯示電量。如果電池電量不足,則進行報警,如果充電完成,則點亮LED示意。

            2.3.8 按鍵及編碼器檢測方案

              按鍵連接至STM32的GPIO引腳,編碼器連接至STM32定時器的編碼器接口引腳。通過定時器掃描按鍵和編碼器狀態。按鍵分為短按和長按功能,短按可實現開始/停止、蜂鳴器消音、模式切換、參數選擇和報警消除功能,長按可實現快注、注射器標定功能。編碼器用于實現參數值的輸入,可實現小數與整數部分的切換,參數值改變大小與旋轉速度一致。

            2.3.9 LCD顯示

              LCD實現實時顯示注射泵的各種參數和運行狀態,如注射器規格、注射速度、預輸藥量、已輸藥量、電池電量、注射運行標志及報警信息提示等,使操作者能夠實時掌握注射泵的工作狀態,并提供良好的人機交互界面。本設計采用FSMC(靈活的靜態存儲器控制器)接口控制液晶顯示模塊,采用16位寬數據總線,使用NE1作為片選線,借助μC/GUI控件繪制所需的交互界面。

            3 結論

              本設計提供了一種人機交互友好、占用資源少、可移植性強、基于模塊化分層的注射泵軟件結構,能夠滿足注射泵對多功能、易用界面、低功耗以及多任務的需求,使醫用注射泵的工作效率顯著提高、可靠性變強。根據本軟件設計方法生產的注射泵適用于長時間微量、均勻、精確地注射藥液,性能上完全滿足國內醫院對靜脈輸液的要求。

              參考文獻:

              [1]王曉明.電動機的單片機控制 [M].北京航空航天大學出版社,2002.

              [2]劉偉.PWM技術在電機驅動控制中的應用[D].合肥工業大學,2009

              [3]簡毅,劉寶.基于AT91SAM9261的步進電機S曲線加減速控制研究與實現[J].輕工機械, 2012.

              [4]何伶俐,賀超,楊慶華.基于uPSD3234單片機的智能注射泵控制系統設計[J].綿陽師范學院學報,2008.

              [5]劉波文,孫巖.嵌入式實時操作系統uC/OS-II經典實例:基于STM32處理器[M].北京航空航天大學出版社,2014.

              本文來源于《電子產品世界》2017年第12期第43頁,歡迎您寫論文時引用,并注明出處。



            評論


            相關推薦

            技術專區

            關閉
            五月天国产成人AV免费观看