宋少鵬
(鄭州飛機裝備有限責任公司預研室,河南 鄭州 450005)
在一個位置控制系統中,需要兩臺電機同步工作。由于電機在設計制造過程中有一定的誤差累積,因此其轉速有一定的誤差,因此兩臺電機協同工作時,累積的誤差反映到實際工況中,會導致位置誤差過大,以至于影響系統正常工作,因此需要根據誤差情況對電機進行實時調整,使其滿足系統性能需求。
本文介紹了一種基于DSP的電機同步控制系統,電機輸出軸通過減速器連接到編碼器,編碼器實時采集電機的位置信息,DSP根據兩臺電機位置誤差對電機的轉速進行調整,使其滿足系統要求。
整個控制系統主要由DSP控制板和編碼器組成。DSP控制板主要由電源電路、DSP基本電路和CAN總線接口電路組成。
電源電路將外界提供電源轉換為系統所需的電源,如圖1所示。系統提供28V直流電源,經SFJLC-46181-3AW濾波供編碼器和進一步轉化,TDPAA28S5W10是隔離的DC-DC變換器,將28V轉化為5V供系統電路和CAN總線使用,TPS767D318把5V電源轉化為3.3V供DSPI/O使用,轉化為1.8V供DSP內核使用[1-2]。

圖1 電源變換電路
DSP基本電路如圖2所示,采用SMJ320F2812HFGM150作為處理核心。SMJ320F2812HFGM150是高性能的32位定點數字信號處理器,主時鐘最高工作頻率可達150MHz,單周期指令執行時間6.67ns。該電路集成了多種先進的外設,為電機及其他運動控制領域的應用提供了良好的平臺。

圖2 DSP基本電路
CAN總線接口電路如圖3所示,主要由總線控制器電路、收發器電路、隔離電路、外圍電路等組成。
CAN總線控制器采用SJA1000芯片,其內部分為接口管理模塊、發送緩沖器、接收緩沖器、驗收濾波器、位流處理器、位時序邏輯、錯誤管理邏輯等子模塊。通過各模塊的配合實現在CPU和外圍CAN網絡之間控制的功能,實現物理層和數據鏈路層的功能。
CAN總線收發器采用PCA82C250,作為CAN協議控制器和物理總線之間的接口,實現CAN總線控制器不同終端的通信,提供對總線的差分接收功能和差分發送功能。
電路進行抗干擾設計,SJA1000和PCA82C250之間采用6N137高速光耦實現信號的隔離。CANH和CANL之間采用CMW3216繞線片式共模電感進行隔離,在適當位置加匹配電阻和電容[3]。

圖3 CAN總線接口電路
本系統采用德國倍加福公司生產的CSM36M-F4AB DA0BN-1213型編碼器,如圖4所示。這是一款采用電磁式碼盤掃描技術的絕對值編碼器。不受對光電掃描不利因素(沖擊、振動、灰塵、濕氣等)的影響,體積小,產品性價比高。
絕對值編碼器為每個軸的位置提供一個獨一無二的編碼位置值,這款絕對值編碼器通過CAN總線接口與主機進行通信,傳輸速率最大為1MBit/s,分辨率單圈13位,圈數12位,完全滿足系統要求。

圖4 CSM36M-F4ABDA0BN-1213型編碼器
DSP軟件設計包括初始化程序、CAN總線通訊程序、數據計算處理程序、電機控制程序。
主程序流程圖如圖5所示。

圖5 主程序流程圖
其中CAN總線通訊程序主要由初始化函數、發送函數和接收函數組成,流程圖如圖6所示。其中發送函數為寫主動發送函數,接收函數采用中斷接收[4]。
①進入復位模式,進行配置。②配置時鐘分頻寄存器,決定Peil模式還是Basic模式。③配置總線定時寄存器,確定波特率。④配置中斷使能寄存器,決定使用哪幾個中斷。⑤配置輸出控制寄存器。⑥配置驗收碼和屏蔽碼,決定接收哪一類節點的數據。⑦退出復位模式,進入正常工作模式。
①查詢狀態寄存器,判斷是否正在接收,是否正在發送,是否數據緩沖區被鎖。②配置發送緩沖區。③配置命令寄存器,啟動發送。

圖6 CAN總線通訊程序流程圖
①采用中斷接收,關CPU中斷。②判斷是不是接收中斷。③判斷是遠程幀還是數據幀。④讀取數據。⑤開中斷。
本系統通過實時監測電機的運行狀態,不斷修正兩個電機的運行速度,經過驗證,整個系統的控制精度達到0.5mm,而且此控制系統工作穩定,抗干擾能力強,完全能滿足性能要求。
[1]尹明,王杰.基于CAN總線嵌入式數字控制系統的設計[J].制造業自動化,2010(2):12-15.
[2]曾敏,楊九銘,張泉宏.基于DSP的直流變頻控制系統研究[J].電力電子技術,2005(6):56-59.
[3]蘇奎峰,呂強,耿慶鋒.TMS320F2812原理與開發[M].北京:電子工業出版社,2006.
[4]王瑾.基于DSP和CAN總線的步進電機控制系統研究[J].電子測量技術,2009(1):68-72.