找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7141|回复: 22

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

  [复制链接]

433

主题

5759

回帖

901万

积分

管理员

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

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

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

×
机床只能识别c轴0-360 四轴联动,负数就报警,该如何解决?
3 V- J; k2 X# X4 ]* y7 j+ h6 f我机床只能识别c轴0-3601 L& M' A6 ^& A$ R
是负数的时候就报警
4 N) d0 ~1 n% G0 {7 b有什么办法将mc出来的程序有这个范围吗
( k6 \+ y9 P, C+ w- \2 G2.159 y3.483 z-16.075 c-25.027 f16.20 G0 ~; e" k/ I- d: f0 M
x41.958 y3.776 z-16.001 c-25.27 f115.8: E; Z& ?# T/ p( Q& s" O* N8 X0 F
x41.771 y4.036 z-15.876 c-25.463 f97.6
9 l) z- @4 a  w4 a) a1 rx41.506 y4.32 z-15.516 c-25.489 f8.6
/ c$ Z+ I% H( T) S6 E& cx41.473 y4.323 z-15.277 c-25.297 f121.1
7 C4 W8 h2 y! i$ Tx41.486 y4.276 z-15.06 c-25.13' J( J" q/ [' T6 g( C6 U
x41.562 y4.159 z-14.831 c-24.9146 D; k4 ]3 V1 r0 @- q1 W
x41.632 y4.065 z-14.543 c-25. f44.2
" a" P4 P/ ^- j, {2 A2 ]# z4 A6 I.
- X3 ?; c, E  m# r1 x" b+ d# h.
- ?( r$ Y0 J$ `, d; ]( q.* M$ v7 v4 N- m
如果有什么软件能设置成c为-时通通都加360( |8 Z8 B8 O/ F5 y
那就可以了     盼望高手出现
4 l( v% ^9 X* z' n( J; c此问题在中国机械cad论坛我已做回复,现再次整理一下 ( ?6 v7 g- X1 G8 [8 l4 F

5 Y/ d$ f# ~# x! A" ~以下是本人的回复
% w7 v$ w3 L, T& M( j# t* ?可以的.该后处理可以做到, 9 w0 r) y/ M, g
需要修改的地方有几个,如下:
3 Q' K- O- j$ Z2 J! x( `6 g+ H" Q1.更改机器控制器,5 c' O& J! r& L; I, D6 y
2.后处理需要更改的地方,你查找下面的代码,就知道如何修改了,如下:0 W3 W: D4 t" E! U  ]! @# R7 g

* F" k  O* z% z0 T[hidden]pcoutrev          #rotary axis revolution calculation (modify for wind-up)! m3 I  ?% ?3 n
        if cir_at_zero = one,7 |8 g5 }; X+ u2 l- b* f, T$ L) g
          [2 ?- F% a$ s1 }! l; F1 L
          #arcs at center position the c axis& a! v* L9 O& y- b; p1 ~8 R
          if cuttype =  -2| cuttype = three,
( g# p& y& P5 e  F' E7 V- N          csav = czero_csav - sweep$
) G" X( c/ N6 U  K; V, t          else, csav = czero_csav + sweep$
$ {, n- S$ s3 F          czero_csav = csav! Q% x) |4 w5 g
          ]
