1 引言
隨著制造業朝著生產規?;?、產品個性化的方向發展,產品型號變化加快,生產批量相對變小,多種型號共線生產、覆蓋件大型化,一體化的趨勢日益明顯,要求壓力機不僅能夠高速度、高精度、大負載的運轉,而且應具有更大的柔性,能迅速、方便地改變輸出運動規律。以上這些不斷提高的加工工藝和生產條件的多樣化都促進了鍛壓設備行業的重大變革。在需求的推動下,目前,世界上出現伺服電機直接驅動的伺服壓力機,能夠滿足塑性加工、難成形材料成形、復雜形狀零件成形、復合成形以及高精度成形等成形工藝的要求。伺服壓力機采用交流伺服電機代替普通交流電機,去除傳統曲柄壓力機上的飛輪和離合器,使得壓力機機械結構得以簡化,可靠性增強。所以研制適合不同材料加工要求的壓力機數字控制系統, 對提高材料加工技術的水平和加工裝備的數字化能力具有十分重要的現實意義[1]。
伺服壓力機的基本結構及對控制系統的要求與傳統壓力機比較,伺服壓力機取消了原有壓力機的飛輪和離合器,保留了曲柄滑塊驅動機構,其傳動系統采用一級齒輪減速系統,將其運動和動力傳遞給壓力機的曲軸,由曲軸的轉動實現壓力機的往返運動。
同時,伺服壓力機對控制系統有更高的要求,一般要求控制系統滿足:可編程的滑塊運動曲線,適應不同的加工對象、不同材質的加工工藝;滑塊位置和速度的精確控制;快速的響應[2]。
2 控制系統總體方案設計
根據上述伺服壓力機的功能要求,本系統選用了“工控機+ARM運動控制卡"的硬件設計方案。工控機負責系統的非實時部分的工作,完成運動曲線的讀取和設置,工藝的優化以及運行狀態參數的顯示,ARM運動
控制卡負責系統的實時部分,完成伺服壓力機的實時運動控制和數據邏輯的處理。ARM運動控制卡與工控機之間、采用成熟的串行通信進行通信。采用stm32系列的ARM芯片,STM32是意法半導體推出的一款32位的微控制器,該控制器所用微處理器是ARM 公司開發的Cortex2M3內核。CortexM3進行了多項技術改進,使得代碼執行速度更快,同時能耗更低。在外設方面,該型號包含有兩個12位逐次逼近型的模擬/數字轉換器,轉換時間最高為1ms ; 3個USART通訊接口,支持全雙工的數據交換,提供寬范圍波特率的選擇,最高可達到415Mbps; 兩個SPI通訊口,支持18MHz的主從控制模式;兩個I2C總線接口,支持芯片間的通訊與傳輸;3個16位的通用定時器,每個定時器都有4路通道,每個通道有3種工作模式選擇,即輸入捕獲模式、輸出比較模式、PWM控制模式;一個16位的高級定時器專門用于電機向量驅動,其中有6個功能通道,并且能設置死區時間。此外還有常用的USB和CAN總線接口以及7個DMA通道,用于數據的自動傳輸[3]。基于STM32的伺服電機控制系統的系統框圖如圖1所示。
圖1 控制系統框圖
根據系統的工作原理,該控制系統可以分為PWM產生,脈沖計數,IO控制和串口通信四個部分。由于本系統采用伺服驅動器控制伺服電機,控制信號包括PWM脈沖信號,電機方向信號和伺服使能信號等,PWM脈沖信號由STM32專用的定時器產生,STM32支持PWM脈沖的頻率和占空比在線調整,其預裝在寄存器可以將新設定值在計數溢出后自動裝載影子寄存器,同時更新周期計數器和預分頻器。方向和使能信號由普通IO口產生,STM32產生的數字信號經過光耦隔離輸出,一方面防止了電氣干擾,同時完成電平轉換,提高了IO口的驅動能力[4];
增量式脈沖編碼器輸出A、B、Z三路差分信號,經過光電隔離送入STM32的定時器,本系統中通過對一定時間內的產生的反饋脈沖計數,獲取電機的位置和速度,完實現速度和位置的閉環控制;
IO控制模塊包括輸入IO和輸出IO,輸入輸出IO經過繼電器將信號送入stm32的普通IO口,輸入IO主要包括電機的使能和失能,伺服激磁等信號,輸出IO用作電機運行異常的報警信號,異常信號經繼電器送入IO口產生中斷信號,主控制器根據相應的中斷信號,轉入中斷子程序執行;
STM32有3個USART通訊接口,支持全雙工的數據交換,提供寬范圍波特率的選擇,可以滿足此處的通信要求,采用串口與上位機通信,獲取上位機的指令和運動參數,并返回滑塊的運動狀態。
3 控制系統的軟件實現
3.1 軟件的總體結構
軟件部分采用Real2View MDK(Microcon-troller Development Kit)進行程序代碼編寫 ,采用模塊化的編程思想,獨立完成系統設置模塊,編碼器反饋模塊,定時器模塊,通信模塊和PID閉環控制模塊的程序設置,程序的整體結構如圖2所示:
圖2 軟件結構圖
圖3 主程序流程
3.2 主程序流程
在電機的運動部分,由于采用串口通信傳遞電機的控制參數,因而需要定義串口通信的數據格式,在此處的程序設計中,把數據幀劃分為命令控制字、狀態查詢字(需下位機返回數據)和電機參數字。以上位機傳遞運動參數為例,上位機發送位置指令,控制器檢測是否收到數據,根據收到的數據給驅動器發送信號,控制電機精確的運行到指定位置,如果出現誤差,則進行誤差補償,系統程序的流程如圖3所示。
3.3 轉子位置、角速度檢測
脈沖編碼器模塊主要完成位置和速度的計算,實現位移和速度的閉環控制。增量式編碼器其輸出信號為脈沖信號,其脈沖個數與相對旋轉位移有關,而與旋轉的絕對位置無關,其精度較高,而且其成本相對較低。如果預先設定一個基準位置,則可以利用增量式編碼器實現絕對式編碼器的功能,即可以測出旋轉的絕對位置。而速度的計算有兩種方法,一種是采用f/v轉換電路,將頻率轉換為電壓信號實現測速,另一種是在給定的時間內對脈沖計數直接完成速度的計算,考慮到實現的復雜性,本處采用后一種方法實現。
3.4 定時器模塊
在整個控制程序中,PWM脈沖的產生和控制是最關鍵的環節,能否可靠的產生實時可調的PWM脈沖關系到整個系統的靈活性和精確度。在STM32中有2種定時器:通用定時器和高級定時器,其中T1M1為高級定時器,TI M2、TI M3和TIM4為通用定時器。通用定時器由一個16位自動裝載計數器構成,該計數器可以通過可編程預分頻器進行驅動。通用定時器可設置成16位向上、向下、中心3種自動裝載的計數模式。通用定時器最高可以配置72MHz的系統時鐘,每個通用定時器有4個16位高精度的捕獲/比較通道,可以配置輸出6路互補的PWM脈沖。
該控制系統采用向上計數的PWM模式脈沖驅動電機。脈沖寬度調制是一種對脈沖信號的電平寬度進行數字編碼的方法。通過高精度定時器的應用,脈沖周期中的高電平和低電平的持續時間皆可由基礎高精度定時器的是高頻率的整數倍數表示出來。在確定輸出電壓的條件下,單段完整的PWM脈沖信號包含3個參數: 脈沖頻率、脈沖占空比、脈沖個數。前2個參數決定脈沖的形狀,后1個參數確定脈沖維持的時間。PWM產生部分程序流程圖如圖4所示。
圖4 脈沖產生流程圖
3.4.1 脈沖信號的端口配置
脈沖信號的端口配置包括3路定時器PWM的輸出、3路使能信號,3路方向信號,定時器的PWM脈沖信號的輸出口配置成復用推挽輸出模式,方向信號和能使信號的輸出口配置成推挽輸出模式,而編碼器的捕獲輸入口配置成浮空輸入模式。GPIO根據連接速度的需要可以配置成2MHz、10MHz和50MHz3種類型。
3.4.2 脈沖頻率和占空比的設置
在STM32控制芯片中,與定時器相關的寄存器有計數器寄存器(TMCNT)、預分頻器寄存器(TMPSC)、捕獲/比較寄存器(TMCCR)、自動裝載寄存器(TMARR)。要產生指定參數的PWM脈沖, 主要就是對這些寄存器進行配置。下面介紹PWM信號配置步驟:
(1) 基頻的設置。在STM32中TIM1高級定時器的時鐘基頻由ABP1橋時鐘確定,而通用定時器的時鐘基頻由ABP2橋時鐘確定。在系統模塊中ABP1橋和ABP2橋時鐘都配置成最高的72MHz系統時鐘。由于16位的定時器表示的脈沖頻率范圍有限,為了擴大其輸出脈沖的頻率范圍,需要通過設置預分頻器寄存器,降低輸入時的頻率,配置成72MHz/TMPSC的基頻。這樣設置后,計數器寄存器和自動裝載寄存器皆以分頻后的基頻為單位進行比較和計數。
(2) 基頻的設置。在向上計數模式中,計數器寄存器從0開始計數到自動裝載寄存器設置的值,然后重新從0開始計數同時產生一個計數器溢出中斷。通過設置自動裝載寄存器,調整溢出中斷產生的時間,溢出中斷產生后,系統會自動實現一次電平轉換,開啟下一個脈沖周期。因此由72MHz/TMARR可以確定了PWM信號的頻率。
(3) 占空比的設置。在計數器寄存器從0增加計數到自動裝置寄存器設置值的過中,可以通過設置比較寄存器,改變比較寄存器與計數寄存器之間的大小關系, 實現一次電平跳變,其中因此通過為了擴大可以產生的脈沖范圍,可能需要對72MHz的系統時鐘進行預分頻。所以實際程序中先需要判斷是否需要預分頻,如若需要配置,那么還需計算最小的預分頻系數。
3.4.3 脈沖計數
STM32可以直接設置 PWM脈沖信號的周期和占空比,確定脈沖信號的形狀,但需要通過對脈沖計數來確定發送脈沖個數,決定定時器的起停。在生成PWM過程中,當計數寄存器當前數值大于比較寄存器設置值時,將產生比較中斷。當計數寄存器值增加到自動裝載寄存器設置值時,將產生溢出中斷,2個中斷皆采用邊沿觸發,比較中斷將在下降沿觸發,而溢出中斷將在上升沿觸發,在中斷觸發的時刻即可實現脈沖的計數。
4 結束語
本文應用STM32建立了伺服壓力機的控制系統,
并提出了伺壓力機控制系統的實現模式??刂苹瑝K實現任意的速率和運動曲線,提高材料可成形性,降低噪音,節約能源。從建立的伺服壓力機控制系統中可以看出完善伺服電機的控制、計算能量的極小化、獲得精確的沖壓能量是有待進一步研究的問題[5]。
-
ARM
+關注
關注
134文章
9084瀏覽量
367387 -
工控機
+關注
關注
10文章
1726瀏覽量
50503 -
STM32
+關注
關注
2270文章
10895瀏覽量
355743
發布評論請先 登錄
相關推薦
評論