曾遠(yuǎn)征
摘要:本文介紹一款機床電氣設(shè)備教學(xué)器材的智能答題器的設(shè)計。該答題器有手動設(shè)置、測驗、考證三種功能。具有操作簡便、造價低廉、自主研發(fā)、能夠供平時上課、過程檢測、考證等各種場合。適合對職業(yè)學(xué)校的機床電氣實訓(xùn)臺進行維修或改造。
關(guān)鍵詞:智能答題器;Labview;機床電氣;教學(xué)器材;單片機
中圖分類號:TG502.1 文獻標(biāo)識碼:A 文章編號:1007-9416(2019)03-0136-05
0 引言
本校有一個維修電工的實驗室,購買的是某公司的教學(xué)設(shè)備。這些設(shè)備包括了CA6140車床電氣控制電路板以及相關(guān)答題器;X62W萬能銑床電氣控制電路板以及相關(guān)答題器;T68鏜床電氣控制電路板以及相關(guān)答題器;M7120磨床電氣控制電路板以及相關(guān)答題器。每一套的設(shè)備的電氣控制電路板部分將對應(yīng)的車床、銑床、鏜床、磨床的控制部分的電路連接以及空氣開關(guān)、熱繼電器、交流接觸器等元器件固定在一塊鐵板上。并且露出相關(guān)的觸點用于學(xué)生測試使用。相關(guān)電路的接線則隱藏在內(nèi)部。而答題器,則用于學(xué)生上課時設(shè)置故障,以及回答問題使用。
1 機床電氣設(shè)置故障板
該教學(xué)設(shè)備用于本校學(xué)生的電工考證。平時使用較多。所以設(shè)備也經(jīng)常有損壞,尤其是答題器,學(xué)生經(jīng)常要用來做答所以出現(xiàn)了比較多的損壞,過了保修之后,維修的費用就非常高。而且有些元件由于時間較長,市面上難于找到替代的產(chǎn)品。令維修增加了更多的難度。到了后來,有些答題器已經(jīng)不能修復(fù)。這樣情況嚴(yán)重影響了日常的教學(xué)開展。為了能夠保證日常教學(xué)的正常開展,我就利用業(yè)余時間對這些設(shè)備進行了分析,希望能以自己的專業(yè)能力去重新設(shè)計一個簡單的部件來替代答題器。
經(jīng)過分析之后,發(fā)現(xiàn)這些設(shè)備的內(nèi)部構(gòu)造不算太復(fù)雜。主要的電路在主板里面,每塊板可以設(shè)置16個故障點。這些故障點的設(shè)計都是斷路故障,設(shè)計方法是,將需要斷路的線的兩頭分別引到繼電器的常閉端和公共端。而控制端就外接到排線接口,再由接口連接答題器。也就是說答題器最終的目的是控制繼電器的控制端。由于每塊板能夠設(shè)置16個故障。則說明內(nèi)部有16個繼電器。
經(jīng)過分析之后,我覺得可以先做一個簡單的設(shè)置故障用的電路板,連接到主板上,用于解決暫時的上課問題。這個電路板功能比較簡單,就是用2個八位的撥動開關(guān),當(dāng)撥動開關(guān)斷開時,對應(yīng)的端口接地,此時設(shè)備內(nèi)部的繼電器不動作,保持原來狀態(tài)。當(dāng)撥動開關(guān)短接時,對應(yīng)的端口接高電平,此時設(shè)備內(nèi)部的繼電器吸合,相關(guān)導(dǎo)線斷開連接。設(shè)置了相應(yīng)的短路故障。用該方案制作了一些設(shè)置故障用的電路板,在實驗室使用,能實現(xiàn)相關(guān)功能。但是該電路板功能單一,其缺點也是比較明顯,因為設(shè)置故障的是撥動開關(guān),所以學(xué)生在學(xué)習(xí)一段時間之后, 熟悉的設(shè)置,就能直接通過相關(guān)的撥動開關(guān)的位置把故障猜測出來。尤其是考試或者測驗的時候,有些學(xué)生憑著記憶去回答問題。沒有真正達(dá)到考試的目的。
2 智能答題器設(shè)計
按照中級維修電工考核大綱,機床電氣故障維修考核要求考評員在機床電氣模擬電路板上設(shè)置隱蔽故障3處,其中主回路1處,控制回路2處,考評員可將故障現(xiàn)象告知考生,考生必須單獨排除故障,考試時間為45分鐘。
針對以上的要求,我對這款設(shè)備的答題器做一次優(yōu)化。優(yōu)化之后有以下這些功能。(1)能夠用輕觸按鍵設(shè)置故障,這樣故障設(shè)置完成之后就不會像之前的板子那樣直接通過看相關(guān)的撥動開光的位置就可以猜出問題的答案。(2)能夠提供平時練習(xí)、測驗、考證三種模式選擇。(3)在考證或者課堂測驗時,能夠通過一臺電腦來操控。(4)在考證模式下,從考試開始進行45分鐘倒計時,并且將倒計時的時間顯示在顯示屏上。開始考試以及考試結(jié)束都有提示音。
2.1 電路系統(tǒng)方框圖
根據(jù)這些功能的要求,可以得出相關(guān)的設(shè)計框圖,如圖1所示。從圖中我們可以看到,該電路的主控芯片為單片機,我選用了STC的單片機STC15W408S。該芯片有購買的方便,價錢的合理的優(yōu)勢,引腳多的優(yōu)勢。該單片機主要負(fù)責(zé)各種信號的處理,包括從按鍵那里獲得相關(guān)的輸入信息;將相關(guān)的處理之后,將需要顯示的信息送到液晶顯示模組;將需要控制的信號送到繼電器的相關(guān)引腳;通過485芯片與計算機通信,達(dá)到雙向的通信。
2.2 硬件電路設(shè)計
相關(guān)的原理圖如圖2所示,制作完成后的電路板實物照片如圖3和圖4所示。
2.2.1 單片機最小系統(tǒng)
本電路采用了STC的單片機STC15W408S。單片機的最小系統(tǒng)包括電源供電、單片機、晶振、復(fù)位電路。
2.2.2 顯示部分電路
液晶模塊,本電路采用液晶模塊1602用來顯示相關(guān)的信息。這些信息包括,現(xiàn)在設(shè)備所處狀態(tài),如:平時狀態(tài)、自我測驗,考證模式。讓使用者可以明確知道設(shè)備的所處狀態(tài),可以更有效率地使用答題器。
2.2.3 車床控制接口電路
車床控制部分,主要通過專用的接頭,將需要控制的信息送到設(shè)備內(nèi)部。以做到能夠控制設(shè)備內(nèi)部的繼電器。達(dá)到設(shè)置故障等作用。
2.2.4 按鍵電路
按鍵部分,這一部分,我總共用了20個按鍵,其中17按鍵是兼容以前的設(shè)備自帶的智能答題器。而另外的3個按鍵,我把它們設(shè)置成:(1)手動故障設(shè)置(用于平時自己練習(xí)的時候使用)。使用方法為:按下“手動故障設(shè)置”按鍵,然后用數(shù)碼鍵盤輸入故障點的路徑,比如說107與108之間斷路,則輸入“107108”,按下“確定”按鍵。則故障設(shè)置完畢。對應(yīng)的端口輸出高電平,對應(yīng)的繼電器吸合,相關(guān)的電路斷路。故障設(shè)置完畢。再次輸入正確故障路徑,并且按下“確定”按鍵,或者按下“退出”按鍵,就能將故障恢復(fù)。(2)測驗按鍵。按下“測驗”這個按鍵,系統(tǒng)就會自動按照預(yù)設(shè)的程序(每套題目有三個故障,其中主回路1處,控制回路2處)進行隨機抽取考試題目,按下“確定”按鍵,則在隨機設(shè)置相應(yīng)的故障,并且液晶上顯示故障點的路徑十秒。(這樣設(shè)置是為了如果設(shè)備聯(lián)不上計算機,而不得不進行單機考試時,考官可以記錄下自己設(shè)置的故障路徑。)然后進入等候答題狀態(tài)。其答題方式也是輸入故障點的路徑,并且按下確認(rèn)。如果回答正確,則相關(guān)的故障點自動恢復(fù)。故障點數(shù)量自動減1 。重復(fù)上述方法答題,直到答題結(jié)束。
2.2.5 聲音提示電路
該電路由蜂鳴器,三極管等組成。在考試開始,計時結(jié)束之后會發(fā)出提示音。在某些特定操作下,也會發(fā)出相關(guān)提示音。
2.2.6 電平轉(zhuǎn)換電路
485轉(zhuǎn)換芯片則是為了將所有的設(shè)備連接在一起,用于考證或者競賽的時候可以通過一臺計算機去設(shè)置每一臺設(shè)備的故障點,以及將選手的答案統(tǒng)一由計算機收取而使用。因為485的傳輸距離比較遠(yuǎn),抗干擾能力強,而且可以用總線的接法。自己設(shè)計一套相關(guān)的指令,讓計算機和單片機之間可以通信。達(dá)到簡化考證考官的工作的作用。
PC端,由于絕大多數(shù)的計算機沒有485的接口,所以需要購買或者設(shè)計一個電路板,將485轉(zhuǎn)成RS232接口。
2.3 軟件設(shè)計
2.3.1 主程序設(shè)計框圖
本程序采用Keil C51軟件編程,使用模塊化程序設(shè)計,主要的子程序包括:初始化界面、鍵盤子程序、485接收子程序、液晶顯示子程序、手動設(shè)置故障子程序,測驗子程序等。系統(tǒng)流程圖如圖5所示:
主程序節(jié)選:
void main()
{
LCD1602_inti();//液晶模塊的初始化程序
LCD_LED = 0;
BULL_3dd();
while(1)
{RS232_PC();//串口子程序
KEY_4x5();//按鍵子程序
JK_control();//繼電器控制子程序
kaozheng_moshi();//考證模式子程序
shoudong_moshi();//手動模式子程序
test_moshi();//測試模式子程序
}}
2.3.2 按鍵子程序
由于本電路需要的按鍵較多,需要20個按鍵,如果采用每個按鍵接一個IO口就會占用單片機20個IO口,為了減少I/O的占用,所以采用矩陣的方式來實現(xiàn)。如圖所示。在矩陣鍵盤中,每條行線和列線在交叉處沒有連接,通過了一個輕觸按鍵進行連接。這樣5條列線(L0~L3)和4條行線(R0~R4)總共使用9個IO口就可以構(gòu)成了20個按鍵的矩陣鍵盤。由于鍵盤采用了無源結(jié)構(gòu)所以行列線的電平由單片機的I/O口的電平?jīng)Q定。
部分程序節(jié)選如下:
uchar KEY_4x5()
{uchar k1 = 0,k2 = 0,k3 = 0,k4 = 0,k5 = 0;
static uchar k,kf;
if(kf == 0)
{KEY_DP = 0x0f;
KEY_scan_5 = 0;
if((KEY_DP&0x0f) == 0x0f) return 0;
delayms(7);
if((KEY_DP&0x0f) == 0x0f) return 0;
KEY_DP = 0xef;
KEY_scan_5 = 1;
if((KEY_DP&0x0f) != 0x0f) k1 = ~KEY_DP;
KEY_DP = 0xdf;
KEY_scan_5 = 1;
if((KEY_DP&0x0f) != 0x0f) k2 = ~KEY_DP;
KEY_DP = 0xbf;
KEY_scan_5 = 1;
if((KEY_DP&0x0f) != 0x0f) k3 = ~KEY_DP;
KEY_DP = 0x7f;
KEY_scan_5 = 1;
if((KEY_DP&0x0f) != 0x0f) k4 = ~KEY_DP;
KEY_DP = 0xff;
KEY_scan_5 = 0;
if((KEY_DP&0x0f) != 0x0f) k5 = ~KEY_DP;
k = k1 | k2 | k3 | k4 | k5;
kf = 1;
return 0; }
else {
KEY_DP = 0x0f;
KEY_scan_5 = 0;
if((KEY_DP&0x0f) != 0x0f)
{return 0; }
else{
kf = 0;
return k; } }}
2.3.3 液晶顯示部分
本電路采用1602的液晶模塊,它可以顯示兩行,每行16個字符。能夠顯示ASCII碼字符,如數(shù)字或者英文字母以及規(guī)定的一些符號。采用并口操作的1602模塊。
程序的寫命令操作和寫數(shù)據(jù)操作分別用兩個獨立的函數(shù)來完成,函數(shù)內(nèi)部唯一的區(qū)別就是液晶數(shù)據(jù)命令選擇端的電平。寫命令函數(shù)解釋如下:
void write_com(unchar com)
{lcdrs=0;? ? //選擇寫命令模式
P0= com;? ?//將要寫的命令字送到數(shù)據(jù)總線上
delay(5);? ? //稍作延時以待數(shù)據(jù)穩(wěn)定
lcden=1;? ? //使能端給一高脈沖,因為初始化已經(jīng)將lcden置為0;
delay(5);? ? //稍作延時
lcden=0;? ? //將使能端置0以完成高脈沖}
void write_data(unchar date)
{lcdrs=1;? ? //選擇寫數(shù)據(jù)模式
P0= date;? ?//將要寫的數(shù)據(jù)字送到數(shù)據(jù)總線上
delay(5);? ? //稍作延時以待數(shù)據(jù)穩(wěn)定
lcden=1;? ? //使能端給一高脈沖,因為初始化已經(jīng)將lcden置為0;
delay(5);? ? //稍作延時
lcden=0;? ? //將使能端置0以完成高脈沖}
void init()? ?//液晶的初始化子程序
{dula= 0;
wela=0;
lcden=0;
write_com(0x38);? ? //設(shè)置16*2顯示,5*7點陣,8位數(shù)據(jù)接口
write_com(0x0c);? ? //設(shè)置開顯示,不顯示光標(biāo)
write_com(0x06);? ? //寫一個字符后地址直針加1
write_com(0x01);? ? //顯示清0,數(shù)據(jù)直針清0}
由于篇幅限制,其余相關(guān)程序就不在這里描述。
2.4 PC端軟件
用Labview軟件設(shè)計一個軟件,用于在考證時,可以通過計算機的軟件界面靈活地布置任務(wù),設(shè)置故障點,了解考試學(xué)生的具體進度等內(nèi)容。Labview是一種程序開發(fā)環(huán)境,由美國國家儀器(NI)公司研發(fā),類似于C和BASIC開發(fā)環(huán)境,但是Labview與其他軟件的顯著區(qū)別是:其他計算機語言都是采用基于文本的語言產(chǎn)生代碼,而Labview使用的是圖形化編輯語言G語言編寫程序,產(chǎn)生的程序是框圖的形式。由于采用了圖形編程,所以該軟件的一個很大的特點是,它在計算機上做圖形界面非常方便??梢苑浅Q杆俚刈龀龈鞣N相關(guān)的界面,并且可以靈活地應(yīng)用。
一個完整的Labview程序包括前面板與程序框圖兩個界面,前面板是一些控制的界面,如按鍵,顯示的值等。后面板是相關(guān)程序,包括接線端、子VI、函數(shù)、常量、結(jié)構(gòu)和連線等,連線可以在其他的程序框圖對象間傳遞數(shù)據(jù)。
這次的界面設(shè)計如圖所示??梢钥吹剿械脑O(shè)備的具體情況,包括所有考生的剩余答題時間,已經(jīng)排出的故障個數(shù)等相關(guān)內(nèi)容。
程序框圖,則由串口調(diào)試助手,數(shù)組等組成。基本功能已經(jīng)調(diào)試成功,部分細(xì)節(jié)還在調(diào)試之中。
以下的插圖為初步設(shè)計的程序界面和部分的程序框圖。由于篇幅關(guān)系,這里不再詳細(xì)敘述。
(1)教師機的考試時的控制界面(節(jié)選)。如圖6所示。
(2)使用Labview編程的計算機與控制電路的接口程序。如圖7所示。
(3)故障判斷程序(節(jié)選)。如圖8所示。
3 結(jié)論
本機床智能答題器的設(shè)計,達(dá)到預(yù)先設(shè)計的目的。其中單機部分已經(jīng)能正常使用,連接電腦部分功能已經(jīng)調(diào)試正常,小部分內(nèi)容正在調(diào)試之中。該答題器的軟件、硬件、PC端軟件均為自主研發(fā),具有造價低,電路簡潔,可靠性高等優(yōu)點。可以在實際的使用過程中根據(jù)實際需要做出合適的改動。為學(xué)校的老機床電氣設(shè)備進行智能化改造。為學(xué)校的設(shè)備維護節(jié)省了大筆的費用。
參考文獻
[1] 曾祥富,陳亞林.電氣安裝與維修項目實訓(xùn)[M].北京:高等教育出版社,2012.
[2] 郭天祥.新概念51單片機C語言教程:入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009.
[3] 黃穎松.機床電氣實訓(xùn)臺智能化考核裝置的設(shè)計[J].電子制作,2015(09):22-24.
An Intelligent Question Answer for Teaching Equipment of
Machine Tool Electrical Equipment
ZENG Yuan-zheng
(Zhongshan Vocational Secondary School, Zhongshan? Guangdong 528458)
Abstract:This paper introduces the design of an intelligent answering device for teaching equipment of machine tool electrical equipment. The answerer has three functions: manual setting, test and test. It has the advantages of simple operation, low cost, independent research and development, and can be used in classes, process testing, textual research and other occasions. It is suitable for the maintenance or transformation of machine tool electrical training platform in Vocational schools.
Key words:intelligent answer; Labview; machine tool electricity; teaching equipment; single chip microcomputer