⑴ 發那科機器人用什麼軟體編程
1、基本掌握機器人程序編制調試,了解機器人offline軟體。
2、基本掌握機器人系統的安裝集成,連鎖信號的設定。
3、基本掌握機器人控制系統,熟悉機器人周邊設備及與周邊設備的連接調試工作。
4、基本掌握機器人相關技術的研究,技術問題解決及示教與調試。
5、掌握工業匯流排。如devicenet、profibus等。
6、熟悉abb、fanuc、motoman、kuka、staubli等機器人系統。
機器人編程
機器人編程為使機器人完成某種任務而設置的動作順序描述。機器人運動和作業的指令都是由程序進行控制,常見的編制方法有兩種,示教編程方法和離線編程方法。其中示教編程方法包括示教、編輯和軌跡再現,可以通過示教盒示教和導引式示教兩種途徑實現。由於示教方式實用性強,操作簡便,因此大部分機器人都採用這種方式。離線編程方法是利用計算機圖形學成果,藉助圖形處理工具建立幾何模型,通過一些規劃演算法來獲取作業規劃軌跡。與示教編程不同,離線編程不與機器人發生關系,在編程過程中機器人可以照常工作。工業上離線工具只作為一種輔助手段,未得到廣泛的應用。
⑵ faunc系統代碼大全
FANUC數控系統的操作及有關功能
(北京發那科機電有限公司 王玉琪)
發那科有多種數控系統,但其操作方法基本相同。本文敘述常用的幾種操作。
1.工作方式
FANUC公司為其CNC系統設計了以下幾種工作方式,通常在機床的操作面板上用回轉式波段開關切換。這些方式是:
①.編輯(EDIT)方式:在該方式下編輯零件加工程序。
②.手搖進給或步進(HANDLE/INC)方式:用手搖輪(手搖脈沖發生器)或單步按鍵使各進給軸正、反移動。
③.手動連續進給(JOG)方式:用手按住機床操作面板上的各軸各方向按鈕使所選軸向連續地移動。若按下快速移動按鈕,則使其快速移動。
④.存儲器(自動)運行(MEM)方式:用存儲在CNC內存中的零件程序連續運行機床,加工零件。
⑤.手動數據輸入(MDI)方式:該方式可用於自動加工,也可以用於數據(如參數、刀偏量、坐標系等)的輸入。用於自動加工時與存儲器方式的不同點是:該方式通常只加工簡單零件,因此都是現編程序現加工。
⑥.示教編程:對於簡單零件,可以在手動加工的同時,根據要求加入適當指令,編制出加工程序。
操作者主要按這幾種方式操作系統和機床。
2.加工程序的編制
①.普通編輯方法:將工作方式置於編輯(EDIT)方式,按下程序(PROG)鍵使顯示處於程序畫面。此方式下有兩種編程語言:G代碼語言和用戶宏程序語言(MACRO)。常用的是G代碼語言,程序的地址字有G**,M**,S**,T**,X**,Y**,Z**,F**,O**,N**,P**等,程序如下例所示:
O0010;
N1 G92X0Y0Z0;
N2 S600M03;
N3 G90G17G00G41D07X250.0Y550.0;
N4 G01Y900.0F150;
N5 G03X500.0Y1150.0R650.0;
N6 G00G40X0Y0M05;
N7 M30;
編程時應注意的是代碼的含義。車床、銑床、磨床等不同系列的系統同一個G代碼其意義是不同的。不同的機床廠用參數設定的G代碼系及設計的M代碼的意義也不相同,編程時須查看機床說明書。
用戶宏程序(MACRO)的編輯方法與G代碼程序的編制基本是一樣的,不同點是宏程序是以語句基本單元(不是以字元)進行編輯的。程序實例如下:
O9100;
G81Z#26R#18F#9K0;
IF[#3EQ90]GOTO1;
#24=#5001+#24;
#25=#5002+#25;
N1 WHILE[#11GT0]DO1;
#5=#24+#4*COS[#1];
#6=#25+#4*SIN[#1];
G90X#5Y#6;
END1;
G#3G80;
M99;
上面的程序用的是宏程序B,此時要注意的是MDI鍵盤形式,有的小鍵盤個別字元不能輸入。這種情況必須用計算機編輯,編好後通過RS232C口輸到CNC。
編輯方式只有4個編輯鍵:插入(INSERT),修改(ALTER)和刪除(DELET);另一個鍵是程序段結束(EOB)。插入位置是在游標後,修改和刪除位置是在游標所處位置。
有的系統選擇了擴展型編輯功能,此時可實現程序的部分或全部的拷貝(用COPY鍵)、移動(用MOVE鍵)、合並(用MERGE鍵)。
②.背景編輯:在自動加工(MEM方式)的同時編輯程序稱為背景或後台編輯。編輯方法與上述EDIT方式完全一樣。
③.示教編程:這種方法是在零件加工的同時,記錄各程序段刀具的移動軌跡,並根據實際要求在程序中加入程序段號及適當的M、S、T指令。因此,這種方法一般用於簡單形狀零件的編程。示教編程是在TEACH IN JOG(手動連續示教)方式和TEACH IN HANDLE/STEP(手搖進給/步進示教)方式實現。
④.圖形會話編程:要求系統必須配有圖形印刷板。FANUC圖形會話編程軟體有多種形式。常用的有G代碼菜單形式和編程符號形式。0i目前免費配置了G代碼菜單形式。
3.手動移動機床
①.手搖進給或步進進給(HANDLE/STEP方式):機床只配其中的一種,用於手動調整機床的位置。要注意的是有的機床使用了倍率值1000,此時,若手搖太快,當搖動停止時,機床還可能快速移動,這是很危險的。
②.手動連續進給(JOG方式):按住按鈕使機床連續移動。可用倍率旋鈕改變速率。在該方式下按住快移按鈕,可快速移動機床,快移速度由參數設定。
③.手動返回機床零點:對於使用增量式位置編碼器的機床(目前多是這種情況),開機後的第一個操作就是手動回零點,以建立機床移動的基準位置。回零點過程由機床廠設計的梯形圖控制。回完零點後,可在相對坐標系畫面將當前坐標值清零。必須在零點建立後才能進入MEM方式用程序加工零件。一次通電只須回一次零點,不關機無須再回。當然,使用絕對式位置編碼器的機床開機後無須手動回機床零點,機床零點是在製造時調好的。不更換編碼器,按時更換電池,零點永遠不會丟失。
④.自動建立加工坐標系:根據設定的參數,手動回完零點後可以自動建立加工坐標系:G92(M:銑床和加工中心系列)或G50:(T:車床系列)。
4.自動運行
①. 存儲器運行(MEM方式):進入MEM方式,按下MDI鍵盤上的PROG(程序)鍵,調出加工程序,按下自動加工啟動按鈕,則機床就在程序控制之下加工零件。運行中,可以按下進給暫停(HOLD)按鈕中斷程序的執行,再按下啟動按鈕即可恢復程序的連續執行。也可以按下單段執行按鈕,一段段地執行程序。欲終止自動運行,應按復位(RESET)按鈕。
②.MDI運行(方式):對於簡單的零件,可以在該方式下現場編製程序並進行加工。操作方法與上述基本相同。但執行程序時,須首先將游標移到程序頭。另外,這種方式下的程序不能存儲。
③.DNC運行:這種方式實際就是以前3,6系統中的紙帶運行加工方式,目的是為了解決模具加工時CNC存儲容量的不足問題,通過RS-232C介面接一個外設(通常用計算機),加工程序存在磁碟上,一段段調入CNC存儲器實施加工。
操作方法是:將方式開關置於RMT(梯形圖中是在MEM方式下,將DNCI信號置1),在計算機上調出加工程序,並按回車按鈕,再按下機床的自動加工啟動按鈕,即可執行。
執行此種方式的條件是:計算機上必須按裝適當的通訊軟體,計算機方和CNC方都要設定對應的參數:通訊口,波特率,停止位和傳輸代碼(應設ISO碼)。另外還要按FANUC要求焊接RS232C口的電纜線。經常出現的#86和#87報警就是這些條件不滿足造成的。
用計算機時,不能執行M198功能。M198是調用外設上的子程序,但這些外設只能是FANUC的設備,如:便攜軟磁碟機(Handy File)、磁帶機等。
DNC方式還可用遠程緩沖器(Remote Buffer),這是一塊印刷板,上面有CPU,用於快速傳送處理,該印刷板與上述外設連接。當然此種方式加工速度可提高。
5.數據的輸入與輸出
NC的數據可用外設輸入,也可以輸出到外設。這些數據包括:加工程序、刀補量、坐標系、螺補值、系統和機床參數等。
外設(如計算機)接在RS-232C口上。接法及串口參數的設定與上述DNC操作一樣。設參數可在「Setting」畫面和「參數」畫面在MDI方式進行。
數據的輸入與輸出在編輯(EDIT)方式進行,並需將顯示器置於相應的數據畫面。比如:傳輸加工程序,應按下MDI鍵盤上的程序(PROG)鍵將顯示器置於程序畫面。傳輸刀補量時應按下OFFSET鍵,使顯示處於偏置量畫面。其它類似。
數據輸入時0系統要按INPUT鍵;其它系統按READ和EXEC鍵;數據輸出時0系統要按OUTPUT鍵:其它系統按PUNCH和EXEC鍵。
0i系統的顯示增加了ALL IO畫面,非常方便數據的輸入與輸出。
6.數據的設定和顯示
運行機床之前,必須設足相關數據。如:有關參數,刀補量,刀具壽命,工件坐標系等。
每種數據在MDI鍵盤上都有相應的按鍵,按下某個鍵就顯示對應的畫面。設定這些數據須在MDI方式相應的畫面上進行。操作方法是將游標置於欲設數據處,輸入數值後按INPUT鍵。要注意的是輸入前須將參數寫入開關打開(PWE=1),輸入後將其關閉。
7.機床操作的有關功能
在自動運行時,可以進行手動操作,有以下幾種:
①.手動絕對值的開/關(ON/OFF):該操作是在存儲器運行(MEM方式)時,將方式轉為手動方式移動機床,開關的O/OFF決定其移動量是否包括在顯示的坐標值中。開關ON時移動量不計到顯示值上;OFF時累積到顯示值上。
②.手輪中斷:該操作是在存儲器運行(MEM方式)時,搖動手輪(手搖脈沖發生器)會增加移動距離。但顯示的坐標值是:絕對和相對坐標值不變,只有機床坐標值隨移動量改變.
③.手動干預和返回:該功能是在存儲器運行(MEM方式)時,按下暫停按鈕(HOLD)使進給暫停,轉為手動方式手動移動機床後再回到MEM方式,按下自動加工啟動按鈕時,機床可自動返回到原來位置,恢復系統運行。因此可以用來代替程序再啟動功能,但條件是只能用暫停按鈕(HOLD)中斷MEM方式。
⑶ 關於FANUC系統車床-宏程序的編寫
個人覺得,數控車上加工普通的直線,圓弧類型零件沒必要用宏程序,而在加工一些特殊形狀如橢圓,雙曲線,方程曲線,圓弧型螺紋(比如滾珠絲杠)等用普通指令不好加工時才考慮用宏程序進行編程。以下是引用的:
其實說起來宏就是用公式來加工零件的,比如說橢圓,如果沒有宏的話,我們要逐點算出曲線上的點,然後慢慢來用直線逼近,如果是個光潔度要求很高的工件的話,那麼需要計算很多的點,可是應用了宏後,我們把橢圓公式輸入到系統中然後我們給出Z坐標並且每次加10um那麼宏就會自動算出X坐標並且進行切削, 實際上宏在程序中主要起到的是運算作用..宏一般分為A類宏和B類宏.A類宏是以G65 Hxx P#xx Q#xx R#xx的格式輸入的,而B類宏程序則是以直接的公式和語言輸入的和C語言很相似在0i系統中應用比較廣.
目錄
宏的分類B類宏
A類宏
應用基本指令
三角函數指令
開平方根指令
無條件轉移指令
有條件轉移指令
用戶宏程序定義
變數的表示和使用
運算指令
轉移與循環指令
宏的分類 B類宏
A類宏
應用 基本指令
三角函數指令
開平方根指令
無條件轉移指令
有條件轉移指令
用戶宏程序 定義
變數的表示和使用
運算指令
轉移與循環指令
展開 編輯本段宏的分類
B類宏
由於現在B類宏程序的大量使用,很多書都進行了介紹這里我就不再重復了,但在一些老系統中,比如法蘭克OTD系統中由於它的MDI鍵盤上沒有公式符號,連最簡單的等於號都沒有,為此如果應用B類宏程序的話就只能在計算機上編好再通過RSN-32介面傳輸的數控系統中,可是如果我們沒有PC機和RSN-32電纜的話怎麼辦呢,那麼只有通過A類宏程序來進行宏程序編制了,下面我介紹一下A類宏的引用;
A類宏
A類宏是用G65 Hxx P#xx Q#xx R#xx或G65 Hxx P#xx Qxx Rxx格式輸入的xx的意思就是數值,是以um級的量輸入的,比如你輸入100那就是0.1MM~~~~~.#xx就是變數號,關於變數號是什麼意思再不知道的的話我也就沒治了,不過還是教一下吧,變數號就是把數值代入到一個固定的地址中,固定的地址就是變數,一般OTD系統中有#0~~~#100~#149~~~#500~#531關閉電源時變數#100~#149被初始化成「空」,而變數#500~#531保持數據.我們如果說#100=30那麼現在#100地址內的數據就是30了,就是這么簡單.好現在我來說一下H代碼,大家可以看到A類宏的標准格式中#xx和xx都是數值,而G65表示使用A類宏,那麼這個H就是要表示各個數值和變數號內的數值或者各個變數號內的數值與其他變數號內的數值之間要進行一個什麼運算,可以說你了解了H代碼A類宏程序你基本就可以應用了,好,現在說一下H代碼的各個含義:
編輯本段應用
以下都以#100和#101和#102,及數值10和20做為例子,應用的時候別把他們當格式就行,
基本指令
H01賦值;格式:G65H01P#101Q#102:把#102內的數值賦予到#101中 G65H01P#101Q#10:把10賦予到#101中 H02加指令;格式G65 H02 P#101 Q#102 R#103,把#102的數值加上#103的數值賦予#101 G65 H02 P#101 Q#102 R10 G65 H02 P#101 Q10 R#103 G65 H02 P#101 Q10 R20 上面4個都是加指令的格式都是把Q後面的數值或變數號內的數值加上R後面的數 值或變數號內的數值然後等於到P後面的變數號中. H03減指令;格式G65 H03 P#101 Q#102 R#103,把#102的數值減去#103的數值賦予#101 G65 H03 P#101 Q#102 R10 G65 H03 P#101 Q10 R#103 G65 H03 P#101 Q20 R10 上面4個都是減指令的格式都是把Q後面的數值或變數號內的數值減去R後面的數 值或變數號內的數值然後等於到P後面的變數號中. H04乘指令;格式G65 H04 P#101 Q#102 R#103,把#102的數值乘上#103的數值賦予#101 G65 H04 P#101 Q#102 R10 G65 H04 P#101 Q10 R#103 G65 H04 P#101 Q20 R10 上面4個都是乘指令的格式都是把Q後面的數值或變數號內的數值乘上R後面的數 值或變數號內的數值然後等於到P後面的變數號中. H05除指令;格式G65 H05P#101 Q#102 R#103,把#102的數值除以#103的數值賦予#101 G65 H05 P#101 Q#102 R10 G65 H05 P#101 Q10 R#103 G65 H05 P#101 Q20 R10 上面4個都是除指令格式都是把Q後面的數值或變數號內的數值除以R後面的數 值或變數號內的數值然後等於到P後面的變數號中.(余數不存,除數如果為0的話會出現112報警)
三角函數指令
H31 SIN正玄函數指令:格式G65 H31 P#101 Q#102 R#103;含義Q後面的#102是三角形的斜邊R後面的#103內存的是角度.結果是#101=#102*SIN#103,也就是說可以直接用這個求出三角形的另 一條邊長.和以前的指令一樣Q和R後面也可以直接寫數值. H32 COS余玄函數指令:格式G65 H32 #101 Q#102 R#103;含義Q後面的#102是三角形的斜邊 R後面的#103內存的是角度.結果是#101=#102*COS#103,也就是說可以直接用這個求出三角形的 另一條邊長.和以前的指令一樣Q和R後面也可以直接寫數值. H33和H34本來應該是TAN 和ATAN的可是經過我使用得數並不準確,希望有知道的人能夠告訴我是為什麼?
開平方根指令
H21;格式G65 H21 P#101 Q#102 ;意思是把#102內的數值開了平方根然後存到#101中(這個指令是非常重要的如果在車橢圓的時候沒有開平方根的指令是沒可能用宏做到的.
無條件轉移指令
H80;格式:G65 H80 P10 ;直接跳到第10程序段
有條件轉移指令
H81 H82 H83 H84 H85 H86 ,分別是等於就轉的H81;不等於就轉的H82;小於就轉的H83;大於就轉的H84;小於等於就轉的H85;大於等於就轉的H86; 格式:G65 H8x P10 Q#101 R#102;將#101內的數值和#102內的數值相比較,按上面的H8x的碼帶入H8x中去,如果條件符合就跳到第10程序段,如果不符合就繼續執行下面的程序段.
編輯本段用戶宏程序
定義
能完成某一功能的一系列指令像子程序那樣存入存儲器,用一個總指令來它們,使用時只需給出這個總指令就能執行其功能。 l 所存入的這一系列指令——用戶宏程序 l 調用宏程序的指令————宏指令 l 特點:使用變數
變數的表示和使用
(一) 變數表示 #I(I=1,2,3,…)或#[<式子>] 例:#5,#109,#501,#[#1+#2-12] (二) 變數的使用 1. 地址字後面指定變數號或公式 格式:<地址字>#I <地址字>-#I <地址字>[<式子>] 例:F#103,設#103=15則為F15 Z-#110,設#110=250則為Z-250 X[#24+#18*COS[#1]] 2. 變數號可用變數代替 例:#[#30],設#30=3則為#3 3. 變數不能使用地址O,N,I 例:下述方法下允許 O#1; I#26.00×100.0; N#3Z200.0; 4. 變數號所對應的變數,對每個地址來說,都有具體數值范圍 例:#30=1100時,則M#30是不允許的 5. #0為空變數,沒有定義變數值的變數也是空變數 6. 變數值定義: 程序定義時可省略小數點,例:#123=149 MDI鍵盤輸一. 變數的種類 1. 局部變數#1~#33 一個在宏程序中局部使用的變數 例:A宏程序B宏程序 …… #10=20X#10不表示X20 …… 斷電後清空,調用宏程序時代入變數值 2. 公共變數#100~#149,#500~#531 各用戶宏程序內公用的變數 例:上例中#10改用#100時,B宏程序中的 X#100表示X20 #100~#149斷電後清空 #500~#531保持型變數(斷電後不丟失) 3. 系統變數 固定用途的變數,其值取決於系統的狀態 例:#2001值為1號刀補X軸補償值 #5221值為X軸G54工件原點偏置值 入時必須輸入小數點,小數點省略時單位為μm
運算指令
運算式的右邊可以是常數、變數、函數、式子 式中#j,#k也可為常量 式子右邊為變數號、運算式 1. 定義 #I=#j 2. 算術運算 #I=#j+#k #I=#j-#k #I=#j*#k #I=#j/#k 3. 邏輯運算 #I=#JOK#k #I=#JXOK#k #I=#JAND#k 4. 函數 #I=SIN[#j] 正弦 #I=COS[#j] 餘弦 #I=TAN[#j] 正切 #I=ATAN[#j] 反正切 #I=SQRT[#j]平方根 #I=ABS[#j]絕對值 #I=ROUND[#j]四捨五入化整 #I=FIX[#j]上取整 #I=FUP[#j]下取整 #I=BIN[#j]BCD→BIN(二進制) #I=BCN[#j]BIN→BCD 1. 說明 1) 角度單位為度 例:90度30分為90.5度 2) ATAN函數後的兩個邊長要用「1」隔開 例:#1=ATAN[1]/[-1]時,#1為了35.0 3) ROUND用於語句中的地址,按各地址的最小設定單位進行四捨五入 例:設#1=1.2345,#2=2.3456,設定單位1μm G91X-#1;X-1.235 X-#2F300;X-2.346 X[#1+#2];X3.580 未返回原處,應改為 X[ROUND[#1]+ROUND[#2]]; 4) 取整後的絕對值比原值大為上取整,反之為下取整 例:設#1=1.2,#2=-1.2時 若#3=FUP[#1]時,則#3=2.0 若#3=FIX[#1]時,則#3=1.0 若#3=FUP[#2]時,則#3=-2.0 若#3=FIX[#2]時,則#3=-1.0 5) 指令函數時,可只寫開頭2個字母 例:ROUND→RO FIX→FI 6) 優先順序 函數→乘除(*,1,AND)→加減(+,-,OR,XOR) 例:#1=#2+#3*SIN[#4]; 7) 括弧為中括弧,最多5重,園括弧用於注釋語句 例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重)
轉移與循環指令
1.無條件的轉移 格式:GOTO1;
GOTO#10;
2.條件轉移 格式:IF[<條件式>]GOTOn
條件式: #jEQ#k 表示=
#jNE#k 表示≠
#jGT#k 表示>
#jLT#k 表示<
#jGE#k 表示≥
#jLE#k 表示≤
例:IF[#1GT10]GOTO100;
… N100G00691X10;
例:求1到10之和
O9500; #1=0
#2=1
N1IF[#2GT10]GOTO2
#1=#1+#2;
#2=#2+1;
GOTO1
N2M30
1.循環 格式:WHILE[<條件式>]DOm;(m=1,2,3) … … … ENDm
說明:1.條件滿足時,執行DOm到ENDm,則從DOm的程序段 不滿足時,執行DOm到ENDm的程序段
2.省略WHILE語句只有DOm…ENDm,則從DOm到ENDm之間形成死循環
3.嵌套 4.EQNE時,空和「0」不同 其他條件下,空和「0」相同 例:求1到10之和 O0001; #1=0; #2=1; WHILE[#2LE10]DO1; #1=#1+#2; #2=#2+#1; END1; M30;
⑷ 發那科18T系統梯形圖用什麼編程軟體
發那科18T系統梯形圖用什麼編程軟體?發那科系統是沒有PLC的,發那科系統是用內嵌PMC控制機床的動作,PLC與PMC編程差別不大,PMC梯形圖編程軟體,要使用廠家提供的FANUC LADDER 可以在網上論壇下載,非常方便.
FANUC LADDER-Ⅲ軟體是FANUC數控系統專用的PMC編程系統軟體,是PC(個人電腦)環境下運行的FANUC PMC順序程序開發用的編程系統。
機床廠(MTB)通常採用FANUC LADDER-Ⅲ軟體實現對PMC 程序的編輯、顯示、輸入/輸出、監控、運行等功能,尤其是新機床的PMC程序的編制與調試更是如此。通過這個平台根據機床具體控制需求編輯的梯形圖程序就是PMC用戶程序。
對於PLC廠家來說,目前硬體廠家都是配自己的PLC編程軟體的。
既然你的系統是發那科的那就只能用發那科官方針對加工中心用專用的PLC編程軟體。再者修改程序在他的數控系統界面上有入口可以選擇梯形編程圖界面,可以供用戶修改的同時配合說明書上的地址數據來修改。
真的涉及到一些不該用戶修改的參數和程序你也是動不了的,得找廠家來配合修改。就好比我以前給人調試加工中心的機器人上下料裝置需要機器人與加工中心的數控系統信號交互來控制開關門和啟動停止。原來的加工中心出廠沒有預留這個功能,要增加的時候就得找廠家來配合,修改程序提供硬體IO點位輸入輸出信號。
發那科是日本生產機器人和數控系統的巨頭。