找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7228|回复: 22

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

  [复制链接]

433

主题

5759

回帖

901万

积分

管理员

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

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

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

×
机床只能识别c轴0-360 四轴联动,负数就报警,该如何解决? + f- [9 W& \5 Y
我机床只能识别c轴0-360
* X' Z/ w* j  R; a) V9 d) D是负数的时候就报警
2 t2 Z  O1 C. F' J: ~有什么办法将mc出来的程序有这个范围吗
1 m; V7 @5 r" Z2.159 y3.483 z-16.075 c-25.027 f16.25 T. [$ Z9 w6 @7 e9 v) k' E0 Q' n2 K
x41.958 y3.776 z-16.001 c-25.27 f115.8
1 p3 U: s* \; f" C0 _, wx41.771 y4.036 z-15.876 c-25.463 f97.6
5 T4 S4 s4 }# n7 D* ~7 ~x41.506 y4.32 z-15.516 c-25.489 f8.6
& o% I) |  b2 E0 @( E5 ox41.473 y4.323 z-15.277 c-25.297 f121.1' I1 s# ~# V* Q  x: @% `6 q
x41.486 y4.276 z-15.06 c-25.13$ }4 C8 g& w) i
x41.562 y4.159 z-14.831 c-24.914  x' y2 C( C5 a
x41.632 y4.065 z-14.543 c-25. f44.2
% i* l2 W8 T, l8 X# c% l/ w/ q, q.
! c4 T. S7 f0 I.5 d3 q! M. E- n9 d2 R) W7 M3 q$ s% t
.( r, N: N3 |; w" H
如果有什么软件能设置成c为-时通通都加3609 q- T0 \+ D8 ?/ N
那就可以了     盼望高手出现 ! S2 p' H3 b8 D1 q7 p+ @
此问题在中国机械cad论坛我已做回复,现再次整理一下
/ z) i- W# `# o  f
6 J/ h4 h" f# F- U( X! j以下是本人的回复 $ M2 D6 @+ m. K6 a, @0 g+ Y$ W
可以的.该后处理可以做到, 1 j% ~0 d1 L8 O1 B2 i* _2 ?
需要修改的地方有几个,如下:
8 Q# O6 s* C4 A1 {; b. D1.更改机器控制器,! m9 y' n$ _7 z/ F7 e
2.后处理需要更改的地方,你查找下面的代码,就知道如何修改了,如下:0 R# m/ t, ?: v- _
+ O% W0 _$ Z: ~$ D
[hidden]pcoutrev          #rotary axis revolution calculation (modify for wind-up)9 s; `% `, Y, S
        if cir_at_zero = one,
3 v4 {5 @1 c, t$ n( M          [
9 [9 M& r1 V2 u          #arcs at center position the c axis1 U" w  w$ a( j/ n$ W
          if cuttype =  -2| cuttype = three,/ N) r$ r7 Q, a. C6 C' P
          csav = czero_csav - sweep$
- @+ M* ^9 J+ ^7 b% M          else, csav = czero_csav + sweep$
9 d9 r2 a, ~9 O# g          czero_csav = csav
! c( |- S6 |) j& {( s          ]& f) H- J6 M, r& U+ b. I9 `4 F" h7 w
        #c does not move going to cl2 }, e8 X$ H9 S5 R# Y
        if pnt_at_zero, csav = prv_csav
( h: Q. c$ f6 A* [0 i/ Z. T* d        cdelta = fmtrnd(csav) - prv_csav  #this calculates once, for rev
, r! T: x, p7 G3 B  |) C' q        while abs(cdelta) > ctol & not(cir_at_zero), #if motion exceeds ctol, add wind-up
7 S& ?' ]0 i1 J          [
  K" U* [3 M2 z1 [# J          if cdelta > zero,/ i: n% l  O8 N, M0 ]$ @
            [$ `* p6 N1 e3 J9 ~7 n. a9 p
            rev = rev - one7 [( u& N1 z4 G* Z- ]8 J
            cdelta = cdelta - 3605 k+ {; z) w$ H) s! L# D
            ]
9 b  H* V' C& m          else,1 F* {1 |: H) U( ]/ Y, Z
            [
/ \* H9 ]! g3 a2 e            rev = rev + one
, g) z1 R2 b0 o            cdelta = cdelta + 360
" ]' T0 C, b3 ?3 E% S5 J$ j6 v            ]" l3 m3 @2 S. s
          ]0 e! f7 F5 J) m% F/ _& H1 ^
        if cuttype <> four, c_wnd = rev * 360 + csav6 ?9 l1 k0 _" M5 c) E
        else, c_wnd = sav_rev * 360 + csav
4 u% a" N1 J. p( W+ }8 l- `        !csav0 s0 q( c: r# v7 Y8 x3 X6 Z8 L
        @c_wnd
