数控车B类宏程序的简单入门———(一) 一、前言 很多做数控车的朋友,看着别人都能够熟练的运用宏编程和加工,自己除了羡慕外也曾经多少次暗暗下决心决定学好宏,但苦于没有老师和实际的教材(网络中的教材大多需要有一定的基础才能看懂)一次次的被宏拒绝与门外。我写此文的目的就是希望大家能够对宏有一个基本的了解并且能够入门。下面我就通过一些简单的例子来引导各位进入宏的大门。(文中的宏编程都是以GSK980TDb)
+ h4 U& `3 h0 t7 Q/ [$ m二、宏的简单说明 学习宏就需要对宏的语法有一个简单的了解,下面就通过对宏运用实例的一些简单说明来带领大家学习宏。 1.简单的赋值语句 #101=300 把变量#101初始值定义为300 #102=240 把变量#102初始值定义为240 #103=#101+#102 #103的值是#101和#102的和 #104=#101-#102 #104的值是#101和#102的差
! `* @1 I( B+ h举例1: O0001 N010 G97 恒转速 N020 G99 mm/r N030 T0101 M03S500 调用1号刀具1号刀补 N040 #101=300 把变量#101初始值定义为300 N050 #102=240 把变量#102初始值定义为240 N060 G00 X400 Z#102 快速定位到X400 Z240的位置 N070 G00 X#101Z0 快速定位到 X300 Z0的位置 N080G01 X-1F0.2 切削到X-1的位置 N090 G00 X#101Z#102 快速定位到 X300 Z240的位置 N100 M30 程序结束并返回程序开始
}# s$ V4 S5 I% e% U4 l: }2.复杂的赋值语句 N10 #101=100 N20 #101=#101-2 我想刚开始接触宏且没有接触过计算机语言的人对N20那段程序理解吧,很多人会这样理解 如果#101=#101-2 那就可以推出 0等于-2,其实这里”=”并不是等于号,而是赋值号。 其实可以这样理解 N10#101=100 有个人的名字叫#101他的口袋里有100块钱 N20#102=140" B) z' |$ i; q# R* N
N30#101=#101-5 #101买瓶水花掉5块钱,那么他口袋的钱就只有95块,也就是说买水前他口袋是100块,他从口袋里拿出5块钱付账,然后把身上的钱又放回袋子里,口袋里是不是就只有95块了,而口袋还是这个口袋没有变,但是钱却少了,注意是执行完这个动作。口袋也可以理解为容器,、容器是用来放东西的,可以放钱、可以方米、可以防水、当然也可以放数值,这个容器的大小是我们自己定义的,就像我们可以定义为只有一口袋的钱,也可以定位为1屋子的钱。 N40#102=#102-10 在我们数控系统上是开始#102的初始值是140,但是没有执行前是140,执行这个动作后是130。
+ @) U" ?7 L" z9 z& r+ c$ T; c举例2; O0002 N010 G97 N020 G99 N030 T0101 M03S700 N040 #101=180 #101的初始值为180 N050 #102=2 #102的初始值为2 N050 #103=-45 #103的初始值为-45 G00 X#101 Z#102 快速定位到X180 Z2的位置 G01 Z#103 F0.2 切削到Z-45的位置 G00 U1.0 Z#102 快速定位到X181 Z2的位置 #101=#101-4 执行完此语句后#101的值为176 G00 X#101 Z#102 快速定位到X176 Z2的位置 G01 Z#103 F0.2 切削到Z-45的位置 G00 U1.0 Z#102 快速定位到 X177 Z2的位置 #101=#101-4 执行完此语句后#101的值为X172 G00 X#101 Z#102 快速定位到 X172 Z2的位置 G01 Z#103 F0.2 切削到Z-45的位置 G00 X200 Z200 M30
3 n% N6 l+ t# p F* Z* A0 B: A有人看完这程序感觉这是不是把一个很简单的程序弄的更加复杂了吗?确实是这样,把简单程序弄的更加复杂了,我举这个实例的意思就是让大家简单的运用宏其实还有简单的宏的表示方法,这个例子虽然看上去复杂但是很容易懂,用简单的宏的表达的方法再我们以后的讲解中会举例说明了。 $ l4 l5 }+ d7 g9 O7 x& ~
( M( t! m/ }5 ]4 m8 ^3 L
三、小节
3 {( ~. ~" O. G. \文中的表达或许有错误和不当之处欢迎大家指正,我也是刚刚接触宏程序,对宏的了解也不是很深刻入门而已,学的也是数控专业,只是曾经自学过C语言,对那个比较感兴趣。发表此文的目的是能够让更多人参与到学习宏的生活中来。能够熟练的学习宏和运用宏,如果大家对这个感兴趣,我会把自己关于宏的一些理解写完,供大家互相讨论学习,大家的支持是我最大的动力。
( p4 G9 S5 T |4 V+ T) c/ l q$ C
/ {6 J# g( }8 o1 P) R9 n
* N' I2 Z& v6 P9 Y
5 m, _& J% y3 T8 |2 }( Z( Z/ ]# v: x/ T' g# i F- t4 |
A# T: {: u9 L
- {+ T2 \, C6 d1 m) R
: ]; Y2 B' { U& R+ _" | |