【正文】
圖 11 三相反應(yīng)式步進電動機結(jié)構(gòu) [6] 基于 PIC單片機的步進電機控制系統(tǒng) 設(shè)計 4 2. 反應(yīng)式步進電動機的工作原理 如果給處于錯齒狀態(tài)的相通電,則轉(zhuǎn)子在電磁力的作用下,將向磁導(dǎo)率最大的位置轉(zhuǎn)動,即向趨于對齒的狀態(tài)轉(zhuǎn)動。 該步進電動機的正轉(zhuǎn)通電順序為 AB→ A(B)→ (A)(B)→ (A)B→A B… ;反轉(zhuǎn)通電順序為AB→ (A)B→ (A)( B)→ A(B)→A B… 。將離散所得的轉(zhuǎn)速序列所對應(yīng)的定時常數(shù)序列,做成表格儲存在程序控制器中。 四、 PIC 單片機 (一) PIC 系列單片機的特點 美國 Microchip 公司的 PIC 系列單片機主要有以下特點:( 1)哈佛總線結(jié)構(gòu);( 2)指令單字節(jié)化;( 3)尋址方式簡單;( 4)精簡指令集( RISC)技術(shù);( 5)代碼壓縮率高;( 6)運行速度高;( 7)功耗低;( 8)驅(qū)動能力強,達到 20mA 的電流驅(qū)動能力;( 9)自帶硬件看門狗電路;( 10)外接電路簡單;( 11)開發(fā)方便。因此對一個端口進行寫入操作意味著總是光讀取端口的引腳電平,在修改這個值,然后再寫入端口的數(shù)據(jù)鎖存器 [12]。 由于本控制系統(tǒng)所控制的電機類型為兩相六線混合式步進電動機 ,因此 系統(tǒng)由PIC16F877 單片機的 PORTA 端口產(chǎn)生 A 和 A、 B 和 B 兩相信號 。通常在繞組回路中串入電阻 Rs,使繞組回路的時間常數(shù)減小。實時仿真調(diào)試源程序 所以系統(tǒng)監(jiān)控模塊只完成對系統(tǒng)的初始化設(shè)置,通過鍵盤中斷,實現(xiàn)鍵盤掃描及處理程序的跳轉(zhuǎn) 。 } } (三)步進電機轉(zhuǎn)速設(shè)置 本步進電 動 機轉(zhuǎn)速設(shè)置 共 分為三個檔次,其中一檔為 100 轉(zhuǎn) /分,二 檔為 150 轉(zhuǎn) /分,三檔為 200 轉(zhuǎn) /分,只用一個按鍵來實現(xiàn)各轉(zhuǎn)速之間的切換。步進電動機反向勵磁與正向相似。amp。程序執(zhí)行過程中,每次速度升一檔,都要計算這個臺階應(yīng)走的步數(shù),然后以遞減方式檢查,當(dāng)減至零時,該檔速度運行完畢,升入又一檔速度 [15]。 由于該系統(tǒng)是用于 作為控制步進電機的轉(zhuǎn)向,轉(zhuǎn)速等各種狀態(tài) ,所以在實際應(yīng)用中還有很多需要完善的地方。s governing body, has also ordered an immediate investigation into the referee39。s plaint. In a statement the Russian side added: We found no racist insults from fans of CSKA. Age has reached the end of the beginning of a word. May be guilty in his seems to passing a lot of different life became the appearance of the same day。通過對 步進電機工作參數(shù)設(shè)置,LCD 顯示,加減速 控制等功能的實現(xiàn),我們完成了對 單片機控制步進電機 的原理剖析,對 步進電機加減速技術(shù) 有了一定了解,加深了對 PIC 單片機應(yīng)用的認識,掌握了基于單片機的編程思想,為日后走向工作崗位積累了軟件開發(fā)設(shè)計及硬件制作方面的寶貴經(jīng)驗。減速過程的規(guī)律與加速相同只是按相反的順序進行。 B=1。 void drive() //正向驅(qū)動子程序 { signal=0。因此當(dāng)轉(zhuǎn)速檔次設(shè)置完畢后,相應(yīng)的定時初值和預(yù)分頻 設(shè) 置就會通過相應(yīng)子程序進行裝入,從而控制電機的運轉(zhuǎn)速率。其它設(shè)置流程與設(shè)置電機轉(zhuǎn)向類似,無需贅述。調(diào)試目標板硬件系統(tǒng) 模塊的數(shù)據(jù)線可與單片機數(shù)據(jù)線直接相連 。 1 * 4 鍵 盤L C D顯 示 屏P I C單 片機控 制 驅(qū)動 電 路步 進電 機直 流 電 壓 源負 載 圖 21 控制系統(tǒng)總體結(jié)構(gòu)框圖 二、控制系統(tǒng)的硬件電路 (一)控制系統(tǒng)總體電路 本控制系統(tǒng)硬件總體電路以單片機作為系統(tǒng)核心,主要由 PIC16F877 單片機及單片機工作外圍電路、步進電機控制驅(qū)動電路、 LCD 顯示屏接口電路、鍵盤輸入電路等組成。該時鐘可以是單片機本身的工作時鐘,即使用內(nèi)部時鐘,稱之為定時器;也可以使用外部引腳輸入的時鐘,即使用外部的時鐘輸入來累計,稱之為計數(shù)器。 PIC16F87X 系列單片機是 Microchip 公司于 1998 年年底推出的新產(chǎn)品,可以實現(xiàn)在線調(diào)試和在線編程。 f bf at / s 圖 16 指數(shù)曲線控制 [7] 由于本次設(shè)計選用的步進電機為混合是步進電動機,且輸出功率較小,多用于對控制精度 要求相對 不高的場合,因此采用勻加減速控制方法來實現(xiàn) 控制系統(tǒng) 運行過程中的加減速。 雙四拍方式還有一個優(yōu)點就是不易產(chǎn)生失步。 下面以三相反應(yīng)式步進電機為例,起典型結(jié)構(gòu)如圖 12 所示。由于步進電機的輸出力矩隨速度的增大而不斷衰減,輸出功率也隨速度的變化而變化 [5]。電機出廠時給出了一個步距角的值,如本設(shè)計所選用的 KP39HM2025 型電機給出的值為 176。尤其在一些智能化要求較高的場合,用模擬芯片及信號發(fā)生器來控制步進電機有一定的局限 [2]。其驅(qū)動速度和指令脈沖能嚴格同步,能實現(xiàn)正反轉(zhuǎn)和平滑速度調(diào)節(jié),因而被廣泛應(yīng)用于數(shù)模轉(zhuǎn)換,速度控制和位置控制系統(tǒng)。 PIC 系列單片機具有體積小,功能強,功耗低、設(shè)計開發(fā)靈活方便和價格低廉等特點,可以應(yīng)用在數(shù)字化儀器儀表,自動測試和控制,智能化家用電器等領(lǐng)域 [3]。整步工作時為 176。負載量一定,負載轉(zhuǎn)矩增加,或負載轉(zhuǎn)矩一定,負載慣量增加,都會使啟動頻率下降 [5]。 圖 12 三相反應(yīng)式步進電機工作原理 [1] 若按 A→ B→ C→ A 循環(huán)順序通電,則步進電機按一定方向轉(zhuǎn)動。 圖 13 正向旋轉(zhuǎn)、雙四拍工作方式時的相電壓,電流波形 基于 PIC單片機的步進電機控制系統(tǒng) 設(shè)計 6 圖 14 反向旋轉(zhuǎn),雙四拍工作方式時的相電壓,電流波形 (四) 步進電動機的加減速 步進電機有一個空載啟動頻率 fa, 即步進電機在空載情況下能正常啟動的脈 沖頻率 。 液晶顯示模塊是將液晶顯示器件,連接件,驅(qū)動控制器, PCB 線 路板,背光源,結(jié)構(gòu)件等裝配在一起的組件 , 簡稱 LCM。基本功能區(qū)域的主要功能模塊包括以下 7部分 ,它們是:程序控制區(qū)域,數(shù)據(jù)存儲區(qū)域, E2PROM 數(shù)據(jù)存儲 區(qū)域 ,算數(shù)邏輯運算區(qū)域,輸入 /輸出 端口模塊、多功能定時器模塊,核心模塊 [11]。下面主要介紹 TMR0 的功能特性及與該模塊相關(guān)的寄存器??刂葡到y(tǒng) 電路圖如圖 22 所示。 圖 24 單片機與 LCD 顯示屏接口電路 (四)單片機與鍵盤接口電路 由于本控 制系統(tǒng)只用到四個按鍵,所以使用最簡單的方法即將按鍵直接與單片機 引腳相連,一個按鍵對應(yīng)一個引腳。MCLR/VPP 腳(系統(tǒng)復(fù)位 /編程電壓腳) //顯示屏出現(xiàn) “請選擇電機轉(zhuǎn)向 ” motor_DF=0。該模塊的軟件流程圖如圖 33 所示。B) //A 相和 B 相繞組導(dǎo)通 { NA=0。 內(nèi)部定時器 TMR0中斷服務(wù)程序流程框圖如圖 35 所示 保 護 現(xiàn) 場溢 出 中 斷標 志 位 復(fù) 位重 新 裝 載定 時 初 值電 機 驅(qū) 動標 志 位 置 位恢 復(fù) 現(xiàn) 場中 斷 返 回開 始 圖 35 內(nèi)部定時器 TMR0 中斷服務(wù)流程圖 內(nèi)部定時器中斷主要是利用單片機的內(nèi)部定時器的 TMR0 模塊( 8 位計數(shù)方式)產(chǎn)生不同周期的定時信號,每次中斷都給步進電機兩個繞組一次脈沖,使得步進電機轉(zhuǎn)動一個節(jié)拍,因此步進電機的轉(zhuǎn)速是由單片機內(nèi)部定時器的中斷頻率來決定的,在不改變分頻器分頻比的情況下,不斷改變定時器的裝載初值就可改變電機的運轉(zhuǎn)速度。首先應(yīng)根據(jù)輸出總脈沖數(shù)確定加速,恒速和減速的時間并確定下一的時間值,并 將定時器的初值送給定時器 TMR0,從電機啟動瞬間開始,每產(chǎn)生一個脈沖,通過查詢數(shù)組定時器初值增加某一定值,則相應(yīng)的脈沖周期減少,即脈沖頻率 增加;若定時器初值逐步減少,則相應(yīng)的脈沖周期增加,即脈沖頻率減少 [15]。 最后,向各位和我一樣面臨就業(yè)或考研壓力卻對我的畢業(yè)設(shè)計 有所幫助 的同學(xué)們表示衷心的感謝,同時也特別感謝學(xué)院和學(xué)校對我們畢業(yè)設(shè)計的大力支持??傆X得自己自己似乎應(yīng)該去做點什么,或者寫點什么。s Premier League match at Chelsea on Sunday. 基于 PIC單片機的步進電機控制系統(tǒng) 設(shè)計 31 I am going to be at the match tomorrow and I have asked to meet Yaya Toure, he told BBC Sport. For me it39。 } else \\恒速運行時設(shè)定電機參數(shù) TMR0=constant_rate。在加減速的控制過程中,不一定每步都計算 定時器重裝值,可以采用階梯曲線來逼近 加減 速曲線如圖 37 所示。NB) //A 非 相和 B 非 相繞組導(dǎo)通 { A=0。步進電機有單拍、雙拍和多拍三種工作方式,由于本控制系統(tǒng)所應(yīng)用的步進電機為兩相步進電機,又經(jīng)實驗測定證明該步進電機在雙四拍工作方式下工作特性 較好, 因此在本系統(tǒng)中步進電機的工作方式為兩相四拍。 //方向按鍵標志位復(fù)位 if(motor_DF) LCD_printer (2,0,str9)。 寄 存 器 初 始 化 設(shè) 置開 始電 機 參 數(shù) 初 始 設(shè) 置結(jié) 束控 制 電 機 運 行 圖 31 控制系 統(tǒng)總流程圖 二、系統(tǒng)監(jiān)控模塊 (一)系統(tǒng)監(jiān)控模塊流程圖 在系統(tǒng)監(jiān)控中,應(yīng)完成系統(tǒng)的啟動,進行鍵盤掃描,得到相應(yīng)鍵值,完成對步進電機轉(zhuǎn)向,轉(zhuǎn)速,運行轉(zhuǎn)數(shù)等參數(shù)的設(shè)置,使設(shè)置參數(shù)在 LCD 顯示屏 動態(tài) 顯示出來,并使步進電機按照要求進行工作。將其仿真頭直接連接到應(yīng)用系統(tǒng)的 MCU 插座中,就如同一片 PIC16F87X 一樣運行用戶的應(yīng)用程序。來自單片機的信號電壓經(jīng)過電流放大后加到三極管 VT 的基極,控制 VT 的導(dǎo)通和截止,從而控制相繞組的通電和斷電。系統(tǒng)電路由五部分組成,即輸入、顯示部分; PIC 單片機;驅(qū)動控制電路;直流電壓源及步進電機。 圖 17 是一個典型的 I/O 端口,它沒有畫出 I/O 引腳復(fù)用的外設(shè)功能。所有的功能,包括 顯示 RAM,字型產(chǎn)生器 在內(nèi) 都包含在一個芯片里面,只要一個最小的微處理器系統(tǒng),就可以方便操作模塊。指數(shù)曲線 如圖16 所示,在開始時加速度最大,隨著時間的推移,加速度逐漸減小,在理想情況下應(yīng)該減小為零,這種方法符合步進電機的矩頻特性,快速響應(yīng)特性好,升降時間短 。 這種電機可以像反應(yīng)式步進電動機那樣做成小步距角,并有較高的啟動頻率,同時它具有控制功率小的優(yōu)點。每個磁極內(nèi)表面都分布著許多小齒,它們大小相同,間距相同。、 五相的為 176。需供給正負脈沖信號 [4]。 關(guān)鍵詞 :步進電機; PIC 單片機; LCD II Abstract Stepper motor is a controldriven ponent which directly convert digital signal to angular displacement or linear displacement, with a rapid start and stop characteristics. The driving velocity of the stepper motor are strictly synchronous with instructions pulse, and can achieve positive and negative rotation and smooth speed adjustment, so it is widely used in digitaltoanalog converter, speed control and position control system. However, the driving signals of stepper motor are often generated by a special controller of analog chip or signal generator, it is lack of flexibility and reliability. Especially in some occasions of higher intelligence, using analog chips and signal generator to control the stepper motor has some limitations. Because of its singlechip highprecision pulse and relatively simple peripheral circuits, so stepper motor controllers based on singlechip are widely used in industrial applications.