找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7492|回复: 22

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

 火 [复制链接]

433

主题

5759

回帖

901万

积分

管理员

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

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

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

×
机床只能识别c轴0-360 四轴联动,负数就报警,该如何解决? 0 Z) N7 ?4 F% ]  }; K7 U3 U
我机床只能识别c轴0-360! c5 O5 f; v+ l5 ?& [
是负数的时候就报警
; I4 U( C/ e' E8 h( u6 ~有什么办法将mc出来的程序有这个范围吗9 C6 a* @0 O. }" R
2.159 y3.483 z-16.075 c-25.027 f16.2
1 Y/ L* K; l" c* h2 E- t- W1 yx41.958 y3.776 z-16.001 c-25.27 f115.8  o4 p9 J# j3 A7 J; |2 K
x41.771 y4.036 z-15.876 c-25.463 f97.6. [/ o/ d' F9 J/ H' y
x41.506 y4.32 z-15.516 c-25.489 f8.6$ a8 B" }! M; q8 C, o7 r
x41.473 y4.323 z-15.277 c-25.297 f121.14 d+ @4 v3 [* s# v2 X6 \7 u
x41.486 y4.276 z-15.06 c-25.13) v6 [, C& U7 b1 M: X3 T
x41.562 y4.159 z-14.831 c-24.9141 u7 ^% Z$ a+ L
x41.632 y4.065 z-14.543 c-25. f44.2
1 F" P) }& d( ~8 M5 n.
$ _0 W" D/ L- V% E.
4 L4 ?) m2 A( K$ L! r.) R: M( r9 ?+ V
如果有什么软件能设置成c为-时通通都加360
! z6 d% X) v0 ~" w! w! i那就可以了     盼望高手出现 5 o$ ^3 J/ J; M8 R7 S: x
此问题在中国机械cad论坛我已做回复,现再次整理一下
' z4 X: q7 c: o; r- N( Y/ E4 a
  L& l/ p5 O7 @; @3 u以下是本人的回复
. r2 R- `" e' d& C可以的.该后处理可以做到, ( f& g4 M- l2 b4 `: h. d- m! M1 b
需要修改的地方有几个,如下:
5 a* g+ d( P8 s9 M1.更改机器控制器,; b7 q$ l* R/ A  Z) ]7 ?3 g
2.后处理需要更改的地方,你查找下面的代码,就知道如何修改了,如下:
1 i4 S: w8 L8 P0 h6 l; y9 p
" w2 n2 Z6 w2 `# Z+ a( a' B[hidden]pcoutrev          #rotary axis revolution calculation (modify for wind-up)
- S9 v9 M1 e4 r) p7 L        if cir_at_zero = one,' L6 e0 Q5 Q, u( X
          [  t- M, o9 k' s: g5 ]
          #arcs at center position the c axis
& E: F$ V3 R: `1 k          if cuttype =  -2| cuttype = three,6 P( u3 P+ Z' x( s2 d
          csav = czero_csav - sweep$
5 Q9 N3 G( d7 {8 j; f          else, csav = czero_csav + sweep$
* k+ y) ^; _) M7 V# \          czero_csav = csav
, W4 t" _( s. f5 r% N          ]
& v+ J) P9 {$ N4 X, A2 l2 L3 r        #c does not move going to cl
4 c' t2 ^# X: [5 A' v! @6 f7 T        if pnt_at_zero, csav = prv_csav
9 z! B2 b; T( N9 S( l# A$ H        cdelta = fmtrnd(csav) - prv_csav  #this calculates once, for rev
, h  d! q1 x5 F        while abs(cdelta) > ctol & not(cir_at_zero), #if motion exceeds ctol, add wind-up
! y9 B% O# F0 }' i$ a          [9 @3 \3 ]( Z6 O+ k
          if cdelta > zero,
$ d8 ]) e3 K; q; t9 ^7 f            [
/ F* L$ F7 n9 G5 n/ N            rev = rev - one
& t6 g% c$ Z% x6 \/ i  c            cdelta = cdelta - 360+ ~7 _: [6 R* c+ h$ i+ b( X
            ]( T- u3 W; d# K/ d
          else,
4 q5 x7 C- x8 @" N8 v4 C6 T% ]            [
/ Q- H: v3 h% D4 S4 M            rev = rev + one4 U# \- K1 b$ E
            cdelta = cdelta + 360# v+ }7 j( f0 m/ H3 e, @
            ]
# f& m& s  l* L" j          ]$ O0 g8 m7 p. N' s1 _4 I! n% f: c
        if cuttype <> four, c_wnd = rev * 360 + csav
/ N  Z/ W  S+ `        else, c_wnd = sav_rev * 360 + csav
& k7 s6 j# {/ B& U7 w( B, O( d        !csav
7 F1 t$ }3 R- Z# @( @8 E( x        @c_wnd* [! }+ i9 ~. r! `3 o) V0 a/ W- w
        #now switch to c_wnd which is the absolute winding c calculation
: j  D, R& Y3 `2 q9 `        #modify for shortest direction if toolchange or toolplane
5 A, I! \9 S. k) ?0 J        #but not with axis subs
/ i6 k6 D' U) K7 L' }; k        if c_axistype <> three,
0 ^( h+ E6 w" k& P9 H* p, i          [
0 j4 |9 N5 N% L) o1 W) P          if abs(prvc_wnd - c_wnd) > 180
, S0 N* k# ~' Y! d8 F            & (toolchng | (y_axis & cuttype < four)),9 Q- e2 V9 @: }2 p* t
            [3 Q* v6 P6 ~# _% s) A$ |6 @
            while abs(prvc_wnd - c_wnd) > 180,
8 S2 q4 `2 G) [" |                [1 @9 n! J% M) @# v
                if prvc_wnd > c_wnd, rev = rev + one0 P# U4 w5 A# u
                else, rev = rev - one( |0 p, X  W0 \; w- v4 v5 }$ u
                c_wnd = rev * 360 + csav; P3 c2 S4 Q. K: ?) _! u* {8 Q
                ], @8 B- \9 F& i. Q
            @c_wnd! N5 o8 ~8 K! |
            ]
& Q3 B9 a4 u: Q3 S# ^6 j          ]- ^4 t5 j; X3 L9 r3 f

, o9 ?7 Z$ j  x# H" q/ Q- k6 Upindxcalc         #index move calculations, direction is shortest exc. asub1 H5 |) F1 B% I2 e7 G" v
        if pnt_at_zero | cdelta = zero, indx_mc = prv_indx_mc) P3 _# L  g! O# r" K) g" R0 c
        else,
1 u+ _, d' Z1 j5 f          [+ Q8 s& x6 B2 }3 `: {+ a
          cdelta = fmtrnd(c_wnd) - prvc_wnd& M( P& r+ n: s, D
          if cuttype = four, #just look at the direction; ]* D- k! Q3 ^8 E- ?6 u) _
            [, }0 U- N$ g7 c1 [
            if cdelta >= zero, indx_mc = one
$ ?# Y: t# p+ J4 {  q, q            else, indx_mc = zero: O: \" f) I; e- }( r, X+ O
            ]
8 F# u- u1 A! f% x/ z          else,
3 f9 D/ c' i3 M/ Q: s) v            [
# v5 _9 @2 P  V: F. K7 {            #phase shift delta 10 revolutions, check odd/even for direction
4 F9 N/ X" Y1 D; O/ t' R            if frac(int((cdelta + 3600)/180)/two), indx_mc = zero$ o# T4 }: ?4 m8 O# x
            else, indx_mc = one- I# B  k1 o6 Q3 _- S: e% U3 p( A; }
            ]
' N) H) \# k$ _2 n( U          ]
) Y0 t. o" d) b- `" |. L        #set range 0-360
  l1 h  e5 h. ?        while cabs < zero, cabs = cabs + 360
/ ^; }# G2 G3 o6 ^- G        while cabs > 360, cabs = cabs - 360
  I% l+ s4 E+ G$ X9 h: a9 c! R0 W% X3 b4 }( Z, ?; ?" d  r' v

( B6 p; x& _+ m$ `/ t* | 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 />9 H) }+ M( D1 J: r
<br />
$ f! I' @3 P7 y2 l$ [% n个人认为&nbsp;&nbsp;0-360是最好的 只要机器能接受&nbsp;&nbsp;譬如我上次做了个产品 都转到a-7000多了 a轴回零 转了好久 哎 一直不知道怎么去改后处理 请版主发帖 讲解下 谢谢
<br />/ l7 b( B4 `5 Y" ]6 Z) W4 }

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

回复

使用道具 举报

0

主题

21

回帖

26

积分

注册会员

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

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-8 16:50:28 | 显示全部楼层
若枫版主好: 很高兴认识你和论坛所有人) I; k+ y3 H' F/ y+ Z
这个问题好象是我一年前发出来的
1 \8 ^& K5 y9 @' u不过最终没有解决    希望在这里能找到答案3 s8 v5 Z' A* k* B- v8 N9 C
以前我一直在三维技术论坛、
2 x) Z/ [" t# k, b2 D4 r1 ?希望在此论坛学到更多东西
! ?8 o2 Z) b" p4 ^; C& H! j" l特别是后处理    而关于上述问题我用的是MCX3。   6 ]9 L8 \( G. b( t! {' d( I5 h
一起研究
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014271
 楼主| 发表于 2011-8-8 20:42:39 | 显示全部楼层
回复 9# 723667735
0 M# }5 L( I8 C. i- x, \
$ A" K- W+ |, u$ w% _0 ~4 X- e9 ^# @9 [
  很高兴你能来这里学习.三维论坛我很少上.基本没有发言.我觉得你们都是我的老师,我要向你们学习.- r' D, s1 E; D, j
  这个问题早在几年前就有人问过我,同时在去年还是前年我在中国机械cad论坛同样回答过一个论坛用户的有关这个角度的提问,
$ [7 ^& n# o9 N+ b其实这个问题我只给出一个方法,其实还有几个方法可以做到.你可以自己慢慢研究以下我给出的代码.$ d; c8 R# S# z* Z* Y) t
{:4_98:}
回复

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-9 07:40:31 | 显示全部楼层
恩     谢谢   一起进步, j& B& X) N$ Z1 _1 _
现在后处理的资料很少 6 Z, |( \6 y2 f2 i+ _
相信论坛能够壮大: ?+ R- T  H/ V# B" X
也希望能有更多的人加入
回复

使用道具 举报

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-28 23:24 , Processed in 0.168063 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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