機械社區
標題: 請問M代碼可以和G代碼放在一行,同時進行嗎? [打印本頁]
作者: kobelaoli 時間: 2013-9-5 15:48
標題: 請問M代碼可以和G代碼放在一行,同時進行嗎?
一臺加工中心,想要Z/Y軸回撤和主軸停止旋轉同時進行,能節省不少時間,Z/Y軸回撤是G指令,主軸停轉是M指令,兩個可以放在一行,同時進行嗎?
) Q( k# Y) `/ V; |9 K* g請幫忙解釋下,謝謝!
作者: 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
* d6 E( u# v/ W* r3 w
停轉M05完了G28G91YO,雖然不是理想意義上的同步,可跟同步差不了半秒,這問題沒啥意義
4 B) o5 ^. j1 o+ a ]
我這個系統不是用M05停轉,用的是M90開轉,M92停轉,中間伴隨著Y的進刀,M92之后是YZ撤回,M92大概占用了1.2s,如果能去除這1s(比如和YZ撤回一起進行),那就能提高不小幅度的效率,我這里循環時間是15S。 }0 u+ e3 {+ O8 e5 M3 X( i
M92這個指令里面具體的操作流程能看到嗎?可以修改嗎?不要1.2S那么長,0.2S對我來說都珍貴,因為機臺多,影響就大。3 [$ d- ` e0 h. y& R" @8 q+ f
* }' ?$ [; i% Y8 }1 C另外 G28G91YO是干嗎的?另一種停轉方式?
) c( N/ T5 J0 |# r$ u9 D) E1 s& D1 b+ o
您能留個QQ嗎?我QQ 24306069,謝謝!
作者: kobelaoli 時間: 2013-9-5 17:15
天天他爸 發表于 2013-9-5 16:53 
% h# T7 f. K Q; y& Q* c/ K可以
/ f$ X7 A6 f% t& x
謝謝,我試了,好像沒效果,還是分步動,調機時再試試。
作者: kobelaoli 時間: 2013-9-5 17:26
天天他爸 發表于 2013-9-5 16:53 
3 m3 J* t2 k8 ~5 k可以
& [2 m4 C8 a6 Y# V9 Z' k
留個QQ吧,我QQ 24306069
作者: 冷月梧桐 時間: 2013-9-5 18:09
前一步做完產品,提刀到空程關切削液,直接YZ回退關閉主軸
5 X& Z. |6 h) }5 t/ n" h$ X4 d8 ZG0Z50M09;
4 F( Q1 H r$ E( t1 \G30G91Z0Y0M05;
0 \* c/ W, l+ c9 O" n" k+ v _M30
作者: 2544 時間: 2013-9-5 20:10
M碼在同一行,永遠是最后一個讀取。
作者: kobelaoli 時間: 2013-9-6 09:25
冷月梧桐 發表于 2013-9-5 18:09
0 H/ _3 t5 c8 ^. ^: p% s& |
前一步做完產品,提刀到空程關切削液,直接YZ回退關閉主軸
0 ?& O, H/ y v$ CG0Z50M09;
V% b+ {7 X, L- _G30G91Z0Y0M05;
( W$ }) [2 a; f: j# `% _5 O
謝謝,M05和YZ回退是同時的嗎?$ Z* T9 A( L: o0 K H1 a, [ s
您有QQ、Gtalk之類的嗎?
作者: kobelaoli 時間: 2013-9-6 09:26
2544 發表于 2013-9-5 20:10 
# y/ m0 n/ u1 k9 S: \1 u. v- ZM碼在同一行,永遠是最后一個讀取。
/ a; j- f) c4 |4 m
謝謝,你的意思就是:即使G和M在同一行,也都是G動作做完了,M才動作?和分行的效果時一樣的?
作者: lukexc 時間: 2013-9-6 15:54
這得明白M代碼執行原理!
. K: u' {( k0 n: E! }有的是執行前,比如M3、M4等,執行后,比如M5;2 f. x" A% f m$ C
萬事都得明白原理!
作者: kobelaoli 時間: 2013-9-6 17:34
kobelaoli 發表于 2013-9-6 09:26
+ |2 E( x; [( J; }1 m M: n
謝謝,你的意思就是:即使G和M在同一行,也都是G動作做完了,M才動作?和分行的效果時一樣的?
* f3 ~4 i* T1 x4 [
謝謝謝謝!交個朋友吧?能留個聯系方式嗎?
作者: 冷月梧桐 時間: 2013-9-6 18:33
kobelaoli 發表于 2013-9-6 09:25
" x" R4 |7 t( u! \2 ]1 w5 K
謝謝,M05和YZ回退是同時的嗎?
9 P* K& x/ J7 ^$ L您有QQ、Gtalk之類的嗎?
" e& i5 W9 M: \: F. h
是同時的,在回退的過程中主軸已經停止了,類似的還有在長度補嘗G43h01Z10m08,還沒到Z10冷卻液已經開了。像G0g54x10m06這種事先到位再進行換刀。QQ是什么東東??
作者: kobelaoli 時間: 2013-9-9 10:00
冷月梧桐 發表于 2013-9-6 18:33
[ t7 ]7 V' a4 K9 r; E" Y" |# u
是同時的,在回退的過程中主軸已經停止了,類似的還有在長度補嘗G43h01Z10m08,還沒到Z10冷卻液已經開了。 ...
1 `4 U) i8 P) S5 O$ _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 
4 U o2 W. m, @0 J樓主說的問題應該是主軸停止的時間比較長吧?這就好辦啦,先用G0 5.0 從產品面先提下刀,保證刀具與產品面是 ...
! }0 o: ]! n) Y s7 T謝謝,就是這個意思,主軸停止時間太長了,接近1s,很浪費。我了解您說的意思,就是先把刀快速撤離一點,然后可以不受干擾的快速停止主軸,但是這個程序里已經是這樣編的,可是還是很慢,M92就是停主軸,要1S
9 m) z n" y. z0 {
' Y3 z5 X* p, p磨削完,但刀具仍在工件表面
" O. K9 ]3 u' U% a% h* nG04 X0.3 暫停0.3; L" a# p7 X8 U5 f
Y0.01 刀具沿Y提升0.01撤離
M39 停油 * A b1 o3 O$ F/ }
G90 G00 Y1 刀具提到安全距離 ( U1 K3 c- E# X) H1 |+ r, l1 ]
M92 停止主軸
2 _ x& U* A6 B6 ]2 S7 H6 y$ G: J) }6 A1 B1 T0 y2 p" D" I
運行時會看到M92使用了近1S
作者: kobelaoli 時間: 2013-9-10 10:16
xusenlin2161 發表于 2013-9-9 21:14
1 o- f8 x6 O S+ e5 z& I0 H
說明書上不是說得很明白嗎可以共段,但是還是會分別運行。就是說還是有先后。
# M8 b4 P g$ f3 S" i$ `
能推薦本嗎?
( J, n# }; ^) M- o我下載了很多說明書,幾千頁的幾百頁的都有,30i 31i各種用戶手冊、維修手冊,就是沒有看到關于同時運行的解釋和規則,指導下吧。
作者: 寧波機器人設計 時間: 2013-9-10 12:48
應該是先后啟動的,不能同事
作者: kobelaoli 時間: 2013-9-10 13:14
寧波機器人設計 發表于 2013-9-10 12:48
$ E; M" G- f8 s! k7 k' \
應該是先后啟動的,不能同事
2 }: x# X1 a' B8 G5 c9 W- y& b: n) [
你說的先后啟動是說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
# r* v7 J g3 g' \; w+ g5 R7 s
樓主,前面好多人是根據經驗回復你的。其實G代碼和M代碼在同一行可以同時執行,但這需要修改PLC程序,不是誰 ...
& s" W; R* r' Q" v+ P3 g( L
謝謝,能加個QQ嗎?我的24306069$ ~) n i0 H c9 }( x
0 U: C# h$ ]" c
我大概理解您的意思,但是不是學數控專業的,能不能給我解釋解釋PLC、PMC這些塊之間的關系?
作者: duanyz 時間: 2013-9-30 23:49
你的機床m92是要主軸電機完全停下來后才運行下一行程序的嗎?
作者: kobelaoli 時間: 2013-10-2 13:18
duanyz 發表于 2013-9-30 23:49 
3 b; W, w/ p; F; _9 P你的機床m92是要主軸電機完全停下來后才運行下一行程序的嗎?
7 Q' d0 D d6 \0 f是的,我就希望能主軸接到命令慢慢停自己的,機器發完指令就執行下一行,不是等主軸完全停下來確認了再進行下一行
作者: duanyz 時間: 2013-10-2 13:46
那你加個剎車是不是也是一個解決的辦法呢?
作者: kisskisswww 時間: 2013-10-2 18:03
關于機床PLC梯形圖的設計對M代碼的執行的差異,樓主可參閱新代系統的PLC說明書3 Y% v+ s- [3 J: ^9 b
h6 D8 \0 [- I0 D8 g. Y
百度文庫搜索:: |& F h. d" }2 ]; ]
OpenCNC_PLC發展工具操作手冊V2.5(新代系統plc)
- |# V3 ~( `: n$ n
' V8 e7 U } L
9 w, y8 d$ [! u% E5.5 補充說明
3 q8 e! J3 A- g0 T5.5.1 同一單節有G_code與M_code時
3 ]4 k6 f( O2 o7 e3 k0 E當加工程式之同一單節中,同時有G Code與M Code指令時,控制器會同時發出G Code運動指令與M Code Read(S29)指令,但由於各種M Code特性不同,有些可以G/M Code同時執行(例如M8切削液打開),有些則必頇等G Code運動指令完成後,才能執行(例如M5主軸停止)。
0 L) L% |- c/ A: Y對於M Code需等待G Code完成的情況,建議如下圖範例所示,可利用S30(Distribution End)訊號,於狀態流程圖中增加Wait G Code Finish狀態,以作為保護。
. F* ?& k. Q4 r2 n; `- q/ l
! y8 x6 o; p" {/ z8 o5.5.2 多個M Code同時執行功能
6 ]# b* ?! s9 K+ ?在少數應用場合下,使用者需要同時執行多個M碼功能,而不是依序執行。此時建議可開啟同一單節M code同時執行功能,以滿足使用需求。
/ u7 D3 G9 t( C; u$ i0 O! r2 p. k 相關參數說明
. ]3 D5 f" L3 W+ v: u參數 說明 範圍
! K2 P- q9 \/ U0 ]$ e單位 初始值 修改後何時有效 影響範圍 3810
, ]9 W/ z: I% l9 U7 ^# f% G*啟動同一單節M code! B$ q5 ?2 k: g" i( g
同時執行功能
, x: I4 P$ Y- z) W+ z: [[0~1] : x4 S& J+ O. Q+ x/ \6 E- N3 R5 x% ^
-
# d5 W: d ^8 e: u5 D- q0
% T$ g" }$ S$ f) B# X按Reset鍵 . r) q6 p/ a: P' J, A9 |, X
全系統
3 v: u4 B+ Y- G* s; O7 C, C 此參數用來決定當同一單節存在多個M碼時,是否啟動同時執行功能: . ]6 ~) W) Z$ B( P' z$ O* o7 V
0:否,一次發送一個M碼至PLC,待C38 ON後執行下一M碼; 1:是,同一單節同時5個M碼發送至PLC執行。
* e/ V; s N/ J4 a6 m3 o 當此參數設定為1時,按M碼順序,將對應不同的S Bit與R Bit。此外,原本使用者自行定義的相關R Bit,將會強迫為系統使用,請務必小心注意。
! T! D& k% ^( g+ p4 ^ T- `8 s- [& |+ N
作者: kobelaoli 時間: 2013-10-2 18:25
kisskisswww 發表于 2013-10-2 18:03 
" L$ {% v: S5 i8 Q8 Z- f o( i9 J8 V關于機床PLC梯形圖的設計對M代碼的執行的差異,樓主可參閱新代系統的PLC說明書1 w: S) t7 j- _/ q
- N1 A: n2 }+ E, H S百度文庫搜索:
2 _: ~8 k1 a& h3 B8 f( J9 I. a- S; z0 G
太感謝了,我按照這個思路去搜資料看看,謝謝!
! }6 E* F D. ~" D% G/ k) ?' ]1 e/ F, x. R9 E- h7 ^$ l
另外書上說M9x是不啟用的,但是我這里使用了M92,您可知道怎么回事?
作者: kobelaoli 時間: 2013-10-2 18:27
duanyz 發表于 2013-10-2 13:46
$ ~- D& V0 E' M* \% {5 j
那你加個剎車是不是也是一個解決的辦法呢?
Z- \1 \; Z- o
怎么加剎車啊?其實我這個設備是微小器件加工,主軸幾乎沒有多大慣性,很容易停止,為啥能停了近1S,真是研究不懂
作者: kisskisswww 時間: 2013-10-2 19:47
kobelaoli 發表于 2013-10-2 18:25
6 b: @; j) M' w$ c9 d
太感謝了,我按照這個思路去搜資料看看,謝謝!0 k( S: F3 k& M$ \% X3 }
' ~$ O1 M+ F9 e另外書上說M9x是不啟用的,但是我這里使用了M92,您可 ...
3 m* p4 `3 T2 w根據以下資料說法,我認為應該根據您機床的PLC確定M92的工作原理,再做修改。
3 A5 ~. X" s/ Z4 n$ T3 |$ C% } K4 nM92的功能應該是由機床廠在PLC梯形圖中設定的,而非數控系統廠商設定的(非標準的功能)" O6 |6 @9 F' N* Y7 l3 T
別人應該也是先看到貴司機床PLC梯形圖才能確定。
$ |9 }# U% [8 y6 [3 I5 f L3 T4 T. Q建議你找個懂數控系統PLC編程的人看一下,或咨詢下機床原廠技術人員;! \& U y% P1 P9 z1 S& u$ m4 ]
/ ?4 s0 w) Z5 x6 i5 e
參考以下資料的說法:. i b, h% Z* P
1 輔助機能(M碼)使用說明輔助機能是用於控制機械機能的ON及OFF。指令格式是M碼後面緊跟著一或二位元的數字。緊接著介紹的M碼是屬於控制器內定有固定功用的輔助碼,不是由工具機製造廠商設計決定的,這類的M碼有M00、M01、M02、M30、M98、M99。換言之,這些功能與LADDER程式的寫作無關。
* J. ~8 V( a! J% l+ _/ w$ A
。。。。。。
5 v0 B* X# K/ u' G( A; ^8 e7 G
Y* |, I; d' b3 g2 ?' X以下為M碼一覽表,表內所列者除M00、M01、M02、M30、M98、M99外,都是由LADDER程式所設計出來的固定功能,這些M碼的功能不是系統指定,所以有可能因機臺不同而有差異,請使用者確認該機臺的指令規格(表內所定爲出機標準LADDER版的功能)。
7 c* T L; I# ]: I! H3 ]2 _6 p
# W' ~/ m; B' v6 s
作者: kisskisswww 時間: 2013-10-2 19:52
kobelaoli 發表于 2013-10-2 18:27
: D# W. F9 p; h1 P1 s+ F. B
怎么加剎車啊?其實我這個設備是微小器件加工,主軸幾乎沒有多大慣性,很容易停止,為啥能停了近1S,真是 ...
1 x& b- T, M( p% A! y9 _! z猜測是不是PLC編程人員在主軸停止功能M92中加了延時;
* u2 j' Z/ X1 z0 _, a2 y' u) K或者系統設定為檢測本行M代碼執行完成,再執行下一行11指令;4 ?/ X: N9 u3 s1 q
作者: kobelaoli 時間: 2013-10-2 21:46
kisskisswww 發表于 2013-10-2 19:47 
0 ~# V( u" M3 a5 i% Q& o& a根據以下資料說法,我認為應該根據您機床的PLC確定M92的工作原理,再做修改。2 c2 A% i6 E; |6 ^& v3 ?
M92的功能應該是由機床廠在 ...
& R7 g8 K( ^/ F& Y/ y
有沒有QQ啊?認識下
作者: kobelaoli 時間: 2013-10-14 11:05
kisskisswww 發表于 2013-10-2 19:52
* |; S Q0 t0 R2 w6 U7 C i8 b. G+ v0 U
猜測是不是PLC編程人員在主軸停止功能M92中加了延時;( N4 c5 J* r5 `& U# ?
或者系統設定為檢測本行M代碼執行完成,再執行下一 ...
+ A+ J8 F9 z3 Z8 ~0 C1 ]3 m
可能是加了延時吧,但是觀察不到,也扒不開M92具體內容
4 M7 j2 L( X! a7 M' h. f" ^+ }& x; J7 J! f) F+ n
它是必須M92完成才進行下一步
" F3 j5 P" U4 N4 ? X
作者: 刀鋒365 時間: 2013-10-19 19:50
可以同步運行 只要互相不沖突就行
作者: 用心體會 時間: 2013-10-21 23:14
M05可以隨意編在哪里,你只要不是放在G01后面就行
7 ~& I. r% t$ w' I$ V; M
作者: kobelaoli 時間: 2013-10-22 09:31
用心體會 發表于 2013-10-21 23:14
H0 G, V! t4 a2 V6 V0 A+ T ?
M05可以隨意編在哪里,你只要不是放在G01后面就行
5 ^3 A/ x# Y$ B. d0 i
為什么不能放在G01后面?
作者: zhengyan123 時間: 2013-10-22 14:19
同時執行,互不影響
作者: kobelaoli 時間: 2013-10-22 16:14
zhengyan123 發表于 2013-10-22 14:19 
" |, _% H+ s2 ^, C8 [: m) b* [3 C% L x同時執行,互不影響
& n j0 F7 F& d6 W0 b不是互不影響的,有些是分先后的,比如切削液M指令會比G指令先執行,停主軸M指令會比G指令后執行
作者: 用心體會 時間: 2013-10-22 17:34
kobelaoli 發表于 2013-10-22 09:31 
3 _5 r3 n8 a( K; r& f3 e9 _為什么不能放在G01后面?
: t& D; O/ `# x. c/ v g
G01是正在加工狀態,主軸能停下來嗎?
作者: kobelaoli 時間: 2013-10-23 16:44
用心體會 發表于 2013-10-22 17:34
) {; u8 y5 i* g# D+ v$ F
G01是正在加工狀態,主軸能停下來嗎?
# X2 I; l2 ]4 B1 i3 K, J
你說的G01是啥意思?是磨削速度還是什么?為什么就決定了一定是加工狀態?回零點也是運動啊,但與主軸無關
作者: 謝池春 時間: 2014-1-6 11:48
可以,但是主軸先停轉。幾何軸再運動
歡迎光臨 機械社區 (http://www.ytsybjq.com/) |
Powered by Discuz! X3.5 |