找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7493|回复: 22

[原创] [原创]机床只能识别C轴0-360 四轴联动,负数就报警,解决方法

 火 [复制链接]

433

主题

5759

回帖

901万

积分

管理员

积分
9014271
发表于 2011-1-14 08:05:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
机床只能识别c轴0-360 四轴联动,负数就报警,该如何解决? # A2 ~3 t. A1 Y# n7 R
我机床只能识别c轴0-360. k" F) J: E0 g2 t# J" _; [$ r
是负数的时候就报警
& o3 J+ P6 D8 c, w) j有什么办法将mc出来的程序有这个范围吗7 c  w3 e3 W5 K9 ]; ^1 W3 b1 |
2.159 y3.483 z-16.075 c-25.027 f16.21 G; f: X' @1 y0 b8 Q4 j7 ?/ u9 N
x41.958 y3.776 z-16.001 c-25.27 f115.8
. b* j% n& A# @0 Ix41.771 y4.036 z-15.876 c-25.463 f97.60 V. _; W* F0 O( r
x41.506 y4.32 z-15.516 c-25.489 f8.6- r* a9 }6 q5 d8 p9 X; e( y
x41.473 y4.323 z-15.277 c-25.297 f121.1) G8 y$ Q0 y- ]) b: d$ S* C
x41.486 y4.276 z-15.06 c-25.13
$ a& i8 [) Z: r2 G, d6 bx41.562 y4.159 z-14.831 c-24.914% L+ r5 P+ ^( b0 h  p9 t# i, w
x41.632 y4.065 z-14.543 c-25. f44.2
2 g. X6 F% V9 X2 z5 h2 m. |.
+ j. S6 m9 E% E8 Z" F$ X& n' p& D. U+ x.! T0 M2 b) X* k# P# R* P+ k
.* _6 o& e7 q+ f8 G6 }$ D+ [
如果有什么软件能设置成c为-时通通都加360# M+ P( p+ B: c8 q+ n: l
那就可以了     盼望高手出现
2 T4 {! u' K! ^+ D# J( m此问题在中国机械cad论坛我已做回复,现再次整理一下 : i/ s9 {& Q' ~* l
  T, m. N: T+ a- |2 \9 ^
以下是本人的回复
% h+ E; Z" p7 I' o$ J' x; L$ ^可以的.该后处理可以做到,
5 ]- M4 \6 |! a9 Y需要修改的地方有几个,如下:
3 i8 ]4 I9 F+ i, a; @1.更改机器控制器,
, }7 {6 o, ?' o5 ~- w. I5 r3 K2.后处理需要更改的地方,你查找下面的代码,就知道如何修改了,如下:# ]( L, }6 Z# s+ d
, T9 R) a" J. z8 K
[hidden]pcoutrev          #rotary axis revolution calculation (modify for wind-up)' r$ l- h' E% P: d0 j( T
        if cir_at_zero = one,2 `# U6 m4 U+ H3 ~6 F, H: @2 ]
          [
- P4 Q, t( ?+ P. M% Z; h          #arcs at center position the c axis
/ b! z4 B1 a0 `1 `          if cuttype =  -2| cuttype = three,
2 X: L7 d; A. J% H1 D          csav = czero_csav - sweep$5 Q+ {& K: C9 D% A: M% `7 |5 Q/ _
          else, csav = czero_csav + sweep$
' O/ `( G4 b  [. s* V- u          czero_csav = csav# [6 k9 Q) f  r# F
          ]0 N) N, Z1 z$ a% I- a
        #c does not move going to cl
