技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 開放式激光振鏡運(yùn)動控制器:C++振鏡矯正方法與實(shí)現(xiàn)

開放式激光振鏡運(yùn)動控制器:C++振鏡矯正方法與實(shí)現(xiàn)

時(shí)間:2022-10-27 09:47:47來源:深圳市正運(yùn)動技術(shù)有限公司

導(dǎo)語:?今天,正運(yùn)動小助手給大家分享一下開放式激光振鏡運(yùn)動控制器ZMC408SCAN進(jìn)行振鏡矯正的方法與實(shí)現(xiàn)說明。

  今天,正運(yùn)動小助手給大家分享一下開放式激光振鏡運(yùn)動控制器ZMC408SCAN進(jìn)行振鏡矯正的方法與實(shí)現(xiàn)說明。

  01、ZMC408SCAN控制器介紹

  ZMC408SCAN是正運(yùn)動技術(shù)新推出的一款支持EtherCAT總線的開放式激光振鏡運(yùn)動控制器,專為工業(yè)激光+振鏡+運(yùn)動控制方面的應(yīng)用而設(shè)計(jì)。通過EtherCAT總線和脈沖軸接口能實(shí)現(xiàn)多軸聯(lián)動運(yùn)動控制。

  ZMC408SCAN支持ETHERNET、EtherCAT、USB、CAN、RS485、RS232等通訊接口,通過CAN、EtherCAT總線可以連接各個(gè)擴(kuò)展模塊,從而擴(kuò)展數(shù)字量、模擬量或運(yùn)動軸。

運(yùn)動控制

  (1)ZMC408SCAN內(nèi)置高精度PSO位置同步輸出功能,在加工圓角、曲線部分時(shí)即使進(jìn)行了減速調(diào)整,在高速加工的場合,也能控制激光輸出的間距保持恒定;

  (2)支持激光振鏡控制和振鏡反饋,包含2個(gè)振鏡接口,支持2D振鏡和3D振鏡,配合不帶加減速的運(yùn)動指令MOVESCAN,拐角處振鏡加工自動延時(shí),完成精準(zhǔn)高效的激光控制,提高激光加工設(shè)備的產(chǎn)能;

  (3)通過指令在運(yùn)動中靈活的調(diào)節(jié)激光開光/關(guān)光延時(shí),響應(yīng)快,精確到us級別的控制,且設(shè)置過程簡單,大大縮短了工程師的調(diào)參時(shí)間;

  (4)自帶LASER激光器控制接口,支持IPG、YLR、YLS等類型激光電源,還帶一個(gè)EXIO擴(kuò)展IO接口,通過定制轉(zhuǎn)接板,靈活控制市場上主流的各種激光器;

  (5)支持PC同時(shí)控制16個(gè)ZMC408SCAN控制器同時(shí)工作,形成一種振鏡陣列的激光加工;

  (6)板載4路高速差分脈沖輸出,并帶4路高速差分編碼器反饋,支持EtherCAT總線驅(qū)動器的控制,支持5軸XYZAC軸的插補(bǔ),支持振鏡軸與運(yùn)動軸混合插補(bǔ);

  (7)支持直線插補(bǔ)、任意圓弧插補(bǔ)、空間圓弧、螺旋插補(bǔ)、電子凸輪、電子齒輪、同步跟隨、虛擬軸設(shè)置等多種運(yùn)動控制功能。

  02、振鏡控制

  激光振鏡是一種專門用于激光加工領(lǐng)域的特殊的運(yùn)動器件,它靠兩個(gè)振鏡片反射激光, 形成XY平面的運(yùn)動。

  激光振鏡不同于一般的電機(jī),激光振鏡具有非常小的慣量,且在運(yùn)動的過程中負(fù)載非常小,系統(tǒng)的響應(yīng)非?,因此在振鏡運(yùn)動中可以不用考慮振鏡加減速。振鏡一般分模擬振鏡與數(shù)字振鏡,模擬振鏡就是振鏡驅(qū)動板是接收模擬信號方式,常用的模擬振鏡信號是直流電壓-5伏到+5伏變化的信號,對應(yīng)的是電機(jī)擺動的角度,比如-5V到+5V對應(yīng)-10度到+10度的電機(jī)擺動角度。

  數(shù)字振鏡采用數(shù)字信號進(jìn)行控制,數(shù)字信號則符合XY2-100協(xié)議。數(shù)字量-32768~32767對應(yīng)電機(jī)的最大擺動角度。

  正運(yùn)動針對振鏡軸控制提供來一種專用的運(yùn)動指令,通過ZAux_Direct_MoveScanAbs或者ZAux_Direct_MoveScan實(shí)現(xiàn)振鏡的快速響應(yīng)。

  Scan運(yùn)動指令相比普通運(yùn)動指令控制不帶加減速規(guī)劃,支持us級別的時(shí)間控制。通過ZAux_Direct_SetForceSpeed設(shè)置的速度與矢量距離直接計(jì)算出運(yùn)行時(shí)間。

  目前正運(yùn)動SCAN控制器支持1-2路XY2-100數(shù)字振鏡軸的控制。

