青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 3375|回复: 0

数字积分法插补圆弧插补程序设计

[复制链接]
发表于 2009-11-4 11:51 | 显示全部楼层 |阅读模式
 
- D# j" `& K) K/ i8 x( b9 s1 h      数字积分法插补圆弧插补程序设计
/ _( s0 a# x' b8 v, d  S; J7 \! r- C      4.1.4 圆弧插补程序设计+ t# G8 M4 o6 b: x
            表4.1 圆弧插补时坐标修改情况6 ~; U4 p1 u  N9 Y" K" f7 m' y; m
            Table 4.1 Modification of the coordinate during circle interpolation) D5 W' {8 U" o; w+ d+ f
      对于圆弧插补,各个象限的积分器结构基本上相同,但是控制各坐标轴的进给方向和被积函数值的修改方向却不同,具体情况如表4.1所示: 
- `/ ?$ X. G5 E  w( K       7 S5 I5 J. y- t6 \
       ) _6 J+ m7 f$ n7 D5 @1 K  S3 h
            圆弧类型顺  圆逆  圆+ H8 U) I. J& q, X' H
            所在象限123412343 x# C6 Z5 ]/ d1 K  Z! q% B
            Y值修改-+-++-+-
% a. J, ]/ e- Z1 U9 T% x) Z3 m            X值修改+-+--+-+
: A$ U- [7 {* i4 x            Y轴进给方向-Y+Y+Y-Y+Y-Y-Y+Y
! ~0 q* E- K! a; W            X轴进给方向+X+X-X-X-X-X+X+X
) i7 k) E# P& b3 `      由于各个象限的控制差异,所以圆弧插补一般需要按象限来分成若干个模块进行插补计算,程序里可以用圆弧半径作为基值,同时给各轴的余数赋比基值小的数(如R/2等),这样可以避免当一个轴被积函数较小而另一个轴被积函数较大进,由于被积函数较小的轴的位置变化较慢而引起的误差。具体的插补流程图如图4.4所示5 w0 C" Q: z6 a+ G) m' O
      流程图里一些变量的意义如下:/ N6 m6 A. h% G; T* k
      · Xflag—X轴进给标志& @8 l- Q+ y4 R3 A/ Q
      · Yflag—Y轴进给标志
8 i0 |! Z8 q6 L$ i" E. N' Z% j      · Nx—X轴方向长度  q. L, g- E+ `1 S1 `
      · Ny—Y轴方向长度& `+ t1 H# r# v$ \! k  M6 W3 N
      · R—基准值
; I1 `  Z+ M& c; y, V      · delta—步长
' \6 I/ G$ `; C      · JRX—X轴余数" e( @# M& k: p
      · JRY—Y轴余数
6 d+ X5 c( w+ i! H2 P. k2 p! r      · JX—X轴被积函数值2 h% R6 I' ]$ i. V6 s4 V
      · JY—Y轴被积函数值+ K# f$ b) [+ w( P' e5 l
       ' t# \$ u; u% @7 H9 f# x
      
8 \2 i. K" R% f$ ?1 ^8 `            N) ~4 P! ?- Z9 Y' r$ W5 C8 Y
            Y4 v( K, h( E" ^  u' _) V
            N5 E" H6 r/ ]5 \9 o
            N
# t6 Z" I7 O$ g6 z2 V            Y3 o# e& T: C- ?$ X6 J/ ^( k
            Y& R; I, @8 [8 L* k
            N
6 f& K( W. l: R5 N            Y6 j0 m% h: S; J: V( U% M
            N2 \& l$ P. i4 S+ v
            Y  ]7 B2 E$ D# D- @9 V3 B, B. D
            入口9 M. W7 F/ m2 C9 H$ M* z
            保护数据指针, Z: h2 S$ S% v& o
            起点象限判断,所跨象限数计算/ e2 c1 e! l& m. I: q8 z1 |
            计算各轴步数
& j! z( m/ X# m) s+ ]" E            Xflag=Yflag=0
4 J4 a' D' {7 Y2 D6 t            Nx>delta
/ i. z+ m6 u) B+ e* v8 v            JRX=JRX+JX
# p& @' V7 M$ D/ `6 \* w            JRX>R?
( v+ j7 D) j: c+ ]2 `            JRX=JRX-R/ n9 P( |" x( R2 u
            Xflag=1
* O3 l/ I! X" g" o0 e9 Y            Nx=Nx-1& Z: Y# L+ T# h' u9 @/ x  V0 A# R% B
            JX修正
" N1 \5 D) X  H9 W+ X/ \            Ny>delta?
2 k! F3 o2 P8 Y0 p( m            JRY=JRY+JY9 r# G4 p6 n2 h, T
            JRY>R?
4 s8 X) m1 w  |% z. @            JRY=JRY-R& Q' J( _! y& E5 l- k9 L
            Yflag=19 g* ?; q7 T  i. i: O) e
            Ny=Ny-17 R" O2 ~: R" l  a
            JY修正
2 v6 h9 q) A8 r% z9 p. M            升降速处理
6 H4 _$ U% G$ Q$ c# p            进给
8 Y9 |+ D! h) u            Nx>delta?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-6-3 18:49 , Processed in 0.332590 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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