4 Y+ `6 s. }* t5 J! b+ |: O' S, J. I2 s        #c does not move going to cl" [2 q& ?# R+ Q9 t
        if pnt_at_zero, csav = prv_csav# v( A( H. X9 t! j
        cdelta = fmtrnd(csav) - prv_csav  #this calculates once, for rev
6 D8 C3 ^6 P; J* W; X; q$ A7 B* H        while abs(cdelta) > ctol & not(cir_at_zero), #if motion exceeds ctol, add wind-up
( ], Z% C9 I5 p- C, P* ]          [
9 f- d% R# \# J) Q' g6 ^$ e( m1 X          if cdelta > zero,
* y" A  z) j6 a# K# Q7 K% {* J            [) c( b, A; Y! T- C, _' |$ Z) |) A
            rev = rev - one
) @. q0 W  H$ p4 t& U            cdelta = cdelta - 360
& F7 T1 `0 j8 n            ]( g1 o+ h1 [/ v
          else,  K" h" h* N1 o6 N, G3 {+ K( y
            [; e: l# q/ X5 E: y6 Q( T2 ]7 m
            rev = rev + one# `9 v% B) v) e" `7 J+ z
            cdelta = cdelta + 360
# F6 Q# S) V' }3 J3 O            ]
/ ^' L3 G/ _$ |- }4 U          ]6 J8 F% F2 j0 \& A4 |4 {
        if cuttype <> four, c_wnd = rev * 360 + csav. N8 i0 v5 m% |3 ^8 l9 ?' l* R
        else, c_wnd = sav_rev * 360 + csav) }( E) N0 a# Q
        !csav
/ ~, }  O) l/ V% Z4 w        @c_wnd
8 a( l$ X. C( E5 _1 a3 Y        #now switch to c_wnd which is the absolute winding c calculation
5 g$ p8 y# k4 _        #modify for shortest direction if toolchange or toolplane, ?1 l5 Z7 q: i" X
        #but not with axis subs- d7 g5 L4 V; ?0 y9 J7 i
        if c_axistype <> three,
9 U" ]3 X( a2 X- M$ R4 C$ Z$ D          [  T( R0 y1 [; z& e
          if abs(prvc_wnd - c_wnd) > 1800 N- O1 A7 J4 S- x% E5 e# S& }
            & (toolchng | (y_axis & cuttype < four)),6 g- _8 l( t% u
            [
8 O' g, H( s% g2 k9 |! a            while abs(prvc_wnd - c_wnd) > 180,
% H% h9 Z9 `7 ]' U5 a9 y                [! e' p2 D% W. b( n8 S
                if prvc_wnd > c_wnd, rev = rev + one0 @5 E6 r4 e. C, @9 s0 l' F
                else, rev = rev - one8 n$ J) r/ ?9 I2 ]/ e
                c_wnd = rev * 360 + csav
' [; f$ J6 w  g( M0 R# P                ]
& M' `: P, _: x1 U  r: A$ p& G            @c_wnd9 V7 X; Z. u, X$ u
            ]
( E9 x. y4 ]2 \9 T- ^. M          ]( a- L% F9 u# M+ _2 [

# R6 g7 J. S9 Q( n5 M9 hpindxcalc         #index move calculations, direction is shortest exc. asub4 u% h$ o2 e; \6 D, |, C# e# W
        if pnt_at_zero | cdelta = zero, indx_mc = prv_indx_mc( e$ J/ O3 _2 K, a9 r
        else,
' d. [- L0 _6 v          [
5 q4 {- t, S" U1 E, x! F( ^          cdelta = fmtrnd(c_wnd) - prvc_wnd8 ]' Q, M" ^# `3 T, H
          if cuttype = four, #just look at the direction
- k, d5 x1 e' D: H) A* D9 p            [
; O4 z+ ]* ?9 K3 m0 M) `$ a3 x7 f            if cdelta >= zero, indx_mc = one
3 C+ v1 _3 u9 y* e) r            else, indx_mc = zero
0 c; c" w6 F$ n            ]
) [+ D0 {+ [9 j# m1 ~          else,! f; n; B7 Y' h" s! U. F( u
            [
/ G2 E# D# F1 e            #phase shift delta 10 revolutions, check odd/even for direction# s. O/ H7 o1 p& g% I! v" Z. @
            if frac(int((cdelta + 3600)/180)/two), indx_mc = zero
8 _' L8 d" N: k! A3 N            else, indx_mc = one
( x' F+ L- ?/ A4 e            ]+ g; j& l' A5 j% x) v1 f
          ]
6 Y8 J7 O& v3 n        #set range 0-360
* G+ E$ U% V3 F) M        while cabs < zero, cabs = cabs + 360
0 u* {& ?/ V+ L        while cabs > 360, cabs = cabs - 360! I* r$ x' b9 \! O, c9 K% A
- ~6 O; M' W5 ?3 e

) a: ?$ x9 t/ M- Q' a 14_080505.jpg

433

主题

5759

回帖

901万

积分

管理员

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

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

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

使用道具 举报

1

主题

80

回帖

974

积分

实习版主

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

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

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

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

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

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

[p]
下面引用由5723470发表的内容: <br />
7 X# A. R2 N% }; ]: c/ Q<br />
. H; P6 l, q. B个人认为&nbsp;&nbsp;0-360是最好的 只要机器能接受&nbsp;&nbsp;譬如我上次做了个产品 都转到a-7000多了 a轴回零 转了好久 哎 一直不知道怎么去改后处理 请版主发帖 讲解下 谢谢
<br />( \( T5 v' a  N% k8 O) z

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

回复

使用道具 举报

0

主题

21

回帖

26

积分

注册会员

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

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-8 16:50:28 | 显示全部楼层
若枫版主好: 很高兴认识你和论坛所有人
* g7 ~, I4 {1 U9 k3 j+ |; s这个问题好象是我一年前发出来的 : \; ^( K/ g! |8 D8 X3 K1 I
不过最终没有解决    希望在这里能找到答案  ^. ]9 V( H5 U3 O# c0 X7 B$ m' D
以前我一直在三维技术论坛、  b7 r$ S( Y5 e# W: E. I
希望在此论坛学到更多东西
. [/ ~& t; j- L+ z4 }7 \# P; K特别是后处理    而关于上述问题我用的是MCX3。   
0 v+ p4 q) Q; h5 K/ T: T一起研究
回复

使用道具 举报

433

主题

5759

回帖

901万

积分

管理员

积分
9014266
 楼主| 发表于 2011-8-8 20:42:39 | 显示全部楼层
回复 9# 723667735 4 u& ~8 N/ j4 g8 ?- w+ p
: k9 C" y. w  v! f- K

3 r$ G4 t5 y4 M/ Q" _9 T  很高兴你能来这里学习.三维论坛我很少上.基本没有发言.我觉得你们都是我的老师,我要向你们学习.
$ u* |: r: e& H" F7 p  这个问题早在几年前就有人问过我,同时在去年还是前年我在中国机械cad论坛同样回答过一个论坛用户的有关这个角度的提问,8 L( z& B9 _, S$ t
其实这个问题我只给出一个方法,其实还有几个方法可以做到.你可以自己慢慢研究以下我给出的代码.7 _! n# n. h! w, N1 z
{:4_98:}
回复

使用道具 举报

1

主题

12

回帖

67

积分

注册会员

积分
67
发表于 2011-8-9 07:40:31 | 显示全部楼层
恩     谢谢   一起进步
) c6 x* `* g6 w6 M现在后处理的资料很少 : M! h; d8 j- B, m: X) v
相信论坛能够壮大
! C/ d( W! l3 j0 h- ]- [也希望能有更多的人加入
回复

使用道具 举报

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-14 14:38 , Processed in 0.161097 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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