机械必威体育网址

标题: 车床虚拟加工系统实现方法研究 [打印本页]

作者: 老鹰    时间: 2006-4-28 09:29
标题: 车床虚拟加工系统实现方法研究

引言 fficeffice" />

8 X" N1 c% y* M, W) S

    虚拟制造(Virtual Manufacturing VM)技术是虚拟

7 @, T/ F7 R( l

显示技术与计算机仿真技术在制造领域的综合发展和

' `* d. {! h: L" g9 \5 w0 f) p# v

应用。VM 的实质是“计算中的制造”,即在计算机中

: `( |! d; K2 s5 ^7 E( a: x

借助建模与仿真技术及时地完成制造全过程的模拟和

& T* R% K& p# C% h( I5 M

示范,并预测评价产品性能和产品的可制造性。数控

* ?5 k F! F9 {% C

(NC)车削程序的编制过程与工艺过程相似,都具有经

2 a. |% x- N% Q6 t5 f3 [' M/ j+ h& U

验性和动态性,在程序编制过程中经常发生错误。为

1 n2 g) T8 R6 R6 l7 D! V

此,在数控机床上加工零件之前一般要进行数控程序

+ ~) H7 e- s. q6 d! Q

(NC 代码)校验,并进行首件试切。但这种传统的试切

( s3 c1 F5 ?$ I$ r r5 Z$ U

方法来检验刀具路径既费时又费力。随着数控编程技

+ X0 j7 [% X1 W- J* ]

术的发展,人们采用视觉检查 NC 刀具轨迹的二维线

8 |2 S, K# n/ k$ K

框图,这种方法主要依赖于程序员对易错区选择的判

$ D4 x9 L |4 d4 V4 F/ z2 Q

断和对该区域复杂的刀具轨迹线框图的理解程度,一

* \) [; y# G) H+ D4 Q; W& J

般的用户无法判断其正确性。通过数控加工三维几何

! h# W+ ~" w; L* \; `2 E

仿真能够使 NC 编程人员和机床操作者通过图形显示

2 r3 z" i- h1 L7 d

进行干涉和碰撞检查,校验数控程序,故可以大大减

' T: A, Y" g5 a0 \2 }4 E* Y2 U

少上述情况的发生,提高数控编程效率和质量。

: c5 K9 J% A8 y

系统总体结构 

" i+ V; i7 k! g3 Q0 W

    由于OpenGL适用于多种硬件平台及操作系统,其

; ?5 P) }$ b, U0 D5 D/ e) ^3 F

图形库能够制作出高质量的三维图形和高质量的动画

! U2 \4 P Z/ F" g- m" t1 n

效果。因而整个虚拟加工的3D显示引擎选用OpenGL来

4 M" e' o2 H* j

实现。考虑到Visual C++功能强大,开发出的系统执

. U8 X7 p x+ O9 u$ I H

行效率高,且便于控制OpenGL,因而选用Visual C++

; Y9 ]6 J* h. P7 H) [, Q

作为整个虚拟加工系统的开发工具。通过对数控车床

" g; ?- m' K- ^1 f1 ?5 Z$ U

及其加工过程进行仿真,动态显示产品加工过程和结

8 v. ?6 a* {" L; T4 |

果,以实现产品零件的虚拟加工,并验证NC程序的正

8 }5 _" t2 c+ u: L$ g

确性。

! v O& |! X! O" _' p% L7 q

0 C1 l2 K. E$ o1 }2 z3 K |

图1为系统的设计流程图。 

& d4 |' _; }8 G; {0 G3 r; ~( t# T

系统功能实现 

& Z/ F( q Y1 ]$ d7 J$ k

2.1 NC程序编译 

' b$ f" m( Z, E/ B

    由于虚拟加工系统主要用于工业培训及NC代码的

6 f' a4 W3 e |7 ^, F; S7 \& i

正确性检查,故要求系统能够在加工之前通知操作人

* n8 e$ j# P9 \7 y! p* G

员NC程序中是否存在语法错误,上下程序段间的逻辑

