步進(jìn)電動機(jī)驅(qū)動系統(tǒng)的單片機(jī)控制
韓國明 (天津大學(xué))
1 引言
為適應(yīng)焊接自動化的需要.實(shí)現(xiàn)焊機(jī)機(jī)頭在橫向和縱向(高度方向)位置的自動調(diào)整,改變以往的手動調(diào)節(jié)。本文采用單片微機(jī)控制.使用步進(jìn)電動機(jī)驅(qū)動執(zhí)行機(jī)構(gòu),以達(dá)到焊接前或焊接過程中焊機(jī)機(jī)頭位置調(diào)節(jié)的目的。
2步進(jìn)電動機(jī)驅(qū)動系統(tǒng)
焊機(jī)機(jī)頭橫向和縱向位置的調(diào)整是由2臺步進(jìn)電動機(jī)通過十字絲杠傳動系統(tǒng),拖動焊機(jī)機(jī)頭進(jìn)行橫向和縱向的二維運(yùn)動。步進(jìn)電動機(jī)驅(qū)動控制則使用mcs -51系列中的8031單片機(jī)進(jìn)行,通過8031單片機(jī)的p1口控制2臺步進(jìn)電動機(jī),由軟件對2臺步進(jìn)電動機(jī)進(jìn)行分時(shí)驅(qū)動,其中1臺步進(jìn)電動機(jī)的驅(qū)動控制系統(tǒng)工作原理如圖1所示。
2.1光電隔離電路
為有效地抑制干擾,提高系統(tǒng)的可靠性,在單片機(jī)與步進(jìn)電動機(jī)功率驅(qū)動線路之間,利用光電耦合器件組成如圖2所示的光電隔離電路。其作用是實(shí)現(xiàn)了單片微機(jī)與外部電路不同電平的轉(zhuǎn)換,并且切斷了單片微機(jī)與步進(jìn)電動機(jī)驅(qū)動電路之間電的直接聯(lián)系,同時(shí)實(shí)現(xiàn)了單片微機(jī)系統(tǒng)與步進(jìn)電動機(jī)驅(qū)動系統(tǒng)地線的分別聯(lián)接,以防止處于大電流、感性負(fù)載下工作的驅(qū)動電路產(chǎn)生的干擾信號通過線路串入,而影響單片微機(jī)的正常工作。
2.2功率驅(qū)動線路
選用的步進(jìn)電勁機(jī)型號為75bf003,其工作方式為三相六拍,步距角為1.5度,工作電壓為30v,每相靜態(tài)電流4a。因此設(shè)計(jì)了如圖3所示的功率驅(qū)動電路,其電源部分是由變壓器經(jīng)整流橋整流,輸出30v、4a的電流,供給步進(jìn)電動機(jī)各相繞組。由8031單片機(jī)的p1口作為控制端口,根據(jù)步進(jìn)電機(jī)的通電分配方式,輸出控制字節(jié),經(jīng)一定延時(shí),產(chǎn)生占空比為i:i的矩形波,經(jīng)驅(qū)動電源功率放大后,可分別控制橫向和高度方向步進(jìn)電動機(jī)的三相繞組的通電狀態(tài),驅(qū)動步進(jìn)電動機(jī)按指定方向和速度運(yùn)轉(zhuǎn)。由于通過程序設(shè)置進(jìn)行分時(shí)驅(qū)動,2臺步進(jìn)電動機(jī)的功率驅(qū)動電路共用一個(gè)電源,在功率驅(qū)動電路中采用了達(dá)林頓管為功率大器件,使電路結(jié)構(gòu)大為簡化。
3步進(jìn)電動機(jī)的運(yùn)行30v
3.1轉(zhuǎn)向控制

步進(jìn)電動機(jī)運(yùn)行方向的控制,是通過8031單片機(jī)p1端口的p1.0~p1.2輸出橫向步進(jìn)電動機(jī)a、b、c三相繞組的控制信號,p1.3~p1.5;輸出高度方向步進(jìn)電動機(jī)的a、b、c三相繞組控制信號,并設(shè)定輸出為1時(shí)繞組通電,為0時(shí)斷電。根據(jù)步進(jìn)電動機(jī)的特性,按一定的邏輯程序,使8031單片機(jī)的p1口的信號輸出按照選定的步進(jìn)電動機(jī),以指定的通電狀態(tài)順序送出控制字節(jié),便可控制步進(jìn)電動機(jī)的各相繞組按約定的通電狀態(tài)順序通電,驅(qū)動步進(jìn)電動機(jī)順時(shí)針或逆時(shí)針方向運(yùn)轉(zhuǎn)。當(dāng)采用三相步進(jìn)電動機(jī)按三相六拍方式運(yùn)轉(zhuǎn)時(shí),其通電狀態(tài)變換順序?yàn)椋?/div>
步進(jìn)電機(jī)的相數(shù)的控制方式確定之后,p1.0~p1.5。輸出數(shù)據(jù)變化規(guī)律也就確定,一般稱為輸出模型。在控制過程中,為了便于尋找,其輸出模型是以數(shù)據(jù)的形式存放在eprom中,程擴(kuò)運(yùn)行時(shí)可通過查表指令movc a,@a+pc和傳送指令movp1,a,使p1口輸出不同的值來選擇不同方向的步進(jìn)電動機(jī)和決定電機(jī)的轉(zhuǎn)動方向。
橫向和縱向的步進(jìn)電動機(jī)按三相六拍工作時(shí),p1口的輸出波形和工作狀態(tài)真值表分別見圖4及附表。
當(dāng)8031單片機(jī)執(zhí)行傳送指令時(shí),將附表中的數(shù)據(jù)順序取出,送往p1輸出端口,每輸出一個(gè)控制狀態(tài)字,步進(jìn)電動機(jī)轉(zhuǎn)動一步,連續(xù)輸出,步進(jìn)電動機(jī)連續(xù)運(yùn)行,倒序輸出,步進(jìn)電動機(jī)反向運(yùn)行,停止輸出,步進(jìn)電動機(jī)則停止運(yùn)行。
3.2轉(zhuǎn)速控制
步進(jìn)電動機(jī)轉(zhuǎn)速控制是通過程序延時(shí)的方法,即當(dāng)cpu送出一組數(shù)據(jù)后,就進(jìn)入延時(shí)程序,延時(shí)到取第二組數(shù)據(jù)輸出,因而延時(shí)長,轉(zhuǎn)速就慢,延時(shí)短,轉(zhuǎn)速就快。通過改變步進(jìn) |