变量编程宏程序

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

3.变量的种类 变量分局部变量,公共变量(全局变量)和系统变量三种。 局部变量#1~#33 局部变量是一个在宏程序中局部使用的 变量。当宏程序A调用宏程序B而且都有变量#1时,由于 变量#1服务于不同的局部,所以A中的#1与B中的#1不 是同一个变量,因此可以赋于不同的值,相互间互不影响。 公共变量#100~#149、#500~#549 公共变量贯穿于整 个程序过程,同样,当宏程序A调用宏程序B而且都有变量 #100时,由于#100是全局变量,所以A中的#100与B中 的#100是同一个变量。 系统变量 系统变量是指有固定用途的变量,它的值决定系统 的状态。系统变量包括刀具偏置值变量、接中的输入与输 出信号变量、位置信号变量。
(四)宏指令的编程步骤 编制宏指令程序时,一般由分析图形特征、建立数 学模型、定义变量和程序出口、编 写宏程序四个步骤组成。其中分析图形特征是关键, 只有先抓住图形的变化规律才可以进行下面三个 步骤;建立数学模型:用数学的方法表达图形特 征,一般可采用直角坐标、极坐标及参数方程等 形式,在建立数学模型时要尽量使模型有利于程 序的编制;确定自变量和程序出口:找出数学模 型中的自变量和条件跳跃中的逻辑表达式;编写 程序:用宏指令和数控语句来描述图形的数学模 型。
1.控制指令 由以下控制指令可以控制用户宏程序主体的程序 流程。 1) IF[<条件式>]GOTOn(n=顺序号):<条件式>成立 时,从顺序号为n的程序以下执行:<条件式>不 成立时,执行下一个程序段。 <条件式>种类如表 2
2) WHILE[<条件式>]DOm(m=顺序号): : ENDm。 <条件式>成立时从DOm的程序段到ENDm的程序 段重复执行;<条件式>如果不成立,则从ENDm 的下一个程序段执行。 3)无条件转移(GOTOn):例如,GOTO10表示转移 到N10程序段中。
2.抛物线 1)抛物线方程 2
x 2 py
2)编程实例 O0002; N10G97G99G40; N20T0101; N30M03S500; N40G00X80Z2; N50#1=40 ; N60WHILE[#1GE0]DO1; N70G01X[2*#1+0.5]F0.3; N80Z[-[#1*#1/20]] ; N90U1 ; N100G00Z2 ; N110#1=#1-1 ; N120END1 ;
例:若# 100 = 35,# 101 = 10,# 102 = 5依次执 行如下指令,其运算结果如下: # 110=# 100÷# 101; 结果为3;小数点后的数值 被舍掉。 # 111=#110×# 102; 结果为15; # 120=# 100×# 102; 结果为175; # 121=# 120÷# 101; 结果为17;
变量值是不含小数点的数值,它以系统的最小输入 单位为值的单位。如:当#100 = 10时,X # 100代 表0.01mm。另外,用G65指定的H代码,对刀具 长度补偿的偏置号的选择,没有任何影响。 在使用宏程序运算命令时,当变量以角度形式指定 时,其单位是0.001°。在各运算中,当必要的Q、 R没有指定时,系统自动将其值作为“0”参加运 算。而且运算、转移命令的H、P、Q、R都必须 写在G65之后,因此可以在G65以前的地址只有O、 N。 由于变量值只取整数,当运算结果出现小数 点后的数值时,其值将被舍掉。另外,还应注意 宏程序的运算顺序与普通运算的区别。
N130S1000 ; N140G00X80Z2 ; N150#2=0 ; N160WHILE[#2LE40]DO2; N170G01X[2*#2]Z[-[#2*#2/20]]F0.1 ; N180#2=#2+0.1 ; N190END2 ; N200G00X100Z100 ; N210M05 ; N220M30;
2)公共变量 与局部变量相对,公共变量是在主程序,以及 调用的子程序中通用的变量。因此,在某个用 户宏中运算得到的公共变量的结果#i,可以用 到别的用户宏中。公共变量主要由#1~#149及 #500~#531构成。其中前一组是非保持型(操 作型),即断电后就被清零,后一级是保持型, 即断电后仍被保存
N130S1000 ; N140G00X50Z2 ; N150#2=0 ; N160WHILE[#2LE90]DO2; N170G01X[2*24*sin[#2]]Z[40 *COS[#2]-40] F0.1 ; N180#2=#2+1 ; N190END2 ; N200G00X100Z100 ; N210M05 ; N220M30
ຫໍສະໝຸດ Baidu
#1=0; WHILE[#1GE-180]DO1; G01X[59+2*6*SIN[#1]]Z[12* COS[#1]-27]; #1=#1-1 END1
#1=20; WHILE[#1GE11.5]D O1; G01X[2*#1]Z[-[50#1*#1/8]]; #1=#1-0.1; END1
(三)变量的数学运算和转移指令 如下表所示A类宏指令的运算具有功能强大的运算 与转移指令。
1.宏程序的运算指令 宏程序的运算命令通过指令G65的不同表达形式实现,其指令的一 般形式为: G65 H m P # i Q # j R # k ; 格式中各参数的意义如下: m:可以是01~99,表示运算命令或转移命令的功能; # i:存放运算结果的变量; # j:需要运算的变量1;也可以是常数,常数可以直接表示,不带 “#”; # k:需要运算的变量2,也可以是常数,常数可以直接表示,不带 “#”; 指令所代表的意义为:#i = #j ○ # k;○代表运算符号,它由H m指 定。 如:G65 H 02 P #100 Q #101 R #102 ;表示 #100 = #101+ #102 ; G65 H 03P #100 Q #101 R15; 表示 #100 = #101-15 ; G65 H 03P #100 Q-100 R #102; 表示 #100 =-100×#102; G65 H 04P #100 Q-100 R #102; 表示 #100 =-100÷#102等等。
(4)G65 H83 Pn Q#J R#K; n:目标程序段号 例 G65 H83 P1000 Q#201 R#202; 当#201>#202时,转到N1000程序段,当 #201≤#202时,程序继续执行。 (5)G65 H84 Pn Q#J R#K;n:目标程序段号 例 G65 H84 P1000 Q#201 R#202; 当#201<#202时,转到N1000程序段。当 #201≥#202时,程序继续执行。 (6)G65 H85 Pn Q#J R#K; n:目标程序段号 例 G65 H85 P1000 Q#201 R#202;
刘世平
一、变量编程基础知识 二、变量编程实例 三、变量编程应用
1.什么是变量编程? 将一群命令所构成的功能,像子程序一样登 录在内存中,再把这些功能用一个命令作 为代表,执行时只需写出这个代表命令就 可以执行其功能。 2.变量编程的种类? 1)A类型的宏程序 2)B类型的宏程序
2.变量的种类 按变量号码可将变量分为局变量、公共变量、 系统变量,其用途和性质都是不同的。 1)局部变量 #1~#33所谓局部变量就是在用户宏中局部使用 的变量。换句话说,在某一时刻调出的用户宏 中所使用的局部变量#i和另一时刻调用的用户 宏(也不论与前一个用户宏相同还是不同)中所 使用的#i是不同的。
z cos a
x sin b
O0001; N10G97G99G40; N20T0101; N30M03S500; N40G00X50Z2; N50#1=90 N60WHILE[#1GE0]DO1; N70G01X[2*24*sin[#1]+0.5]F 0.3; N80Z[40*COS[#1]-40] ; N90U1 ; N100G00Z2 ; N110#1=#1-1 ; N120END1 ;
2.运算指令 在变量之间和变量与常量之间可以进行各种运算, 常用的运算符如表 3
1.椭圆编程 1)椭圆方程 2 2 x y 标准方程
a
2
b
2
1
参数方程 x
cos a y sin b
2)编程实例 分析: x sin b θ=0代入公式 z cos a x sin b θ=1代入公式 z cos a . . . x sin b θ=90代入公式 z cos a 得出90个点坐标,然后G01插补 G01 X1 Z1 G01 X2 Z2 ... G01 X90 Z90
3)系统变量 系统变量是根据用途而被固定的变量,主要有 以下几种(表1)。
在常规的主程序和子程序内,总是将一个具体的数值赋给一 个地址,为了使程序更具有通用性更加灵活,在宏程序中 设置了变量。 1.变量的表示 一个变量由#符号和变量组成,如:#I(I=1,2,3,…)。如下例 所示: 例 #100,#500,#5等 2.变量的引用 将跟随在地址后的数值用变量来代替,即引入变量。 例 G011X#100Y-#110F#120;当#100=300.0、#110=80.0、 #120=800时。 上式即表示为G011X300.0Y-80.0F800;
2.宏程序的转移指令 宏程序的转移指令与运算命令相类似,也是通过指令G65 的不同表达形式实现,B类宏程序的转移指令有如下几 种情况 (1)G65 H80 Pn; n :目标程序段号 例 G65 H80 P120; 无条件跳转到N120程序段。 (2)G65 H81 Pn Q#J R#K; n:目标程序段号 例 G65 H81 P1000 Q # 201 R # 202; 当#201=#202时,转到N1000程序段,当#201≠#202时, 程序继续执行。 (3)G65 H82 Pn Q#J R#K; n:目标程序段号 例 G65 H82 P1000 Q#201 R#202; #201≠#202时,转到N1000程序段,当#201=#202时,程 序继续执行。
相关文档
最新文档