; [% x0 \# b) q6 N* J9 D3 [

关系是否正确等,故选用编译方式而不是解释方式来

/ k9 [, @' r& Y a

NC程序进行编码。根据编译原理的思想[1,2],构造出

- H7 v& C) B! a! ` R- \

NC程序编译模块,对NC程序进行语法和词法检查。

2 }" i, U6 _; C* {0 t. @

比如检查地址符字母是否大写,上下程序段之间的逻

2 o8 M( d1 K2 d

辑关系是否正确,圆弧的终点、圆心、半径值等是否

0 e0 ^* U) X8 ^2 W/ a) P

匹配,子程序调用时子程序号是否正确,程序开始字

8 X4 p- k9 J) M7 ?$ j, \0 F3 A

符,程序号,程序主体,程序结束代码和程序结束字

8 [7 n% G' ^7 j5 h7 `

符等是否完整等等。通过词法和语法检查指出错误发

! ?/ O9 c/ @4 N% X6 q9 [" t

生的位置,给出错误的原因。使得虚拟加工系统能够

5 m* x0 Q' v8 m

辅助用户学习NC程序的编制。 

/ t' e( f* g$ N

2.2虚拟车床本体的搭建 

( N* Z% O9 S6 q. X, \

     在数控加工几何仿真系统中,首先要建立虚拟加

2 e% X! f9 y; `3 u( i- j# T3 M

工环境,实现虚拟数控机床。由于机床是由许多零部

$ e$ ?) u) M4 d! f& p

件组成,结构较为复杂,用OpenGL函数进行造型工作

; r' |$ L0 z" c' p- z

量太大,故先在CAD软件Pro/E中造型出数控机床各个

; M: t2 b7 W$ B, l1 @( O* L5 v0 w

零部件,将其导出成标准的三维数据格式STL,在程序

& A" e1 `" B; D& p0 Y/ I, d9 `' }

中直接读取STL文件,并将其装配起来。在绘制机床时

( [' @; S9 K$ X# a( j

利用了OpenGL显示列表技术,将每个零部件都生成一

9 p$ \* B5 f( i$ W# C9 L

个OpenGL的显示列表,这样可以大幅度提高重绘效率,

$ U8 ~4 P7 Q$ H5 D3 b# {

满足实时绘制的要求。图2为虚拟车床的效果图。 

+ O* ?- E, k j( C( w: f' G! {

" G& a# u* L5 Z7 o4 Z+ t: `( I; a2 T

2.3 数控加工过程仿真实现 

+ o9 I# s6 G. r) {2 L

     数控车床的毛坯常用棒料或铸锻件,加工余量较

~ Q2 o" m% @

大,但加工的零件形状较为简单,一般都是回转体零

3 s; e" Y1 z, T) m) B

件。为了避免材料切除过程中毛坯与刀具运动形成扫

5 R' g3 ~* ?; t$ {3 S8 G! s

掠体之间耗时的布尔运算,将毛坯沿 Z 向进行离散,

) \9 I8 K- o; u+ G

将毛坯离散成单位高度的小圆柱,每个小圆柱称为一

6 v2 E5 p6 @; Q2 ^: }0 Y

个薄片,每个薄片的厚度根据精度和显示效果的要求

) u. S% A" J/ J# p& I

来确定,精度越高,切的越薄。每个薄片的数据结构

/ W" r5 L# p& h; l6 g# }9 k

如下:

0 z6 @& Y: S9 y+ ^. L! R

struct PieceCylinder

7 H0 A2 Z2 ]. W+ `& G$ \

{

/ v# K3 O# W4 ]! R# o& s/ y

double m_dZSt;///////起始 Z 坐标

5 _5 o5 n- O9 g9 `9 T% F+ S

double m_dZEd;//////结束 Z 坐标

/ {/ w+ [% S* O& F0 a, ^

double m_dROutSt;////外圆起点半径值

6 z L( y% n% Z" s

double m_dROutEd;///外圆终点半径值

: E6 q B, \* k1 h3 ] D! A

double m_dInSt;///内圆起点半径值

+ e! @/ c" s6 ]: v8 l

double m_dInEd;////内圆终点半径值

$ `% u+ t; T6 t( o# X

BOOL m_bIsDelete;//////该部分薄片是否被切除

% ?8 f* \7 |! _$ w' }! t- @6 e

PiesCylinder* m_pNext;/////下一个薄片数据

0 Z4 O3 [4 A( j' C# e1 C

};

) {( u. n1 @* h& K% E! `8 a

    由于车削加工的回转体常常有内孔,车削时也可

* n, t9 Y' x6 U* r# W: B: ^

能进行镗孔和钻孔操作,因而每个薄片不但要记录所

. Y \, i' @2 ~/ r8 i* O" Y$ l

在位置的外圆半径,还要记录内孔的半径。为了光滑

; Z. Z: y0 b D

的显示加工的复杂回转面,如圆弧面、双曲面等,每

, {% T; ~4 O9 N( d" R; f5 B

个薄片在 Z 轴方向分为起点和终点。其起点和终点处

8 P; c6 [% L4 A3 X

外圆、内孔的半径根据加工中的刀路轨迹单独计算和

+ c( @8 g- a5 E; r; c- Z

存储。

0 M$ ^; ]: X9 M7 @- o% c) N7 L# e

    在车削加工过程中,一方面工件绕其自身的回转

+ y/ M+ Q+ z# A& \& E$ z

轴高速旋转,另一方面刀具在工件的轴平面内沿 X 轴、

j9 h; X$ k) F. j9 |

Z 轴运动,并逐渐从工件上切除多元的材料,加工出

3 V) [) A3 A; w5 C4 b4 ], G! y

所需的外形,每一步刀具所扫掠出的均是一个多边形。

( n. ?0 E4 L5 J. Z$ J0 L

根据每一步的插补指令,求解出该步刀具所扫掠出的

9 q* @% P9 @/ j, e

多边形。将刀具扫掠出的多边形和离散后的工件模型

_0 X/ J. |2 j6 n x' H

求交,并相应修改工件上所有和刀具扫掠多边形相交

: P8 l: t2 B6 r

部分的半径值。将修改半径后的工件重新绘制出来,

0 [( ^. [( P3 h$ ^6 d0 ~) g

即可完成仿真过程的实时绘制。

/ Q s' R. ~! F* m, S

运行实例 

3 s# W' T W+ E6 \' {

    为了验证系统的仿真效果,进行了两个加工实例

, w5 \ n' w3 a" t+ F6 ?2 e- _

研究。由于固定循环的实现比较有代表性,故这里选

: K, \/ ^! M6 k3 T) ?8 p

用固定循环来进行研究。程序O1234G71外圆粗车固

5 H+ D. B) F' B X/ ]6 a

定循环里面包含G70的精车循环,程序O1235G72

& I# s T7 H8 \

面车削固定循环,图3G71精车后的效果图。图4

! ^: E4 V3 | d' m# T: i3 e

G72粗车过程中截图。

6 s- f: Y0 F3 l" R( t- u

O1234

; y1 ^/ h( S8 z) j8 H* U

Sffice:smarttags" />1200M3

! {0 v" Q- B: Y& J' ?

T0101

% R+ y7 J. v g1 G3 N

G50X100Z50

a1 U- F/ r9 D, L

G0X80Z5

4 z+ a0 t5 m. Y4 ]

G71U3R0.2

- n8 ^; [) T) L' M- i- B

G71P00Q60U0.2W0.1F200

. s8 R/ I& T) \

N00G0X6Z1

) V; u+ D. Q5 O+ w" }) M, Z- M

N10G1X10Z-3

9 i) v, ^% z/ x* p# a9 ^$ U

N20G1W-15

& h+ Y9 R% b! f' @+ U

N30G2U30W-15R15

0 @2 j! ?+ r5 p( J- t$ y# C

N40G1W-30

% A# M, w+ l# P; r$ U, T% j0 }

N50G3U30W-15R15

4 c. O1 p2 ]) S: b+ @! p

N50G1U10W-10

% I7 Z3 `* [6 P( {

N60G1W-70

b( ^8 M, z2 K5 G3 ~

N70G0X100Z50

7 e6 v* e' C p$ I: N

G0X30Z5

+ g8 c q# a1 y d/ ~

G70P10Q60

& \& ? ?: X. G# n1 y5 t

G0X120Z20

4 {! `3 c& H# s6 q

M30

2 K, W- ]" N V! ]

$ b# F7 e, I$ C* g. C) j+ Y

O1235;G72横向切削复合循环

1 z Z5 f |0 m# t9 c+ R

S1200M3

3 T- x( r/ C% P. Z. j: E4 t/ ^+ y5 F$ q

T0101

+ F$ B: w+ g$ L- m

G50X50Z50

/ d7 h m: C8 c

G0X32Z5

. _7 h1 S6 J) n/ \0 H8 l

G72U2R0.2

$ ~- Z( E# @/ t! ^2 t

G72P10Q50U0.2W0.1F200;呼叫子程序

: h6 u( Z7 A, Q+ h: \9 Y5 n- O8 b9 }( w

N10G0X80Z-80

$ K. @, L, l! `( p5 e" s& M

N20G1X60Z-70F100

3 z) K1 S$ p3 x* _5 W

N30W8

8 L$ R) @' r" Q3 J

N40G3X30W15R15

8 `8 y7 D8 F) C' x. K2 A4 d

N50G1X18Z2

+ h/ U8 @' o( l) h6 c

N60G0X100Z50

, C3 t4 @$ c# j8 k/ T; @2 y- B! A

G0X30Z5

( w# R0 v4 u+ b

G70P10Q50

6 r# \( C. J @# B1 P U6 D5 G2 A

G0X100Z50

2 j2 V* I- m" X# E" j* f

M30

O' p, y5 d$ h5 d* b

! G6 ~( y/ p: p2 ]) `

结论 

4 @- v8 R, z d

   详细介绍了车床虚拟加工系统的一种实现方法,

. D+ E) m: V& @# f, D0 ~5 A6 y c% V

并采用这种方法实现了车床虚拟加工系统。该虚拟加

! }# C8 P N+ O+ M: y

工系统可广泛应用于真实加工前进行仿真试切,在工

6 S) a$ t/ h6 v* I% {( y4 e

业培训、数控教学等行业中,具有广泛的应用前景。

7 o/ c3 ^% t" B2 V

 






欢迎光临 机械必威体育网址 (//www.szfco.com/) Powered by Discuz! X3.4