机械必威体育网址

标题: 一例高水平的宏程序,求其数学原理 [打印本页]

作者: 孤城领主领主    时间: 2013-11-5 08:03
标题: 一例高水平的宏程序,求其数学原理
说明:机器上装了个四轴,尾座,及连接两者的连接板。在连接板上有一个能转动0度和90度的旋转气缸。四轴为A轴,旋转气缸为C轴。0 W' s; G1 n4 V! k7 B6 G& c
O7015;
# y8 t2 n( V4 |7 tG91G28Z0.;
) x1 C3 r4 G* m2 [5 P2 _9 R* sG40G80G49G69;
* z- ^) w( i* t* OM06T21;
: A; j) K% }! t0 bM19;(准确定位)
5 d0 a  q# e  z) _" H3 MM17;(探针打开). G) H" ^, `9 C  j. v
M81;(C轴松开)
: v/ ^; d8 K& b3 nM72;(四轴松开)
2 Q/ p! a3 l* I% J3 I7 UG90 G0 G54.1 P10 A20. M82;(M82为C轴旋转至90度)
1 j- y+ ~' v3 ?M71;(四轴锁紧)5 E9 `, n& u$ q
M80;(C轴锁紧)
. W+ h$ |: N( U) Z3 t#7441=#580-[#581-#7182];
. a$ Y0 t6 {5 K. [- v' ^, M* O#7442=#581-[#580-#7181];5 I9 a6 w% R$ |9 ^! u
#7443=#7183;

: C5 X1 z% ~* A. G& o; HG65 P7200 A20. S123 W125 X0. Y0. Z0.;(意思是坐标g54.1P23旋转20度,后得到的新坐标为G54.1P25): E0 V( p% q3 y* E# h" \
G00 G90 G54.1 P26 Y-54.1;
9 `+ I: h# a# x+ wG00 G90 G54.1 P26 X-18.75;
6 Z& A3 A' \( H6 g) c......- r  {6 X5 w0 v; Q
......
# ~" a% I$ e/ C% o* w' kM30;" s. E/ ]1 c  {+ o- d) @
1 D& @1 [4 ?; R% B! k+ }
O7200;
" x2 S- S' T. v% {! ?3 z- t2 v, xG5.1 Q0;
4 m$ B/ ~- I9 C9 O0 {' GIF[#2EQ2]GOTO200;
" v, N, [6 b  LN200;* l7 w5 u3 w, }- a5 ~0 g. b$ \
#8=#580;(C轴旋转中心X)* z: `3 m: s7 v& K! W6 f$ \  M8 Y
#9=#581;(C轴旋转中心Y)
& _/ }8 i+ [' Y* e+ q( p#10=#582;(A轴旋转中心Y)
$ }4 j( S- W! x7 ], X#11=#583;(A轴旋转中心Z)' e, T! q1 W, }- ?3 A" G( g
GOTO300;
0 z! E, \( v: W/ ]9 u* N) lN300;
  B. {( c* v# e; g#12=#0;(THERMAL X)
! u5 b/ @& ~6 K. c#13=#0;(THERMAL Y)3 a$ V* T: f5 z8 R+ X
#14=#600;(THERMAL Z)(#600是Z 向探针的温度 补偿值,这个由探针确定,一般在0.01以内在本程式中为已知的)
' V# I7 [( ~1 lIF[#19NE#23]GOTO1;' ^+ C, j$ B( _' K6 Z& E
#3000=91;. w# Z8 @( ^# o, g& O
N1;
9 Z* F( Z9 F  f; f9 ?; @% j9 KIF[#19GT100]GOTO2;  U7 [% [4 D2 |  Q
N2;+ V% n# Z; v# h# H/ U; M7 A; O
#19=#19-101;
2 _1 {' C* i0 K7 d+ i#100=#19*20;! P( L, F4 i% S2 Z2 p
#101=[#[7001+#100]+#24]-#8;(X DISTANCE FROM ROT X)
/ y4 Q# e5 s* u6 R7 t% F$ |' a#102=[#[7002+#100]+#25]-#9;(Y DISTANCE FROM ROT Y)) t8 Q/ y. q$ \# i% X
#108=[#[7003+#100]+#26]-#11;(Z DISTANCE FROM ROT Z)7 F. V- s# l1 M2 Z. q
N3;
9 [! A/ }$ J. W#101=#101-#12;
- {: l& T0 v$ @  j#102=#102-#13;8 }% D$ q$ F6 w1 p& l# `6 N# O
#108=#108-#14;
, d+ l4 l! s% j4 Z  r8 W: [& h#103=ATAN[#102/#101]/[1];2 x7 _  d0 u' d$ Y6 c4 Z2 a# j3 E
#104=#102/SIN[#103]" L% |$ i7 F5 ^$ F
#105=#103+#3;(NEW C ANGLE)
- b: x+ f% N3 W0 i, Y# T# e#106=COS[#105]*#104;(NEW X)
8 e5 {9 A! U8 O' W#107=SIN[#105]*#104;(NEW Y)

/ N" V! [* _! b! F#120=#107+[#9-#10];
( n' r% F) r0 L#109=ATAN[#108/#120]/[1];' e8 G. h# A9 L/ b, ^( c0 M7 f
#110=#108/SIN[#109];(RADIUS)
9 O* |$ [' a3 T#111=#109+#1;(NEW A ANGLE)
% Z5 \9 o' T* K; ?& }, w#112=COS[#111]*#110;(NEW Y)
/ S+ B9 Q' G& g% h) Y#113=SIN[#111]*#110;(NEW Z)" J5 z. [/ P. m6 ~, m6 S* B
#114=#8+#106+#12;(X WCS POSSITION)6 N8 w& l/ t) H+ e# I
#115=#10+#112+#13;(Y WCS POSSITION)1 ^. N# x: ~- ^% G/ J# ^* [/ y" s) k
#116=#11+#113+#14;(Z WCS POSSITION)7 H. U8 O- E' S4 ~+ E4 }
#117=#0;
9 V$ ]1 D% N' c; t0 s0 I#118=#0.;5 U2 j* n9 Q, B: n3 X
#119=#0.;
' Y5 U7 w6 ]+ z" j0 I: hIF[#20EQ#0]GOTO60
) ]; P5 p  ~+ `+ Q3 RN60;
: \5 e$ E0 }1 m7 sIF[#23EQ#0]GOTO20;) j4 }9 O" ^, M% ?3 Q$ {8 c: I
IF[#23GT100]GOTO10;
/ X) v% ?% O+ J  G3 `% L5 wN10;
  o! o1 v0 U+ C8 e#23=#23-101;9 p7 z) T4 f( o1 f
#100=#23*20;
, t( W( C; \0 H. f) q+ Z2 G#[7001+#100]=#114+#117
- G; f7 T6 q* \) Z0 e6 I9 K#[7002+#100]=#115+#118
3 g$ o$ z- L$ F$ `# B* h& @#[7003+#100]=#116+#119- B4 C# e  Y8 Y+ P4 E
N20;
, |) U% ~% S# I7 \3 `M99;
1 S# T" G0 @; w- y8 n哪位大侠能看出红色标记处的数学原理?) b2 A3 r5 z1 N7 c5 S+ m4 _

作者: karlmayerdesign    时间: 2013-11-5 08:38
看不懂 可不可以留下个脚印
作者: duanyz    时间: 2013-11-5 09:07
井号+数字就是一个变量吧?红色的就是一个运算+赋值
作者: ame0624    时间: 2013-11-5 09:09
这种宏程序要从头才能看懂,红色的就是三角函数的知识
作者: _Lee    时间: 2013-11-5 09:37
本帖最后由 _Lee 于 2013-11-5 10:26 编辑 ! z4 Q( B' H6 N6 u
  x& V* V& }: [+ s' ^2 e
作为菜鸟,说下心中的一些疑惑。上面的很多参数都不全,例如#3、#19、#580、#7441这些具体是什么?我也做过类似的坐标转换,但是没涉及到机床的参数,原理应该差不多。第一个红的应该跟机床自身有关,第二个红的其实很好理解,原理就是三角函数而已。把这点移到另一点,新点在旧坐标系里的坐标值。
9 E0 ?  ~4 c2 W" p0 X" p* V6 ~[attach]301675[/attach]
作者: 惠智网安    时间: 2013-11-5 11:11
这叫高水平?
作者: lukexc    时间: 2013-11-5 12:00
看来落后了,看不懂了!
作者: 冷月梧桐    时间: 2013-11-5 18:42
我可以说这程序很乱吗??
* l+ f9 ~& n3 x  `8 [& C: o$ sG65 P7200 A20. S123 W125 X0. Y0. Z0. d- s0 V( k5 u- C" Y8 N
, X3 n% ~$ \. j. O. w+ x
IF[#2EQ2]GOTO200;
7 d3 A% B% V1 V& M9 {' B+ W8 gN200;
" P4 U1 [' {; r……3 v, Z& C6 l& I( e( y# V: N) [
GOTO300;" ^; Q3 k. k5 c7 ^
N300;
8 K& g+ f% X% [# Z' C8 z5 _* x& S主程序没有传递B(#2)的值,这段IF根本就没用。而且这两段的跳转(目的段就在跳转的下面,无论有没有跳转都将执行这下面的程序)根本就意思,所以后面主题程序还没仔细看,兴趣就少了一大截
作者: 孤城领主领主    时间: 2013-11-6 06:06
冷月梧桐 发表于 2013-11-5 18:42
4 H" G8 m$ U3 _4 I我可以说这程序很乱吗??
) B5 C$ w  G: i$ S+ C* @G65 P7200 A20. S123 W125 X0. Y0. Z0
# R$ f+ U2 x6 h9 S1 c( z
是我自己故意删改,其实这些程序的跳转没有多大意思,我觉得最精妙的是它的数学转换,可惜我一直没有看懂它讲坐标做这样处理的数学根据是什么) P! c/ t' q. k+ J8 n

作者: 孤城领主领主    时间: 2013-11-6 06:09
karlmayerdesign 发表于 2013-11-5 08:38
$ b* x+ G" E5 N看不懂 可不可以留下个脚印

5 x: j9 R/ m8 L2 j" \4 \7 C可以
作者: 孤城领主领主    时间: 2013-11-6 06:10
duanyz 发表于 2013-11-5 09:07 . E- b  f0 Q7 F$ G" ]  P
井号+数字就是一个变量吧?红色的就是一个运算+赋值

3 s0 U4 b* [7 w' G6 k+ _是的
( v/ _  j/ g! U
作者: 孤城领主领主    时间: 2013-11-6 06:12
ame0624 发表于 2013-11-5 09:09
  q1 p- b2 M9 [/ u2 M! w这种宏程序要从头才能看懂,红色的就是三角函数的知识

+ j; i; A- z+ e5 \; J是的。红色的有两部分这两部分共同作用完成一个坐标偏移后的转换。我想不明白这个数学处理的具体原理
: G) E1 S! c* [0 k5 `
作者: 孤城领主领主    时间: 2013-11-6 07:13
_Lee 发表于 2013-11-5 09:37 4 _3 t7 c% g! F8 d& `# T( Z
作为菜鸟,说下心中的一些疑惑。上面的很多参数都不全,例如#3、#19、#580、#7441这些具体是什么?我也做过 ...
. N, d' a5 o' w6 n# @, h
1,#3为C轴所转动角度这里没有赋值,在这里为空变量,运算时当做0.
9 \# o# @- x6 \% t0 a$ o2,#19,为123.这个在程序里已经给了,只是你没有看出来是A类宏。
/ D) N* ^6 L& A3 O# E$ _3,#580,为C轴旋转中心X坐标,包括#581,#582,#583程式里已经有注释了: t( o3 }  p4 V" f8 H' ?( e3 s
4,我开的是1100的小型立加,我将这个运行情景简单概括为,四轴和尾座之间有一个连接板,连接板上安装了一个可以0度,90度转动的气缸,称为C轴。四轴称为A轴。其中沿Y轴看过去,可视为。四轴绕一点I旋转,I点坐标已知为A轴旋转中心。C轴绕一点J旋转,J点坐标已知,为C轴旋转中心。现在当A为0度,C轴为0度时找了一个工件坐标系G54.1P10.A轴转动20度。求转动后原工件坐标系中心坐标
. \9 K1 O: t- T5 V4 p; g, y# ^   单将C轴的旋转用数学化的语言表述为,在XY坐标系第二象限中(这个不是很确定是否是第二象限)有一块铁板,铁板中心为一点O坐标(a,b),铁板上有一点B坐标(c,d),铁板绕中心O旋转一个角度D(本程序中D为0,其实就是#3),求此时A坐标点?
) {+ G2 V9 m( c) {% ]& q1 w& o   程序中对这个问题的处理方法是,先引申出一个点E,该点坐标为:
. l5 z. g- F( F9 q$ _% F                              E的X坐标为=a-(b-d)0 g/ ?+ I, v4 {0 L% e
                              E的Y坐标为=b-(a-c)3 @2 I* f6 W* n, p2 p/ M$ e; F
                    此即为第一段红字部分内容。3 I5 a" f% S! A) H* h
    然后计算出了一个角度,该角度为F=ATAN[(a-c)/(b-d)]/[1];
3 s% o& |" z  i+ x    根据F和(a-c)计算出斜边#104* p. r  q0 m: |4 D7 [. B( O" M
    然后一个新角度H,H=F+D,
4 V$ Q6 h" F2 _/ A    然后计算出#106=COSH*#104(NEW X),#107=SINH*#104然后所求问题的答案出来了,A点X坐标为a+#106,Y点坐标为b+#1072 }0 F! @5 C  _
以上就是我所理解的程式的部分意思,我看不懂这么做的数学根据是否成立,这也是我请大家帮忙解决的地方,证明这个数学模型
) e3 k! w% I" q( ?5,#7441(G54.1P23X),#7442(G54.1P23Y),#7443(G54.1P23Z)8 @1 B# o3 [" i( u, N! i) |
   #7181(G54.1P10X),#7182(G54.1P10Y),#7183(G54.1P10Z)
! j' s: ^. ?: @$ `- Y
作者: 爽歪歪沙    时间: 2013-11-6 11:20
谢谢分享
作者: 爽歪歪沙    时间: 2013-11-7 09:43
有难度
作者: CAO123369    时间: 2019-7-3 17:43
这里使用了正弦定理和角度转换,A=2RSINA     COSA=SIN(π/2-A)
  v3 N% k8 i* Z  M6 O& t
作者: 小槑132    时间: 2019-9-22 21:09
不明觉厉
作者: spinachzwx    时间: 2021-9-28 19:17
感谢各位分享的信息!




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