& }" J" l' n2 z        if pnt_at_zero, csav = prv_csav
# A" }( |2 E1 |) ^. C$ n        cdelta = fmtrnd(csav) - prv_csav  #this calculates once, for rev+ @2 s; j  |! y: C9 l2 V8 \9 l
        while abs(cdelta) > ctol & not(cir_at_zero), #if motion exceeds ctol, add wind-up+ n  x3 ^4 A# f3 r
          [* d8 A& {0 h$ ~. V1 w' G. u
          if cdelta > zero,! V$ s9 ^2 l6 n" l2 d1 {
            [7 ]0 I4 T( P1 x0 S) K5 R
            rev = rev - one
1 s# f; z) i3 c: u/ P' S$ O            cdelta = cdelta - 360. p0 L: W+ {/ o+ v' }3 ^6 ^, q
            ]
$ m& z+ p) X3 Z7 F6 z$ P9 U* p3 p          else,, b' J1 I: X# s- ^2 D
            [
- {. P: y9 N  n            rev = rev + one
' E) }5 ?# r  a! d4 j6 I0 A. {) N            cdelta = cdelta + 360
5 p% `6 B8 F/ u! P, D. f% H5 I3 g+ j            ]
8 n  T' [" G% x: o1 z& \, z3 ?7 G+ ^  I          ]' V% H5 J" n! v& D
        if cuttype <> four, c_wnd = rev * 360 + csav
  j0 u) x3 c5 z( e& t0 ]: O        else, c_wnd = sav_rev * 360 + csav' m% A3 G* k' A9 F# ?' t
        !csav( v, b) @, |. d7 n8 J1 d& p! C
        @c_wnd
5 ^7 j& t1 F# M2 M1 s, \$ w, _# y9 c        #now switch to c_wnd which is the absolute winding c calculation
. k! H; n: a- l+ s6 l4 _+ C        #modify for shortest direction if toolchange or toolplane; D% F. x% \; \. L, p
        #but not with axis subs8 r3 N" ^' _3 E/ ^% J" u4 I
        if c_axistype <> three,7 H; N; h) Z, C1 S* m7 _
          [  Q5 }1 J" O6 n& {1 l: D2 A- p* R7 G
          if abs(prvc_wnd - c_wnd) > 180
6 u% z# N% D, h- V            & (toolchng | (y_axis & cuttype < four)),8 K( Q, P3 ~* L5 ~3 c/ b# E! q
            [6 ^/ l' m7 J, Z
            while abs(prvc_wnd - c_wnd) > 180,% R& `! m. o: }9 ~
                [, W: O; V: s: k4 `: Z) E
                if prvc_wnd > c_wnd, rev = rev + one
  B6 u# N2 P+ B2 x4 P  T7 E# r                else, rev = rev - one
* B" H$ G- k5 {9 J! x- z. {9 f2 }$ h                c_wnd = rev * 360 + csav
5 h% I  m& U: x" `5 ?: P                ]
) E; \. s2 z: F* \            @c_wnd9 u4 Y+ }* y5 z" c
            ]
