找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7003|回复: 22

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

  [复制链接]

433

主题

5759

回帖

901万

积分

管理员

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

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

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

×
机床只能识别c轴0-360 四轴联动,负数就报警,该如何解决?
& l: x7 j5 M& Z' I% _1 e- G' e我机床只能识别c轴0-360
- j& s/ e+ O4 q1 `是负数的时候就报警$ @3 J+ |2 T) S4 n; V1 U/ e" T
有什么办法将mc出来的程序有这个范围吗4 u& l& T# m/ \) o( B5 m
2.159 y3.483 z-16.075 c-25.027 f16.27 `. T7 {) e, d: D1 G/ w
x41.958 y3.776 z-16.001 c-25.27 f115.8
. \6 J* C: w- i  Lx41.771 y4.036 z-15.876 c-25.463 f97.62 g* S5 o8 Y1 D1 t3 W4 M0 g
x41.506 y4.32 z-15.516 c-25.489 f8.6
# |# h0 L4 A5 k$ g7 a, rx41.473 y4.323 z-15.277 c-25.297 f121.1
4 f& E3 _! d5 Qx41.486 y4.276 z-15.06 c-25.133 L  ~: J6 ?* I0 @
x41.562 y4.159 z-14.831 c-24.914
5 y6 S9 J0 m0 ~$ C- G" ix41.632 y4.065 z-14.543 c-25. f44.2
1 m6 w- P3 T* z  L6 Y% ]8 y7 f.
. H" p/ J- v! n$ E8 R4 t.
& H! V" K! ^2 l+ j& z.: F- k# T) `1 }+ ?9 ^2 ~
如果有什么软件能设置成c为-时通通都加360
! \- W5 [5 O& w( f' s8 Z& I那就可以了     盼望高手出现
! Q7 C0 c. d/ E; y6 d此问题在中国机械cad论坛我已做回复,现再次整理一下 , v" Q  I) J4 R1 w9 g7 _
& Q7 J+ L! n& n* W
以下是本人的回复 4 _6 r- C& t- z5 r  a0 C+ F
可以的.该后处理可以做到,
) t! |) C* U1 W需要修改的地方有几个,如下:
+ P2 w" k7 x4 i4 i  }1.更改机器控制器,
7 m& h$ n% Z, @4 p  R) D2 R) P2.后处理需要更改的地方,你查找下面的代码,就知道如何修改了,如下:* U- X" m8 w- s  x, W4 x

) E* l. P" x2 v( B. w) p[hidden]pcoutrev          #rotary axis revolution calculation (modify for wind-up)
+ G/ z( i) \# ^! z/ P& T/ q        if cir_at_zero = one,8 d8 @/ i2 `5 M! X" }+ c/ Z" x
          [1 |' g1 |3 |% e, X* l  S" Q4 D( M
          #arcs at center position the c axis
+ B: W! |8 k0 B8 V          if cuttype =  -2| cuttype = three,8 O& r. X2 M. v# B( T6 h
          csav = czero_csav - sweep$# W3 S7 d2 ?4 S8 _
          else, csav = czero_csav + sweep$% R4 Z$ R, L/ d/ e! Q! ^' q" f1 j0 c- B& E
          czero_csav = csav
4 m  D. N! K( P; P          ]
$ A3 a; l6 n: C% }: U        #c does not move going to cl5 T8 o2 L! I# I' `
        if pnt_at_zero, csav = prv_csav
) j' z/ a4 }- s) ?7 g, z        cdelta = fmtrnd(csav) - prv_csav  #this calculates once, for rev
# y- L- S7 o0 @        while abs(cdelta) > ctol & not(cir_at_zero), #if motion exceeds ctol, add wind-up
! m7 q8 [; Q& w( D$ A          [
% u- A, ^! D' Q) h          if cdelta > zero,2 _$ p3 e/ M' U% _# O; q' ]6 c  C
            [
! ]$ T6 V1 G# `7 }# T            rev = rev - one
' U4 r1 e2 R3 |8 B9 g            cdelta = cdelta - 360+ M! e- i" ?( t
            ]
0 r8 e/ w7 @( D9 z) U1 c8 s          else,
* e7 P/ `7 x2 \$ y            [
+ l: Z% j; r( {            rev = rev + one# Z' u- Z+ @/ }" d) s7 q8 |
            cdelta = cdelta + 360: S$ U4 l5 z+ [
            ]) s3 Y# w" N" c( q* {
          ]
! Z6 J, K5 Q4 a0 X        if cuttype <> four, c_wnd = rev * 360 + csav
( G: M# v! B; C" L        else, c_wnd = sav_rev * 360 + csav, c3 o* k' W- a" k; S0 D
        !csav1 W  s, E  G$ H& O+ H/ K
        @c_wnd
4 Z3 u1 T' p, o0 v        #now switch to c_wnd which is the absolute winding c calculation! m7 `+ V: W2 a! ?8 |
        #modify for shortest direction if toolchange or toolplane: V) u: I# H$ X: H& Z! x
        #but not with axis subs
) U! r% V( q) a+ Z        if c_axistype <> three,
) O3 F9 k  m4 c# H: _" c8 X8 `: H          [7 r$ n  ?7 K. O: Y2 D; ~  Y
          if abs(prvc_wnd - c_wnd) > 180: [+ \7 H8 _; [6 u8 r" c- Y
            & (toolchng | (y_axis & cuttype < four)),
' |7 _+ U  ~5 g( K2 f6 G2 V            [8 @! ]- l' Y, P" h; e3 }
            while abs(prvc_wnd - c_wnd) > 180,
8 b" Z( a) X# v7 Q' t2 |                [
" l+ B! \, Y1 z) }! O2 p% I. L; d                if prvc_wnd > c_wnd, rev = rev + one
- H) [: ~+ h0 |1 z, R8 N                else, rev = rev - one6 w* Y# I8 {4 r5 _4 t
                c_wnd = rev * 360 + csav& ^  d0 f1 u+ l4 T' r! U
                ]
- Y9 ~6 u; P4 j! Z: Z% M" {            @c_wnd2 ?8 V0 E( v/ w( v
            ]4 i' f: o# k! k9 R) s$ s) k! d
          ]4 \& W* l! X$ A- B. M7 i

