秦源辰 王淑嫻
摘? ?要:電路實驗作為一門基礎(chǔ)課程,隨著學(xué)習(xí)的不斷深入,電路形式更加復(fù)雜靈活。這種情況下,若采用傳統(tǒng)的電路連接形式耗時耗力,線路多、復(fù)雜且不易檢查,帶來了麻煩。因此,特對傳統(tǒng)連接系統(tǒng)進行優(yōu)化。用獨立的電路元器件模塊的插拔來實現(xiàn)電路的連接,代替?zhèn)鹘y(tǒng)連線方式。同時,利用數(shù)字溫度傳感器識別定位,通過在單片機屏幕上顯示“NONE”“CORRECT”“WRONG”實現(xiàn)對連接的提示功能。
關(guān)鍵詞:模塊優(yōu)化? 連接提示? STM32F4單片機? DS18B20數(shù)字溫度傳感器? 上位機
中圖分類號:P631.222? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標(biāo)識碼:A? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1674-098X(2019)06(a)-0097-03
1? 項目背景及意義
電路是物理學(xué)中一門重要的基礎(chǔ)學(xué)科,而電路實驗作為一門實驗學(xué)科,是電路知識的基礎(chǔ)和依據(jù),是學(xué)生探究電路規(guī)律、檢驗電路定理的方法和途徑。它具有極強的實踐性,考察了學(xué)生對知識的理解程度,同時也培養(yǎng)了學(xué)生動手操作、獨立思考、創(chuàng)新合作的能力,在電路學(xué)習(xí)過程中有著不可替代的作用。
隨著對電路知識學(xué)習(xí)的不斷深入,電路的元器件組成、連接方式更加復(fù)雜靈活,電路實現(xiàn)的功能更加全面完備。在這種情況下,以導(dǎo)線為連接媒介的傳統(tǒng)電路連接方式的弊端也越發(fā)明顯:首先,電路圖更復(fù)雜,線路變多,連接起來費時費力;其二,由于導(dǎo)線多、交叉縱橫,而連接的正確與否無法立刻得到反饋,為完成實驗帶來了不必要的麻煩。
基于以上存在的問題,我們在傳統(tǒng)電路實驗連接系統(tǒng)的基礎(chǔ)上進行了優(yōu)化,構(gòu)建了具有提示功能的電路實驗輔助設(shè)備,以元器件小模塊的插拔代替線路連接,以此實現(xiàn)電路連接的優(yōu)化的功能。
同時我們編寫了上位機程序,使單片機與電腦連接,實時監(jiān)控電路實驗進行情況。
2? 設(shè)備介紹(如圖)
本設(shè)計由實驗設(shè)備,單片機和上位機三部分構(gòu)成。實驗設(shè)備分為接插板,檢測板構(gòu)成的大模塊,元器件和定位模塊構(gòu)成的小模塊。單片機和實驗設(shè)備一起組成了下位機。上位機則由我們的電腦端擔(dān)任。下位機通過TTL-USB接口向上位機傳輸數(shù)據(jù)。
3? 工作原理
設(shè)備主要由一塊檢測板、一塊連接板以及若干元器件小模塊組成。
底板是檢測板與單片機相連,上層是所做閃爍燈電路實驗的實驗連接板,每一個元器件小模塊都是由電路和一個定位模塊組成,我們利DS18B20用數(shù)字溫度傳感器來進行識別定位。
我們定義了一個二維數(shù)組,輸入所有的數(shù)字溫度傳感器的ID號,通過不斷地讀取數(shù)字溫度傳感器的溫度,遍歷一次,如果可以讀到,即該部分有元器件的插入,此時進入下一層判斷。以電阻為例,讀此時已插入的電阻對應(yīng)的ID號對應(yīng)的的數(shù)字溫度傳感器的溫度,如果可以讀到,則插入正確,反之則錯誤。將編寫好的程序下載到單片機內(nèi),通過單片機屏幕上的反饋提示來判斷電路連接的狀況,以此實現(xiàn)設(shè)備連接提示的功能。電路全部連接完成后即可按下開關(guān),觀察電路實驗的最終現(xiàn)象
下位機以R1為例,以下為程序說明:
void DS18B20_Process_R1(void)? ?//判斷元器件狀態(tài)的函數(shù)
{
u8 i,Total_R1=0,Correct_R1=0,Wrong_R1=0;
short Temp;
for(i = 0;i < All_DS18B20;i ++)
{
Temp =
DS18B20_ReadDesignateTemper_R1(ID_Buff[i]);
// 讀取全部DS18B20的溫度
if(Temp>0)
Total_R1++;
}
Temp =
DS18B20_ReadDesignateTemper_R1(ID_Buff[0]);
//讀取R1所對應(yīng)的DS18B20數(shù)字溫度傳感器的溫度
if(Temp>0)
Correct_R1++;
Wrong_R1=Total_R1-Correct_R1;
if(Correct_R1==0&&Wrong_R1==0)
R1_Status=0;
if(Correct_R1==1&&Wrong_R1==0)
R1_Status=2;
if(Correct_R1==0&&Wrong_R1==1)
R1_Status=1;
}
上位機則包含兩個界面,一個是電路實驗進行的實時情況,另一個為串口設(shè)置界面。將串口打開后,電腦將接收單片機傳輸上來的信息。然后將字符串拆分,判斷,在界面上通過不同顏色的矩形框顯示電路實驗進行的情況。
上位機以命令內(nèi)容改變事件為例,程序如下:
Private void labelCommandContent_TextChanged(object sender, EventArgs e)
{
char[] plusSpliter = { '+' };
//將收到的指令進行字符串分割
string[] strInformation =
labelCommandContent.Text.Split(plusSpliter, StringSplitOptions.RemoveEmptyEntries);
//指令的第一字段為元器件名稱
strComponent = strInformation[0];
//指令的第二字段為元器件名稱
strStatus = strInformation[1];
switch (strComponent)//先識別元器件
{
case "R1": ShowPositionAndStatus(195, 90, strStatus); break;//對R1狀態(tài)進行判斷
}
}
4 使用說明
根據(jù)電路圖,將每一個小模塊插入連接板相應(yīng)的位置。若對應(yīng)元器件小模塊未插入,則單片機屏幕上顯示“NONE”;若元器件小模塊插入但不是正確的位置,則單片機屏幕上顯示“WRONG”;若元器件小模塊插入且正確,則單片機屏幕上顯示“CORRECT”。將單片機通過USB接口與電腦相連,打開串口后,電腦端上位機系統(tǒng)即可正常工作。上位機軟件由C#編寫,展示界面如下圖:
5? 創(chuàng)新點
在電路連接的過程中可以實時檢測電路連接的正確性。當(dāng)提示所有模塊均為“CORRECT”時,說明電路連接完成,此時給插接板供電,一定可以正常工作。
將單片機和電腦引入到電路實驗教學(xué)中,簡化電路實驗。
模塊化實驗設(shè)備,方便拆卸更換。產(chǎn)品體積小巧,方便實驗室內(nèi)安裝放置。
6? 總結(jié)
此款電路實驗輔助系統(tǒng)基于DS18B20數(shù)字溫度傳感器, STM32F4單片機,PCB電路板以及電腦的上位機通力合作,通過改變學(xué)生連接電路的方式來幫助學(xué)生完成電路實驗,加深對電路電子的學(xué)習(xí)和了解。電腦端的上位機實時顯示可以幫助老師查看學(xué)生的完成情況,做到高效完成實驗課教學(xué)任務(wù)。
參考文獻
[1] 楊義勇,鄭凱.機械三維設(shè)計實用教程(SolidWorks)[M/CD].北京:清華大學(xué),2013:50-220.
[2] 劉軍.STM32F4開發(fā)指南-庫函數(shù)版本_V3.1[M].北京:北京航空航天大學(xué)出版社,2015:483-490.
[3] 鄭振宇,林超文,徐龍俊.AltiumDesignerPCB畫板速成[M].北京:電子工業(yè)出版社,2012:14-86.
[4] 杜洋,李蒼源.C#串口通信[M].北京:杜洋工作室出版社,2014:5-14.