機械社區
標題: 請問M代碼可以和G代碼放在一行,同時進行嗎? [打印本頁]
作者: kobelaoli 時間: 2013-9-5 15:48
標題: 請問M代碼可以和G代碼放在一行,同時進行嗎?
一臺加工中心,想要Z/Y軸回撤和主軸停止旋轉同時進行,能節省不少時間,Z/Y軸回撤是G指令,主軸停轉是M指令,兩個可以放在一行,同時進行嗎?" |* [6 X0 T1 @- z
請幫忙解釋下,謝謝!
作者: wuxiluanpaoP 時間: 2013-9-5 16:32
停轉M05完了G28G91YO,雖然不是理想意義上的同步,可跟同步差不了半秒,這問題沒啥意義
作者: 天天他爸 時間: 2013-9-5 16:53
可以
作者: kobelaoli 時間: 2013-9-5 17:14
wuxiluanpaoP 發表于 2013-9-5 16:32 
' i9 V) B% D a停轉M05完了G28G91YO,雖然不是理想意義上的同步,可跟同步差不了半秒,這問題沒啥意義
1 E# f# \: u6 P" A; }4 U$ l& z# P+ X
我這個系統不是用M05停轉,用的是M90開轉,M92停轉,中間伴隨著Y的進刀,M92之后是YZ撤回,M92大概占用了1.2s,如果能去除這1s(比如和YZ撤回一起進行),那就能提高不小幅度的效率,我這里循環時間是15S。+ w7 M4 p5 [8 ~# z' ~
M92這個指令里面具體的操作流程能看到嗎?可以修改嗎?不要1.2S那么長,0.2S對我來說都珍貴,因為機臺多,影響就大。 k, S3 @$ ?- q# N, c4 E
; c# X- {$ S% X
另外 G28G91YO是干嗎的?另一種停轉方式?+ l2 n( c8 z: j2 x
l/ H' @" A+ P e# m您能留個QQ嗎?我QQ 24306069,謝謝!
作者: kobelaoli 時間: 2013-9-5 17:15
天天他爸 發表于 2013-9-5 16:53
! M( v" K$ F0 X' m+ m4 |3 G
可以
0 i5 b3 Z" W% f6 O) ~ m8 c A4 M& Z謝謝,我試了,好像沒效果,還是分步動,調機時再試試。
作者: kobelaoli 時間: 2013-9-5 17:26
天天他爸 發表于 2013-9-5 16:53 
$ a& w) @$ v; |& W. J( F1 n可以
" z4 r0 Y) ]; O; }4 O& k7 C留個QQ吧,我QQ 24306069
作者: 冷月梧桐 時間: 2013-9-5 18:09
前一步做完產品,提刀到空程關切削液,直接YZ回退關閉主軸
. c. T, D C8 TG0Z50M09;, w {! O( k' ]: @+ J
G30G91Z0Y0M05;
, ?( G" g9 P+ U, G& R" R8 O9 ]M30
作者: 2544 時間: 2013-9-5 20:10
M碼在同一行,永遠是最后一個讀取。
作者: kobelaoli 時間: 2013-9-6 09:25
冷月梧桐 發表于 2013-9-5 18:09 
1 T& L s! J! G9 {9 g前一步做完產品,提刀到空程關切削液,直接YZ回退關閉主軸$ N9 R; v# q- B' d8 p& x @; n6 t
G0Z50M09;
3 s1 g4 R( `5 ?G30G91Z0Y0M05;
# n( e5 O4 |8 U
謝謝,M05和YZ回退是同時的嗎?- c- p1 H% _7 `/ V. D
您有QQ、Gtalk之類的嗎?
作者: kobelaoli 時間: 2013-9-6 09:26
2544 發表于 2013-9-5 20:10
- k4 D/ O0 q' h- y$ H" k4 h# U3 s
M碼在同一行,永遠是最后一個讀取。
8 X/ d" Q1 R1 |謝謝,你的意思就是:即使G和M在同一行,也都是G動作做完了,M才動作?和分行的效果時一樣的?
作者: lukexc 時間: 2013-9-6 15:54
這得明白M代碼執行原理!
2 w- M/ S: d6 K, J' ~7 u有的是執行前,比如M3、M4等,執行后,比如M5;! q2 }, T# ` {. T. N" G; ]: U$ \$ N
萬事都得明白原理!
作者: kobelaoli 時間: 2013-9-6 17:34
kobelaoli 發表于 2013-9-6 09:26
! m m/ N3 H" Y+ V# D/ Y
謝謝,你的意思就是:即使G和M在同一行,也都是G動作做完了,M才動作?和分行的效果時一樣的?
4 J9 B$ Q, ~1 B1 d
謝謝謝謝!交個朋友吧?能留個聯系方式嗎?
作者: 冷月梧桐 時間: 2013-9-6 18:33
kobelaoli 發表于 2013-9-6 09:25 
; m- m' y3 S# ?- g' L, y2 T謝謝,M05和YZ回退是同時的嗎?
4 C; C& ~/ u) a" T4 G6 P( u' t- D您有QQ、Gtalk之類的嗎?
- a# g. g0 O- X! E1 \* S/ }是同時的,在回退的過程中主軸已經停止了,類似的還有在長度補嘗G43h01Z10m08,還沒到Z10冷卻液已經開了。像G0g54x10m06這種事先到位再進行換刀。QQ是什么東東??
作者: kobelaoli 時間: 2013-9-9 10:00
冷月梧桐 發表于 2013-9-6 18:33
3 ?( G( M, ~! e. o: E9 ]4 P" T
是同時的,在回退的過程中主軸已經停止了,類似的還有在長度補嘗G43h01Z10m08,還沒到Z10冷卻液已經開了。 ...
- Q" u4 c- k: L1 M- \
QQ就是即時聊天工具軟件,可以很快捷的和朋友交互信息。
作者: 菜鳥平子 時間: 2013-9-9 15:17
樓主這活挺快的 15秒。。。
作者: ☆漫越心聲☆ 時間: 2013-9-9 20:26
樓主說的問題應該是主軸停止的時間比較長吧?這就好辦啦,先用G0 5.0 從產品面先提下刀,保證刀具與產品面是離開的,再用停止主軸的指令和Y,Z移動的指令
作者: xusenlin2161 時間: 2013-9-9 21:14
說明書上不是說得很明白嗎可以共段,但是還是會分別運行。就是說還是有先后。
作者: kobelaoli 時間: 2013-9-10 10:09
☆漫越心聲☆ 發表于 2013-9-9 20:26
; x+ H6 z/ Y. ]/ X2 H
樓主說的問題應該是主軸停止的時間比較長吧?這就好辦啦,先用G0 5.0 從產品面先提下刀,保證刀具與產品面是 ...
; z3 U3 J l8 L# P' V謝謝,就是這個意思,主軸停止時間太長了,接近1s,很浪費。我了解您說的意思,就是先把刀快速撤離一點,然后可以不受干擾的快速停止主軸,但是這個程序里已經是這樣編的,可是還是很慢,M92就是停主軸,要1S
+ C' Z7 d7 ^6 ?5 m+ ]' `( ]: V. |# A# w% }+ t
磨削完,但刀具仍在工件表面" o) W+ B4 o2 |6 k
G04 X0.3 暫停0.3
8 }3 o% Z0 N% DY0.01 刀具沿Y提升0.01撤離
M39 停油
2 P, }3 W4 H% E& X; d6 ~( Z5 L7 PG90 G00 Y1 刀具提到安全距離 4 M* P/ k2 @: k
M92 停止主軸 - H- D- I" r# [( {7 b2 O( @
2 o" Z: O" M, {: T+ y- N# A2 {
運行時會看到M92使用了近1S
作者: kobelaoli 時間: 2013-9-10 10:16
xusenlin2161 發表于 2013-9-9 21:14
z! U1 n2 z% h% E2 M
說明書上不是說得很明白嗎可以共段,但是還是會分別運行。就是說還是有先后。
. a/ O7 F) ~+ c7 \
能推薦本嗎?% K5 O' L: G* S$ Z% U$ I
我下載了很多說明書,幾千頁的幾百頁的都有,30i 31i各種用戶手冊、維修手冊,就是沒有看到關于同時運行的解釋和規則,指導下吧。
作者: 寧波機器人設計 時間: 2013-9-10 12:48
應該是先后啟動的,不能同事
作者: kobelaoli 時間: 2013-9-10 13:14
寧波機器人設計 發表于 2013-9-10 12:48 
# X9 v! \# T0 z+ T" g應該是先后啟動的,不能同事
4 _6 c" J8 n# S5 _- Q) W* q& X2 K# x
你說的先后啟動是說G開始執行之后M開始執行還是G執行并且完成后才M開始啟動?
作者: kobelaoli 時間: 2013-9-12 11:25
看書得到正解了,對于同行的G和M語令,M語令是分組的,有些是和G同步啟動,有些是G動作完成才啟動,比如M05就是,所以我所說的撤Y軸和停止主軸是不能同步進行的,必須Y軸走完才會開始停止主軸,和分行一個效果。
作者: oleg0007 時間: 2013-9-29 16:08
樓主,前面好多人是根據經驗回復你的。其實G代碼和M代碼在同一行可以同時執行,但這需要修改PLC程序,不是誰都可以改好的。
作者: kobelaoli 時間: 2013-9-30 17:18
oleg0007 發表于 2013-9-29 16:08
" _# z4 _2 w" S M, U) x: N
樓主,前面好多人是根據經驗回復你的。其實G代碼和M代碼在同一行可以同時執行,但這需要修改PLC程序,不是誰 ...
5 x( _' `* _: \& F9 [
謝謝,能加個QQ嗎?我的24306069
4 q9 |9 V1 s: J; y* R$ [
1 M( X7 f5 ^- v9 }4 T: t9 m ^: S) \我大概理解您的意思,但是不是學數控專業的,能不能給我解釋解釋PLC、PMC這些塊之間的關系?
作者: duanyz 時間: 2013-9-30 23:49
你的機床m92是要主軸電機完全停下來后才運行下一行程序的嗎?
作者: kobelaoli 時間: 2013-10-2 13:18
duanyz 發表于 2013-9-30 23:49 
0 J" }0 ]1 n2 Q% K, F5 g3 j0 l x" S你的機床m92是要主軸電機完全停下來后才運行下一行程序的嗎?
, x( r5 Y- | `/ M% ^' y/ ^8 y是的,我就希望能主軸接到命令慢慢停自己的,機器發完指令就執行下一行,不是等主軸完全停下來確認了再進行下一行
作者: duanyz 時間: 2013-10-2 13:46
那你加個剎車是不是也是一個解決的辦法呢?
作者: kisskisswww 時間: 2013-10-2 18:03
關于機床PLC梯形圖的設計對M代碼的執行的差異,樓主可參閱新代系統的PLC說明書2 B A" Z/ O, s8 K* @9 N! X6 \
6 o6 Q0 h4 m$ ?% D/ M0 m) T百度文庫搜索:8 J; l' E( k3 C$ X0 G' G- R# o: y3 t* K+ F
OpenCNC_PLC發展工具操作手冊V2.5(新代系統plc) + {0 H9 K R% n ~8 Y: `
8 G% U: r! p& z _( [# o# l, O8 c M! `2 C% n8 q4 ^
5.5 補充說明 & x1 h3 m7 i/ V1 [1 {1 p, h1 W
5.5.1 同一單節有G_code與M_code時 6 z4 V! o) D5 s3 V% u4 x
當加工程式之同一單節中,同時有G Code與M Code指令時,控制器會同時發出G Code運動指令與M Code Read(S29)指令,但由於各種M Code特性不同,有些可以G/M Code同時執行(例如M8切削液打開),有些則必頇等G Code運動指令完成後,才能執行(例如M5主軸停止)。 6 }2 L: e% @* Q/ P# ?- }
對於M Code需等待G Code完成的情況,建議如下圖範例所示,可利用S30(Distribution End)訊號,於狀態流程圖中增加Wait G Code Finish狀態,以作為保護。 : ^# ~, S& I i+ |) O. s7 k
$ t3 `/ \5 Y! z, ]: t- E
5.5.2 多個M Code同時執行功能 ) {1 z& K, d/ d& R+ \0 ?0 q
在少數應用場合下,使用者需要同時執行多個M碼功能,而不是依序執行。此時建議可開啟同一單節M code同時執行功能,以滿足使用需求。
" S+ U' v, o/ Y- {/ l 相關參數說明 + b/ t4 \( D+ h4 @' O0 E- @
參數 說明 範圍 ; ~) ^4 L) L- t6 h
單位 初始值 修改後何時有效 影響範圍 3810 2 e* ]6 Q) D( u' W' O# T) F
*啟動同一單節M code
) |" ?& y# o! a1 W; y同時執行功能 / o& F2 z9 t) ]2 x1 j
[0~1] 5 N, z4 ~4 }+ P0 r
-
: `3 y, B5 Y5 o/ @( I, J, M1 c- e0
) v: j. Z" z) V& c, p1 u( S3 |! Q按Reset鍵 % o$ D6 W, k8 p( b- P$ o! |
全系統 % ]; {; K6 o8 z9 d
 此參數用來決定當同一單節存在多個M碼時,是否啟動同時執行功能:
% G" ? L% e ?- q2 b' b0:否,一次發送一個M碼至PLC,待C38 ON後執行下一M碼; 1:是,同一單節同時5個M碼發送至PLC執行。
" O8 _4 h# T i6 x# [6 { 當此參數設定為1時,按M碼順序,將對應不同的S Bit與R Bit。此外,原本使用者自行定義的相關R Bit,將會強迫為系統使用,請務必小心注意。
P# J% g( d6 U& c5 M
+ O4 m& j& ?5 A5 T( i: ]
作者: kobelaoli 時間: 2013-10-2 18:25
kisskisswww 發表于 2013-10-2 18:03
. h$ i6 y) ^* \1 ~
關于機床PLC梯形圖的設計對M代碼的執行的差異,樓主可參閱新代系統的PLC說明書% Q7 n1 X, A0 B) [) F$ A b0 c
) K: E& |/ j8 ~8 c/ X5 P9 L$ g百度文庫搜索:
- W0 V# p" ]* a, P) K- u太感謝了,我按照這個思路去搜資料看看,謝謝!
+ S) j4 P8 W R) g: D& r% b
6 d9 v+ e# Q5 b4 w另外書上說M9x是不啟用的,但是我這里使用了M92,您可知道怎么回事?
作者: kobelaoli 時間: 2013-10-2 18:27
duanyz 發表于 2013-10-2 13:46
2 a. u. V7 B! Y, o
那你加個剎車是不是也是一個解決的辦法呢?
8 y0 s( r4 K* l; V4 A7 h怎么加剎車啊?其實我這個設備是微小器件加工,主軸幾乎沒有多大慣性,很容易停止,為啥能停了近1S,真是研究不懂
作者: kisskisswww 時間: 2013-10-2 19:47
kobelaoli 發表于 2013-10-2 18:25 
/ _% A7 Z; E1 S/ a太感謝了,我按照這個思路去搜資料看看,謝謝!
# f+ ^1 n1 w% m `$ [8 c4 ]3 ~4 }% H! y, Q
另外書上說M9x是不啟用的,但是我這里使用了M92,您可 ...
% l( F9 n" G& s$ s( h; c F
根據以下資料說法,我認為應該根據您機床的PLC確定M92的工作原理,再做修改。
# N" y5 P5 x5 j( L& [6 Q% q7 A" M- }M92的功能應該是由機床廠在PLC梯形圖中設定的,而非數控系統廠商設定的(非標準的功能)
9 ]( t1 z7 x$ c( R% R' d3 S別人應該也是先看到貴司機床PLC梯形圖才能確定。& X7 e6 p' U4 {7 o5 Z: O
建議你找個懂數控系統PLC編程的人看一下,或咨詢下機床原廠技術人員;
( {& C( }: c4 c/ H" w B) A7 A- k( `9 F8 x
參考以下資料的說法:
6 _& r1 @* ]! z5 ?4 }, E1 輔助機能(M碼)使用說明輔助機能是用於控制機械機能的ON及OFF。指令格式是M碼後面緊跟著一或二位元的數字。緊接著介紹的M碼是屬於控制器內定有固定功用的輔助碼,不是由工具機製造廠商設計決定的,這類的M碼有M00、M01、M02、M30、M98、M99。換言之,這些功能與LADDER程式的寫作無關。
; L2 L4 @' j" n, L; g" O B p4 N
。。。。。。2 N8 i2 r; u. R/ Q+ f
( g' m# \6 f& u以下為M碼一覽表,表內所列者除M00、M01、M02、M30、M98、M99外,都是由LADDER程式所設計出來的固定功能,這些M碼的功能不是系統指定,所以有可能因機臺不同而有差異,請使用者確認該機臺的指令規格(表內所定爲出機標準LADDER版的功能)。
0 \; p& C- T A# |" [4 t) g8 o
: h, e k8 |; E! j
作者: kisskisswww 時間: 2013-10-2 19:52
kobelaoli 發表于 2013-10-2 18:27 
0 |5 S( ]* K" V怎么加剎車啊?其實我這個設備是微小器件加工,主軸幾乎沒有多大慣性,很容易停止,為啥能停了近1S,真是 ...
3 G; R# y Z2 H0 A! S猜測是不是PLC編程人員在主軸停止功能M92中加了延時;
0 s9 \ j2 A1 ^! x! ]8 \或者系統設定為檢測本行M代碼執行完成,再執行下一行11指令;
. F/ D! G, ^9 ?) ^1 W; e8 |6 i- C, R* U
作者: kobelaoli 時間: 2013-10-2 21:46
kisskisswww 發表于 2013-10-2 19:47
& e7 |2 z# c3 X7 h, A& @7 d
根據以下資料說法,我認為應該根據您機床的PLC確定M92的工作原理,再做修改。- `8 r5 C" j9 y1 G+ j
M92的功能應該是由機床廠在 ...
1 O% W& p& J# B3 d7 ^/ @有沒有QQ啊?認識下
作者: kobelaoli 時間: 2013-10-14 11:05
kisskisswww 發表于 2013-10-2 19:52
- T$ X& C% X- `
猜測是不是PLC編程人員在主軸停止功能M92中加了延時;
# b! L! r, R' c, L或者系統設定為檢測本行M代碼執行完成,再執行下一 ...
( I; B' u. ]0 s5 d
可能是加了延時吧,但是觀察不到,也扒不開M92具體內容: j6 M+ A' z" b6 }+ Q: k
+ c* y. S$ h3 q6 r" s! F) k9 p它是必須M92完成才進行下一步/ T4 j u+ K7 n, u8 z1 M7 c
作者: 刀鋒365 時間: 2013-10-19 19:50
可以同步運行 只要互相不沖突就行
作者: 用心體會 時間: 2013-10-21 23:14
M05可以隨意編在哪里,你只要不是放在G01后面就行& }. u) _6 @4 e, H+ w1 H
作者: kobelaoli 時間: 2013-10-22 09:31
用心體會 發表于 2013-10-21 23:14 
6 F% t! f9 S3 H Q+ xM05可以隨意編在哪里,你只要不是放在G01后面就行
k, h# A4 B; u
為什么不能放在G01后面?
作者: zhengyan123 時間: 2013-10-22 14:19
同時執行,互不影響
作者: kobelaoli 時間: 2013-10-22 16:14
zhengyan123 發表于 2013-10-22 14:19
* {1 L- X# w @
同時執行,互不影響
: c2 s# ~8 _* A3 J不是互不影響的,有些是分先后的,比如切削液M指令會比G指令先執行,停主軸M指令會比G指令后執行
作者: 用心體會 時間: 2013-10-22 17:34
kobelaoli 發表于 2013-10-22 09:31 
; T" ]$ j% _5 h4 }7 o! F為什么不能放在G01后面?
, g( D. t. F1 b* H' Q; W
G01是正在加工狀態,主軸能停下來嗎?
作者: kobelaoli 時間: 2013-10-23 16:44
用心體會 發表于 2013-10-22 17:34 
. G0 D w: V- D: g) xG01是正在加工狀態,主軸能停下來嗎?
2 y, u) \& S t. Z
你說的G01是啥意思?是磨削速度還是什么?為什么就決定了一定是加工狀態?回零點也是運動啊,但與主軸無關
作者: 謝池春 時間: 2014-1-6 11:48
可以,但是主軸先停轉。幾何軸再運動
| 歡迎光臨 機械社區 (http://www.whclglass.com.cn/) |
Powered by Discuz! X3.5 |