, b( p/ h, B8 L! {4 M$ d: E        #now switch to c_wnd which is the absolute winding c calculation
, H$ ?% j$ G. k8 n, u0 O- V) a        #modify for shortest direction if toolchange or toolplane
/ A8 ^2 }5 R6 `% Q        #but not with axis subs
4 Z6 c1 H- @! E& x% I! x+ P        if c_axistype <> three,) \1 m  D1 L1 j, W  z: j/ C
          [
& c2 Y  f- L& x5 _4 R4 d* B0 K          if abs(prvc_wnd - c_wnd) > 180# _: g7 n0 K( p
            & (toolchng | (y_axis & cuttype < four)),& _* v: W% c# W# _
            [6 i3 E+ e% p* W# K( U+ B4 e% n
            while abs(prvc_wnd - c_wnd) > 180,( T9 S) g* v; J$ E) C( B
                [- Q  D4 {0 P- J- v9 @4 S! W; U5 q$ O1 W
                if prvc_wnd > c_wnd, rev = rev + one+ ~1 F' ~1 J  m
                else, rev = rev - one; L6 U* ~3 A- u) q0 ~" Z& Z  M
                c_wnd = rev * 360 + csav
+ p' x1 B+ f9 C( X% y                ]- O7 n6 ?2 m" k* V
            @c_wnd+ Q1 I' ?1 m) O. W7 \
            ]+ w0 p$ t. l8 Q$ f* c  ^& Z
          ]2 ~. z6 I" J2 c, ^1 p* a& G

" F2 l" N: n0 o1 spindxcalc         #index move calculations, direction is shortest exc. asub, K% O+ K5 u; X( U5 q' E
        if pnt_at_zero | cdelta = zero, indx_mc = prv_indx_mc8 z# a9 m7 P  @, F3 k
        else,; @- E1 w" Z2 l* l4 S9 g" O6 S
          [) x4 N& f) f: `& a0 O5 g# N* V5 V
          cdelta = fmtrnd(c_wnd) - prvc_wnd5 q5 A7 C+ q' I% P4 C! G
          if cuttype = four, #just look at the direction
0 H- k! j6 O7 i. u" e# [: J            [
! L1 p2 F0 Y  Z3 U+ i3 f5 a& l5 P            if cdelta >= zero, indx_mc = one2 S3 S) p; k% M# v: N
            else, indx_mc = zero
8 b; R  F5 V/ e' s, E            ]5 C$ g/ g: c; Q' [  R
          else,. S) l. l/ B# [( Z) S
            [
) D5 l2 L; g. X, z6 W& p# W. ^            #phase shift delta 10 revolutions, check odd/even for direction; o# \9 D, v! Q2 r% @. Z
            if frac(int((cdelta + 3600)/180)/two), indx_mc = zero* F8 h2 [7 t7 u  ?
            else, indx_mc = one
7 `0 o9 k% g& c2 L$ z3 J9 V- Y            ]: {, q! o4 j8 m/ f2 v! H2 A5 A
          ]& n; d. k+ s- i% ?9 Y+ \
        #set range 0-360
. {8 o4 X3 y; G5 N- V4 D9 T- c        while cabs < zero, cabs = cabs + 360
' a, \  n/ o# f) y3 }: m: i! f+ L        while cabs > 360, cabs = cabs - 360
1 t' @' b# v- \/ ?
9 F, l1 F5 Y" a) u! P7 D# C" e( ]
* {! h; e; u9 M- M" j* \  r: \ 14_080505.jpg

433

主题

5759

回帖

901万

积分

管理员

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

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

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

使用道具 举报

1

主题

80

回帖

978

积分

实习版主

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

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

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

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

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

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

[p]
下面引用由5723470发表的内容: <br />5 x, T4 m" o+ Z8 P7 f8 r
<br />1 C/ _9 c  i: d) {% \8 O& `
个人认为&nbsp;&nbsp;0-360是最好的 只要机器能接受&nbsp;&nbsp;譬如我上次做了个产品 都转到a-7000多了 a轴回零 转了好久 哎 一直不知道怎么去改后处理 请版主发帖 讲解下 谢谢
<br />
  n0 R3 {3 A. k. ]- B% Z% y' X

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

回复

使用道具 举报

0

主题

21

回帖

26

积分

注册会员

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

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-8 16:50:28 | 显示全部楼层
若枫版主好: 很高兴认识你和论坛所有人3 z2 o7 O  v2 y; c
这个问题好象是我一年前发出来的
9 t5 r6 w. l8 V$ @; X: G不过最终没有解决    希望在这里能找到答案
  ^( k/ d) {9 x" @6 F4 k: X以前我一直在三维技术论坛、, R( Q4 W, j* M+ ^% s
希望在此论坛学到更多东西
, B! u, Y& e+ J# Z8 n- S. N特别是后处理    而关于上述问题我用的是MCX3。   5 \! {1 ^1 [* I2 Q/ \$ |
一起研究
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014266
 楼主| 发表于 2011-8-8 20:42:39 | 显示全部楼层
回复 9# 723667735 5 |4 b, E/ H* e  _$ ^

6 q2 X/ w) f+ e9 C: I+ Z9 f4 {
7 o& P/ K  t, b+ w9 Q+ [. K9 |7 s  很高兴你能来这里学习.三维论坛我很少上.基本没有发言.我觉得你们都是我的老师,我要向你们学习.
! F$ s" v% d9 w  这个问题早在几年前就有人问过我,同时在去年还是前年我在中国机械cad论坛同样回答过一个论坛用户的有关这个角度的提问,2 v5 j! q# [( L
其实这个问题我只给出一个方法,其实还有几个方法可以做到.你可以自己慢慢研究以下我给出的代码.* p% q0 p! O( ?6 i% Q
{:4_98:}
回复

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-9 07:40:31 | 显示全部楼层
恩     谢谢   一起进步
; Y$ `3 v9 ?+ Q* x. Q/ W现在后处理的资料很少 " f6 |: O( |, q
相信论坛能够壮大  n) [% c& T: g% P* }9 Y' U
也希望能有更多的人加入
回复

使用道具 举报

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-22 19:41 , Processed in 0.179329 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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