1.簡介
基于單片機便攜式輸液點滴控制報警器組成。 該系統主要由光電傳感器檢測電路、鍵盤、數碼管顯示、報警提示電路、液滴流速監測電路、電機驅動電路等組成。 利用霍爾感器測量出液滴流速,并將將信息返回給單片機,單片機對流速信號與測速型號進行分析和處理,并讓其顯示數碼管上,從而實現對輸液器的監測與控制。
2.硬件設計
本例程的硬件主要由7部分組成,分別為單片機的最小系統,4位數碼管顯示電路、光電測速電路、步進驅動電路、按鍵電路、蜂鳴器報警電路、電源模塊等,其結構框圖如下所示:
(1)光電測速電路
本次設計將采用光電傳感器,利用傳感器對液滴流速信號檢測,再利用外圍電路實現計數。 當一個液滴流過光電傳感器時,由于液滴的遮擋,導致光電傳感器中的三級管截止,光電傳感器輸出為高,所以實現對輸液速度的檢測就是完成對兩個高電平時間間隔的計時。 電路圖如圖:
(2)步進電機驅動電路
步進電機驅動電路采用了ULN2003達林頓管陣列芯片作為步進電機驅動電路,其主要功能是增強單片機控制引腳的電流驅動能力,以實現控制步進電機。
(3)按鍵電路
本次設計共設置了3個獨立式的按鍵,主要的功能設置鍵、增加鍵和減少鍵。 電路如圖:
(4)總體硬件原理圖
3.軟件設計
程序設計部分主要包括主程序、輸液測速函數、鍵盤掃描函數、數碼管顯示函數、及電機控制函數。 定時器初始化函數完成對定時器初始化,流速信號采集函數完成對輸液速度的采集和計算分析,鍵盤掃描函數則需要完成對電機轉速控制,輸液速度讀取函數完成數據的換算,為電機的工作提供工作的依據。
由于程序代碼較多,現只介紹主程序代碼。 詳細源碼請下載附帶資料。
(1)主程序
void main()
{
init();
while(1)
{
keyscan();
if(s1num==1)hdisplay(htemp);
if(s1num==2)ldisplay(ltemp);
if(yyp)
{
baojing();
keyscan();
if(time_out == 1)
{
speed_tmp = speed * 12; //每分鐘的點滴數目等于每5秒的數目乘以12
speed = 0;
time_out = 0;
}
display(speed_tmp);
}
}
}
-
傳感器
+關注
關注
2553文章
51390瀏覽量
756582 -
電路圖
+關注
關注
10356文章
10725瀏覽量
532874 -
單片機
+關注
關注
6043文章
44622瀏覽量
638540 -
報警器
+關注
關注
12文章
927瀏覽量
108913 -
驅動電路
+關注
關注
153文章
1533瀏覽量
108745
發布評論請先 登錄
相關推薦
評論