運(yùn)動控制

  一、振鏡軸配置

  正運(yùn)動SCAN控制器支持1-2路振鏡軸,不同控制器映射的軸號及支持的振鏡軸功能不同,不同振鏡組對應(yīng)軸號如下圖。

  通過指令ZAux_Direct_SetAtype設(shè)置對應(yīng)振鏡軸類型,振鏡軸類型分為三種:

  §一種軸類型值為20(振鏡類型,帶振鏡狀態(tài)反饋,僅ZMC408SCAN支持);

       § 一種軸類型值為21(振鏡軸控制類型);

  §一種軸類型值為22(振鏡類型,帶振鏡位置反饋,僅ZMC408SCAN支持)。

  §*表示不支持的功能。

運(yùn)動控制

  二、振鏡矯正

  1.重點(diǎn)說明

  激光振鏡掃描系統(tǒng)如下圖所示,可見振鏡掃描的實(shí)際工作范圍由振鏡的最大偏轉(zhuǎn)角度與工作高度決定。因此振鏡軸偏轉(zhuǎn)角度對應(yīng)輸出-32768~32767與實(shí)際工作范圍做單位映射時(shí)需要按照根據(jù)測試長度做比例映射。

運(yùn)動控制

  振鏡掃描系統(tǒng)建立的坐標(biāo)系是一個(gè)非正交的坐標(biāo)系,實(shí)際的掃描場會造成枕型失真。由于振鏡本身掃描造成的枕型失真如圖(左),另外由于F-Theta平面場鏡的使用,會造成輸出輪廓的桶型失真如圖(中),疊加以后輸出的圖形具有桶型和枕型雙重失真如圖(右)。

運(yùn)動控制

  為了使軟件坐標(biāo)與實(shí)際運(yùn)行距離場地對應(yīng)及輸出軌跡不失真,則需要需要實(shí)時(shí)的對每一個(gè)數(shù)據(jù)點(diǎn)進(jìn)行校正,通常采用查找表分段線性插值的方法進(jìn)行位置校正,校正點(diǎn)越多實(shí)際輸出位置越精準(zhǔn)。

  正運(yùn)動SCAN控制器提供了BOX校正、多點(diǎn)校正等方法,不管是系數(shù)校正還是多點(diǎn)校正,校正點(diǎn)參數(shù)都是寫到控制器內(nèi)部系統(tǒng)數(shù)組TABLE寄存器的。因此在程序中有其他功能應(yīng)用到TABLE寄存器時(shí)需要注意地址的合理分配。

  (1)Box系數(shù)校正

  系數(shù)校正指的是根據(jù)振鏡輸出圖形枕/桶形失真、平行四邊形失真、梯形失真、比例縮放幾種情況進(jìn)行系數(shù)調(diào)整校正。

  通過調(diào)用ZScan_CorrectFactor進(jìn)行系數(shù)校正。先控制振鏡繪制出一個(gè)正方形校正圖形,根據(jù)校正圖形的失真按下圖情況調(diào)整對應(yīng)的系數(shù)參數(shù),根據(jù)標(biāo)刻長度與測量長度調(diào)整縮放系數(shù),直到實(shí)際標(biāo)刻的尺寸與設(shè)置一致時(shí)認(rèn)為校正成功,校正系以是填寫的變化量,通常以0值為參考基準(zhǔn)變化。

