林 丹,王楠楠
(1.河北工程大學 信息與電氣工程學院,邯鄲 056038;2.邯鄲學院 軟件學院,邯鄲 056038)
隨著控制科學、計算機科學、網絡及通信技術的發展和交叉滲透,運動控制系統經歷了從直流到交流,從開環到閉環,從模擬到數字,直到基于網絡的運動控制的發展過程[1]。通過網絡實現電機遠程控制及控制系統的指令和參數透明傳輸,已經成為電機遠程運動控制系統的研究方向之一。本系統采用STM32微處理器為控制器核心設計具有高抗干擾能力的數字式直流電機驅動模塊;采用先進數字電流傳感器及溫度傳感器實現故障診斷及保護功能、電機精確控制及事后數據可靠分析;采用RS485總線網絡實現驅動模塊與上位機之間數據交換,最終實現分布式遠程控制。
模塊由主控芯片、電源電路、電流采樣電路、編碼器信號倍頻鑒相電路、H橋控制電路及485通信模塊等部分組成[2]。系統結構框圖如圖1所示。

圖1 系統結構框圖
模塊主控芯片選擇ST公司32位增強型系列微控制器STM32F103C8T6。
控制器基于Cortex-M3內核,最高工作頻率可達72MHz,單周期乘法和自帶硬件除法器,運算能力大幅提高;控制器內定時器強大的邊沿捕獲能力及PWM功能均為電機高精度控制提供保證。片上集成溫度傳感器、USART接口等資源,大大簡化硬件設計,系統總體功耗降低。
雙閉環控制參數易于調整,抗負載擾動及抗電網電壓擾動性能均有提高。上位機對模塊發送命令,控制電機運轉采用電流速度雙閉環PID控制方法。如果上位機沒有發送命令,則默認轉速為0rpm。數字化PID差分方程表達式為:

本系統設計基于網絡的直流電機運行驅動模塊,利用RS485總線網絡實現驅動模塊與上位機之間數據網絡化傳輸[3]。RS485總線支持多點對多點通信,實現聯網功能;標準采用平衡發送、差分接收方式,共模干擾抑制能力強;可以達到1200m遠距離傳輸,保證實現上位機對現場設備遠程控制。
驅動模塊的電源電路包括兩部分:給主控芯片STM32微處理器供電電源3.3Vd、給通信接口及觸發器供電電源5Vd;給光電耦合器電路供電5Va、給電流傳感器供電12Va等。模擬電源和數字電源均由24V蓄電池供電,兩路電源實現模數隔離,防止主回路影響控制電路。電源電路如圖2所示。

圖2 數字、模擬電源電路
首先,24V電源通過LM2576系列開關型穩壓芯片LM2576-5、LM2576-12生成數字電路電源5Vd、模擬電路電源12Va。主控芯片電源3.3Vd由5Vd經三端線性穩壓芯片LM1117-3.3生成。12Va經芯片MC34063生成5Va。電路所用芯片功耗低,內部保護電路完善,且輸出電壓穩定,為模塊穩定工作提供保證。
現代多節點工業現場中,節點之間共模電壓很高,RS485總線網絡差分傳輸方式無法完全抑制共模干擾。模塊設計帶隔離RS485電路,如圖3所示。

圖3 通信接口電路
收發器MAX1487與主控制器電源不共地,同時采用光電耦合器可保證在維持信號聯系前提下實現收發器與主控制器電路電氣隔離,有效抑制現場多節點之間的共模電壓,提高現場通信穩定性。R21為匹配電阻,便于實現遠距離傳輸。
模塊采用光電式旋轉編碼器實現對電機高精度、強分辨能力的數字測速。利用構造簡單的增量式編碼器、觸發器以及或非門電路實現對電機運行的倍頻鑒相功能。電路如圖4所示。

