電機的驅動(dòng)與控制是現代電子技術(shù)中一個(gè)重要的研究課題,不同種類(lèi)的電動(dòng)機需要有不同的控制和驅動(dòng)方法。使用高性能單片機作為電機控制驅動(dòng)裝置的核心,可以有效降低電機驅動(dòng)器的成本,擴展應用范圍,提高使用靈活性。 ATmega16單片機是ATMEL公司的一款高性能8位AVR單片機,它內部帶有功能強大的可編程定時(shí)和計數單元,通過(guò)編程可以很容易地產(chǎn)生各類(lèi)交、直流電機以及步進(jìn)電機的驅動(dòng)波形,因此,利用這類(lèi)功能強大的單片機作為電機控制器的核心,可以使控制器應用更加靈活、應用范圍更廣、維護成本更低。本文設計出的電機通用控制裝置功能齊全,其液晶顯示裝置和按鍵可以控制并顯示電機的運行狀態(tài),而數字化的溫度傳感器則能有效準確地監控電機的運行溫度,RS485/232總線(xiàn)通信接口可以將多個(gè)控制器進(jìn)行聯(lián)網(wǎng)。從而實(shí)現電機的智能化遠程控制。 1 電機控制及驅動(dòng)電路設計 圖1所示是一種通用電機控制裝置系統的總體結構圖。其整個(gè)單片機系統以ATmega16單片機為控制核心,其中從單片機和主單片機利用I2C總線(xiàn)進(jìn)行通信。從單片機連接按鍵和液晶屏,可以實(shí)現人機接口的功能,這樣即可以為主單片機節約寶貴的I/O資源,又可以提高系統的運行效率。另外,DSl8820采用單總線(xiàn)結構采集溫度,可以實(shí)現對電機溫度的監控。 1.1 ATmega16主控電路 ATmega16單片機具有3個(gè)PWM功能的定時(shí)器/計數器T/C0、T/Cl和T/C2,其中T/C0和T/C2是兩個(gè)8位的定時(shí)器/計數器,而T/Cl是16位具有輸入捕獲功能的定時(shí)器/計數器。 本系統的主控單片機電路如圖2所示。它以megal6單片機為核心,配有外圍復位電路和振蕩器電路,單片機所有I/0都可獨立引出,以便與外部電路的連接和擴展。 1.2 電機溫度監測電路 電機的表面溫度是衡量電機是否在安全狀態(tài)下工作的一個(gè)重要指標。本系統的電機溫度監測電路利用美國DALLAS半導體公司推出的單總線(xiàn)數字化測溫集成電路DSl8820來(lái)實(shí)現。該數字化傳感器具有很寬的測溫范圍(-55℃~+125℃),工作時(shí)只需要三根引線(xiàn),而且多只DSl8820可以并行連接,以實(shí)現對多個(gè)電動(dòng)機的溫度監控。 系統工作時(shí),DSl8820可把測得的溫度數據傳給單片機。如果超過(guò)用戶(hù)設定,系統還可執行電機保護和報警等程序。電機溫度監測系統的結構如圖3所示,圖4所示是其溫度監控電路。 1.3 鍵盤(pán)及LCD接口電路 本系統的按鍵和LCD接口控制電路以單片機AT89S51為核心,該電路使用I2C總線(xiàn)與主單片機進(jìn)行通信。利用這種主從單片機分離的設計可將一些大量占用IO端口資源的低速設備進(jìn)行集中管理,從而為主單片機節約硬件資源和程序開(kāi)銷(xiāo),提高系統的使用靈活性和運行效率。其LCD顯示和鍵盤(pán)處理電路如圖5所示。 1.4 RS-232/485通信電路 為了適應電機控制的網(wǎng)絡(luò )化、智能化需求,本電機控制器帶有RS232/RS485數據接口。用戶(hù)利用這兩種總線(xiàn)接口可以方便地將多個(gè)電機控制器連接成網(wǎng),以方便電機系統的集中化管理。RS485接口電路使用收發(fā)控制的“透明化”管理,MAX485芯片的收發(fā)切換由NE555組成的單穩態(tài)電路自動(dòng)完成,當單片機需要向RS485總線(xiàn)傳輸數據時(shí),NE555可自動(dòng)將MAX485切換至發(fā)送狀態(tài),數據傳送完畢后,MAX485又將恢復至接收狀態(tài)。RS-232/485總線(xiàn)驅動(dòng)電路如圖6所示。 1.5 電機驅動(dòng)電路 本控制器的驅動(dòng)部分使用凌陽(yáng)SPGT62C19B電機驅動(dòng)芯片來(lái)實(shí)現對直流電機和步進(jìn)電機的驅動(dòng)。SPGT62C19B是低電壓單片式步進(jìn)電機驅動(dòng)器集成電路芯片,其輸出電壓可達40 V,輸出電流可達750mA。設計時(shí),可由輸入的邏輯電平來(lái)決定輸出脈沖的寬度及頻率。由該芯片組成的電機驅動(dòng)系統將脈沖發(fā)生器、脈沖分配器、脈沖放大器合為一體,故可省去很多外圍器件。與其它部件一樣,主控電路也被設計成為一個(gè)獨立的模塊.以方便更換,而且該模塊還可用于別的場(chǎng)合。其電機驅動(dòng)電路圖如圖7所示。 1.6 轉速測量電路 轉速測量可采用一組鼠標上用的紅外對管來(lái)實(shí)現,其電路原理如圖8所示。當紅外發(fā)射管與紅外接收管之間被直流電機光柵轉盤(pán)的不透明部分遮擋時(shí),紅外接收管處于截止狀態(tài),此時(shí)圖中的SPEED輸出高電平。反之,當光柵轉盤(pán)的通光槽轉至紅外對管之間時(shí),紅外接收管處于導通狀態(tài),此時(shí)SPEED輸出低電平。這樣,將SPEED連接到單片機的I/O口,即可通過(guò)定時(shí)計數的方法計算出電機的轉動(dòng)速度。 2 單片機程序設計 2.1 主程序 本驅動(dòng)器的程序設計使用模塊化編程思想,其主程序用于完成對各子程序的調用。系統工作后,首先調用初始化子程序,以完成具有復用功能的I/0腳的選擇和設置、各種中斷功能的選擇及其設置、AT89S51和ATmega16的初始化、中斷屏蔽寄存器的設置、中斷寄存器的清零、系統變量的初始化等,最后完成開(kāi)中斷。初始化完成之后,系統將調用驅動(dòng)程序,并完成系統的起動(dòng)。系統起動(dòng)之后,即進(jìn)入正常運行狀態(tài)。系統的全部運行過(guò)程均可由鍵盤(pán)進(jìn)行實(shí)時(shí)控制和調節。 2.2 初始化程序 系統的初始化程序流程圖如圖9所示。該程序中包括LCD顯示器、鍵盤(pán)等人機接口部分的初始化。主要功能是對具有復用功能引腳的選擇和設置,以及各種中斷功能的選擇及設置(如外部鍵盤(pán)的中斷選擇等),同時(shí)包括AT89S5l的初始化、鍵盤(pán)的方式選擇、工作時(shí)間的確定、顯示方式的設定等。而系統變量的初始化包括溫度的設定,轉速初值的設定等。 2.3 控制程序 系統起動(dòng)后即進(jìn)入控制程序?刂瞥绦蚴窍到y程序的主要部分,主要用來(lái)保證系統在給定的轉速下正常運行,該程序主要調節單片機PWM口的占空比,從而調節電機繞組兩端的平均電壓,達到調速的目的,其控制程序流程如圖10所示。 3 結束語(yǔ) 本設計實(shí)現了一種以ATmega16單片機為核心的電機控制裝置。該裝置具有各類(lèi)電機驅動(dòng)脈沖的輸出、電機溫度監測與保護、人機操作界面和長(cháng)距離工業(yè)總線(xiàn)通信等功能。利用AVR單片機具備的軟硬件特點(diǎn),可實(shí)現對多種電機的驅動(dòng)與控制,以用于電機驅動(dòng)研究、網(wǎng)絡(luò )化電機集中控制等領(lǐng)域。由于該控制器采用主從單片機設計,系統的運行得以很好地分工,其中從單片機實(shí)現低速人際交互,主單片機則實(shí)現高速的電機驅動(dòng)與控制,主從單片機各司其職,故可使系統的運行效率達到最高。本電機控制裝置的架構開(kāi)放,使用靈活,可以很好地應用于直流電機的調速控制,交流電機的變頻驅動(dòng),步進(jìn)電機的步距細分等多種電機驅動(dòng)和控制領(lǐng)域。 |