加工中心宏程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
><B>FA NUC</B><B>宏程序</B><BR><B>宏程序</B><B><BR></B>用户宏程序:<B R>虽然子程序对编制相同加工操作的程序非常有用,但用户宏程序由于
<BR>允许使用“变量算术和逻辑运算及条件转移”使得编制相同加工操作<BR>的程序更方便更容易,可将相同加工操作编为通用程序如:型腔加<BR>工宏程序和固定加工循环宏程序,使用时加工程序可用一条简单指<BR>令调出用户宏程序和调用子程序完全一样<BR><B R>变量<BR>说明:<BR>1,变量的表示<B R>2,变量的类型<BR>3,变量值的范围<BR>普通加工程序直接用数值指定G代码和移动距离。
例如:G01和X100.0<BR>使用用户宏程序时数值可以直接指定或用变量指定,当用变量时,变<BR>量值可用程序或用MDI面板上的操作改变。
<BR>计算机允许使用变量名,用户宏程序不行变量用变量符号#和后<BR>面的变量号指定。
<BR>例如:#1<B R>表达式可以用于指定变量号此时表达式必须封闭在括号中。
<B R>例如:#[#1+#2-12]<BR>变量根据变量号可以分成四种类型。
<BR>变量号变量类型功能。
<BR>#0 空变量该变量总是空没有值能赋给该变量。
<BR>#1 #33 局部变量局部变量只能用在宏程序中存储数据,例如运算结果当断电时局<BR>部变量被初始化为空,调用宏程序时自变量对局部变量赋值#100 ,#199,#500,
#999<BR>公共变量公共变量在不同的宏程序中的意义相同,当断电时变量#100
#199初始化为空变量#500 #999 的数据保存,即使断电也不丢失。
<B R>#1000 系统变量,系统变量用于读和写CNC运行时各种数据的变化。
例如:刀具的当前位
<BR>置和补偿值。
<BR>局部变量和公共变量可以有0值或下面范围中的值:
<B R>-1047到-10-29<BR>或<BR>10-29到1047<B R>如果计算结果超出有效范围则发出P/S报警No.111<B R>#1=#2+100<BR>G01 X#1 F300<BR><BR>! 小数点的省略<B R>! 变量的引用<BR>!双轨迹双轨迹控制的公共<BR>变量<BR>! 未定义的变量<BR>当在程序中定义变量值时小数点可以省略<BR>例当定义#1=123变量#1的实际值是123.000<BR>为在程序中使用变量值指定后跟变量号的地址当用表达式指定变量<BR>时要把表达式放在括号中<BR>例如G01X[#1+#2]F#3<BR>被引用变量的值根据地址的最小设定单位自动地舍入<BR>例如<B R>当G00X#/以1/1000mm的单位执行时CNC把12.3456 赋值给<BR>变量#1实际指令值为
G00X12.346;<B R>改变引用变量的值的符号要把负号放在#的前面<B R>例
如G00X #1<BR>当引用未定义的变量时变量及地址字都被忽略<BR>例如<BR>当变量#1的值是0并且变量#2的值是空时G00X#1 Y#2的执行<BR>结果为
G00X0<BR>对双轨迹控制系统为每一轨迹都提供了单独的宏变量但是根据参<B R>数No.6036和6037的设定某些公共变量可同时用于两个轨迹<B R>当变量值未定义时这样的变量成为空变量变量#0总是空变量<BR>它不能写只能读<BR>a 引
用<BR>当引用一个未定义的变量时地址本身也被忽略<B R>当#1=<空>当
#1=0<BR>G90 X100 Y#1<BR>G90X100<BR>G90 X100 Y#1<BR>G90 X100
Y0<BR><BR>!变量值的显示<BR>b 运算<BR>除了用<空>赋值以外其余情况下<空>与0相同<B R>当#1=<空>时当#1=0时<BR>#2=#1<BR>#2=&l t;空&g t;<BR>#2=#1<BR>#2=0<BR>#2=#1﹡5<BR>#2=0<B R>#2=#1﹡
5<BR>#2=0<BR>#2=#1+#1<BR>#2=0<BR>#2=#1+#1<BR>#2=0<BR>(c)条件表达
式<BR>EQ和NE中的<空>不同于0<B R>当#1=<空>时当#1=0时
<BR>#1 E Q #0<BR>成立<BR>#1 EQ#0<BR>不成立<BR>#1 NE #0<BR>成立
<BR>#1 N E #0<BR>不成立<BR>#1 GE #0<B R>成立<BR>#1 GE #0<BR>不成立
<B R>#1GT #0<BR>不成立<BR>#1 G T #0<BR>不成立<BR>! 当变量值是空白时变量是空<BR>!符号********表示溢出当变量的绝对值大于99999999 时或下<BR>溢出当变量的绝对值小于0.0000001时<BR><BR><B R>! 限制程序号顺序号和任选程序段跳转号不能使用变量<BR>例<BR>下面情况不能使用变量
<BR>#1<BR>/#2G00X100.0;<BR>N#3Y200.0;<B R><BR>2 系统变量<BR>说明
<B R>! 接口信号<B R>! 刀具补偿值<BR>系统变量用于读和写NC内部数据例如刀具偏置值和当前位置数据<BR>但是某些系统变量只能读系统变量是自动控制和通用加工程序开发<BR>的基础<BR>是可编程机床控制器PMC 和用户宏程序之间交换的信号<BR>表15.2(a)接口信号的系统变量<BR>变量号功能<B R>#1000
#1015<B R>#1032<BR>把16位信号从PM C送到用户宏程序变量#1000<BR>到
#1015用于按位读取信号变量#1032 用于一次<BR>读取一个16位信
号<BR>#1100 #1115<BR>#1132<B R>把16位信号从用户宏程序送到PMC变量
#1100<B R>到#1115 用于按位写信号变量#1132 用于一次写<BR>一个16位信号
<BR>#1133变量#1133 用于从用户宏程序一次写一个32 位的<BR>信号到
PM C<BR>注意#1133的值为从99999999到+99999999<BR>详细情况请见连接说明书B-63503C-1<BR>用系统变量可以读和写刀具补偿值<B R>表15.2(b)刀具补偿存储器C的系统变量<BR>刀具长度补偿H 刀具半径补偿D补偿<BR>号几何补偿磨损补偿几何补偿磨损补偿<B R>1<B R>200<BR>400<BR>#11001
#2201<B R>#11201 #2400<BR>#11400<BR>#10001<BR>#2001<B R>#10201<B R>#2200<BR>#10400<BR>#13001<BR>#13400<BR>#12001<BR>#12400<BR>当偏置组数小于等于200时也可使用#2001 #2400<BR><B R>! 宏程序报警<BR>!停止和信息显示<BR>! 时间信息<BR>表15.2(c)宏程序报警的系统变量<BR>变量号功
能<BR>#3000 当变量#3000 的值为0 200 时CN C 停止运行<BR>且报警<B R>在表达式后为不超过26个字符的报警信息<BR>CRT 屏幕上显示报警号和报警信息其中报警号<BR>为变量#3000的值加上3000<BR>例<BR>#3000=1 T OOL N OT
FO UND<B R>报警屏幕上显示3001 T OOL N OT FO UND 刀具未找到<BR>程序执行停止并显示信息<BR>报警号功能<B R>#3006 在宏程序中指令#3006=1
ME SSAGE<BR>时程序执行前面程序段并停止<BR>当最多到26 个字符的信息由控制输入<BR>和控制输出括住在同一程序段中编程<BR>时信息被显示在外部操作信息屏幕<B R>时间信息可以读和写<BR>表15.2(d) 时间信息的系统变量<B R>变量号功能<BR>#3001 该变量为一个计时器以1 毫秒为计时单位<BR>当电源接通时该变量值复位为0当达到<B R>2147483648毫秒时该计时器的值返回到0<BR>#3002该变量为一个计时器当循环起动灯亮时以<B R>一小时为单位计时该计时器即使在电源断<BR>电时也保存该值当达到9544.371767小时<B R>该计时器的值返回到
0<BR>#3011 该变量用于读取当前的日期年/月/日年/<BR>月/日信息转换成十进制数例如1994 年9<BR>月8日表示为19940928<BR>#3012 该变量用于读取当前的时间时/分/秒时/<B R>分/秒信息转换成十进制数例如下午3点<BR>34分56秒表示
为153456<BR><BR>!自动运行控制可以改变自动运行的控制状态<BR>表15.2(e)
自动运行控制的系统变量#3003<B R>#3003 单程序段辅助功能的完成<BR>0有效等待<BR>1无效等待<BR>2有效不等待<BR>3无效不等待<BR>当电源接通时该变
量的值为0<B R>当单程序段停止无效时,即使单程序段开关设为ON也不执行单程序段停止,<BR>当不指定等待辅助功能M S和T 功能完成时,在辅助功能完成之前,<p></p></P>
< >程序执行到下列程序段而且分配完成信号DE N不输出<BR>表15.2(f) 自动运行控制的系统变量#3004<B R>#3004 进给暂停进给速度倍率准确停止<BR>0 有效有效有效<BR>1无效有效有效<BR>2 有效无效有效<B R>3 无效无效有效<BR>4有效有效无效<BR>5 无效有效无效<BR>6有效无效无效<BR>7 无效无效无效<B R>当电源接通时该变量的值为0<BR>当进给暂停无效时<BR>1 当进给暂停按钮被按下
时,机床在单段停止方式停止,但是当<BR>用变量#3003使单程序段方式无效时单程序段停止不执行。
<BR>2 当进给暂停按钮压下又松开时,进给暂停灯亮,但是机床不停<BR>止程序继续执行,并且机床停在进给暂停有效的第一个程序段,<BR>当进给速度倍率无效时总是100%的倍率而不管机床操作面板上<BR>的进给速度倍率开关的设置
。