張秋妍
電機(jī)的定位精度、速度/加速度是位置控制中最常見(jiàn)的參數(shù)。其中定位精度是一個(gè)非常重要的參數(shù),它將直接影響到測(cè)量設(shè)備的測(cè)量精度、設(shè)備及人身的安全等。位置控制不好就可能給生產(chǎn)安全、產(chǎn)品質(zhì)量和產(chǎn)量等帶來(lái)一系列問(wèn)題。因此設(shè)計(jì)一個(gè)低成本、使用方便的位置控制器是很有必要的。
位置控制是自動(dòng)化控制中一個(gè)基本控制單元,設(shè)備精度的要求越來(lái)越高,器件及加工件越來(lái)越小,對(duì)位置的定位精度的要求也越來(lái)越高,原來(lái)的直流電機(jī)、交流電機(jī)也已不能滿足設(shè)備的要求,應(yīng)在許多位置控制方面采用更高精度的步進(jìn)電機(jī)、伺服電機(jī)去替換原先的直流電機(jī)及交流電機(jī)。雖然現(xiàn)在大部分的PLC都具有位置控制(脈沖輸出)功能,但使用起來(lái)很不方便,當(dāng)要更改某些位置參數(shù)時(shí),要么借助于個(gè)人PC或編程器去更改PLC內(nèi)存中的位置參數(shù)信息,要么增加觸摸屏去更改PLC內(nèi)存中的位置參數(shù)信息,以更改電機(jī)的位置參數(shù),這樣會(huì)增加設(shè)備使用的復(fù)雜性,同時(shí)也會(huì)增加設(shè)備的成本。為了方便使用設(shè)備、降低成本,筆者采用單片機(jī)及LCD顯示技術(shù)設(shè)計(jì)了一塊單軸運(yùn)動(dòng)控制板,該控制器可手動(dòng)設(shè)置位置參數(shù)及按照設(shè)計(jì)的運(yùn)動(dòng)軌跡自動(dòng)運(yùn)行、具有LCD顯示、專用的電機(jī)限位接口、通用I/O、串行通訊接口,可滿足大部分設(shè)備的要求。下面談?wù)勗摬竭M(jìn)電機(jī)運(yùn)動(dòng)控制板。
一、主要功能
可手動(dòng)設(shè)定位置參數(shù)。
有LCD顯示。
有專用及通用I/O??蓴U(kuò)展串行通訊,實(shí)現(xiàn)上位PC控制。
二、控制器系統(tǒng)結(jié)構(gòu)框圖
AT89C52是一個(gè)低電壓,高性能CMOS 8位單片機(jī),片內(nèi)含8k bytes的可反復(fù)擦寫(xiě)的Flash只讀程序存儲(chǔ)器和256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,功能強(qiáng)大的AT89C52單片機(jī)可提供許多較復(fù)雜系統(tǒng)控制應(yīng)用場(chǎng)合。
AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入∕輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫(xiě)口線,AT89C52可以按照常規(guī)方法編程,也可以在線編程。將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫(xiě)的Flash存儲(chǔ)器可有效地降低開(kāi)發(fā)成本。
主要功能特性包括:與MCS-51產(chǎn)品指令和引腳完全兼容;8k可反復(fù)擦寫(xiě)(>1000次)Flash ROM;3個(gè)16位可編程定時(shí)/計(jì)數(shù)器;時(shí)鐘頻率0-24MHz;256×8bit內(nèi)部RAM;8個(gè)外部中斷源;32個(gè)可編程I/O口,可直接驅(qū)動(dòng)LED;低功耗空閑和掉電功能;可編程UARL通道;軟件設(shè)置睡眠和喚醒功能。
四、LED顯示模塊(NT-1624A)圖
此控制器采用的LCD顯示模塊為2×16的字符型顯示模塊,由單片機(jī)直接驅(qū)動(dòng)。當(dāng)選中該LCD模塊工作時(shí),寫(xiě)入要顯示數(shù)據(jù)的地址,再在數(shù)據(jù)總線上寫(xiě)入需要顯示的數(shù)據(jù)后,即可在LCD模塊上顯示需要顯示的字符。在更新屏幕時(shí)需先清除屏幕,否則當(dāng)更新的屏幕顯示的字符少于上次顯示的字符時(shí),上次顯示的部分字符會(huì)不能清除。
五、串行通訊功能(MAX232E)
系統(tǒng)擴(kuò)展一塊兩通道的串行通訊芯片MAX232E,用來(lái)與上位PC通訊,發(fā)送數(shù)據(jù)及返回狀態(tài)。
引腳功能:
數(shù)據(jù)發(fā)送(T1IN)。 用于向上位PC發(fā)送數(shù)據(jù)。
數(shù)據(jù)接收(R1OUT)。用于接收上位PC發(fā)送過(guò)來(lái)的數(shù)據(jù)。
六、I/O定義及其工作原理
1.I/O定義
本單軸運(yùn)動(dòng)控制器采用ATMEL公司生產(chǎn)的AT89C52單片機(jī)控制,該單片機(jī)有32個(gè)可編程I/O接口,該單軸運(yùn)動(dòng)控制板應(yīng)用在某公司生產(chǎn)的單軸點(diǎn)膠機(jī)上,這些I/O接口在單軸點(diǎn)膠機(jī)中作用定義如下。
(1)LCD顯示模塊接口。
P00~P07:用作LCD顯示模塊數(shù)據(jù)總線接口。
P20~P22:用作LCD顯示模塊操作接口。
(2)通用輸入接口。
P10~P13:用作按鈕輸入接口。
P10:GO_UP鍵;P11:GO_DOWN鍵;P12:SHIFT鍵;P13:ENTER鍵。
P14~P17:用作外部通用輸入接口。
P14:點(diǎn)膠頭下位;P15:點(diǎn)膠頭上位。P16、P17:備用。
(3)通用輸出接口。
P24~P27:用作外部通用輸出接口。
P27:點(diǎn)膠頭上、下;P15:點(diǎn)膠閥打開(kāi)、關(guān)閉。P16、P17:備用。
(4)專用輸入輸出接口。
P32、P33:用作步進(jìn)電機(jī)的限位輸入。
P33、P34:用作步進(jìn)電機(jī)的脈沖及方向輸出。
2.工作原理
該單軸運(yùn)動(dòng)控制板應(yīng)用在某公司生產(chǎn)的單軸點(diǎn)膠機(jī)上,具體工作原理是:當(dāng)控制板上電后,系統(tǒng)初始化,LCD顯示歡迎界面:“COLIBRIWELCOME”延時(shí)1秒后,系統(tǒng)顯示:“POSITIONSET”系統(tǒng)進(jìn)入點(diǎn)膠位置設(shè)置界面,用戶可按LCD顯示的提示位置參數(shù)的設(shè)定。在位置設(shè)置期間按SHIFT鍵可進(jìn)行大小步切換;按GO_UP鍵電機(jī)正走一步(大步時(shí)步進(jìn)電機(jī)走50步,小步時(shí)步進(jìn)電機(jī)走5步);按GO_DOWN鍵電機(jī)反走一步(大步時(shí)步進(jìn)電機(jī)走50步,小步時(shí)步進(jìn)電機(jī)走5步);長(zhǎng)按ENTER鍵保存位置參數(shù)并進(jìn)入下一位置參數(shù)設(shè)定。當(dāng)完成所有的位置參數(shù)后系統(tǒng)顯示:“POSITIONSETFINISH”延時(shí)1秒后,系統(tǒng)顯示:“SYSTEMGOHOME”系統(tǒng)復(fù)位,步進(jìn)電機(jī)復(fù)位,所有通用輸出關(guān)閉,復(fù)位完成后,系統(tǒng)顯示待機(jī)界面: “READY PRESSSTART” 此時(shí),長(zhǎng)按ENTER鍵進(jìn)入位置參數(shù)設(shè)置操作,可按上面的方法完成位置參數(shù)設(shè)置。當(dāng)完成位置參數(shù)設(shè)置后,系統(tǒng)又回到待機(jī)界面。若短按ENTER鍵則運(yùn)行客戶程序執(zhí)行點(diǎn)膠動(dòng)作。當(dāng)進(jìn)入點(diǎn)膠程序后,系統(tǒng)顯示:“MOVE TO POS-1”步進(jìn)電機(jī)移動(dòng)到第一個(gè)點(diǎn)膠位置,電機(jī)到位后系統(tǒng)顯示:“OPEN OUT-1”點(diǎn)膠頭下(打開(kāi)通用輸出1),等待點(diǎn)膠頭到下位(等待通用輸入1為ON),延時(shí)0.5S,系統(tǒng)顯示:“OPEN OUT-2”打開(kāi)點(diǎn)膠閥(打開(kāi)通用輸出2),開(kāi)始點(diǎn)膠,延時(shí)0.5S,系統(tǒng)顯示:“CLOSE OUT-2”關(guān)閉點(diǎn)膠閥(關(guān)閉通用輸出2),延時(shí)0.5S,系統(tǒng)顯示:“CLOSE OUT-1”點(diǎn)膠頭回上位(關(guān)閉輸出1),等待點(diǎn)膠頭到上位(等待通用輸入2為ON),完成一個(gè)位置的點(diǎn)膠。以后位置的點(diǎn)膠同第一個(gè)位置的點(diǎn)膠,即移動(dòng)到下一個(gè)位置,點(diǎn)膠頭下,等待點(diǎn)膠頭到下位,延時(shí)0.5S,打開(kāi)點(diǎn)膠閥,延時(shí)0.5S,關(guān)閉點(diǎn)膠閥,延時(shí)0.5S,點(diǎn)膠頭上,等待點(diǎn)膠頭回上位。當(dāng)所有位置都點(diǎn)完后,步進(jìn)電機(jī)回復(fù)位,完成一次點(diǎn)膠循環(huán),系統(tǒng)回到待機(jī)界面。
該單軸運(yùn)動(dòng)控制板的設(shè)計(jì),解決了某公司在一些設(shè)備對(duì)位置要求比較精確的場(chǎng)所,采用PLC控制操作不方便且成本高的問(wèn)題,現(xiàn)已應(yīng)用在該公司一些生產(chǎn)設(shè)備上,如簡(jiǎn)易的單軸點(diǎn)膠機(jī),模具控制器,IC測(cè)量機(jī)等設(shè)備上,降低了成本,提高了某公司產(chǎn)品的競(jìng)爭(zhēng)力。但同時(shí)也存在著不足的一面,例如,只能控制單個(gè)步進(jìn)電機(jī);通用I/O較少,限制了控制器的功能等。不過(guò),筆者相信通過(guò)自己的努力,這幾方面的問(wèn)題一定能夠得到解決,同時(shí)也使自己在自動(dòng)控制方面有進(jìn)一步的提高。