国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于80c51的單片機(jī)控制步進(jìn)電機(jī)系統(tǒng)設(shè)計

2014-04-29 12:32梅濤
西江月·上旬 2014年4期
關(guān)鍵詞:高電平編程單片機(jī)

梅濤

【摘 要】本文通過綜合運(yùn)用單片機(jī)技術(shù)、電力電子技術(shù)和遙控系統(tǒng)設(shè)計,從硬件和軟件兩方面研究了基于80c51單片機(jī)控制步進(jìn)電機(jī)系統(tǒng)的實(shí)現(xiàn)方法,通過PROTEL軟件對電路板的的繪制以及PROTEUS的仿真,證明了系統(tǒng)運(yùn)行的可靠性。

【關(guān)鍵詞】80c51;單片機(jī);步進(jìn)電機(jī)

1、前言

步進(jìn)電機(jī)有慣性小、轉(zhuǎn)矩大、反應(yīng)時間短等特點(diǎn),可以滿足即時啟動和停止的需求,因此,具有廣泛的應(yīng)用前景。步進(jìn)電機(jī)和其他元件比較起來,一般不用反饋就可以對距離和速率進(jìn)行準(zhǔn)確的測量,并且出來的轉(zhuǎn)角或距離相對較高,誤差也不累計;制控系統(tǒng)結(jié)構(gòu)精簡,與配套設(shè)備兼容,售價較低。所以,在直流電機(jī)伺服系統(tǒng)、交流電機(jī)伺服系統(tǒng)大量應(yīng)用在計算機(jī)制控系統(tǒng)中的同時,步進(jìn)電機(jī)卻仍然可以統(tǒng)治簡易數(shù)控機(jī)床、送料機(jī)構(gòu)、儀器、儀表等領(lǐng)域。為此,本文綜合運(yùn)用單片機(jī)技術(shù)、電力電子技術(shù)和遙控系統(tǒng)設(shè)計,從硬件和軟件兩方面研究了其實(shí)現(xiàn)方法,并通過PROTEUS、PROTEL軟件實(shí)現(xiàn)了80c51單片機(jī)控制步進(jìn)電機(jī),最后給出仿真結(jié)果和分析。

2、實(shí)現(xiàn)方案的選擇

本文提出的兩種方案,按如下描述。

2.1 方案一。采用ULN2003驅(qū)動芯片。鍵盤輸入信號,然后輸入單片機(jī)STC89C52的P3口低四位,經(jīng)過單片機(jī)的編程處理,將信號由單片機(jī)的P2口低四位輸出。進(jìn)入驅(qū)動芯片ULN2003,從而控制步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)。與此同時,單片機(jī)對由鍵盤輸入的信號編程處理,用單片機(jī)的P0口輸出信號,進(jìn)入液晶顯示屏1602。

2.2 方案二。采用L297+L298的經(jīng)典電路設(shè)計。采用四個獨(dú)立按鍵輸入信號,與單片機(jī)STC89C52的高四位相連接,輸入信號,再由單片機(jī)編程處理,由P2.0,P2.1,P2.2輸出,進(jìn)入芯片L297輸入端,再有A,B,C,D四個輸出端口輸入到L298的輸入端IN1,IN2,IN3,IN4,最后輸出端OUT1,OUT2,OUT3,OUT4輸出信號,二相四拍控制步進(jìn)電機(jī)的啟動,停止,正轉(zhuǎn)反轉(zhuǎn),加速減速。

