時間:2023-08-21 13:25:27來源:深圳市雷賽智能控制股份有限公司
CNC是一種實現(xiàn)軌跡控制的運控功能,其目標(biāo)不僅是對"起始點"和"目標(biāo)點"的位置進(jìn)行控制,還要求按照所期望的運動路徑控制兩點之間經(jīng)過的軌跡。通過同時控制多個軸的運動,CNC使設(shè)備的運動部件能夠按照所需的軌跡進(jìn)行移動,并實現(xiàn)所需的加工操作。
CNC在許多典型的運動控制應(yīng)用中得到廣泛應(yīng)用,包括圖形雕刻、機(jī)床加工、機(jī)械手搬運、運動平臺控制等。
圖1
雷賽中大型PLC(MC系列、LC系列)均支持DIN66025-1標(biāo)準(zhǔn)的G-Code指令集,用戶可以使用G-Code指令編寫CNC軌跡程序。同時,它們也支持PLCopen規(guī)范的CNC運控功能,能夠?qū)崿F(xiàn)直角坐標(biāo)系的平面直線/圓弧插補、空間直線/圓弧插補、螺旋線插補等,并支持最大8個輔助軸的跟隨運動。
圖2
Leadsys Studio提供SM3_CNC.library庫,無需特別的附件,即具有CNC軌跡插補控制功能。下面以一個簡單的例程演示如何使用其中的SMC_Interpolator等功能塊,進(jìn)行CNC直角坐標(biāo)系的插補運算。
02.
程序編寫
1.新建工程
打開LeadSys軟件后,鼠標(biāo)點擊菜單中的“文件”-“新建工程”,選擇“標(biāo)準(zhǔn)工程”,選擇本地電腦硬盤上的存放PLC工程的位置,填寫本工程的名稱,如:CNCdirect,點擊“確定”。
圖3
進(jìn)入下一個界面,隨即選擇PLC類型如:LC2048,再選擇主程序PLC_PRG的編程語言(默認(rèn)為ST),請根據(jù)實際情況選擇完成后點擊“創(chuàng)建”,進(jìn)入編程界面。
圖4
2.創(chuàng)建NC程序
在目錄樹中右擊“Application”,依次選擇“添加對象”-“CNC程序”,填寫程序名稱如:"Example",并選擇編譯模式-點擊“打開”進(jìn)入編輯界面。
圖5
注:在“Application“中CNC的屬性里有三種編譯模式(SMC_QutQueue;能直接被插補器使用,SMC_CNC_REF:需要使用SMC_NCDecoder識別,配合其他預(yù)處理功能,F(xiàn)ile:文件形式,需要使用SMC_ReadNCFile處理),最終轉(zhuǎn)換出來的數(shù)據(jù)類型都是SMC_OutQueue,然后再輸入到路徑預(yù)處理及插補器執(zhí)行。
本示例中直接選用SMC_QutQueue編譯模式后,在編輯區(qū)輸入需執(zhí)行的G代碼程序,如下圖所示:
圖6
3.添加設(shè)備
右鍵單擊目錄樹中的“SoftMotionGeneralAxisPool”,選擇“添加設(shè)備”,打開如圖7所示的界面,填寫設(shè)備名稱如:X_Drive,選取“虛擬驅(qū)動器”,點“添加設(shè)備”按鈕即可。然后按此方法再添加1個虛擬軸如:Y_Drive。
以上步驟僅為例程演示,請根據(jù)實際情況添加設(shè)備到工程中。
圖7
并設(shè)置軸的速度、加速度等參數(shù)
圖8
4.新建程序
4.1 右鍵單擊“PLC_PRG”添加一個名為"Ipo"的新CFC程序,同時配置一個適當(dāng)?shù)娜蝿?wù)周期,本例程中設(shè)置的間隔為3毫秒。
4.2 調(diào)用MC_Power使能軸
圖9
4.3 添加插補器SMC_Interpolator
經(jīng)過編譯解碼之后G代碼被PLC識別,PLC按照G代碼描述的軌跡來分別控制各個軸動作。插補運行的典型POU就是完成這部分功能的,主要有插補運算功能塊,坐標(biāo)變換功能塊以及軸位控制功能塊,必須放在EtherCAT任務(wù)下執(zhí)行。
SMC_Interpolator功能塊將由GEOINFO對象定義的路徑轉(zhuǎn)換為離散化的路徑點。
常用變量說明如下:
圖10
4.4 添加反向和正向轉(zhuǎn)換功能塊,用于實現(xiàn)坐標(biāo)轉(zhuǎn)換和路徑可視化
用戶應(yīng)用系統(tǒng)的坐標(biāo)軸與G-Code程序軌跡坐標(biāo)系的并不重合時,就需要進(jìn)行平移、旋轉(zhuǎn)坐標(biāo)變換。
逆變換:SM_Trafo_Gantry2根據(jù)軌跡插補點的位置坐標(biāo),求得相關(guān)驅(qū)動軸的目標(biāo)位置,用于進(jìn)行軸的位置控制
圖11
正變換:SM_Trafof_Gantry2根據(jù)相關(guān)驅(qū)動軸的位置,計算合成運動點的坐標(biāo),用于當(dāng)前位置的顯示,此處示例中的正變換功能塊僅用于可視化。
圖12
4.5 添加軸控功能塊SMC_ControlAxisByPos
為了將運動控制指令正確發(fā)送到各軸,使用SMC_ControlAxisByPos功能塊進(jìn)行控制。該功能塊的作用就是將fSetPostion的坐標(biāo),通過PDO寫給指定的Axis,令軸驅(qū)動伺服運動到指定位置。
圖13
4.6 程序如下圖所示:
圖14
變量表:
圖15
03.
創(chuàng)建可視化界面
在目錄樹中右擊“Application”,依次選擇“添加對象”-“視圖”,填寫程序名稱,如:“Visualization1”,點擊打開后進(jìn)入編輯界面。在可視化工具箱中選擇“SMC_CNC”,篩選所需的可視化元素拖入編輯區(qū),操作如下圖所示:(此步驟在本例程中僅用于仿真演示模擬運行軌跡,實際編寫時可自行選擇是否創(chuàng)建)
圖16
04.
編譯運行,仿真演示
圖17
END
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(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é)任。