運(yùn)動控制

  (2)9點(diǎn)校正

  9點(diǎn)校正指的是根據(jù)在工作范圍內(nèi)標(biāo)刻3*3的表格,根據(jù)每個(gè)點(diǎn)的理論位置與實(shí)際位置來進(jìn)行振鏡校正。

  先控制振鏡預(yù)繪制出一個(gè)3*3校正表格圖形,按下圖所示P1-P9的順序填入X坐標(biāo)與Y坐標(biāo)實(shí)際測量值,填入P1點(diǎn)的理論標(biāo)刻與P9點(diǎn)的理論坐標(biāo),通過調(diào)用ZScan_Correct9進(jìn)行9點(diǎn)校正。需重新標(biāo)刻測試,直到實(shí)際標(biāo)刻與理論值達(dá)到預(yù)期精度范圍。

運(yùn)動控制

  (3)25點(diǎn)校正

  25點(diǎn)校正指的是根據(jù)在工作范圍內(nèi)標(biāo)刻5*5的表格,校正過程與9點(diǎn)校正相同,通過調(diào)用ZScan_Correct25進(jìn)行25點(diǎn)校正。校正點(diǎn)數(shù)越多校正精度也越高。

  2.振鏡指令介紹

運(yùn)動控制

  (1)振鏡軸9點(diǎn)矯正

運(yùn)動控制

  (2)振鏡軸25點(diǎn)矯正

運(yùn)動控制

  (3)振鏡軸系數(shù)矯正

運(yùn)動控制

運(yùn)動控制

  (4)取消振鏡矯正

運(yùn)動控制

  03、程序展示

  九點(diǎn)矯正與25點(diǎn)矯正過程相同,但25點(diǎn)矯正精度更高,可通過九點(diǎn)矯正例程改寫25點(diǎn)矯正。

  1.九點(diǎn)矯正程序如下

  ·

  ZMC_HANDLE handle = NULL; //連接句柄int rtn = ZAux_OpenEth("192.168.0.11", &handle); //連接控制器if(CheckError(rtn,"ZAux_OpenEth")) return; //檢查函數(shù)返回for(int iAxis = 4;iAxis<6;iAxis++){ rtn = ZAux_Direct_SetAtype(handle,iAxis,21); //設(shè)置軸為振鏡軸 if(CheckError(rtn,"ZAux_Direct_SetAtype")) return; rtn = ZAux_Direct_SetUnits(handle,iAxis,500); //設(shè)置軸脈沖當(dāng)量 if(CheckError(rtn,"ZAux_Direct_SetUnits")) return;}rtn = ZScan_CancelCorrect(handle,0,-1,-1,200,1,1000); //取消振鏡校正if(CheckError(rtn,"ZScan_CancelCorrect")) return;double m_dXMeasurePt[9] = {-51.5,0,49.5,-52.9,0,50.1,-51.8,0,49.0};double m_dYMeasurePt[9] = {-51.5,-51.0,-53.0,0,0,0,51.9,51.5,53.9};rtn = ZScan_Correct9(handle,0,m_dXMeasurePt,m_dYMeasurePt,0,21,500,-50,-50,50,50,1,1000); //振鏡0 9點(diǎn)校正,校正數(shù)據(jù)存儲在系統(tǒng)數(shù)組TABLE(1000 - 1004+21*21*2)if(CheckError(rtn,"ZScan_CorrectFactor")) return;rtn = ZAux_Close( handle); //關(guān)閉連接,釋放句柄if(CheckError(rtn,"ZAux_Close")) return;handle = NULL;

  2.系數(shù)矯正例程如下

  ·

  ZMC_HANDLE handle = NULL; //連接句柄int rtn = ZAux_OpenEth("192.168.0.11", &handle); //連接控制器if(CheckError(rtn,"ZAux_OpenEth")) return; //檢查函數(shù)返回for(int iAxis = 4;iAxis<6;iAxis++){ rtn = ZAux_Direct_SetAtype(handle,iAxis,21); //設(shè)置軸為振鏡軸 if(CheckError(rtn,"ZAux_Direct_SetAtype")) return; rtn = ZAux_Direct_SetUnits(handle,iAxis,500); //設(shè)置軸脈沖當(dāng)量 if(CheckError(rtn,"ZAux_Direct_SetUnits")) return;}rtn = ZScan_CancelCorrect(handle,0,-1,-1,200,1,1000); //取消振鏡校正if(CheckError(rtn,"ZScan_CancelCorrect")) return;double m_dMaxBox[2] = {131,131}; //最大校正區(qū)域double m_dCorrectBox[] = {131,131}; //實(shí)際校正區(qū)域double m_dOffset[2] = {0,0}; //偏移量 一般用于紅光偏移double m_pdFactor[2][4] = {{1,0,0,0},{1,0,0,0}}; //校正系數(shù) 縮放系數(shù)、桶型/枕型畸變系數(shù)、平行四邊形畸變系數(shù)、梯形畸變系數(shù)rtn = ZScan_CorrectFactor(handle,0,m_dMaxBox[0],m_dMaxBox[1],m_dCorrectBox[0],m_dCorrectBox[1],m_dOffset[0],m_dOffset[1],&m_pdFactor[0][0],&m_pdFactor[1][0],0,21,1,1,500,1,1000); //振鏡0系數(shù)校正,校正數(shù)據(jù)存儲在系統(tǒng)數(shù)組TABLE(1000 - 1004+21*21*2)if(CheckError(rtn,"ZScan_CorrectFactor")) return;rtn = ZAux_Close( handle); //關(guān)閉連接,釋放句柄if(CheckError(rtn,"ZAux_Close")) return;handle = NULL;

  04、振鏡矯正工具

  振鏡矯正工具包含了多種矯正方式,9點(diǎn)矯正、25點(diǎn)矯正、系數(shù)矯正、多點(diǎn)矯正、文件矯正。