圖4 倍頻鑒相電路
為了取得檢測信號,編碼器與電機之間距離較近,導致增量式編碼器使用過程中會因抖動使輸出波形夾雜毛刺。模塊設計采用施密特觸發器對編碼器輸出A、B端信號進行調節,施密特觸發器兩個閥值電壓調節檢測信號成為標準脈沖信號。兩路施密特觸發器輸出信號一方面作為D觸發器輸入端與時鐘信號,然后D觸發器輸出端接主控芯片引腳用于判斷電機轉向;一方面作為或非門電路輸入端,與主控芯片上、下邊沿捕獲功能結合,從而獲得4倍頻原始信號脈沖數,提高測速精度。
模塊H橋由MOSFET搭建,由驅動芯片控制MOSFET的開通、關斷,進而控制電機運行。通過電流檢測電路,在電機過載時,主控芯片關閉PWM輸出信號,實現對電機保護[4]。驅動及保護電路如圖5所示。

圖5 驅動及保護電路
模塊驅動半橋控制芯片采用集成IR2130控制MOS管,芯片自帶過電流保護等,方便對被驅動的MOS管進行保護,同時采用光電耦合器加強系統工作穩定性。電機電流經過一個阻值很小的采樣電阻,電阻兩端電壓由IR2171芯片轉化為PWM波形;電壓值由PWM占空比來反映,電壓值過大時,通過程序控制電機停止運行,達到保護功能。
系統軟件采用模塊化方法設計,包括數字控制模塊、系統保護模塊、通信模塊。編程時,應用STM32固件函數庫,可以大大降低編寫程序的時間,降低成本。
數字控制模塊完成對速度、電流調節的PID算法編程實現。保護模塊通過傳感器采集數據與上位機設定的限制值比較,在異常情況時控制模塊控制電機停轉,同時輸出報警信號,完成保護。
系統程序流程圖如圖6所示。

圖6 主程序流程圖
通信模塊采用MODBUS協議完成與上位機之間通信,該協議是工控領域中一種標準通信協議,不同廠商生產的設備通過該協議連接成工業網絡,實現集散控制。
標準MODBUS協議有兩種工作模式:ASCII模式和RTU模式[5]。相對于ASCII模式,在相同波特率下,RTU模式能夠傳送更多數據,因此控制器采用RTU模式來實現MODBUS通信協議。
RTU消息幀典型格式如表1所示。采用RTU模式通信時,消息發送至少要以3.5個字符時間的停頓間隔開始。在最后一個傳輸字符之后,一個至少3.5個字符時間的停頓標定消息的結束。

表1 RTU消息幀
實驗時,上位機軟件在LabVIEW環境下編寫,用于監控驅動模塊運行情況,以及對目標速度的改變。過程中,對驅動模塊施以不同類型干擾如外部電源的電壓突變、負載轉矩的突變等。實驗證明,模塊可以快速、準確并穩定達到要求。模塊驅動電機從0rpm加速到2000rpm時監控界面如圖7所示。

圖7 上位機監控界面
驅動模塊采用高性能STM32微處理器與電流傳感器結合,通過電路模、數隔離,實現對直流電機數字化、安全、可靠驅動。通過RS485網絡,實現上位機對現場多個節點遠程控制。
[1]閆曉娟,劉景林.嵌入式無刷直流電機網絡控制系統[J].計算機測量與控制,2010,18(6):1335-1338.
[2]孫環陽,黃筱調,洪榮晶.全數字永磁同步電機運動控制系統的設計[J].微電機,2010,43(7):50-80.
[3]呂金華.基于DSP控制的無刷直流電機網絡控制方法的研究[J].武漢船舶職業技術學院學報,2006(4):60-62.
[4]商麗娜,張榮標.基于ARM的無刷直流電動機網絡控制研究[J].微電機,2007,40(7):86-89.
[5]汪義旺,崔鳴,祁春清.RS-485/Modbus在FFU控制系統中的應用[J].自動化儀表,2010,31(6):39-44.