版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 本 科 畢 業(yè) 設 計</p><p> 醫(yī)院輸液控制系統(tǒng)的設計</p><p> 所在學院 </p><p> 專業(yè)班級 電子與信息工程 </p><p> 學生姓名 學號 </
2、p><p> 指導教師 職稱 </p><p> 完成日期 年 月 </p><p><b> 摘要</b></p><p> 通過靜脈輸液治療疾病是臨床醫(yī)學中諸多治療手段中比較重要的一種,大多數(shù)治療都會采用靜脈輸液來進行,然而
3、根據(jù)病人不同的病情和人體本身體質(zhì)上的差異以及藥物的不同,需要的輸液速率和劑量都因人而異。但目前在我國大多數(shù)醫(yī)院及醫(yī)療機構臨床輸液中采取的應對措施都基本是人工操作的,由醫(yī)務人員、患者或陪侍觀察藥液余量,再通過轉(zhuǎn)動輸液器上的手動滑輪來調(diào)節(jié)輸液速度,這些都是一個大約值,對每一個護士來說都不能確保它的穩(wěn)定性和安全性。而且也都沒有實現(xiàn)自動監(jiān)控管理,不僅給醫(yī)護人員、病人帶來不便,甚至會影響病人的治療效果,更不利于病區(qū)的綜合管理和醫(yī)療水平的提升。&l
4、t;/p><p> 本文介紹了基于STC12C5A16S2單片機的醫(yī)院輸液控制系統(tǒng),用激光檢測點滴速度、步進電機調(diào)節(jié)輸液速度、MAX485芯片進行主站和從站之間通信、液晶屏顯示主從站信息等,詳細說明了基于STC12C5A16S2單片機的醫(yī)院輸液控制系統(tǒng)設計中的關鍵軟硬件技術,設計了該系統(tǒng)的接口電路和系統(tǒng)軟件。使得護士站主機(主站)能同時監(jiān)控上百個病床(從站),主站能定時巡檢顯示病床實時狀況,當某個病床發(fā)生異常情況時
5、,主站和該病床都能發(fā)出聲光報警。病床從機和護士站主機間通訊距離可達100米以上,且具有很高的可靠性。這樣,醫(yī)護人員在護士站主機就能監(jiān)控所有的病床輸液情況,且不管哪個病床發(fā)生異常,護士都能及時、準確的提供治療和護理,減輕了護士的勞動強度,也提高了病人的安全和滿意度。</p><p> 關鍵詞:靜脈輸液;單片機;激光;監(jiān)控;報警</p><p><b> Abstract<
6、/b></p><p> Intravenous infusion is an important clinical treatment, depending on the patient’s condition and physical differences require different infusion speed and discharge. But most hospitals and m
7、edical institutions, infusion in the clinical response is generally taken by the patient, escort, or medical personnel to monitor liquid cushion the situation observed at any time. Nurses turn the manually pulley on the
8、infusion device to control the infusion rate. These are an imprecise value. Infusion did </p><p> This article describes the hospital infusion control system based on STC12C5A16S2 SCM. Using laser to detect
9、ive the infusion rate, stepper motor to regulate the infusion rate, the communication between master and slave station by MAX485 chip, LCD screen displays the main and slave station’s information, and so on. Detailed des
10、cription of the key design of the system hardware and software technology, designed the system’s interface circuit and system software. Nurses Station host can simultaneous</p><p> keywords: Intravenous inf
11、usion; SCM(Single Chip Micyoco) ; Laser; Monitor; Alarm</p><p><b> 目錄</b></p><p><b> 前言1</b></p><p> 第1章 系統(tǒng)方案設計2</p><p> 1.1 主站要求2</p&
12、gt;<p> 1.2 從站要求2</p><p> 1.3 主站、從站模塊設計3</p><p> 1.4 主站方案設計3</p><p> 1.5 從站方案設計4</p><p> 第2章 系統(tǒng)硬件設計6</p><p> 2.1 控制芯片6</p><p&
13、gt; 2.2 護士站主站電路設計7</p><p> 2.2.1 電源電路7</p><p> 2.2.2 顯示電路8</p><p> 2.2.3 按鍵電路9</p><p> 2.2.4 通信電路10</p><p> 2.2.5 報警電路11</p><p>
14、2.3 病床監(jiān)控從站電路設計11</p><p> 2.3.1 顯示電路11</p><p> 2.3.2 按鍵電路12</p><p> 2.3.3 通信和報警電路12</p><p> 2.3.4 滴速檢測電路12</p><p> 2.3.5 電機驅(qū)動電路13</p><
15、p> 第3章 系統(tǒng)軟件設計15</p><p> 3.1 主站程序設計15</p><p> 3.1.1 主站程序流程15</p><p> 3.1.2 12864液晶操作19</p><p> 3.1.3 按鍵操作22</p><p> 3.1.4 MAX485芯片操作22</p&
16、gt;<p> 3.1.5 報警操作23</p><p> 3.2 從站程序設計23</p><p> 3.2.1 從站程序流程23</p><p> 3.2.2 12232F液晶操作27</p><p> 3.2.3 點滴速度檢測30</p><p> 3.2.4 點滴速度控制3
17、1</p><p> 第4章 測試性能33</p><p><b> 結論34</b></p><p><b> 致謝35</b></p><p><b> 參考文獻36</b></p><p> 附錄1:主站電路圖37</p&
18、gt;<p> 附錄2:從站電路圖38</p><p> 附錄3:主站PCB39</p><p> 附錄4:從站PCB40</p><p> 附錄5:實物圖41</p><p><b> 前言</b></p><p> 目前,我國絕大部分醫(yī)療機構使用的一般都是人工
19、監(jiān)控點滴輸液裝置,將輸液瓶掛在專門的輸液架上,利用勢能差產(chǎn)生的壓強將藥液通過靜脈輸入到病人體內(nèi),用軟管夾的滾輪來控制點滴速度,醫(yī)護人員根據(jù)不同病人的病情、體質(zhì)的差異以及藥物的不同對輸液速度進行控制,而這也只是憑經(jīng)驗和肉眼觀察所得出的不精確的值。因此輸液過程異常、輸液速度發(fā)生異變或監(jiān)控處理不及時而引發(fā)醫(yī)療事故的概率較高,例如:當輸液完成需要換藥液時,若不及時處理就會出現(xiàn)空氣進入血管內(nèi)形成空氣栓塞、凝血堵塞針頭等情況,輕則影響治療,重則會危
20、及病人生命安全,造成醫(yī)療事故。醫(yī)護人員的工作量大,勞動負擔重。所以這種手工操作必須用自動化監(jiān)控系統(tǒng)來代替。</p><p> 醫(yī)院輸液控制系統(tǒng)因此被設計成能自動監(jiān)控輸液速度,并可在50~120(滴/分)之間設定所需的任意輸液速度。當輸液過程異常,病床和護士站主機都會立即發(fā)出聲光報警信號,以提醒醫(yī)護人員及時進行處理。醫(yī)護人員無需再在病床間來回監(jiān)控,在護士站主機便可看到各個病床的輸液情況,通過護士站主機提供的功能鍵
21、便可對各個病床的輸液情況按所需進行調(diào)節(jié)。這套系統(tǒng)通過使用光電檢測技術、單片機技術、通信技術等方便了病人和醫(yī)護人員的及時聯(lián)系,對提高醫(yī)務質(zhì)量起著極其重要的作用,同時也減少了醫(yī)護人員的工作強度和失誤,提高了治療質(zhì)量、病人的安全以及病人對醫(yī)護人員及醫(yī)院的滿意度等,實現(xiàn)了醫(yī)院護理自動化和智能化。</p><p> 本文將介紹基于STC12C5A16S2單片機的醫(yī)院輸液控制系統(tǒng)的設計,以便安裝和維護該系統(tǒng)時的查詢和操作。
22、</p><p> 第1章 系統(tǒng)方案設計</p><p> 本次設計要求設計一套用于醫(yī)院病床的輸液監(jiān)控系統(tǒng),它由一個護士站主機和128個從站病房輸液監(jiān)控器兩部分組成??紤]到目前醫(yī)院里都有很多的病床,為了對每個病床進行監(jiān)控,設計了如圖1.1所示的病房輸液監(jiān)控系統(tǒng)框圖:</p><p> 圖1.1 病房輸液監(jiān)控系統(tǒng)框圖</p><p>
23、 根據(jù)上面的系統(tǒng)框圖可以看出,多個病床監(jiān)控器通過數(shù)據(jù)線連接到護士站主機,由護士站主機處理及控制從站(病床監(jiān)控器)的數(shù)據(jù)交互。由一個主機站來監(jiān)控多個從站,這樣醫(yī)護人員只要通過一個終端就可以方便有效及時的處理多個病床的信息,而不用再在各個病床之間來回巡視檢查,可以提高醫(yī)務人員的工作效率并降低無謂的體力勞動。</p><p><b> 1.1 主站要求</b></p><p&
24、gt; 主站主要負責接收并處理各個從站的信息,通過顯示模塊顯示給醫(yī)護人員,讓醫(yī)護人員能實時監(jiān)控各個病床的情況。</p><p><b> 主站具體要求如下:</b></p><p> ?。?)主站能巡回顯示各從站的編號、設定點滴速度和當前點滴速度。巡回時間(3-10秒)可由主站任意設定。</p><p> ?。?)收到從站發(fā)來的報警信號后,
25、主站能聲光報警并顯示相應的從站號,并可用手動方式解除報警狀態(tài)。</p><p> (3)從站直流電源由主站集中供給,主站和從站間的通信協(xié)議自定,但應盡可能得減少主站和從站間連接線數(shù)量,通信距離要求大于30米。</p><p> ?。?)任一從站的輸液點滴速度均可由主站設定。</p><p><b> 1.2 從站要求</b></p&g
26、t;<p> 每一個從站都可以看作一個獨立的終端,所要完成的工作都是相同的。即檢測病床輸液點滴的滴速及時的反饋給主站,同時可以通過判斷滴速或者按照主站的命令抑或人為的方式來自動調(diào)節(jié)滴速以及發(fā)出報警、解除報警等應急措施。</p><p><b> 從站具體要求如下:</b></p><p> ?。?)具有站號和點滴速度等參數(shù)的輸入設定功能,在顯示器上能
27、同時顯示站號、設定點滴速度和當前實際點滴速度。</p><p> ?。?)在滴斗處檢測點滴速度,并能動態(tài)顯示點滴速度(滴/分)。</p><p> ?。?)自動控制點滴速度,點滴速度設定范圍為50 ~ 120(滴/分),控制誤差范圍為設定值±10%。</p><p> ?。?)調(diào)整時間≤3min(從改變設定值起到點滴速度基本穩(wěn)定,能人工讀出數(shù)據(jù)為止)。&l
28、t;/p><p> ?。?)輸液結束(滴速為零),應在3秒內(nèi)發(fā)出聲光報警信號。</p><p> 1.3 主站、從站模塊設計</p><p> 根據(jù)以上要求,設計主站和從站的基本模塊如圖1.2所示。</p><p> 圖1.2 主站、從站模塊組成框圖</p><p> 主站主要由5個部分組成:電源模塊、顯示模塊、
29、按鍵模塊、通信模塊、報警模塊。</p><p> 從站主要由6個部分組成:顯示模塊、按鍵模塊、通信模塊、報警模塊、滴速檢測模塊、電機調(diào)速模塊。</p><p> 1.4 主站方案設計</p><p> ?。?)從站的電源是由主站來供給的,所以將電源模塊設計集成到主站設計的一部分。因為單片機、LCD、LED、蜂鳴器等元器件所需要的電壓并不高,只有用來調(diào)節(jié)滴速的電機
30、需要較高的電壓,考慮電源的穩(wěn)定性和持久性,選擇通過變壓器將220V的交流電轉(zhuǎn)換為合適的直流電壓之后再給整個系統(tǒng)供電。</p><p> ?。?)主站的顯示器上要巡回顯示各從站的編號、設定點滴速度和當前實際點滴速度,當從站有報警發(fā)生時,還要顯示從站的報警信息,信息量較大,選擇用12864液晶顯示器來進行信息的顯示。</p><p> ?。?)主站的人機交互操作通過幾個按鍵來實現(xiàn)控制,聲光報警
31、選擇用蜂鳴器和LED來實現(xiàn)。</p><p> ?。?)主站和從站之間的通信,考慮到主站要和128個從站進行通信,而且要求主站和從站之間的連接線數(shù)量越少越好,選擇使用高傳輸速率、低功耗的MAX485通信芯片來完成這一工作,而且由于該芯片具有四分之一單位負載的接收器輸入阻抗,使得總線上最多可以有128個MAX485收發(fā)器。即可以通過讓每個從站配備一塊MAX485芯片,讓主站通過尋址操作來確定與哪個從站通信,以此達到
32、主站監(jiān)控多個從站的效果。</p><p> 1.5 從站方案設計</p><p> ?。?)從站只需顯示本站的編號,設定點滴速度和當前實際點滴速度即可,要顯示信息的比較少,選擇使用12232F液晶顯示器來進行顯示。</p><p> (2)從站的按鍵、報警采用和主站一樣的設計。</p><p> (3)從站需要對點滴的滴速進行檢測,而點
33、滴滴速檢測可利用液滴的折射特性[6]來實現(xiàn),利用此原理的檢測方法有紅外線對管[6]、激光檢測等。因為點滴測速很容易受外界的干擾,為了提高檢測的可靠性和抗干擾性,選擇采用比紅外線穩(wěn)定性更好的激光檢測。檢測的原理為:在滴斗處安裝一個激光發(fā)射管和一個激光接收管,平時沒有液滴低落時,激光接收管能接收到激光發(fā)射管發(fā)射的激光信號,而當液滴滴落時,激光被液滴所折射,偏離原先的軌道,激光接收管就不能收到激光發(fā)射管發(fā)射的激光信號,一次液滴滴落就能產(chǎn)生一個
34、激光脈沖,單片機只要通過對激光脈沖的計數(shù)就能實時的計算出點滴的滴速。原理圖如圖1.3所示。</p><p> 圖1.3 液滴裝置結構示意圖</p><p> ?。?)由于液壓會隨著高度的增加而增大,而壓強的增大滴速也隨之加快,所以可通過電機拖動使儲液瓶上下移動來調(diào)節(jié)滴速,機械結構示意圖如圖1.3所示。而電機的特性直接影響到點滴速度的調(diào)節(jié)時間和穩(wěn)定性,故選擇使用精確性好的步進電機來進行調(diào)
35、速控制,通過步進電機的正轉(zhuǎn)、反轉(zhuǎn)可拖動儲液瓶上升或者下降,從而實現(xiàn)滴速的增加或減慢。</p><p> 第2章 系統(tǒng)硬件設計</p><p> 本章具體介紹醫(yī)院輸液控制系統(tǒng)中各個模塊的電路實現(xiàn)和接口設計。</p><p><b> 2.1 控制芯片</b></p><p> 本次設計的醫(yī)院輸液監(jiān)控系統(tǒng)采用的單片機
36、型號為STC12C5A16S2,它屬于STC12C5A60S2系列單片機,有16K用戶應用程序空間,1280字節(jié)片上集成RAM,是高速、低功耗、超強抗干擾的新一代8051單片機。內(nèi)部集成有MAX810專用復位電路,2路PWM,8路高速10位A/D轉(zhuǎn)換(250K/S,即25萬次/秒)。</p><p> STC12C5A60S2系列單片機的內(nèi)部結構框圖如圖2.1所示。STC12C5A60S2單片機中包含中央處理器
37、(CPU)、程序存儲器(Flash)、數(shù)據(jù)存儲器(SRAM)、定時/計數(shù)器、UART串口、I/O接口、高速A/D轉(zhuǎn)換、SPI接口、PCA、看門狗及片內(nèi)R/C振蕩器和外部晶體振蕩電路等模塊。STC12C5A60S2系列單片機幾乎包含了數(shù)據(jù)采集和控制中所需的所有單元模塊,可稱得上一個片上系統(tǒng)。</p><p> 圖2.1 STC12C5A60S2系列內(nèi)部結構框圖</p><p> STC
38、12C5A60S2系列單片機引腳如圖2.2所示。</p><p> 圖2.2 STC12C5A60S2系列單片機管腳圖(PDIP-40封裝)</p><p> 其中P0口既可以作為輸入/輸出口,也可以作為地址/數(shù)據(jù)復用總線使用。P1口是用戶專用8位準雙向I/O口,具有通用輸入/輸出功能,每一位都能獨立地設定為輸入或輸出。P2口是8位準雙向I/O口。外接I/O設備時,可作為擴展系統(tǒng)的地
39、址總線,輸出高8位地址,與P0口一起組成16位地址總線。P3口與P1、P2口內(nèi)部差別不大,都為準雙向口,它除了可以作為標準I/O口外,還有比較重要的第二功能,如外部中斷輸入、定時器/計數(shù)器輸入、串行數(shù)據(jù)收發(fā)、外部RAM讀寫等,可根據(jù)實際情況確定它進入第一功能狀態(tài)還是第二功能狀態(tài)。</p><p> 另外,STC12C5A60S2系列單片機提供了10個中斷請求源,它們分別是外部中斷0、定時器中斷0、外部中斷1、定
40、時器中斷1、串口1中斷、A/D轉(zhuǎn)換中斷、低壓檢測中斷、PCA中斷、串口2中斷及SPI中斷。所有中斷都具有四個中斷優(yōu)先級別。用戶可以使用中斷允許寄存器IE或者中斷相應的允許位來屏蔽或允許某個對應中斷,使用中斷優(yōu)先級控制寄存器IP設置各個中斷源的優(yōu)先級別。中斷請求的響應遵從兩個基本規(guī)則:1、低優(yōu)先中斷可被高優(yōu)先級別中斷所中斷,反之不能;2、任何一種中斷(不管優(yōu)先級別高低),一旦得到響應,不會再被它的同級中斷所中斷。</p>&
41、lt;p> 基于以上這些性能特色,本次設計的醫(yī)院輸液控制系統(tǒng)的主站、從站都采用STC12C5A16S2單片機為核心,對檢測的信號進行處理和分析,并控制相應的電路進行運作。</p><p> 2.2 護士站主站電路設計</p><p> 2.2.1 電源電路</p><p> 電源電路通過一個變壓器將220V的交流電轉(zhuǎn)換為12V,再通過一個整流橋可輸出1
42、2V電壓給從站的步進電機使用,再通過一個穩(wěn)壓管后可輸出5V電壓給主站、從站供電。電路如圖2.3所示。</p><p> 圖2.3 電源電路</p><p> 2.2.2 顯示電路</p><p> 12864液晶顯示器是一種顯示分辨率為128×64、具有多種接口方式的點陣圖形液晶顯示模塊。集成中文字庫的12864液晶內(nèi)置含8192個漢字的16
43、15;16點陣漢字庫,和含128個字符的16×8點陣ASCII字符集??梢燥@示8×4行16×16點陣的漢字,以及顯示圖形界面。該模塊具有靈活的接口方式和簡單、方便的操作指令,與外部CPU接口可采用4位/8位并行方式或者2線/3線串行方式。不論硬件電路結構或顯示程序,由該模塊構成的液晶顯示方案相比同類型的圖形點陣液晶顯示模塊都要簡潔的多,而且低電壓低功耗,價格也相對低廉。</p><p&g
44、t; 12864液晶接口信號說明如表2.1所示。</p><p> 表2.1 12864液晶接口信號</p><p> 因為主站要巡檢多個從站的信息并進行顯示,對數(shù)據(jù)的實時性要求比較高,故用STC12C5A16S2單片機的P0口和P2口對12864液晶顯示器進行8位并行控制。</p><p> 電路連接如圖2.4所示。</p><p&g
45、t; 圖2.4 12864液晶與單片機并行連接電路</p><p> 2.2.3 按鍵電路</p><p> 主站按鍵電路主要是監(jiān)控從站,能隨時查看從站信息并相應的控制。主站按鍵只有三個,一個是功能鍵,兩個是選擇鍵。能對從站滴速控制和巡回檢查。三個按鍵分別與P2.0、P2.1、P2.2這三個I/O口相連,電路如圖2.5所示。</p><p> 圖2.5
46、主站按鍵電路</p><p> 2.2.4 通信電路</p><p> 主站和從站的通信采用MAX485芯片, MAX485芯片是用于RS-485與RS-422通信的低功耗收發(fā)器,每個器件中都內(nèi)置有一個驅(qū)動器和一個接收器,并且MAX485的驅(qū)動器擺率不受限制,可以實現(xiàn)最高2.5Mbps的傳輸速率。最主要該芯片具有很長的通信距離。</p><p> MAX485
47、芯片工作電壓為+5V,額定電流為300 μA,通訊方式為半雙工,功能為實現(xiàn)TTL電平轉(zhuǎn)換為RS-485電平。</p><p> MAX485芯片的結構簡單引腳少,操作起來非常容易。內(nèi)置的驅(qū)動器的輸入端為DI端口,接收器的輸出端為RO端口。在與單片機進行連接時,只需將這兩個端口與單片機接收、發(fā)送數(shù)據(jù)用的RXD、TXD端口相連即可。</p><p> RE和DE端口是用來控制接收和發(fā)送使能
48、的使能端口,往RE端口寫0可使器件工作于接收狀態(tài);往DE端口寫1可使器件工作于發(fā)送狀態(tài)。因為MAX485芯片工作在半雙工狀態(tài),所以只需用單片機的一個通用I/O口來控制這兩個管腳即可。即一般可以直接將RE端口接地,使MAX485芯片在平時處于接收狀態(tài),當要發(fā)送數(shù)據(jù)時,通過單片機引腳將DE端口拉高,來使MAX485芯片工作于發(fā)送狀態(tài),數(shù)據(jù)發(fā)送完畢后再拉低DE端口,讓MAX485芯片繼續(xù)處于接收狀態(tài)。</p><p>
49、 MAX485芯片的A端口和B端口分別為接收和發(fā)送的差分信號端,即當A端口的電平高于B端口時,MAX485芯片發(fā)送的數(shù)據(jù)為1;反之,當A端口的電平低于B端口時,MAX485芯片發(fā)送的數(shù)據(jù)為0。通過單片機來對MAX485芯片進行控制的操作同樣非常簡單,只需要一個信號控制MAX485芯片的接收和發(fā)送即可。同時為了提高穩(wěn)定性和精確性,可以考慮在A端口和B端口之間加匹配電阻,一般可選100Ω的電阻。</p><p>
50、 具體電路如圖2.6所示。</p><p> 圖2.6 MAX485與單片機連接電路</p><p> 2.2.5 報警電路</p><p> 當發(fā)生異常情況時,采用聲光報警。聲音報警采用蜂鳴器,光報警采用發(fā)光二極管。單片機接收到異常信號,驅(qū)動蜂鳴器和發(fā)光二極管工作,來提醒護士。</p><p> 通過單片機的P2.3口來驅(qū)動蜂鳴器
51、和發(fā)光二極管,具體電路如圖2.7所示。</p><p> 圖2.7 聲光報警電路</p><p> 2.3 病床監(jiān)控從站電路設計</p><p> 2.3.1 顯示電路</p><p> 12232F液晶顯示器是一種主要由行驅(qū)動器、列驅(qū)動器及122×32全點陣液晶組成的圖形點陣液晶顯示器。集成中文字庫的12232F液晶內(nèi)置
52、含8192個漢字的16×16點陣漢字庫,和含128個字符的16×8點陣ASCII字符集。可完成圖形顯示,也可顯示7.5×2個(16×16點陣)漢字。與外部CPU接口可采用并行或串行方式控制。</p><p> 從站并不需要主站那么高的實時性,而且考慮到從站在使用時設計的體積越小越方便安裝,故只用STC12C5A16S2單片機的P0.0、P0.1、P0.2對12232F液晶
53、進行串行控制。</p><p> 12232F液晶串行接口信號說明如表2.2所示。</p><p> 表2.2 12232F液晶串行接口信號</p><p> 電路連接如圖2.8所示。</p><p> 圖2.8 12232F與單片機串行連接電路</p><p> 2.3.2 按鍵電路</p>
54、<p> 從站按鍵電路主要是設定從站的點滴速度以及報警,從站按鍵也只有3個,一個是報警鍵,兩個是選擇鍵。三個按鍵分別與P2.0、P2.1、P2.2這三個I/O口相連,電路同主站按鍵電路圖。</p><p> 2.3.3 通信和報警電路 </p><p> 因主站的通信系統(tǒng)和報警系統(tǒng)也同樣適合于從站,故通信系統(tǒng)和報警系統(tǒng)采用與主站一樣的硬件電路。</p>&
55、lt;p> 2.3.4 滴速檢測電路</p><p> 激光檢測電路分為兩個部分,一個為發(fā)射電路,一個為接收電路。單片機可通過采集接收電路所檢測到得激光脈沖來計算點滴速度。</p><p> 電路圖如圖2.9和圖2.10所示。</p><p> 圖2.9 激光發(fā)射電路</p><p> 圖2.10 激光接收電路</p
56、><p> 2.3.5 電機驅(qū)動電路</p><p> 步進電機是將電脈沖信號轉(zhuǎn)變?yōu)橄鄳俏灰苹蚓€位移的開環(huán)控制元件[7]。這種電磁機械裝置具有快速啟、停能力,在電機的負荷不超過它能提供的動態(tài)轉(zhuǎn)矩時,可以通過輸入脈沖來控制它在一瞬間的啟動或停止。而且在非超載情況下,電機的轉(zhuǎn)速、步距角、停止的位置只和輸入的脈沖信號的頻率和脈沖數(shù)有關,和環(huán)境溫度、氣壓、振動無關,也不受電網(wǎng)電壓的波動和負載變化
57、的影響。給電機加一個脈沖信號,電機則轉(zhuǎn)過一個步距角。這一線性關系的存在,加上步進電機只有周期性的誤差而無累積誤差等特點,步進電機多應用在需要精確定位的場合,其在速度、位置等控制領域的控制操作非常簡單。</p><p> 步進電機有三線式、五線式和六線式,但其控制方式均相同,都要以脈沖信號電流來驅(qū)動。假設每旋轉(zhuǎn)一圈需要200個脈沖信號來勵磁,可以計算出每個勵磁信號能使步進電機前進1.8°,其旋轉(zhuǎn)角度與脈
58、沖的個數(shù)成正比。步進電機的正、反轉(zhuǎn)由勵磁脈沖產(chǎn)生的順序來控制。本次醫(yī)院輸液監(jiān)控系統(tǒng)的設計中采用的是六線式四相步進電機,它的等效控制電路如圖2.11所示。它有4條勵磁信號引線A,B,C,D,通過控制這4條引線上勵磁脈沖產(chǎn)生的時刻,即可控制步進電機的轉(zhuǎn)動。每出現(xiàn)一個脈沖信號,步進電機只走一步。因此,只要依序不斷送出脈沖信號,步進電機就能實現(xiàn)連續(xù)轉(zhuǎn)動。</p><p> 圖2.11 步進電機的控制等效電路</
59、p><p> 步進電機的驅(qū)動有多種方法可選。</p><p> ?。?)利用三極管自己搭建驅(qū)動電路,不過這樣會非常麻煩,可靠性也無法保證。</p><p> ?。?)選用專用的電機驅(qū)動模塊,如FT5754,L298等,這類驅(qū)動模塊接口簡單,操作方便,它們既可以驅(qū)動步進電機,也可驅(qū)動直流電機。</p><p> ?。?)使用達林頓驅(qū)動器ULN28
60、03,該芯片單片最多可一次驅(qū)動八線步進電機,當然如果只有四線或六線制的也是沒有問題的。</p><p> 本次設計中采用的為使用達林頓驅(qū)動器ULN2803與六線制四相步進電機的連接方法。電路如圖2.12所示。JP4為電機六線接口,其中JP4的第3、4引腳連接在一起與電機的公共端相連,對應圖2.11中黑白兩條線,JP4的第一引腳對應步進電機的A,JP1的第2引腳對應步進電機的B,JP4的第5引腳對應步進電機的C,
61、JP4的第六引腳對應步進電機的D。這四條驅(qū)動線通過ULN2803后與單片機的P1.0~P1.3引腳相連。</p><p> 電路如圖2.12所示。</p><p> 圖2.12 步進電機與單片機連接電路</p><p> 第3章 系統(tǒng)軟件設計</p><p> 3.1 主站程序設計</p><p> 主站要
62、完成的功能主要是對從站進行定點檢測和巡回檢測,并和從站通過MAX485芯片進行數(shù)據(jù)交換。主站通過MAX485芯片獲得從站的信息,顯示到液晶顯示模塊上,并對從站的報警進行及時響應。</p><p> 3.1.1 主站程序流程</p><p> 主站程序主要是驅(qū)動MAX485芯片獲得各個從站的信息,然后驅(qū)動12864液晶顯示出所需信息,然后就循環(huán)檢測按鍵是否被按下,以及是否有從站報警,有就
63、進行相應處理,否則繼續(xù)檢測。</p><p> 部分主程序代碼如下:</p><p><b> /*主程序*/</b></p><p> void main()</p><p><b> {</b></p><p><b> FM = 1;</b&
64、gt;</p><p> UART_init();//UART初始化</p><p> lcd_init();//初始化LCD</p><p> disp_alphbelt(slave_index,0);</p><p> LCD_line_write(3,"查詢從站");</p><p&g
65、t;<b> while(1)</b></p><p><b> {</b></p><p> if(key_reg1 != K1) //add key</p><p><b> {</b></p><p><b> /*按鍵處理略*/</b>&
66、lt;/p><p><b> }</b></p><p> if(key_reg2 != K2) //dec key</p><p><b> {</b></p><p><b> /*按鍵處理略*/</b></p><p><b> }
67、</b></p><p> if(key_reg3 != K3) //mod key</p><p><b> {</b></p><p><b> /*部分處理略*/</b></p><p> if(work_st == 0) </p><p> {L
68、CD_line_write(3,"查詢從站");disp_alphbelt(slave_index,0);}</p><p> else if(work_st == 1) </p><p> {LCD_line_write(3,"巡檢從站");disp_alphbelt(slave_index,0);}</p><p>
69、 else if(work_st == 2) </p><p> {LCD_line_write(3,"設置從站");disp_alphbelt(slave_index,0);}</p><p> else if(work_st == 3) </p><p> {LCD_line_write(3,"設置巡檢時間");di
70、sp_set_time(check_time);}</p><p><b> }</b></p><p> if(work_st == 1) //巡檢</p><p><b> {</b></p><p> main_count++;</p><p> if(mai
71、n_count>(check_time*999))</p><p><b> {</b></p><p> main_count = 0;</p><p> slave_index = (slave_index+1)%128;</p><p> disp_alphbelt(slave_index,0);&l
72、t;/p><p><b> }</b></p><p><b> }</b></p><p> if(RI) //報警操作</p><p><b> {</b></p><p> if(!pack_receive(&sla_addr,&am
73、p;sla_instr,&temp1,&temp2))</p><p><b> {</b></p><p> if(sla_instr==SLAVE_ALARM)</p><p><b> {</b></p><p><b> FM = 0;</b>&
74、lt;/p><p> int2string(sla_addr,disp_ram,'0');</p><p> str_add_str(disp_ram," 號從站報警");</p><p> LCD_line_write(3,disp_ram);</p><p><b> }</b>
75、;</p><p><b> }</b></p><p><b> }</b></p><p> delay_1ms(1);</p><p><b> }</b></p><p><b> }</b></p>
76、<p> 主站程序流程圖見圖3.1,12864液晶、MAX485芯片操作等具體處理詳見以下各章節(jié)說明。</p><p> 圖3.1 主站程序流程圖</p><p> 3.1.2 12864液晶操作</p><p> 12864液晶并行寫操作時序圖如圖3.2所示。</p><p> 圖3.2 12864液晶并行寫操作時
77、序</p><p> 12864液晶并行讀操作時序圖如圖3.3所示。</p><p> 圖3.3 12864液晶并行讀操作時序</p><p> 12864并行基本操作時序解釋如下:</p><p> 讀狀態(tài)輸入:RS = L,R/W = H, E = H輸出:D0 ~ D7 = 狀態(tài)字。</p><p&g
78、t; 讀數(shù)據(jù)輸入:RS = H,R/W = H, E = H輸出:無。</p><p> 寫指令輸入:RS = L,R/W = L, D0~D7=指令碼,E=高脈沖 輸出:D0 ~ D7 = 數(shù)據(jù)。</p><p> 寫數(shù)據(jù)輸入:RS = H,R/W = L, D0~D7=數(shù)據(jù),E=高脈沖 輸出:無。</p><p> 12864液晶指令說明如表
79、3.1所示。</p><p> 表3.1 12864液晶指令表</p><p> 另外,當RE=1時,還有一些擴充指令可設定液晶功能,如待機模式、卷動地址開關開啟、反白顯示、睡眠、控制功能設定、繪圖模式、設定繪圖RAM地址等,由于本次設計中并沒有涉及到,這里不再詳細解釋。</p><p><b> 部分源代碼如下:</b></p&
80、gt;<p><b> /*端口定義*/</b></p><p> #define LCD_DATA P0//數(shù)據(jù)口</p><p> sbit LCD_RS = P2^7;//寄存器選擇輸入</p><p> sbit LCD_RW = P2^6;//液晶讀/寫控制</p><p> sb
81、it LCD_EN = P2^5;//液晶使能控制</p><p> sbit LCD_PSB = P2^4;//串/并方式控制</p><p> /*寫指令數(shù)據(jù)到LCD*/</p><p> /*RS=L,RW=L,E=高脈沖,D0-D7=指令碼。*/</p><p> void write_cmd(uchar cmd)<
82、/p><p><b> {</b></p><p> LCD_RS = 0;</p><p> LCD_RW = 0;</p><p> LCD_EN = 0;</p><p><b> P0 = cmd;</b></p><p> delay
83、_1ms(5);</p><p> LCD_EN = 1;</p><p> delay_1ms(5);</p><p> LCD_EN = 0;</p><p><b> }</b></p><p> /*寫顯示數(shù)據(jù)到LCD*/</p><p> /*RS=H
84、,RW=L,E=高脈沖,D0-D7=指令碼。*/</p><p> void write_dat(uchar dat)</p><p><b> {</b></p><p> LCD_RS = 1;</p><p> LCD_RW = 0;</p><p> LCD_EN = 0;<
85、;/p><p><b> P0 = dat;</b></p><p> delay_1ms(5);</p><p> LCD_EN = 1;</p><p> delay_1ms(5);</p><p> LCD_EN = 0;</p><p><b>
86、}</b></p><p> /*LCD初始化設定*/</p><p> void lcd_init()</p><p><b> {</b></p><p> LCD_PSB = 1;//并口方式</p><p> write_cmd(0x30);//基本指令操作<
87、;/p><p> delay_1ms(5);</p><p> write_cmd(0x02);//地址歸位</p><p> delay_1ms(5);</p><p> write_cmd(0x04);//進入點設定</p><p> delay_1ms(5);</p><p>
88、 write_cmd(0x0C);//顯示開,關光標</p><p> delay_1ms(5);</p><p> write_cmd(0x01);//清楚LCD的顯示內(nèi)容</p><p> delay_1ms(5);</p><p> write_cmd(0x80);//設定DDRAM地址</p><p&
89、gt; delay_1ms(5);</p><p><b> }</b></p><p> 3.1.3 按鍵操作</p><p> 按鍵操作比較簡單,當單片機在掃描P2口時,若沒有按鍵按下,P2口默認為高電平,P2口得到的結果為1,如果有按鍵按下,接地導通,對應的端口位變?yōu)榈碗娖?,P2口對應的端口位得到0.然后,單片機對掃描結果做相應處
90、理即可。</p><p> 3.1.4 MAX485芯片操作</p><p> 根據(jù)2.2.4通信電路所述,MAX485芯片只需通過一個I/O口來控制芯片的接收和發(fā)送即可。</p><p><b> 部分源代碼如下:</b></p><p> sbit RS485TE = P3^6;//定義控制端口</p
91、><p><b> /*發(fā)送數(shù)據(jù)*/</b></p><p> void pack_send(uchar addr,uchar instr,uchar dat1,uchar dat2)</p><p><b> {</b></p><p> RS485TE = 1;</p><
92、;p> delay_1ms(1);</p><p> putchar(addr);</p><p> putchar(instr);</p><p> putchar(dat1);</p><p> putchar(dat2);</p><p> delay_1ms(2);</p>&l
93、t;p> RS485TE = 0;</p><p><b> }</b></p><p><b> /*接收數(shù)據(jù)*/</b></p><p> uchar pack_receive(uchar *addr,uchar *instr,uchar *dat1,uchar *dat2)</p><
94、;p><b> {</b></p><p> uchar i,j;</p><p> uchar rec[4];</p><p> for (i = 0; i < 4; i++)</p><p><b> {</b></p><p> for(j =
95、0; !RI; j++)</p><p><b> {</b></p><p> if (j>100) return (i+1);</p><p> delay_1ms(1);</p><p><b> }</b></p><p> rec[i] = getc
96、har();</p><p><b> }</b></p><p> *addr = rec[0];</p><p> *instr = rec[1];</p><p> *dat1 = rec[2];</p><p> *dat2 = rec[3];</p><p&
97、gt;<b> return 0;</b></p><p><b> }</b></p><p> 3.1.5 報警操作</p><p> 如2.2.5報警電路中電路圖所示,通過單片機相應I/O口輸出低電平(即相應端口置0)便可點亮LED燈和鳴響蜂鳴器,實現(xiàn)聲光報警。要取消報警只需相應端口輸出高電平。</p&
98、gt;<p> 3.2 從站程序設計</p><p> 從站和主站通過MAX485芯片進行數(shù)據(jù)交換,并對按鍵進行掃描,根據(jù)鍵盤輸入和MAX485芯片進行數(shù)據(jù)交換并進行相應的操作。同時,從站還要實現(xiàn)點滴速度檢測、控制功能,和報警功能。按鍵掃描、通信、報警程序設計與主站類似,不再復述。</p><p> 3.2.1 從站程序流程</p><p>
99、從站程序主要是通過外部中斷檢測出點滴速度,再驅(qū)動12232F液晶顯示滴速,需要的時候控制電機調(diào)節(jié)滴速,循環(huán)檢測是否有按鍵操作、是否需要報警以及通過MAX485芯片和主站通信。</p><p> 部分主程序代碼如下:</p><p><b> /*主程序*/</b></p><p> void main()</p><p
100、><b> {</b></p><p> UART_initia();//UART初始化</p><p> lcd_init();//初始化LCD</p><p> disp_drop();</p><p> disp_alphbelt(~P0);</p><p><b&
101、gt; while(1)</b></p><p><b> {</b></p><p> if(key_reg1 != K1) //add key</p><p><b> {</b></p><p><b> /*按鍵處理略*/</b></p>
102、;<p><b> }</b></p><p> if(key_reg2 != K2) //dec key</p><p><b> {</b></p><p><b> /*按鍵處理略*/</b></p><p><b> }</b&g
103、t;</p><p> if(key_reg3 != K3) //BUZZER stop</p><p><b> {</b></p><p><b> /*按鍵處理略*/</b></p><p><b> }</b></p><p> if(
104、RI) //處理主站發(fā)送的命令</p><p><b> {</b></p><p> if(!pack_receive(slave_addr,&instr,&temp1,&temp2))</p><p><b> {</b></p><p> switch(inst
105、r)</p><p><b> {</b></p><p> case SLAVE_READ:</p><p> delay_ms(5);</p><p> pack_send(slave_addr,SLAVE_ACK_READ,</p><p> set_speed,drop_spee
106、d);</p><p><b> break;</b></p><p> case SLAVE_WRITE:</p><p> set_speed = temp1;</p><p> disp_drop();</p><p><b> break;</b></
107、p><p> case STOP_ALARM:</p><p><b> FM = 1;</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b><
108、;/p><p><b> }</b></p><p> if(t1_ovf != (T1HH==28)) //alarm</p><p><b> {</b></p><p> t1_ovf = (T1HH==28);</p><p> if(t1_ovf)</p
109、><p><b> {</b></p><p> drop_speed = 0;</p><p><b> FM = 0;</b></p><p> pack_send(slave_addr,SLAVE_ALARM,0,0);</p><p><b> }&l
110、t;/b></p><p><b> }</b></p><p> drop_control();</p><p><b> }</b></p><p><b> }</b></p><p> 從站程序流程圖見圖3.4所示,12232F液
111、晶、點滴速度檢測、控制操作等具體處理詳見以下各章節(jié)說明。</p><p> 圖3.4 從站程序流程圖</p><p> 3.2.2 12232F液晶操作</p><p> 12232F液晶串行讀/寫操作時序如圖3.5所示。</p><p> 圖3.5 12232F液晶串行讀/寫操作時序</p><p>
112、12232F串行時序解釋如下:</p><p> ?。?)CS——液晶的片選信號線,每次在進行數(shù)據(jù)操作時都必須將CS端口拉高。</p><p> (2)SCLK——串行同步時鐘線,每操作一位數(shù)據(jù)都要有一個SCLK跳變沿,而且在這里是上升沿有效。也就是說,每次SCLK由低電平變?yōu)楦唠娖降乃查g,液晶控制器將SID上的數(shù)據(jù)讀入或輸出。</p><p> (3)SID—
113、—串行數(shù)據(jù),每一次操作都由三個字節(jié)數(shù)據(jù)組成,第一字節(jié)向控制器發(fā)送命令控制字,告訴控制器接下來是什么操作,若為寫指令則發(fā)送11111000,若為寫數(shù)據(jù)則發(fā)送11111010。第二字節(jié)的高4位發(fā)送指令或數(shù)據(jù)的高4位,第二字節(jié)的低4位補0。第三字節(jié)的高4位發(fā)送指令或數(shù)據(jù)的低4位,第三字節(jié)的低4位同樣補0。</p><p> 12232F液晶指令說明如表3.2所示。</p><p> 表3.2
114、 12232F液晶指令表</p><p> 另外,當RE=1時,還有一些擴充指令可設定液晶的一些功能,這些功能同12864液晶類似,若有興趣了解可查閱相關資料,這里不再贅述。</p><p><b> 部分源代碼如下:</b></p><p><b> /*端口定義*/</b></p><p&g
115、t; sbit CS = P0^2;//片選,高電平有效</p><p> sbit SID = P0^1;//串行數(shù)據(jù)輸入端</p><p> sbit SCLK = P0^0;//串行同步時鐘</p><p> /*寫指令數(shù)據(jù)到LCD*/</p><p> void send_command(uchar command_d
116、ata)</p><p><b> {</b></p><p><b> uchar i;</b></p><p> uchar i_data;</p><p> i_data=0xf8;</p><p><b> CS=1;</b></
117、p><p><b> SCLK=0;</b></p><p> for(i=0;i<8;i++)</p><p><b> {</b></p><p> SID=(bit)(i_data&0x80);</p><p><b> SCLK=0;&l
118、t;/b></p><p><b> SCLK=1;</b></p><p> i_data=i_data<<1;</p><p><b> }</b></p><p> i_data=command_data;</p><p> i_data&a
119、mp;=0xf0;</p><p> for(i=0;i<8;i++)</p><p><b> {</b></p><p> SID=(bit)(i_data&0x80);</p><p><b> SCLK=0;</b></p><p><b&
120、gt; SCLK=1;</b></p><p> i_data=i_data<<1;</p><p><b> }</b></p><p> i_data=command_data;</p><p> i_data<<=4;</p><p> for
121、(i=0;i<8;i++)</p><p><b> {</b></p><p> SID=(bit)(i_data&0x80);</p><p><b> SCLK=0;</b></p><p><b> SCLK=1;</b></p>&
122、lt;p> i_data=i_data<<1;</p><p><b> }</b></p><p><b> CS=0;</b></p><p> delay_ms(10);</p><p><b> }</b></p><p&
123、gt; /*寫顯示數(shù)據(jù)到LCD*/</p><p> void send_data(uchar command_data)</p><p><b> {</b></p><p><b> uchar i;</b></p><p> uchar i_data;</p><
124、p> i_data=0xfa;</p><p><b> CS=1;</b></p><p> for(i=0;i<8;i++)</p><p><b> {</b></p><p> SID=(bit)(i_data&0x80);</p><p&g
125、t;<b> SCLK=0;</b></p><p><b> SCLK=1;</b></p><p> i_data=i_data<<1;</p><p><b> }</b></p><p> i_data=command_data;</p>
126、;<p> i_data&=0xf0;</p><p> for(i=0;i<8;i++)</p><p><b> {</b></p><p> SID=(bit)(i_data&0x80);</p><p><b> SCLK=0;</b></
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子與信息工程畢業(yè)論文醫(yī)院點滴自動控制系統(tǒng)的設計
- 交通燈控制系統(tǒng)設計【電子信息工程畢業(yè)論文】
- 電子與信息工程畢業(yè)論文基站空調(diào)節(jié)能控制系統(tǒng)控制模塊的設計
- 電子與信息工程畢業(yè)論文花園澆水智能控制系統(tǒng)的單片機設計
- 電梯自動控制系統(tǒng)設計【電子信息工程畢業(yè)論文】
- 電子與信息工程畢業(yè)論文基于plc的電梯變頻調(diào)速控制系統(tǒng)
- 電子與信息工程畢業(yè)論文基站空調(diào)節(jié)能控制系統(tǒng)監(jiān)控模塊的設計
- 基于單片機的溫度控制系統(tǒng)設計【電子信息工程畢業(yè)論文】
- 電子信息工程專業(yè)畢業(yè)論文電熱恒溫控制系統(tǒng)
- 醫(yī)院輸液控制系統(tǒng)的設計【文獻綜述】
- 醫(yī)院輸液控制系統(tǒng)的設計【開題報告】
- 基于單片機的輸液滴速控制系統(tǒng)設計 -畢業(yè)論文
- 機械電子工程畢業(yè)論文-電液伺服控制系統(tǒng)設計與仿真分析
- 常用的汽車電子控制系統(tǒng)畢業(yè)論文
- 電子信息科學與技術畢業(yè)論文(設計)智能家居控制系統(tǒng)的設計
- 機械電子工程畢業(yè)論文-龍門刨床直流調(diào)速控制系統(tǒng)的設計與仿真
- 本科機械電子工程專業(yè)畢業(yè)論文-新手駕駛輔助控制系統(tǒng)設計
- 輸液控制裝置-醫(yī)療電子儀器畢業(yè)論文
- 電子與信息工程畢業(yè)論文無線“叮咚”電子門鈴的設計
- 電子類畢業(yè)論文----交通燈控制系統(tǒng)設計
評論
0/150
提交評論