51單片機(jī)在玻璃管加熱控制系統(tǒng)中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 引言
步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換成相應(yīng)的角位移或線位移的電磁機(jī)械裝置,是一種輸出與輸入數(shù)字脈沖對(duì)應(yīng)的增量驅(qū)動(dòng)元件,具有快速啟動(dòng)和停止的能力。但大多數(shù)設(shè)計(jì)人員常常習(xí)慣于用邏輯電路實(shí)現(xiàn)復(fù)雜的步進(jìn)電機(jī)的控制,雖然已經(jīng)取得很大成效,但實(shí)現(xiàn)起來(lái)成本高、費(fèi)時(shí)多,而且一旦組成了電路,就很難再改動(dòng),因此不得不完全重新設(shè)計(jì)控制器。微處理器與微計(jì)算機(jī)的先進(jìn)技術(shù)和低廉的價(jià)格,給步進(jìn)電機(jī)的控制開(kāi)創(chuàng)了一個(gè)新的局面[1]。人們完全可以借助于軟件來(lái)對(duì)步進(jìn)電機(jī)實(shí)施控制,從而實(shí)現(xiàn)復(fù)雜而成本又不高的控制系統(tǒng),同時(shí)還可以很靈活地通過(guò)改變程序來(lái)改變控制方案。為此,我們基于 89C51單片機(jī)設(shè)計(jì)了步進(jìn)電機(jī)控制器用于玻璃管加熱系統(tǒng)。該控制器具有線路簡(jiǎn)潔、性能良好、成本低、可靠性高等特點(diǎn),在實(shí)際應(yīng)用中取得了良好效果。
2 控制系統(tǒng)硬件設(shè)計(jì)
2.1 玻璃管加熱器的原理
直徑400mm 的圓盤(pán)上每隔15°有1個(gè)固定器,用于安放直徑3mm,長(zhǎng)度50mm-70mm的玻璃管,圓盤(pán)上方有一個(gè)火焰噴頭,用于對(duì)玻璃管進(jìn)行加熱。先在圓盤(pán)上裝上 24個(gè)玻璃管,開(kāi)機(jī)定位后開(kāi)始工作,步進(jìn)電動(dòng)機(jī)開(kāi)始運(yùn)轉(zhuǎn),當(dāng)每轉(zhuǎn)過(guò)15°時(shí),延時(shí)T秒(T的大小可以設(shè)定為3,4,5三種狀態(tài),本系統(tǒng)的默認(rèn)值為3,通過(guò)軟件控制可以使時(shí)間偏差小于0.1秒)當(dāng)一個(gè)玻璃管加熱完畢后,步進(jìn)電機(jī)轉(zhuǎn)動(dòng)移動(dòng)到下一個(gè)玻璃管,所用時(shí)間為1秒,通過(guò)軟件可以使定位偏差小于 0.1mm,后重復(fù)上一步工作。機(jī)械傳動(dòng)原理圖主視圖如圖1所示,俯視圖如圖2所示。
圖1 機(jī)械傳動(dòng)原理圖主視圖
圖2 機(jī)械傳動(dòng)原理圖俯視圖
2.2 單片機(jī)控制系統(tǒng)硬件設(shè)計(jì)
該系統(tǒng)控制器的核心采用89C51單片機(jī),具有4K的可擦除程序存儲(chǔ)器,易于系統(tǒng)的擴(kuò)展和程序的改進(jìn)。采用P1口的四位作為鍵盤(pán)輸入控制,用K1,K2, K3控制延時(shí)狀態(tài),K1按下延時(shí)3秒,K2按下延時(shí)4秒,K3按下延時(shí)5秒。K4控制運(yùn)行方向選擇,在順時(shí)針和逆時(shí)針之間進(jìn)行切換。數(shù)碼管采用串行顯示方式,對(duì)運(yùn)行狀態(tài)給以顯示,LED1顯示顯示方向選擇,“-”表示順時(shí)針旋轉(zhuǎn),“|”表示逆時(shí)針旋轉(zhuǎn)。LED2顯示的是延時(shí)時(shí)間,可顯示3,4,5三種狀態(tài)。參見(jiàn)圖3電氣控制框圖。
圖3 電氣控制框圖
3 控制系統(tǒng)軟件設(shè)計(jì)
3.1 軟件實(shí)現(xiàn)的功能分析
控制系統(tǒng)可以按要求來(lái)設(shè)定方向選擇,延時(shí)時(shí)間等,操作者可以方便的觀察控制系統(tǒng)的工作情況。
(1) 步進(jìn)電動(dòng)機(jī)的最小步距角為1.5°,每轉(zhuǎn)的步數(shù)為240步/轉(zhuǎn);
(2) 圓盤(pán)上15°一個(gè)固定器,一共可以安放24個(gè)玻璃管;
(3) 圓盤(pán)轉(zhuǎn)過(guò)15°的時(shí)間為1秒;
(4) 數(shù)字顯示部分為延時(shí)時(shí)間(可以設(shè)置為3,4,5秒);
(5) 噴頭與圓盤(pán)保持垂直以減少誤差。
3.2 控制系統(tǒng)的主程序流程圖
根據(jù)系統(tǒng)所應(yīng)完成的任務(wù),設(shè)計(jì)主程序流程圖如圖4所示:
圖4 主程序流程圖
圖4中:
左1:走一步延時(shí)10ms用來(lái)尋找定位點(diǎn),找到定位點(diǎn)后進(jìn)入正常運(yùn)行狀態(tài);
左2:置數(shù),用于設(shè)置10步一停,240步一判斷;
左3:正常運(yùn)行狀態(tài),走1步延時(shí)0.1s,10步一停,延時(shí)T(T=3,4,5);
左4:240步為一周,旋轉(zhuǎn)一周后判斷是否有干擾丟步,若有,重新尋找定位點(diǎn)。
系統(tǒng)啟動(dòng)后,首先對(duì)端口及顯示進(jìn)行初始化,顯示清零,步進(jìn)電動(dòng)機(jī)三相繞組處于失電狀態(tài),然后對(duì)數(shù)字鍵和功能鍵的掃描。當(dāng)操作通過(guò)數(shù)字鍵的一個(gè)設(shè)定值后,設(shè)定值以十六進(jìn)制存入RAM單元,再以十進(jìn)制通過(guò)動(dòng)態(tài)LED顯示出來(lái);操作者確認(rèn)后,按下左(或右)行功能鍵,步進(jìn)電動(dòng)機(jī)就會(huì)帶動(dòng)圓盤(pán)轉(zhuǎn)動(dòng),延遲的時(shí)間通過(guò)靜態(tài)LED顯示出來(lái)。
3.3 步進(jìn)電動(dòng)機(jī)正反轉(zhuǎn)驅(qū)動(dòng)子程序的設(shè)計(jì)
本系統(tǒng)所選用的步進(jìn)電動(dòng)機(jī)為110BF3-15型,它有三相繞組,向三相繞組輸入脈沖輸入脈沖的順序有三種,分別為單三拍、雙三拍、三相六拍。本系統(tǒng)選擇雙三拍輸入方式。輸入方式是靠軟件來(lái)控制的。雙三拍控制軟件是最簡(jiǎn)單的軟接口之一。首先要以8255A的PA口為輸出口,接著把控制信息送到PA0~PA2中,對(duì)應(yīng)的I/O線為“1”(高電平有效),則步進(jìn)電動(dòng)機(jī)相應(yīng)的相繞組通電,步進(jìn)電機(jī)轉(zhuǎn)子就轉(zhuǎn)動(dòng)。要求轉(zhuǎn)子以不同的方向轉(zhuǎn)動(dòng),三相繞組的通電順序就不同,則相應(yīng)的控制字也就不一樣,雙三拍繞組通電控制信息表如表1[2]。
由表1可知,正反轉(zhuǎn)所需要的信息串為03H→06H→05H→03H,這時(shí)按AB→BC→CA→AB順序通電。反轉(zhuǎn)時(shí)所需的信息串為05H→06H→03H→05H,這是按照順序CA→BC→AB→CA通電。
表2為步進(jìn)電動(dòng)機(jī)不同步相控制方式的控制字(十六進(jìn)制,下同)。
表1 步進(jìn)電動(dòng)機(jī)相繞組通電控制信息表
表2 不同步相控制方式的控制字
考慮步進(jìn)電動(dòng)機(jī)的正反轉(zhuǎn)之后,雙三拍控制軟件清單如下[3]:
DS :MOV A,#00H ;初始化使PA0~PA2為輸出
MOV DPTR,#0C000H ;
MOVX @DPTR,A ;
MOV DPTR,#0C000H ;為AB相通電
MOV A,#03H
MOVX @DPTR,A
LCALL DELY ;調(diào)延時(shí)
MOV DPTR,#0C000H ;為BC相通電
MOV A,#06H
MOVX @DPTR,A
LCALL DELY ;調(diào)延時(shí)
MOV DPTR,#0C000H ;為CA相通電
MOV A,#05H
MOVX @DPTR,A
LCALL DELY ;調(diào)延時(shí)
DELY:MOV 0CH,#0FH ;延時(shí)子程序
RET
以上是步進(jìn)電動(dòng)機(jī)三相繞組正向通電子程序,反向通電子程序類(lèi)似,若要改變電機(jī)轉(zhuǎn)速,只要改變MOV 0CH,#0FH指令中的立即數(shù)的值即可。圖5為步進(jìn)電動(dòng)機(jī)正反轉(zhuǎn)驅(qū)動(dòng)子程序流程圖:
圖5 正反轉(zhuǎn)驅(qū)動(dòng)程序流程圖
4 結(jié)束語(yǔ)
本系統(tǒng)操作方便,控制靈活,精確度高,可靠性好,已達(dá)到了預(yù)期的設(shè)計(jì)要求,大大減輕了體力勞動(dòng)強(qiáng)度,改善了工作條件。在軟、硬件實(shí)現(xiàn)上為了提高系統(tǒng)的可靠性及精度,均采用了相應(yīng)的抗干擾措施。