51單片機(jī)在玻璃管加熱控制系統(tǒng)中的應(yī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)。
評(píng)論