四、四軸運動控制器設計方案
引言
運動控制技術是制造自動化的關鍵基礎,其水平高低是衡量一個國家工業現代化的重要標志,研究和開發具有開放式結構的運動控制器是當前運動控制領域的一個重要發展方向。設計了一種基于DSP與FPGA的運動控制器。該控制器以DSP和FPGA為核心器件,針對運動控制中的實時控制、高精度等具體問題,規劃了DSP的功能擴展,并在FPGA上擴展了功能相互獨立的四軸運動控制電路。該電路實現了四路控制信號輸出,四路編碼信號的接收和處理,以及原點信號,正負限位信號等數字量的接收和處理。具有結構簡單、開放性、模塊化等特點,能夠較好的滿足運動控制器的實時性和精確性。
1 系統概述
該四軸運動控制器系統以TI公司C2000系列DSP芯片TMS320F2812和ALTERA公司CycloneⅡ系列FPGA芯片EP2C8F256C6為核心,DSP通過網口接收上位機的控制參數,完成系統位置、速度控制及運動軌跡規劃;FPGA完成運動控制器的精確插補功能和外圍電路的擴展,系統總體框圖如圖1所示。
運動控制器的主要功能包括:4路模擬電壓輸出,電壓范圍為-10~+10V,分辨率為16b;4路脈沖量信號輸出;4路脈沖方向信號輸出;4路驅動復位信號輸出;4路驅動使能信號輸出;4路差分編碼信號輸入;4路驅動報警信號輸入;8路正負限位信號輸入;4路原點信號輸入;16路通用數字量。I/O。
2 DSP模塊設計
DSP根據從上位機接收的運動模式和運動參數實時計算規劃位置和規劃速度,生成所需的速度曲線,實時的輸出規劃位置。TMS320F2812是TI推出的一款專門用于電機控制的32位定點DSP芯片,采用高性能靜態CMOS技術,主頻高達150MHz(指令周期6.67ns),低功耗,核心電壓為1.8V,I/O電壓3.3V,支持JTAG邊界掃描,128K×16b的片內FLASH。有兩個事件管理器(EVA和EVB),它們都是特定的外圍設備,為多軸運動控制器而設計的。可通過外部存儲器接口XINTF擴展外部存儲器。DSP外圍模塊設計如圖2所示。
為增強抗干擾性,DSP通過以太網控制器RTL8019AS與上位機連接,RTL8019AS內部含有一個16KB的SDRAM,DSP通過外部存儲器接口對其進行讀寫來接收上位機的命令或向上位機傳送反饋信號。在數據處理過程中要占用大量的存儲空間,DSP內部僅含有18K×16b的SARAM和128K×16b的FLASH,存儲空間顯得過小,所以通過外部接口擴展了256K×16b RAM和512K×16b FLASH,RAM和FLASH芯片分別選擇IS61LV25616 AL、SST39VF800,它們都具有接口簡單、讀寫速度快等優點。SCI模塊用于擴展RS 232串行通信接口,串口芯片使用MAX3232。
運動控制器所需電壓為5V,3.3V,1.8V,1.2V。輸入電壓5V,分別采用穩壓芯片LM1085IS3.3,LM1117-1.8將其轉換成3.3V和1.8V,由于TMS320F2812的I/O電壓3.3V要先于內核電源上電,所以1.8V要由3.3V降壓得到,以確保上電次序。1.2V是FPGA內核所需電壓,由穩壓芯片LM317S穩壓得到,LM317S的輸出電壓范圍為1.2~25V,復位電路采用SP708低功耗微處理器監控器件,此器件有眾多的組件,有效的增強了系統的可靠性及工作效率。
3 FPGA模塊設計
FPGA用于軸資源的擴展,當接收到DSP中的規劃位置后,在軸資源中對其進行變換處理,輸出到伺服控制器中,伺服控制器將規劃位置與編碼反饋的計數位置進行比較,獲得跟隨誤差,并通過伺服控制算法得到實時的控制量,將控制量傳遞給D/A轉換器,由D/A轉換器轉換成控制電壓輸出。
EP2C8F256C6是ALTERA公司CycloneⅡ系列芯片,其特點為高性能低功耗,內核供電電壓為1.2V,8256個邏輯單元(LEs),182個用戶I/O口(項目中使用了157個I/O口),165888b的內部RAM,嵌入了18b的乘法器,每個乘法器又可拆成2個9b的乘法器,芯片內部含有2個鎖相環(PLL),8個全局時鐘(Global Clocks)。該芯片所具有的邏輯單元數、頻率和用戶I/O口等都能很好的滿足設計需求。FPGA的外圍模塊擴展如圖3所示。
3.1 與DSP接口設計
DSP芯片的事件管理器(EVA,EVB)用于和FPGA連接,當輸出脈沖量控制驅動器時,DSP使用兩個事件管理器進行PWM波的控制,當輸出模擬量時,DSP使用GPIOA/GPIOB向FPGA輸出規劃位置。
3.2 模擬信號輸出電路設計
采用D/A轉換器AD669進行模擬信號的輸出,AD669具有兩級鎖存,在設計中,將其四路D/A芯片的第一級鎖存處于透明狀態,第二級鎖存控制信號LDAC連在一起,當四路D/A芯片的數據預裝好后,打開第二級鎖存,四路D/A芯片即可同時轉換,實現了四軸驅動的同時控制。
3.3 脈沖信號輸出電路設計
脈沖輸出電路由FPGA內部精插補器完成,精插補器根據DSP發送來的粗插補數據產生均勻的脈沖輸出,脈沖的輸出有兩種格式:“脈沖+方向”和“正負脈沖”。由于差分信號對外部電磁等信號有很好的抗干擾性,特別是對共模干擾有很好的抑制作用。所以脈沖經過光耦隔離后,再將信號接入差分線驅動器AM26LS31后輸出,差分線驅動器AM26LS31的作用是將輸入的單極性方波信號轉化為一對極性相反的電機驅動信號。
3.4 編碼反饋電路設計
電機編碼信號直接傳入電機驅動器中,電機驅動器將三對差分編碼信號A+,A-,B+,B-,N+,N-作為反饋傳給運動控制器。在電機旋轉時,所發出的編碼信號會出現非常多的毛刺,并且經過驅動器大電源的干擾,如果直接接到FPGA中,可能會引起誤判斷,所以先將三對編碼信號經過差分芯片AM26LS32轉化成單路信號A,B,N后再接入FPGA中。芯片AM26LS32功能是將輸入的一對極性相反的編碼器差分信號轉化成單極性的脈沖信號,與AM32LS31正好相反。
3.5 開關量接口和通用I/O電路設計
輸出信號包括復位信號和使能信號,由FPGA產生,經光耦隔離后直接輸出;輸入信號包括驅動報警信號,正負限位信號和原點信號,這些信號經光耦隔離、電平轉換后再由FPGA接收,當FPGA檢測到這些信號后,確定具體的觸發信號,做出相應的反應。另外運動控制器還提供了八路數字量輸入通道和八路數字量輸出通道,輸入、輸出通道都經光電隔離,以提高抗干擾性。
4 網口模塊設計
DSP通過以太網控制器RTL8019AS與上位機連接,RTL8019AS在一塊芯片上集成了RTL8019AS內核和一個16KB的SDRAM存儲器,兼容RTL8019AS控制軟件和NE20008b或16b傳輸,其接口符合Ethernet2和IEEE802.3標準。RTL8019AS與主機的接口模式有三種模式:跳線模式,PnP模式,RT模式。此運動控制器使用便于DSP應用的跳線模式。DSP與RTL8019AS的連接如圖4所示。
?。?)數據總線和地址總線。RTL8019AS的數據總線和DSP的16位數據總線直接相連即可。RTL8019AS片內NE2000寄存器組都是通過其映射I/O端口進行訪問,I/O端口共32個,地址偏移量為00H~1FH,把I/O基地址設為300H,則對應的I/O端口尋址范圍為:300H~31FH。只需要10根地址線就可以對I/O端口進行尋址,把SA10~SA19接低電平,SA0~SA9按照表1接法即可。
由表1可以看出,只需要5根地址線就可以尋址32位I/O端口,所以可以直接把SA9,SA8接高電平,SA5~SA7接低電平,SA0~SA4與DSP的低5位地址線XA0~XA4相接。
(2)控制總線。RTL8019AS片選信號AEN使用DSP的擴展片選信號
,IORB、IOWB直接與DSP的讀寫控制信號
相連,中斷輸出引腳INT0與DSP的XINT2相連,高電平有效的復位輸入引腳與監控電路芯片SP708的RST相連,當DSP復位時,RTL8019AS也復位。
?。?)RTL8019AS與網絡介質接口。RTL8019AS可以使用同軸電纜或雙絞線作為傳輸媒介,將其AUI接口接地或懸空,使用BNC接口。BNC接口方式支持8線雙絞線或同軸電纜。20F001N是雙絞線驅動器,為耦合隔離變壓器模塊,通過它可以去除因電路數字特性導致的高次諧波。RTL8019AS與20F001N的連接如圖4所示。其差分輸入信號TPIN+、TPIN-與差分輸出信號TPOUT+、TPOUT-分別與20F001的對應引腳相連。
5 結語
在PC平臺下,充分利用了DSP的數據處理能力和FPGA的硬件特性,使系統既能進行復雜的軌跡規劃、高速插補,又能保證運動控制器的穩定性和精確性,這種運動控制器能應用于數控系統,機器人制造等控制領域。
評論
查看更多