張曉亞 王雁平 唐東成 覃鳳
摘要:本文主要介紹基于STM32和LM629的伺服控制模塊設計,簡述了該系統的整體設計方案。所設計的系統在整體上有比較高的精度,并且穩定性比較好,綜合設計性能比較好,實時性比較高。
關鍵詞:STM32;伺服控制系統;L298N;LM629
中圖分類號:TP273;TM383.4 文獻標識碼:A 文章編號:1007-9416(2018)04-0009-02
機械手關節是機器人的主要部件,其每一個關節能否完成準確的動作是至關重要的。本文主要是講控制機器手關節的一個重要的結構——伺服控制模塊。整個系統主要是采用STM32和LM629實現的,能夠很好的提高系統響應速度,減小誤差,最終能夠達到預期精確的位置控制。
1 伺服控制系統的工作原理
如圖1所示,本文設計的伺服控制模塊的硬件部分包括:能夠顯示實時數據的顯示模塊、能夠輸入數據的鍵盤模塊、核心控制單元STM32及能夠給其提供的時鐘脈沖模塊、專門針對運動控制的LM629芯片[1]以及電機驅動模塊L298N等等。
該伺服控制模塊的采用的是STM32作為主處理器,主要統籌安排整個系統地運行工作。該芯片可以和LM629進行數據通信,能夠實時控制LM629,并且LM629可以根據鍵盤輸入模塊所輸入的數據參數對電機的速度、加速度及位置進行實時的控制。電機驅動模塊L298N受專門的運動控制芯片LM629的控制,而L298N通過增量式光電編碼器將電機的運動狀態和各種參數進行數字化處理,反饋給LM629,這樣就構成了一個閉環控制系統,LM629可以能夠很好的完成對電機的控制。
2 主處理器
主處理器采用的是STM32F407ZGT6,該芯片的配置非常“強悍”,有112個通用輸入/輸出口,192KB的SRAM,1024KB的FLASH,12個16位的定時器及兩個32位的定時器,2個CAN總線接口,2個DMA控制器(16通道),3個12位ADC和2個12位DAC,2個全雙工I2是,3個I2C,一個攝像頭接口和一個硬件隨機數生成器等等。
3 LM629的工作原理
LM629是一專門用于電機運動控制的芯片[2],主要包括用于暫時存放位置、加速度及速度信號數據的32寄存器,并且可以根據電機運動期間反饋的具體參數進行改變;16位PID可編程數字濾波器及寬度為8位的PWM輸出信號接口;速度梯形發生器;增量式編碼器接口以及實時可編程主機中斷發生器等等。
如圖2所示,LM629通過接口與主處理器進行數據通信,主處理器把控制電機的具體參數發送給PID控制器,并且可以把設定好的運動位置參數傳送給位置發生器。PID控制器經過信號處理,把主處理器設定的PID參數進一步傳送給電機驅動模塊L298N,然后再由L298N控制電機。增量式光電編碼器把電機運行狀態的信息通過LM629的增量式編碼器接口傳送給LM629的位置反饋處理器[3],并進一步進行處理,其中包括電機的具體位置、速度等信息。這樣LM629就構成了一個完整的閉環控制系統,LM629的目標就是就是能夠實時跟隨位置生成器中設定的目標參數,最終完成主處理器對電機的控制。
4 L298N工作原理
L298N是控制模塊與電機之間的一驅動模塊, 內部含有4通道邏輯驅動電路。內含有2個H橋的高電壓大電流雙全橋式驅動器,能夠接受TTL邏輯電平信號,可驅動46V、2A以下的電機。對電機電壓控制方式有兩種:開關性驅動方式在線性放大驅動方式和線性放大驅動方式。L298N采用的是開放性驅動方式,通過脈沖調制(PWM)來控制電動機的電壓,從而實現電機轉速的控制。
5 伺服控制系統的軟件設計
如圖3所示,伺服控制系統在軟件設計中的結構框圖,主要包括初始化和對系統中各個參數的設定的。
5.1 初始化
初始化主要是將STM32的輸入輸出端口初始化和顯示屏初始化,以便等待從外圍設備輸入的各種控制電機的初始參數及顯示屏能夠顯示電機的實時參數。
5.2 系統參數的設定及實施
通過鍵盤可以把設定電機的各個參數輸入到主處理器,系統可以通過SRAM讀入系統,經過LM629進行數據處理,傳送給電機驅動模塊L298N對電機進行實時控制。
6 結語
本文設計了基于STM32 和LM629構成的伺服控制系統,有著完整的硬件控制結構和軟件程序設計,并且也應用到實際當中,經試驗驗證,器結構簡單,控制精度高,實時性比較好,可擴展性比較強,穩定性比較好。
參考文獻
[1]王華,王立權.電機專用控制器LM629的應用研究[J].電子器件,2005,28(2):330-333.
[2]廉春原,張永春,王雁平.基于LM629的機械手關節電機控制器設計[J].湘潭大學自然科學學報,2014,36(4):104-109.
[3]王華,孟慶鑫,王立權,譚穎.基于LM629的位置伺服控制模塊的設計與研究[J].控制與監測,2005,(2):83-84.