3 z4 i  J) J2 ^! S, `          ]
1 k+ ]6 g; ~5 v
; s) {2 h& C1 \# Y2 kpindxcalc         #index move calculations, direction is shortest exc. asub1 N0 d  V% h8 K+ l
        if pnt_at_zero | cdelta = zero, indx_mc = prv_indx_mc8 `# H  ], ?3 ]" F) Z
        else,5 _6 R2 y7 M, o, O* t
          [4 `1 O' y& S8 k
          cdelta = fmtrnd(c_wnd) - prvc_wnd, W0 o+ |8 F  U  Z* p
          if cuttype = four, #just look at the direction( X  E1 j- J# J) I. z" b
            [
+ i: P  w- q; Z            if cdelta >= zero, indx_mc = one
3 |& n& R* u/ S4 {" d5 E            else, indx_mc = zero, ]& K6 Q( Q- n3 l9 d
            ]9 q( \7 S4 N) U! k
          else,* z: |: z! ~) d; i
            [  |3 z; F! B% N3 G" R
            #phase shift delta 10 revolutions, check odd/even for direction) r6 M+ q  t, z2 y
            if frac(int((cdelta + 3600)/180)/two), indx_mc = zero1 G9 H4 v- N; S# F; ]6 G( ?6 N7 O/ v
            else, indx_mc = one
" z$ X; I" P0 a" {2 G            ]& c, `: ~' ], J9 a: u% q
          ]! n2 H: w  P1 v, n, \+ K( i1 p
        #set range 0-3602 W$ G, {3 w0 Y4 a9 z( A# `( J. n
        while cabs < zero, cabs = cabs + 360
" ^* l' X; y% x        while cabs > 360, cabs = cabs - 360
3 f* @$ o1 u( \) X' n4 t/ N& E
6 _5 I4 [% h" R! u  _4 x/ E
5 y3 _7 G& x( N# h6 x: ] 14_080505.jpg

433

主题

5759

回帖

901万

积分

管理员

积分
9014271
 楼主| 发表于 2011-1-14 17:52:17 | 显示全部楼层

re:正常的后处理都会大于360度,因为后处理...

正常的后处理都会大于360度,因为后处理试试已增量输出的
回复

使用道具 举报

1

主题

80

回帖

1006

积分

实习版主

积分
1006
发表于 2011-3-3 18:00:42 | 显示全部楼层

re:正准备使用四轴,希望多学习一下。

正准备使用四轴,希望多学习一下。
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014271
 楼主| 发表于 2011-3-29 17:09:10 | 显示全部楼层

re:下面引用由5723470发表的内容: ...

[p]
下面引用由5723470发表的内容: <br />
! U7 t! ?7 j7 W5 {; J+ t. z<br />
, n" W4 g) x8 j, E6 j个人认为&nbsp;&nbsp;0-360是最好的 只要机器能接受&nbsp;&nbsp;譬如我上次做了个产品 都转到a-7000多了 a轴回零 转了好久 哎 一直不知道怎么去改后处理 请版主发帖 讲解下 谢谢
<br />
& v& E/ Y1 G! K* U1 J) Q& ^% O

[p]顶楼就是答案,里面讲的很清楚

回复

使用道具 举报

0

主题

21

回帖

26

积分

注册会员

积分
26
发表于 2011-7-17 17:25:48 | 显示全部楼层
看看,看看!
回复

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-8 16:50:28 | 显示全部楼层
若枫版主好: 很高兴认识你和论坛所有人
7 u1 q5 A7 `5 n7 b这个问题好象是我一年前发出来的 7 |# s0 C- l# `5 O. a$ q1 g0 h
不过最终没有解决    希望在这里能找到答案
( @) q$ `3 G# ~2 s7 U( J以前我一直在三维技术论坛、
( I) _5 _; j4 N& o, r希望在此论坛学到更多东西7 F5 b6 q) a& _1 e6 }
特别是后处理    而关于上述问题我用的是MCX3。   
7 K/ A$ l7 S" d& |. {6 J一起研究
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014271
 楼主| 发表于 2011-8-8 20:42:39 | 显示全部楼层
回复 9# 723667735
$ d9 |9 ~0 B0 I  Z, |1 L
/ P' a# g9 l0 ?, p, t9 i. \
+ \& {# U# y% e9 ~  很高兴你能来这里学习.三维论坛我很少上.基本没有发言.我觉得你们都是我的老师,我要向你们学习.+ C0 }$ \; X0 B, f! J! {* m
  这个问题早在几年前就有人问过我,同时在去年还是前年我在中国机械cad论坛同样回答过一个论坛用户的有关这个角度的提问,
, o1 u% d8 G/ g  ~8 `1 S- b其实这个问题我只给出一个方法,其实还有几个方法可以做到.你可以自己慢慢研究以下我给出的代码.) w0 o) W  I8 C7 ~$ Z- [# Z
{:4_98:}
回复

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-9 07:40:31 | 显示全部楼层
恩     谢谢   一起进步, Y1 z1 n! h( n9 i( Y
现在后处理的资料很少
3 Q' ?* W8 u" W7 O) `6 p6 ]相信论坛能够壮大
" n3 c: d0 z4 x7 u也希望能有更多的人加入
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014271
 楼主| 发表于 2011-8-9 12:51:43 | 显示全部楼层
我们共同努力,打造一个好的后处理社区
回复

使用道具 举报

2

主题

74

回帖

41

积分

注册会员

积分
41
发表于 2011-8-22 00:04:12 | 显示全部楼层
我们共同努力,打造一个好的后处理社区
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

QQ|Archiver|手机版|小黑屋|若枫后处理论坛 ( 苏ICP备11015087号-1|苏公网安备32059002001368号 )

GMT+8, 2026-9-29 00:24 , Processed in 0.169246 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表