基于TMC428的步進電機控制系統(tǒng)設計
引言
本文引用地址:http://m.butianyuan.cn/article/163283.htm步進電機是一種重要的執(zhí)行裝置,廣泛用于工業(yè)控制和各種辦公設備中,步進電機的穩(wěn)定可靠運行直接關系到工業(yè)控制的精度和設備的質量,特別是在高精度數(shù)控系統(tǒng)中更是要求步進電機能夠精確運行。如何實現(xiàn)對步進電機的精確可靠控制成為工業(yè)控制等系統(tǒng)中的關鍵技術。多年來很多專家學者研制出很多性能較好的步進電機控制系統(tǒng),然而,早期的步進電機控制系統(tǒng)體積大,使用的元器件多,這給系統(tǒng)的可靠運行帶來了較大的隱患。隨著電子技術的發(fā)展,很多功能單元都走向模塊化和數(shù)字化,并且具有體積小,重量輕,工作可靠性高,成本低等優(yōu)點,而且能夠實現(xiàn)多軸控制,這給步進電機控制系統(tǒng)的設計帶來了很大的方便。由TRINAMIC公司生產的TMC428就是這樣一款三軸步進電機運動控制芯片。這里使用TMC428控制芯片設計一種三軸步進電機控制系統(tǒng),本系統(tǒng)可用于經濟型三軸數(shù)控系統(tǒng)中。
一、TMC428芯片及其功能
TMC428是一種小尺寸、高性價比的二相步進電機控制器,包括位置控制、速度控制及微步控制等步進電機常用的控制功能,可同時對三個二相步進電機進行控制。帶有2個獨立的SPI接口,可分別與微處理器和帶有SPI接口的步進電機驅動器相連接,能夠與3個TMC236相連接構成菊花鏈結構。
1、結構
TMC428采用16引腳封裝,是由各個單元的寄存器和片內RAM構成的。其內部包括二個外部串行接口、波形發(fā)生器和脈沖發(fā)生器、微步單元、多口RAM控制器和中斷控制器。如圖一所示。SPI串行通信使用32bit數(shù)據(jù)長度的簡單協(xié)議,與電機驅動器相連接時,其數(shù)據(jù)傳輸速率高達1Mbit/s。時鐘輸入范圍寬且時鐘頻率最高可達16MHz,采用3.3V或5V的CMOS/TTL兼容電平供電。
圖一
2、功能
TMC428有4種不同的工作模式,對每個步進電機的控制單獨編程,其中位置控制有RAMP模式和SOFT模式,速度控制有VELOCITY模式和HOLD模式。TMC428提供了一組功能不同的寄存器單元和片內RAM,一般從微處理器獲得控制指令,微處理器則通過發(fā)送和接收固定長度的數(shù)據(jù)包對TMC428寄存器和RAM進行讀寫操作。TMC428的寄存器和片內RAM的功能有所不同。寄存器用于存儲電機總體配置參數(shù)和運動參數(shù),而片內RAM用于存儲驅動串行接口的配置和微步表。電機總體參數(shù)是指對驅動器菊花鏈中TMC236的配置。運動參數(shù)包括各電機的當前位置、目標位置、最大速度、最大加速度、電流比例、波形發(fā)生器和脈沖發(fā)生器參數(shù)以及微步細分分辨率等。片內RAM包括64個地址的數(shù)據(jù)空間,每個地址可存儲24位寬的數(shù)據(jù),前32位地址數(shù)據(jù)是對驅動器菊花鏈串行通信數(shù)據(jù)包的配置,后32位地址的數(shù)據(jù)為微步細分表。
初始化以后,TMC428即可自動發(fā)送數(shù)據(jù)包到菊花鏈的每個TMC236,也就是說,驅動串行接口經過初始化后便可以自動工作,而不需要微處理器的參與。只要把位置、速度寫進指定的寄存器就可以控制電機。TMC428的多口RAM控制器可管理數(shù)據(jù)的存取時序。這樣,微處理器就可以在任何時間讀寫寄存器和片內RAM的數(shù)據(jù)。
通過波形發(fā)生器可以處理存儲在寄存器里的運動參數(shù)并計算電機運動速度曲線。脈沖發(fā)生器則根據(jù)波形發(fā)生器計算得到的速度來產生步進脈沖。步進脈沖產生時TMC428的驅動串行接口將自動發(fā)送數(shù)據(jù)包給步進電機驅動器菊花鏈以驅動步進電機。當采用微步控制時,微步單元即開始處理根據(jù)脈沖發(fā)生器產生的步進脈沖,同時根據(jù)選擇的微步分辨率來產生全步、半步和微步脈沖,并通過驅動串口送給驅動器菊花鏈。
驅動串行接口是TMC428與驅動器菊花鏈之間的通信接口。從TMC428到驅動器之間的串行數(shù)據(jù)包的長度是可配置的,以適應由不同類型和廠家的電路構成的SPI環(huán)形結構,最大數(shù)據(jù)長度為64bit。初始化后,TMC428與步進電機驅動器之間的通信是自動完成的。不同類型的帶有SPI接口的驅動器都可以混合構成菊花鏈結構與TMC428進行連接。
評論