2.3 方案論證及選擇。方案一中uln2003相當(dāng)于繼電器的作用,例如7個繼電器的一端連某電壓[也即uln2003電源電壓](<50)在一起,而另一端作為則作為輸出,就像一個二極管,只不過因電路集成功能的因素,輸出的電壓等同于uln2003的電壓罷了,常用于步進(jìn)電機(jī)。方案二中的L298/L297可以為負(fù)載提供雙向的電流。適合驅(qū)動2相或4相的步進(jìn)電機(jī)和直流電機(jī),特別是當(dāng)驅(qū)動電機(jī)的方向要改變時,只須把原來電機(jī)方向的電位置反即可(port1/port2電平一高一低控制電機(jī)B;port3/port4電平一高一低控制電機(jī)A,電平改變時電機(jī)的方向也隨即改變,而A pwm/B pwm 則分別控制電機(jī)AB的速度),而uln2003則須要重新改變電圖上的接線或外加器件接成h橋電路才行。并且方案二只需要給L297一個脈沖信號即可,對單片機(jī)的管腳占用少編程簡單,易于實(shí)現(xiàn)。故綜合比較判斷,采用第二種設(shè)計方案完成此次設(shè)計任務(wù)。

3、步進(jìn)電機(jī)驅(qū)動模塊

設(shè)計中由單片機(jī)的P2.0,P2.1,P2.2三個口輸入信號到驅(qū)動模塊。先經(jīng)過L297,L297芯片中的EN,CW和CLOCK三個引腳跟別接在單片機(jī)的P2.0,P2.1,P2.2。RES和HALF兩個引腳接高電平,OSC引腳接在VCC。輸出端A,B,C,D分別接在L298的四個輸入端口IN1,IN2,IN3,IN4。然后經(jīng)過的L298芯片,最后輸出信號通過OUT1,OUT2,OUT3,OUT4,最終控制步進(jìn)電機(jī)的轉(zhuǎn)動。

4、步進(jìn)電機(jī)驅(qū)動系統(tǒng)的軟件設(shè)計

4.1 Keil軟件及驅(qū)動系統(tǒng)總體設(shè)計。Keil軟件把指令植入菜單欄,同時還供應(yīng)了一個可以即時確定指令按鍵的工具欄以及信息提示窗口、對話框等。Keil軟件能夠同時審查多個源碼文件,它有兩大模式:1、Keil軟件可以譯碼幾乎全部的應(yīng)用程序并合成可以運(yùn)行的程序,這個模式的詳細(xì)特點(diǎn)隨后在新建應(yīng)用時再討論;2、Keil軟件可以為各種應(yīng)用軟件供應(yīng)一個強(qiáng)大的調(diào)試器,這個模式在隨后的調(diào)試程序介紹時再詳述。這兩種模式有一個共同的特點(diǎn),就是都可以用Keil Vision3的編碼器來調(diào)整源碼。

4.2 單片機(jī)主程序。單片機(jī)主程序主要是整個系統(tǒng)控制的核心框架,不僅控制著整個系統(tǒng)的運(yùn)轉(zhuǎn),而且還起著銜接子程序模塊的作用。在考慮系統(tǒng)要實(shí)現(xiàn)的功能的情況下,設(shè)計的主程序的流程如下:

IT0 = 1;//外部中斷信號負(fù)跳變有效

EA = 1;//開總控制開關(guān)

EX0 = 1;//開中斷

P2_0=0;//P2.0口賦初值

P3_4=1;//K1為高電平

P3_5=1;//K2為高電平

P3_6=1; //K3為高電平

P3_7=1; //K4為高電平

Lcd_Init();//進(jìn)入LCD初始化

printXY(0,1,"Speed(r/m):");//LCD顯示第二行

printXY(0,0,"Direction: front");//LCD顯示第一行

disspeed();//調(diào)入disspeed子函數(shù)

while(1)

{

delay(speed);//延時

P2_2=~P2_2;//P2.2口不斷的取反

}

LCD顯示程序

對于LCD程序,其主要包括LCD的初始化,LCD的讀寫數(shù)據(jù),LCD的狀態(tài)的讀取,LCD寫指令以及LCD顯示一個字符和一串字符。

LCD的初始化主要是對LCD的模式的設(shè)置、清屏以及顯示光標(biāo)位置的設(shè)置。該部分程序如下:

void Lcd_Init(void)