運(yùn)動控制

  參數(shù)設(shè)置界面機(jī)械參數(shù):

       先通過IP地址選擇,連上對應(yīng)控制器,然后設(shè)置機(jī)械參數(shù)選擇激光器類型,設(shè)置好振鏡號,將標(biāo)刻圖形的XY方向與軟件顯示的一致。

  打標(biāo)參數(shù):

  從上至下依次填寫標(biāo)刻速度、空移速度、軸類型、脈沖當(dāng)量(運(yùn)動指令與速度指令的基本單位,需要修改脈沖當(dāng)量為振鏡運(yùn)動1mm的脈沖個(gè)數(shù),修改過后標(biāo)刻圖形相較于預(yù)定尺寸相差較小就能開始測量矯正了,預(yù)校正標(biāo)刻圖形不完整或圖形比預(yù)定尺寸大很多時(shí),將此參數(shù)調(diào)小;反之則將參數(shù)調(diào)大)。

  例如:

  §開關(guān)延時(shí):多點(diǎn)矯正圓中心的點(diǎn)深,調(diào)開關(guān)延時(shí)

  §關(guān)光延時(shí):最外圈不封口的情況調(diào)關(guān)光延時(shí)

  §拐角延時(shí):右邊的線深,調(diào)拐角延時(shí)

  §跳轉(zhuǎn)延時(shí):多點(diǎn)矯正圓點(diǎn)有小尾巴,調(diào)跳轉(zhuǎn)延時(shí)

  §結(jié)束延時(shí):所有的運(yùn)動結(jié)束后都加結(jié)束延時(shí)

  激光能量控制:

  (1)模擬量DA(0~4095對應(yīng)0~10V電壓)

  (2)PWM(調(diào)機(jī)占空比,設(shè)置頻率)

  (3)IO組合

       注:激光能量的控制參數(shù),需要根據(jù)激光器能量功率的控制類型來進(jìn)行修改,需參考激光器手冊。

運(yùn)動控制

  1.9點(diǎn)矯正和25點(diǎn)矯正

  §設(shè)置矯正參數(shù)的table起始位置:這個(gè)地址不要與其他table地址位置沖突,約使用1000個(gè)數(shù)據(jù),占用1000個(gè)table地址;

  §紅光游覽:可用來矯正圖形;

  §預(yù)標(biāo)刻尺寸:面積,標(biāo)刻預(yù)校正圖形使用此參數(shù);

  §預(yù)標(biāo)刻出圖形后將標(biāo)刻圖形取出測量:測量兩點(diǎn)之間的距離,將兩點(diǎn)之間的距離參數(shù)填入對應(yīng)的框內(nèi);

  §標(biāo)刻預(yù)矯正:根據(jù)參數(shù)設(shè)置和預(yù)標(biāo)刻尺寸開始標(biāo)刻預(yù)矯正圖形;

  §僅矯正按鈕:只進(jìn)行振鏡矯正,不標(biāo)刻;

  §標(biāo)刻尺寸:面積,標(biāo)刻預(yù)矯正圖形使用此參數(shù);

  §矯正并標(biāo)刻:根據(jù)標(biāo)刻尺寸,開始矯正并標(biāo)刻圖形;

  §保存到文件和保存到控制器:保存到文件是保存到電腦本地(保存文件可用于文件矯正和多點(diǎn)矯正),保存到控制器是保存到控制器的flash塊(要確保不同的振鏡軸號間用不同flash塊,不能沖突);

  §急停:標(biāo)刻急停。