. k9 B6 M" ~; K7 p0 S& `) I( _1 }pindxcalc         #index move calculations, direction is shortest exc. asub
1 g4 L7 o- O7 `$ Y( }6 r' d        if pnt_at_zero | cdelta = zero, indx_mc = prv_indx_mc, _1 [4 p) ~6 E2 \- e
        else,( }% @, a/ p+ j5 q
          [$ d7 N& _7 `6 j3 T% Z5 P
          cdelta = fmtrnd(c_wnd) - prvc_wnd
* r, ^- N3 z* v& Q( f, B/ \          if cuttype = four, #just look at the direction" S) i2 ^9 i! s6 R. ~; s  Y
            [
: _2 T7 ^4 q) u. x. L: L6 F9 \9 e: K            if cdelta >= zero, indx_mc = one
$ n! s% k& V, Y8 S            else, indx_mc = zero# z  \9 `$ |1 n0 f  e- i
            ]
5 ^" S, @  e2 i: t          else,
4 V7 B0 s3 r! D. r6 Z# Y+ [            [: H" p& o& A7 y3 C) Z
            #phase shift delta 10 revolutions, check odd/even for direction  @  ^8 a" h( `# W
            if frac(int((cdelta + 3600)/180)/two), indx_mc = zero: c+ N0 k+ k0 n0 d( o. U
            else, indx_mc = one
- x2 d+ ?/ d3 r( C! X) C            ]: u$ k# d/ x. [9 Y
          ]+ w3 w$ q4 B0 y
        #set range 0-3608 W  T5 T% l6 N  s& N
        while cabs < zero, cabs = cabs + 360; _8 u4 [4 b) [2 v: k/ O
        while cabs > 360, cabs = cabs - 3602 o' _; c5 o7 M$ {
. L5 M: v; v% f1 @# L
6 h. B) h1 o- S  M) Q5 G9 n; b
14_080505.jpg

433

主题

5759

回帖

901万

积分

管理员

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

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

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

使用道具 举报

1

主题

80

回帖

969

积分

实习版主

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

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

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

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

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

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

[p]
下面引用由5723470发表的内容: <br />/ Z! v( n( {7 h2 ?1 f
<br />5 s! E, D% K; n9 g% m
个人认为&nbsp;&nbsp;0-360是最好的 只要机器能接受&nbsp;&nbsp;譬如我上次做了个产品 都转到a-7000多了 a轴回零 转了好久 哎 一直不知道怎么去改后处理 请版主发帖 讲解下 谢谢
<br />+ p2 t( }  Q! M. ^. k7 Y

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

回复

使用道具 举报

0

主题

21

回帖

26

积分

注册会员

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

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-8 16:50:28 | 显示全部楼层
若枫版主好: 很高兴认识你和论坛所有人% [0 |( v, O; d2 Y
这个问题好象是我一年前发出来的
. T+ T1 t6 Q" J! D3 E不过最终没有解决    希望在这里能找到答案
- C5 F/ E, f1 ?& _' @4 s以前我一直在三维技术论坛、6 J0 ~! ~0 }2 v  C2 ^  E
希望在此论坛学到更多东西0 F1 J9 ~1 k/ F% [
特别是后处理    而关于上述问题我用的是MCX3。   
2 h4 M, z' a$ Q! }一起研究
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014266
 楼主| 发表于 2011-8-8 20:42:39 | 显示全部楼层
回复 9# 723667735
& \4 w. I; m. Y# g- W2 O' k6 V
! u2 {& w. \2 x# t6 q6 u
8 L& L) t$ m) e4 `2 K7 p3 N  很高兴你能来这里学习.三维论坛我很少上.基本没有发言.我觉得你们都是我的老师,我要向你们学习.
7 s" Z/ g6 D/ m! C9 r5 ]  这个问题早在几年前就有人问过我,同时在去年还是前年我在中国机械cad论坛同样回答过一个论坛用户的有关这个角度的提问,
5 G" d5 R( _9 {其实这个问题我只给出一个方法,其实还有几个方法可以做到.你可以自己慢慢研究以下我给出的代码.
+ I1 W: ]1 ^# E" d. O8 K# ~{:4_98:}
回复

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-9 07:40:31 | 显示全部楼层
恩     谢谢   一起进步7 Z4 A- v7 V3 @& L0 ?0 `! t
现在后处理的资料很少   g; R1 z# T! q0 P$ I2 D$ ~7 z+ }
相信论坛能够壮大
6 s9 N) g) V7 X" B& D. G9 W也希望能有更多的人加入
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014266
 楼主| 发表于 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-8-1 18:35 , Processed in 0.143142 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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