{

delay1_64ms();

Lcd_Write(0,0x38); //8位數(shù)據(jù)端口,2行顯示,5*7點(diǎn)陣

Lcd_Write(0,0x38);

Lcd_Write(0,0x38);

Lcd_SetDisplay(0x04); //開啟顯示, 無光標(biāo)|

Lcd_Cursor|Lcd_Flash

Lcd_SetInput(0x02|0x00); //AC遞增, 畫面不動_To

}

LCD顯示字符程序主要是對光標(biāo)位置的設(shè)置以及LCD字符的顯示設(shè)置,LCD顯示字符的程序如下:

void Lcd_SetDisplay(uchar DisplayMode)

{

Lcd_Write(0,0x08|DisplayMode);

}

void Lcd_SetInput(uchar InputMode)

{

Lcd_Write(0,0x04|InputMode);

}

4.3 仿真驗證及結(jié)果分析。此次設(shè)計系統(tǒng)運(yùn)用的是Proteus7仿真軟件對電路程序進(jìn)行仿真。在設(shè)計過程中,也選用了利用ULN2003驅(qū)動步進(jìn)電機(jī),進(jìn)行對比,但是由于ULN2003只能驅(qū)動4相步進(jìn)電機(jī)。軟件編程過于復(fù)雜,并且出現(xiàn)許多問題,如每次轉(zhuǎn)動都有回轉(zhuǎn)的現(xiàn)象。

5、結(jié)論

基于單片機(jī)的步進(jìn)電機(jī)驅(qū)動系統(tǒng)的設(shè)計,主要用到了STC89C52單片機(jī),L297,L298步進(jìn)電機(jī)驅(qū)動芯片,紅外遙控,獨(dú)立鍵盤,LCD1602液晶顯示屏,USB數(shù)據(jù)線,串行線等元器件。本課題開發(fā)的步進(jìn)電機(jī)驅(qū)動系統(tǒng)也有許多不完善的地方,需要進(jìn)行多方面的后續(xù)開發(fā),進(jìn)一步增強(qiáng)其功能。

【參考文獻(xiàn)】

[1]陳石龍.基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)[J].寧德師專學(xué)報,2009(01).

[2]婁俊,朱志甫.基于單片機(jī)AT89C51的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計[J].湖南農(nóng)機(jī),2010(09).

[3]高志遠(yuǎn),姚建國,曹陽,等.智能電網(wǎng)發(fā)展機(jī)理研究初探[J].電力系統(tǒng)保護(hù)與控制,2014(05).

[4]李亞平,姚建國,黃海峰,等.SVG技術(shù)在電網(wǎng)調(diào)度自動化系統(tǒng)中的應(yīng)用[J].電力系統(tǒng)自動化,2005(23).

猜你喜歡
高電平編程單片機(jī)
一種基于FPGA的PWM防錯輸出控制電路
編程,是一種態(tài)度
元征X-431實(shí)測:奔馳發(fā)動機(jī)編程
編程小能手
紡織機(jī)上誕生的編程
基于單片機(jī)的SPWM控制逆變器的設(shè)計與實(shí)現(xiàn)
基于單片機(jī)的層次漸變暖燈的研究
TS-03C全固態(tài)PDM中波發(fā)射機(jī)開關(guān)機(jī)控制電路原理及故障分析
基于單片機(jī)的便捷式LCF測量儀
DM 50KW中波廣播發(fā)射機(jī)欠推動故障分析
马边| 伊宁县| 新田县| 海口市| 木兰县| 丰宁| 浦城县| 河津市| 长宁县| 和静县| 中阳县| 盐城市| 郧西县| 祁东县| 聂拉木县| 鄂温| 广河县| 紫阳县| 吉木乃县| 台安县| 崇文区| 渝北区| 虞城县| 凌源市| 大厂| 东至县| 喀什市| 醴陵市| 邢台县| 江门市| 青龙| 肥西县| 团风县| 凌云县| 青海省| 陕西省| 新巴尔虎左旗| 简阳市| 湖南省| 岳西县| 秦皇岛市|