運(yùn)動控制

  (1)9點(diǎn)矯正標(biāo)刻預(yù)矯正效果圖

運(yùn)動控制

運(yùn)動控制

  (2)矯正并標(biāo)刻效果圖

運(yùn)動控制

運(yùn)動控制

  (3)25點(diǎn)矯正同9點(diǎn)矯正相同,只是點(diǎn)數(shù)更多,矯正精度更高。

運(yùn)動控制

  2.系數(shù)矯正

  系數(shù)矯正和9點(diǎn)矯正等差不多,只是多了一個(gè)原點(diǎn)偏移和XY的縮放比。

運(yùn)動控制

  3.多點(diǎn)矯正

  (1)矯正大。和;

  (2)標(biāo)刻點(diǎn)半徑:標(biāo)刻圓(點(diǎn))半徑;

  (3)標(biāo)刻點(diǎn)數(shù)量:可選9*9、17*17、33*33、65*65,目前開發(fā)9*9、17*17,更多點(diǎn)數(shù)矯正請聯(lián)系正運(yùn)動技術(shù)支持工程師;

  (4)填充點(diǎn)間距:同心圓半徑差;

  (5)完整圖形:標(biāo)刻完整圖形(掃描儀可以完整掃描出整張圖片);

  (6)左邊/右邊圖形:標(biāo)刻左/右圖形;(圖形較大時(shí),使用掃描儀無法一次將所有圖形全部掃描,請使用左右分別標(biāo)刻,分別掃描,導(dǎo)入兩張圖片);

  (7)急停:標(biāo)刻急停;

  (8)點(diǎn)處理:

  §模式:單張圖片、兩張圖片:根據(jù)掃描標(biāo)刻后的矯正圖紙是否分兩次掃描,或分左右標(biāo)刻

  §極性:白背景黑點(diǎn)、黑背景白點(diǎn)

  §閾值方式:自動、手動閾值:(閾值參數(shù)范圍0~255)黑白照片白色為255,黑色為0,處于低閾值至高閾值之間之間的像素處理為 255,否則為 0,用于處理掃描標(biāo)刻后的圖像處理

  §低閾值:0~255

  §高閾值:0~255 應(yīng)設(shè)置為大于等于低閾值數(shù)據(jù)

  §最大面積/最小面積:通過篩選原點(diǎn)面積過濾圖像噪點(diǎn)(雜點(diǎn))

  §詳見Zvision幫助

  (9)尋入9點(diǎn)矯正文件:導(dǎo)入9點(diǎn)矯正文件(多點(diǎn)矯正需要9點(diǎn)矯正中“保存矯正數(shù)據(jù)到文件”的文件)。

運(yùn)動控制

  4.文件矯正

  功能:導(dǎo)入9/25/多點(diǎn)矯正“保存矯正數(shù)據(jù)到文件”保存的文件,更新參數(shù)至矯正界面、僅矯正或矯正并標(biāo)刻等。

運(yùn)動控制

  本次,正運(yùn)動技術(shù)開放式激光振鏡運(yùn)動控制器:C++振鏡矯正方法與實(shí)現(xiàn),就分享到這里。

  更多精彩內(nèi)容請關(guān)注“正運(yùn)動小助手”公眾號,需要相關(guān)開發(fā)環(huán)境與例程代碼,請咨詢正運(yùn)動技術(shù)銷售工程師:400-089-8936。

  本文由正運(yùn)動技術(shù)原創(chuàng),歡迎大家轉(zhuǎn)載,共同學(xué)習(xí),一起提高中國智能制造水平。文章版權(quán)歸正運(yùn)動技術(shù)所有,如有轉(zhuǎn)載請注明文章來源。

標(biāo)簽: 運(yùn)動控制

點(diǎn)贊

分享到:

上一篇:漫談風(fēng)電機(jī)組大型化中的齒輪箱

下一篇:智能傳感器在制造業(yè)中的5大關(guān)...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號