基于運動(dòng)控制卡的數控轉塔沖床數控系統研究
0 引言
本文引用地址:http://dyxdggzs.com/article/201612/329103.htm現階段,在我國轉塔數控沖床運動(dòng)控制系統方面的開(kāi)發(fā)與研究主要基于兩種模式: 1) 基于PC + PLC 的數控轉塔沖床運動(dòng)控制系統; 2) 基于PC + 運動(dòng)控制卡的數控轉塔沖床運動(dòng)控制系統。由于PC + PLC 的數控轉塔沖床運動(dòng)控制系統,采用單片機PLC 來(lái)實(shí)現設備移動(dòng)部件的速度控制和位置控制,外圍電路比較復雜,計算速度比較慢,所以人們更傾向于使用運算速度快,可以滿(mǎn)足高精度的速度和位置控制的運動(dòng)控制系統,因而基于PC + 運動(dòng)控制卡的數控轉塔沖床運動(dòng)控制系統隨著(zhù)運動(dòng)控制技術(shù)的發(fā)展而得到了廣泛應用。此外,本系統采用的是伺服電機實(shí)現機器的加減速運動(dòng)控制,伺服電機作為一種把電脈沖轉化為角位移的執行機構,能夠隨著(zhù)脈沖信號的頻率和數量控制設備移動(dòng)部件的速度和距離,通過(guò)方向信號控制設備移動(dòng)的方向,是一種既經(jīng)濟又簡(jiǎn)單的控制極速方案。
1 運動(dòng)控制系統的工作原理
本系統采用PC + 運動(dòng)控制卡的運動(dòng)控制系統方案,利用Visual C + + 6. 0 語(yǔ)言進(jìn)行系統程序和界面的開(kāi)發(fā)與設計,實(shí)現對伺服電機的運動(dòng)控制功能。本系統通過(guò)人工在PC 機上操作接口傳遞給機器控制軟件,機器控制軟件將操作信息轉化為運動(dòng)參數并根據這些參數調用DLL 庫中的運動(dòng)函數,運動(dòng)函數調用運動(dòng)控制卡驅動(dòng)程序發(fā)出控制指令給控制卡,運動(dòng)控制卡再根據控制指令發(fā)出相應的控制信號( 脈沖、方向信號) 給電機驅動(dòng)器,電機驅動(dòng)器根據控制信號來(lái)驅動(dòng)電機運動(dòng)帶動(dòng)機器部件的運動(dòng)。
2 控制系統硬件組成
2.1 硬件設備的組成
系統在硬件上由PC 機、DMC1410B 運動(dòng)控制卡、伺服電機驅動(dòng)器以及伺服電機組成。DMC1410B 運動(dòng)控制卡為雷賽公司自主研發(fā)的脈沖式四軸運動(dòng)控制卡,可輸出脈沖信號和方向信號,用以控制電機的轉速和方向。DMC1410B 運動(dòng)控制卡具有即插即用、連續運動(dòng)、直線(xiàn)插補、單軸運動(dòng)等功能; 具有梯形和S 型加減速運動(dòng)曲線(xiàn),最大脈沖輸出頻率為1. 2 MHz,具有16 路輸入和12 路輸出的通用I /O 接口,輸入輸出信號均采用光電隔離大幅度提高了運動(dòng)控制卡的可靠性能和抗干擾性能。DMC1410 卡也支持即插即用功能。
2.2 運動(dòng)控制卡主要功能
通過(guò)對運動(dòng)控制卡的操作實(shí)現對走刀軌跡的設定、各軸回原點(diǎn)、點(diǎn)動(dòng)控制、機床啟停、刀具選擇,在加工狀態(tài)的顯示,加工任務(wù)的管理實(shí)現各軸的獨立運動(dòng)、以及連續運動(dòng),并可通過(guò)設定速度和加速度的參數數值,讓運動(dòng)軌跡呈現梯形或者S 型加減速運動(dòng)控制。通過(guò)對運動(dòng)控制卡的實(shí)時(shí)控制,實(shí)現二軸直線(xiàn)插補、三軸直線(xiàn)插補、多軸聯(lián)動(dòng)等操作。DMC1410B 運動(dòng)控制卡可以輸出兩類(lèi)脈沖信號:
1) 脈沖+ 方向形式( 單脈沖) ; 2) 正脈沖+ 反脈沖( 雙脈沖) 形式。每軸都有兩個(gè)減速剎車(chē)信號+ SD 和- SD,在檢測到減速信號后,電機減速至低速運行。通用數字輸出信號OUT 用于控制繼電器、電磁閥、指示燈等開(kāi)關(guān)器件。
通用數字輸入信號INPUT 用于接近開(kāi)關(guān)、光電開(kāi)關(guān)、按鍵等傳感器的信號輸入。
3 控制系統軟件設計
3.1 運動(dòng)控制函數
系統是基于Windows XP 系統支持平臺,以VisualC + + 6. 0作為開(kāi)發(fā)工具,進(jìn)行程序設計與開(kāi)發(fā)的系統,是一種基于驅動(dòng)方式的消息件的程序設計系統,當用戶(hù)需要完成某種特定功能時(shí),點(diǎn)擊相應的功能按鈕,就會(huì )產(chǎn)生相對應的消息。然后,操作系統將對消息進(jìn)行循環(huán)并開(kāi)始檢索消息,并將消息發(fā)送給對應的對象。每個(gè)相應的接收對象都有相對應的消息映射,用于將消息與處理函數聯(lián)系起來(lái)。當目標對象接收到消息映射時(shí),將開(kāi)始搜索對應的消息映射,尋找互相匹配的消息處理函數并實(shí)現相應的功能。
系統所支持的DMC1410B 運動(dòng)控制卡,主要有初始化函數、連續運動(dòng)控制函數、單軸運動(dòng)控制函數、直線(xiàn)插補函數、圓弧插補函數、回原點(diǎn)函數以及運動(dòng)狀態(tài)檢測函數等各種豐富的函數。由于DMC1410B 運動(dòng)控制卡支持12塊DMC1410B 運動(dòng)卡同時(shí)運行工作,因此一臺PC 機可以完成多達48 軸的伺服電機同時(shí)進(jìn)行運動(dòng)控制。
在軟件方面運動(dòng)控制卡提供了大量的運動(dòng)控制函數,用以滿(mǎn)足用戶(hù)在應用中的各種要求。用戶(hù)只需根據運動(dòng)控制系統的具體要求,調用相關(guān)的運動(dòng)控制卡函數庫中的運動(dòng)控制函數,就可以滿(mǎn)足多種要求的多軸運動(dòng)控制系統。
函數列舉如下:
(1) 初始化函數
d1000_board_init 軟件初始化
(2) 連續運動(dòng)控制函數
d1000_start_tv_move 以梯形速度曲線(xiàn)控制一個(gè)軸連續運動(dòng)
d1000_start_sv_move 以S 形速度曲線(xiàn)控制一個(gè)軸連續運動(dòng)
d1000_immediate_stop 以梯形或S 形急停一個(gè)軸
d1000_decel_stop 以梯形或S 形減速停止一個(gè)軸
(3) 單軸運動(dòng)控制函數
d1000_start_t_move 以梯形速度曲線(xiàn)控制相對坐標的點(diǎn)位運動(dòng)d1000_start_sa_move 以S 形速度曲線(xiàn)控制絕對坐標的點(diǎn)位運動(dòng)
(4) 直線(xiàn)插補函數
d1000_start_t /ta_line 任意2、3、4 軸相/絕對坐標的直線(xiàn)插補運動(dòng)
(5) 圓弧插補函數
d1000_start_t /ta_ arc 任意2 軸進(jìn)行相/絕對坐標的圓弧插補
(6) 回原點(diǎn)函數
d1000_home_move 回原點(diǎn)運動(dòng)
3.2 系統程序設計
3.2.1 實(shí)時(shí)控制
數控轉塔沖床運動(dòng)控制系統作為一個(gè)實(shí)時(shí)性多任務(wù)的運動(dòng)控制系統,需要完成的任務(wù)有很多,主要包括機床的啟停、直線(xiàn)圓弧插補運算、速度和位置控制等。在這些任務(wù)中,對實(shí)時(shí)性的要求高低不同,因此,根據這一點(diǎn)可以利用系統多線(xiàn)程、多任務(wù)、搶占式的技術(shù)特點(diǎn)將各個(gè)系統任務(wù)分配給不同的線(xiàn)程,并賦予各個(gè)不同線(xiàn)程的優(yōu)先級,當優(yōu)先級高的線(xiàn)程,即需要執行實(shí)時(shí)性要求比較高的任務(wù)時(shí),可以自動(dòng)終止其他低線(xiàn)程優(yōu)先級的工作,而轉向執行這一線(xiàn)程,這樣就可以實(shí)現運動(dòng)控制系統所需求的實(shí)時(shí)性了。
為了完成運動(dòng)控制系統的實(shí)時(shí)控制,系統采用了定時(shí)循環(huán)檢測的方式。在運行程序中添加消息定時(shí)器來(lái)完成消息的映射過(guò)程,并通過(guò)編寫(xiě)與之相對應的OnTimer( ) 功能函數。其中,OnTimer( ) 函數是實(shí)時(shí)運動(dòng)控制系統中的關(guān)鍵函數,根據定時(shí)器所設置的時(shí)間參數,循環(huán)執行以下功能:
1) 判斷x,y 軸極限位置。
2) x - y 軸實(shí)時(shí)坐標顯示。
3) 回零點(diǎn)的實(shí)時(shí)運動(dòng)控制,其中回零時(shí)先x 軸后y 軸。
3.2.2 運動(dòng)控制
由于DMC1410B 運動(dòng)控制卡可實(shí)現單軸點(diǎn)位運動(dòng)和連續運動(dòng)。因此,可以對單軸點(diǎn)位運動(dòng)進(jìn)行精確地位置控制或速度控制。DMC1410 在表述運動(dòng)軌跡時(shí)可以用絕對坐標和相對坐標這兩種模式,這兩種模式各有優(yōu)點(diǎn),如: 在絕對坐標模式中用一系列坐標點(diǎn)定義一條曲線(xiàn),如果要修改中間某點(diǎn)坐標時(shí),不會(huì )影響后續點(diǎn)的坐標; 而在相對坐標模式中,用一系列坐標點(diǎn)定義一條曲線(xiàn),用循環(huán)命令可以重復這條曲線(xiàn)軌跡多次。在DMC1410 函數庫中距離或位置的單位為脈沖; 速度單位為脈沖/s; 時(shí)間單位為s。
DMC1410B 運動(dòng)控制卡提供了位置控制模式下兩種加減速方式: 一種是梯形曲線(xiàn)加減速,一種是S 型曲線(xiàn)加減速。
1) 梯形曲線(xiàn)加減速通常位置控制采用梯形這種速度控制模式。運動(dòng)速度之所以要按梯形曲線(xiàn)變化,是因為: 電機轉子和被拖動(dòng)的物體具有慣性,不可能在瞬間達到指定速度,因此應該有一定的加速過(guò)程。減速時(shí)亦是類(lèi)似,否則電機會(huì )因為瞬間力矩不足而出現丟步、過(guò)沖或振蕩現象,如圖1 所示。
圖1 梯形速度曲線(xiàn)
2) S 型曲線(xiàn)加減速雖然梯形速度曲線(xiàn)簡(jiǎn)單,但它的速度曲線(xiàn)不平滑,其加速度有突變,因而運動(dòng)中有沖擊現象,容易引起機器噪聲和傳動(dòng)機構的磨損。在梯形速度曲線(xiàn)上,運動(dòng)的不平滑主要表現在四個(gè)瞬間的速度轉折及相對應的加速度突變,這四個(gè)瞬間分別是: 啟動(dòng)時(shí)、達到最高速度時(shí)、從最高速度下降時(shí)和最后停止時(shí)。
若將加速度改為線(xiàn)性變化,則速度曲線(xiàn)相應將變得光滑。加速和減速階段均變?yōu)?ldquo;S”形狀。采用此種速度曲線(xiàn),運動(dòng)更平穩,且有助于縮短加速過(guò)程、降低運動(dòng)裝置的震動(dòng)和噪聲,以及延長(cháng)機械傳動(dòng)部分的壽命,如圖2 所示。
圖2 S 型速度曲線(xiàn)
梯形曲線(xiàn)允許在運動(dòng)過(guò)程中修改位置和速度參數; S型曲線(xiàn)只允許在運動(dòng)過(guò)程中修改位置參數。當在加速度時(shí),梯形曲線(xiàn)具有較短的加減速時(shí)間,而S 曲線(xiàn)的運動(dòng)比較平滑。因此,應當針對具體應用場(chǎng)合選擇相應的加減速曲線(xiàn)模式。
3.2.3 狀態(tài)檢測
用戶(hù)可以從運動(dòng)控制卡的狀態(tài)寄存器中讀取控制軸的狀態(tài)、連續運動(dòng)的軌跡控制狀態(tài)以及指令狀態(tài)。通過(guò)調用運動(dòng)狀態(tài)檢測函數來(lái)查詢(xún)運動(dòng)控制軸的工作模式和工作狀態(tài)。
下面對運動(dòng)狀態(tài)檢測函數進(jìn)行描述:
d1000_check_done 檢測指定軸的運動(dòng)狀態(tài)語(yǔ)法定義:
C/C + + :
DWORD d1000_check_done ( short axis) ;
參數描述:
Axis: 軸號,范圍0 ~ ( n × 4 - 1)返回值:
0: 正在運行
1: 脈沖輸出完畢停止
2: 指令停止( 如調用了d1000_decel_stop 函數)
3: 遇限位停止
4: 遇原點(diǎn)停止
3.3 軟件結構設計
系統根據運動(dòng)功能需求和運動(dòng)控制卡系統的支持,主要可以分為以下幾個(gè)主要模塊: 參數設置模塊、運動(dòng)控制模塊、狀態(tài)顯示模塊、代碼顯示模塊、系統管理模塊等。參數設置模塊主要負責各運動(dòng)主軸的脈沖輸入出設置以及對刀具的選擇等,運行控制模塊則主要控制移動(dòng)部件運動(dòng)的方式,狀態(tài)顯示模塊主要負責將系統運行狀態(tài)( 位置坐標、速度大小等) 及運行時(shí)的參數進(jìn)行實(shí)時(shí)顯示,代碼顯示模塊則主要負責對代碼的顯示、報錯以及錯誤代碼的更改,系統管理模塊主要負責文件管理等。程序通過(guò)各模塊之間的相互協(xié)調控制,共同構成一個(gè)完整的基于運動(dòng)控制卡的數控轉塔系統,如圖3 所示。
圖3 軟件結構框架
4 系統優(yōu)化設計與模具管理
4.1 最近距離法和便宜法
基于最近距離法和便宜法路徑優(yōu)化的算法在各行業(yè)中應用相當廣泛,通過(guò)對典型工藝路徑優(yōu)化算法基本原理的分析和總結,研究制定轉塔數控沖床加工工藝路徑優(yōu)化方法并給出相應的算法說(shuō)明。轉塔數控沖床主要進(jìn)行各種孔的加工,例如圓孔、方形孔、腰圓孔及各種復雜孔。利用零件圖形信息,采用人工交互式的方式進(jìn)行路徑的優(yōu)化。采用特定算法的優(yōu)化方法,減少加工時(shí)間和加工路徑,提高生產(chǎn)效率降低生產(chǎn)成本。
4.2 模具庫管理
模具的種類(lèi)很多、形式各異,要達到數控自動(dòng)編程系統的搜索匹配的功能要求,需對模具的各項參數進(jìn)行合理的定義和歸類(lèi)。主要包括對各種模具如三角形,圓形,正方形,五角星形,以及不規則圖形模具的設定。
5 結語(yǔ)
以DMC1410B 運動(dòng)控制卡為主導,基于Windows XP系統平臺,利用Visual C + + 6. 0 作為系統的開(kāi)發(fā)工具,用以實(shí)現人機交互界面的管理和運動(dòng)控制系統的實(shí)時(shí)監控、運動(dòng)軌跡以及加工代碼的顯示。構筑了一個(gè)基于PC + 運動(dòng)控制卡的數控轉塔沖床運動(dòng)控制系統所形式的數控沖床平臺,其對基于運動(dòng)控制卡的數控系統具有一定的實(shí)用性和通用性。系統采用DMC1410B 運動(dòng)控制卡完成運動(dòng)軌跡規劃、直線(xiàn)插補和圓弧插補計算、運動(dòng)位置的控制、運行速度的控制等實(shí)時(shí)任務(wù),以PC 機實(shí)現方便快捷的人機界面、系統配置,充分發(fā)揮了PC 機豐富的軟硬件資源,縮短了開(kāi)發(fā)周期,反映了數控沖床系統的優(yōu)越性。以運動(dòng)控制卡為核心構建數控系統硬件平臺,本數控系統,允許其他用戶(hù)運用新的技術(shù)和方法,對其進(jìn)行更多的開(kāi)發(fā)和擴充新的功能模塊,以便使系統功能更加完善,更加先進(jìn),功能更強大。
評論