收藏 分享(赏)

Macro 中文用户宏程序开发手册.doc

上传人:weiwoduzun 文档编号:3123669 上传时间:2018-10-04 格式:DOC 页数:53 大小:1.03MB
下载 相关 举报
Macro 中文用户宏程序开发手册.doc_第1页
第1页 / 共53页
Macro 中文用户宏程序开发手册.doc_第2页
第2页 / 共53页
Macro 中文用户宏程序开发手册.doc_第3页
第3页 / 共53页
Macro 中文用户宏程序开发手册.doc_第4页
第4页 / 共53页
Macro 中文用户宏程序开发手册.doc_第5页
第5页 / 共53页
点击查看更多>>
资源描述

1、Open CNC Macro用户宏程序开发新代科技2005/8/1前言本发展环境 OpenCNC 开发的目的在于方便 Macro 程序的撰写及测试,使得程序设计师得以在实际上线执行程序之前可以先作一程序的测试,经由图形化的接口而得知其程序是否有逻辑上的错误存在。目录第一章 OpenCNC 开发环境安装及使用说明 -第一节 系统需求 -第二节 软件安装 -第三节 使用说明 -第二章 用户宏编程的基本概念和基本书写格式 -第一节 用户宏编程的基本概念 -第二节 基本书写格式 -一、用户宏文档格式 -二、普通数控程序段格式 -三、用户宏程序段格式 -第三章 用户宏程序的编写 -第一节 变量 -一、变

2、量及其使用方法 -二、变量赋值和引数赋值 -三、变量的种类 -第二节 变量运算及变量表达式 -一、用户宏运算符 -二、基本算数运算符 -三、算术表达式和运算符优先级 -四、关系运算符和关系表达式 -五、逻辑运算和逻辑表达式 -第三节 用户宏程序的流程控制 -一、条件判断 -二、循环控制 -三、无条件转移 -第四节 库函数 -一、数学函数类 -二、信息传递类 -三、操作辅助类 -四、文档操作类 -五、仿真绘图类 -第四章 宏程序的调用 -第一节 简单宏调用 -一、简单宏调用指令 -二、模态信息的回复 -第二节 模态宏调用 -第 页一、模态宏调用指令 G66 -二、模态宏调用指令 G66.1 -第

3、三节 扩充 G 代码宏指令调用 -第五章 用户宏程序范例 -第一节 用户宏程序编写注意事项 -第二节 用户宏程序编写范例 -一、车床 G21 车床车牙 -附 录 -附录 基本 G 码指令一览表 -附录 地址码一览表 -附录 引数赋值的地址码和变量的对应关系表 -附录 运算符及其优先级 -附录 系统变量分配表 -附录 库函数 -附录 程序调用方法 -第 页第一章 OpenCNC 开发环境安装及使用说明第一节 系统需求个人计算机:80486 以上的中央处理器操作系统:NT 4.0 以上的版本,Windows95 以上的版本(需先安装 MSIE 3.0)硬盘空间:约 1MB 的硬盘空间第二节 软件安

4、装1、将安装磁盘放入 3.5 吋磁盘驱动器中,执行 SETUP。建议在开始安装之前先行关闭其它的窗口应用程序。2、 稍待片刻即可进入下面之安装画面。3、选择 Next 继续安装的工作。4、选择 Browse 更改所要安装的目录或是接受内定的目录,选择 Next 继续安装的工作。第 页5、 稍待片刻即可完成安装。第三节 使用说明操作说明:1、首先选取 OpenCNC 的图标,在图标上以鼠标左键点两下,即可进入主画面:Macro琵 式 _編 輯 區載 入 琵 式 _儲 存 檔 案另 存 新 檔跚 啟 新 檔跚 始 模 擬 停 止 模 擬 重 設訊 息 顯 示 區結 果 顯 示 區座 標 參 數 設

5、 定2、将所欲仿真之 Macro 程序存成*.nc 文件,复制到 syntecOpenCNCCNCfiles底下,或是利用操作系统的注册编辑器(regedit ),自行设定一目录以存放所编辑的*.mmp 文件,选取主窗口中的 Load 选项,将档案加载,选取开始模拟即可,仿真的结果会显示在结果显示区。3、 如欲自行设定一目录以存放所编辑的*.mmp 档,请执行 regedit,选取HKEY_LOCAL_MACHINESOFTWARESyntecOpenCNC2.0,选取选项”MacroStorage”,将设定值改为:C:Program FilesSyntecOpenCNCCNCFiles;”

6、Your files location ”功能说明:1、设定所欲显示的空间:第 页XYZXYYZZXXYZ XY YZ ZX各个空间设定如上所示。2、 坐标参数设定:调整各轴的上限和原点的位置。3、Single Step:设定为 Single Step 可以一步步的执行程序。4、开始模拟:开始执行程序,并将结果显示于结果显示区。5、停止模拟:暂停程序的执行。6、重设:重新设定系统。7、开启新档:开启一个新的 Macro 程序。8、加载程序:加载 Macro 程序。9、储存档案:储存目前的 Macro 程序。10、另存新檔:以新的文件名储存目前的 Macro 程序。11、 讯息显示区:显示错误讯

7、息,此外亦可用来显示程序中各个变量值;命令栏(Command)可以输入所欲察看的变量名称,而变量值会显示在讯息显示区。13、Macro 程序中变量的部份请参照第二章系统变量的说明。第 页第二章 用户宏编程的基本概念和基本书写格式第一节 用户宏编程的基本概念用一组指令构成某功能,并且象子程序一样存储在存储器中,再把这些存储的功能由一个指令来代表,执行时只需写出这个代表指令,就可以执行其相应的功能。在这里,所存储的一组指令叫做宏程序体(或用户宏程序),简称为用户宏。其代表指令称为用户宏命令,也称作宏程序调用指令。使用时,编程人员只需会使用用户宏指令即可,而不必去关心宏程序体中的指令内容。例如,在下

8、述程序流程中,可以这样使用用户宏:主程序 用户宏 O9011G65 P9011 A10 I5; X1Y4;在这个程序的主程序中,用 G65 P9011 调用用户宏程序 O9011,并且对用户宏中的变量赋值:110、45(A 代表1、I 代表 4)。而在用户宏中未知量用变量1 及4 来代表。用户宏有以下四个主要特征:1)在用户用户宏程序中可以使用变量,即宏程序体中能含有复杂的表达式;2)能够进行变量之间的各种运算;3)可以用用户宏指令对变量进行赋值,就象许多高级语言中的带参函数或过程,实参能赋值给形参;4)容易实现程序流程的控制。使用用户宏时的主要方便之处在于由于可以用变量代替具体数值,因而在加

9、工同一类的工件时只得将实际的值赋予变量既可,而不需要对每个不同的零件都编一个程序。下面再以一个示意性的例子来说明用户宏的概念。当图 11 中 A、B、U、V 的尺寸分别为 A20、B10、U40、V 20 时,其程序为:O1;G9l G00 X20.0 Y10.0;G01 Y10.0;X40.0;第 页Y20.0;X40.0;G00 X20.0 Y10.0;但是当图中 A、B、U、V 尺寸变化时则又需要编一个类似的程序。实际上,我们可以将程序写为:O1;G91 G00 XA YB;G01Y V;XU;YV;XU;G00 XA YB;此时可以将其中变量,用用户宏中的变量i 代替,而字母与 i 的

10、对应关系为:A 1B #2U #21V #22则用户宏程序即可写成如下形式09801;G9l G00 Xl Y2;G01 Y22;X21Y22;X21;G00 X1 Y2;M99;使用时就可以用下述用户宏指令来调用:G65 P9801 A20.0 B10.0 U40.0 V20.0;由于地址码 A 、B、U、V 分别与变量1、#2、#21、#22 有着一定的对应关系,执行以上用户宏调用程序段时,实际数值就会将被赋予给对应的变量,其对应结果为120.0,#210.0,#21=40.0,#22=20.0;然后被调用的用户宏程序再按所得到的变量值在宏程序中进行运算或执行指令,结束后返回主程序。实际使

11、用时,一般还需要在这一指令前再加上 F、S 、T 指令及进行坐标系设定等。如上述所示,当加工同一类,但只是尺寸不同的工件时,只需改变用户宏命令的数值即可,而没有必要针对每一个零件都编一个程序。第 页第二节 基本书写格式一、用户宏文档格式数控程序文档中,一般以“%”字符作为第一行的起头,该行将被视为标题行。当标题行含有关键字“MACRO”时整个文档就会以系统所定义的 MACRO 语法处理。如果该行无“MACRO”关键词此档案就会被视为一般 ISO 程序文档格式处理,此时将不能编写用户宏和使用其 MACRO 语法。而当书写 ISO 程序文档时标题行一般可以省略,直接书写数控程序。“MACRO”关键

12、词必须是大写字母。对于程序的注释可以采用“/”的形式,这和高级语言 C+一样。例一:MACRO 格式文档% MACRO /用户宏程序文档,必须包含“MACRO”关键词IF 1 = 1 THENG00 X100.;ELSEG00 Y100.;END_IF;M99;例二:ISO 格式文档% 这是标题行,可当作档案用途说明,此行可有可无G00 X100.;G00 Y100.;G00 X0;G00 Y0;M99;二、普通数控程序段格式数控程序是由若干个程序段所组成,而每个程序段是由若干个程序字和程序段结束组成。例如:N20 G01 X25 Y-36 F100 S300 T02 M03;而程序字又是由地

13、址符及其后面的数字所组成,如 N(地址码)20(数字)、Y(地址码)-36(数字)。在程序中能作指令的最小单位是字,仅用地址码或仅用数字是不能作为指令的。程序段的格式如下:N G X Y Z F S T M ;顺序号准备功能尺寸字 进给功能主轴转速刀具功能辅助功能程序段结第 页字 字 功能字字 字 束程序字程序段内各字说明如下:(1)顺序号 放在程序段前用以识别各程序段,它由地址码 N 及其后面的 5 位以内数字组成的。程序段号不是必须的,可在需要时用,数字号码的顺序也是任意的,可以每段都加也可只加在需要的地方。例如:N20表示该的程序段号为 20。(2)准备功能字 也称 G 功能字,使数控机

14、床做好某种操作准备指令,它由地址码 G 及其后面的两位以内数字所组成。主要指令有:1)动作指令 如 G01(直线插补 )、G02( 圆弧插补);2)平面指令 如 G17(设定 XY 工作平面) ;3)刀补指令 如 G41(左刀径补偿 );4)其它指令。G 代码及功能可参见表 2-1。G 代码分为模态代码(又称续效代码)和非模态代码两种。所谓模态代码是指某一 G 代码(如 G01)一经指定就一直有效,直到后面程序段中使用同组 G 代码(如 G03)才能取代它。而非模态代码只在指定的本程序段中有效。下一程序段需要时必须重写(如 G04)。另外,不同组的 G 代码可以放在同一程序段中。但在同一程序段

15、中出现 2 个以上同一组的 G 代码指令时,则只有最后的 G 代码有效。(4)尺寸字 由地址码、符号及绝对值(或增量)的数值组成。它主要包括以下几项:1)坐标轴的移动指令 例如: X35.418。2)附加轴的移动指令 如回转轴的转动,例如:A45。3)圆弧圆心坐标 它是在圆弧插补时用来指定圆弧圆心的值,用 I、J 、K 表示。(5)进给功能字 指定刀具中心运动时的进给速度,由地址码 F 及其后面的数字组成。这个数字的单位取决于每个数控系统所采用的进给速度的指定方法。例如:F100 表示进给速度为 100mm/min。(6)主轴功能字 指定主轴转速或速度,由地址码 S 及其后面的数字组成,单位为

16、转速单位(r/min)。例如:S300 表示主轴转速为 800r/min。(7)刀具功能字 指定刀号以选择刀具,由地址码 T 及其后面的数字组成,刀具功能字的数字就表示指定的刀号,数字的位数由所用的系统决定。例如:T08表示第八号刀。(8)辅助功能字 又称 M 功能字,主要用来表示机床操作时各种辅助动作及其状态,它由地址码 M 及其后面的两位数字组成。常用辅助代码可参见表 1-3。第 页表 13 常用辅助功能代码 功能说明 代码 功能说明M00 程序停止 M08 切削液开M01 选择停止 M09 切削液关M02 程序结束 M30 程序结束M03 主轴正转 M98 调用子程序M04 主轴反转 M

17、99 返回主程序M05 主轴停止(9)程序段结束 写在每一程序段之后,表示程序结束,一般用符号“;”表示。表 12 地址码一览表功能 地址 意义程序号 :/ O / 程序编号顺序号 N 程序段编号准备功能 G 建立工作方式X、Y、Z 各坐标的移动指令A、B、C 、U、V、W 各附加轴的移动指令R 圆弧半径尺寸字I、J、K 圆弧圆心的(增量)坐标进给功能 F 指定进给的速度主轴功能 S 指定主轴的旋转速度刀具功能 T 刀具选择中用于指定刀号辅助功能 M 实现机床操作的各种辅助动作偏置号 H、D 偏置号的指定,长度偏移用 H,半径补偿用 D暂停 P、X 暂停时间指定子程序号指定 P 在 M98 程

18、序段中,用以指定子程序号顺序号指定 P 在顺序号的位置,程序被重复执行重复次数 L 子程序或固定循环的重复次数参数 P、Q、R 固定循环中参数的指定三、用户宏程序段格式用户宏程序段的书写格式与普通数控程序段格式相似,每个程序段也是由若干个程序字和程序段结束组成,但是在地址码后面的具体数值可以被变量置换。例如:N100 G33 U-(#18*2-#31) W(#23-SIGN(#23)*#33) Q#37 F(#9*#11);可见,两者的不同之处就是组成程序字的地址符后面不仅仅可以是数字,而且可以是变量或者变量的表达式,如 G(地址码)33(数字)、U(地址码) -(#18*2-#31) (表达

19、式)、Q(地址码)#37(变量)。但需注意的是,作为地址码的 O、N、/等不能引用变量,其余功能字均可在用户宏中按上述格式使用,功能字的意义和使用方法不变。第 页第三章 用户宏程序的编写第一节 变量一、变量及其使用方法如前所述,变量是指可以在用户宏程序中的地址码后代替具体数值,在调用宏程序时进行赋值的符号i (i1,2,3,)。使用变量可以使用户宏程序具有通用性。用户宏程序中可以使用多个变量,以变量编号进行识别。1、变量的形式变量是用符号或后面加上变量编号所构成的,即:i(i1,2,3,)例如:51091005也可用表达式 的形式来表示。例如:#100#10011#6/2其实,通过用符号后面加

20、上变量编号也可构成的变量,即: i(i1,2,3,)例如:5 5但一般地,由符号后面加上变量编号构成的变量称为全局变量,不提倡在用户宏程序中使用,具体见后面的介绍。2、变量的引用在地址符后的数值可以用变量置换。例如:若写成 F#33,则当331.5 时,与 F1.5 相同。若写成 Z#18,则当1820.0 时,与 Z20.0 相同。但需要注意,作为地址符的 O、N、等,不能引用变量。例如,O#27、N#1 等,都是错误的。3、未定义变量尚未被定义的变量,被称为空(VACANT)。变量0,0 始终为空,经常被用作空变量使用。二、变量赋值和引数赋值1、变量赋值用户宏程序中变量赋值使用赋值运算符“

21、:=”,不可仅用“=”符号。因为在第 页本系统中符号“=” 是被规定为关系运算符,用来比较是否相等的。例如#30:=100,会将变量#30 赋值为整数 100;而#30=100,将不能为变量#30赋值,实际上是比较变量#30 是否与整数 100 相等。2、引数赋值对于用户宏程序的另外一些接口变量,如何获得实际的数值,这是通过引数赋值实现的,下面我们再回头看看第一章第一节中的用户宏程序调用例子:G65 P9801 A20.0 B10.0 U40.0 V20.0;执行这条用户宏调用程序段后,子程序中的变量就会得到120.0、#210.0、#21=40.0、#22=20.0 的结果,这就是引数赋值。

22、实际上,用户宏编程系统中,地址码 A、B、C、D分别与变量1、#2、#3、#7有着一定的对应关系,当执行用户宏调用程序段时,地址码后面的实际数值就被赋予给用户宏程序中所对应的变量,这个过程就称为引数赋值。除去 G、L 、N、O、P 以外的地址码都可作为引数赋值的地址码,大部分无顺序要求,但对 I、J、K 则必须按字母顺序排列,对没有使用的地址可省略。例如:B_ A_ D_ I_ K_ 正确,而B_ A_ D_ J_ I_ 就是不允许。引数赋值所指定的地址码和用户宏程序中所使用的变量编号的对应关系如表21 所示。表 21 引数赋值的地址码和变量的对应关系引数赋值的地址码 用户宏中的变量 引数赋值

23、的地址码 用户宏中的变量A #1 P #16B #2 Q #17C #3 R #18D #7 S #19E #8 T #20F #9 U #21H #11 V #22I #4 W #23J #5 X #24K #6 Y #25M #13 Z #26注:关于扩充的地址码,X1= ,请使用 GETARG(address)函式读取。三、变量的种类按变量的组成符号和编号可将变量分为局部(Local)变量、系统变量(System)和全局变量(Global),其性质和用途都是不同的。第 页1、局部变量:#1 #50所谓局部变量,就是在用户宏程序内部使用的变量,它只在定义它的用户宏程序中有效,也就是说只有该

24、用户宏程序内使用,在此用户宏程序以外是使用不到这些变量的。但这并不意味着在此外的用户宏程序就不可以再使用i 这样的变量编号,因为在某一时刻调出的用户宏中所使用的局部变量编号i 和另一时刻调用的用户宏(也不论与前一个用户宏相同还是不同)中所使用的i 是不同的,或者说不同的用户宏调用实例中的i 所占用系统内存地址是不同的,即使在多重调用情况下,当用户宏 A 调用用户宏 B 的情况下,也不会将 A 中的局部变量破坏。我们可以用局部变量级的这样一个概念来理解,作用于宏程序某一级中的变量称为本级变量,即这一变量在同一程序级中调用时内容相同,若在另一级程序(如子程序)中使用,则意义不同。本级变量主要用于变

25、量间的相互传递,初始状态下未赋值的本级变量即为空白变量。如图 21,就是用 G 代码(或 G65 时)调用宏时,局部变量级会随着调用多重度的增加而增加,即存在如图的关系:主程序 用户宏 用户宏(第 1 级 ) (第 2 级)G65 P_ O_G65 P_M99O_G65 P_M99局部变量(0 级) (1 级) (2 级)#150#150#150上图说明了以下几点:1)主程序中具有150 的局部变量(0 级)。2)用 G65 调用宏(第 1 级)时,主程序的局部变量( 0 级)被保存起来。再重新为用户宏(第 1 级)准备了另一套局部变量150(第 1 级),可以再向它赋值。3)下一用户宏(第

26、2 级)被调用时,其上一级的局部变量(第 l 级)被保存,再准备出新的局部变量150(第 2 级),如此类推。第 页4)当用 M99 从各用户宏回到前一程序时,所保存的局部变量 (第 0、1、2 级)存在的状态出现。对于没有赋值的局部变量,其初始状态为空,用户可自由使用。2、系统变量:#1000 31986系统变量是根据用途而被固定的变量。主要有以下各种表 22,详情请见附录。表 22 系统变量分配变量编号 用途#1000#1058 模态信息#1500#1624 运行控制/状态#1301#1436 运行时状态变量#1800#1916 模态变量4001 5100 用户参数6001 6032 信号

27、接口7001#7101 模式组变量11000 12999 刀具补偿变量20001 25986 工件坐标系补偿值 (工件零点偏移值)26001 31986 参考点3、全局变量:114095与局部变量相对,全局变量是在主程序以及调用的子程序中通用的变量,它在不同程序级中调用时内容相同,即它在同一系统中的所有程序中都有效,因为全局变量在系统中所占用的内存地址是唯一不变的。因此,对于任何一个全局变量i,它都可以在主程序和用户宏或者用户宏之间相互使用,传递数值,并对其操作。全局变量在114095 的范围内,按用途主要分为四组。其中1400 和656999 两组可以被用户宏程序所使用(可读可写),但它们具

28、有不同的性质和使用方法,前者中的变量常用于一般的运算,可以用操作面板(人机界面)来读取显示;而后者中的变量为保持形变量有记忆性变量,可以被永久保存,即掉电不丢失,在操作面板上可进行读写操作。具体可见表 23。表 23 全局变量使用对照表变量编号 说明 宏程序 人机界面 永久保存1400 一般运算用变量 读 /写 只读 否401655 对应 PLC 寄存器 R1 R255:401=R1655=R255 656999 有记忆性变量 读 /写 读 /写 是1000014095 对应 PLC 寄存器 R0R4095:10000=R0 第 页14095=R4095注:表示具体参见资源分配表表 24 中对

29、应寄存器。而401655 和1000014095 两组变量则影射为 PLC 中系统预定义的一些寄存器,用户宏程序对其的读写规则和使用方法不尽相同,具体可参见表 24资源分配表中对应的寄存器,至于更详细的寄存器资源用途和规则可参阅OpenCNC PLC 发展手册书中介绍。表 24 资源分配表读写规则编号 说明宏程序或人机接口 阶梯程序是否可位(Bit)存取永久保存R0R39 CNC系统接口区R40R49 PLC警报讯息区只读 是 否R50R80 使用者自行定义 读/写 读/写 是 否R81R100 对应到系统参数34013420 PLC参数只读 只读 是 否R101R102 刀具状态 读/写 读

30、/写 是 是R103R255 是R256R511使用者自行定义 读/写 读/写 是否R512R639 是R640R1023CNC系统接口区 只读 否否R1023R4095 使用者自行定义 读/写 读/写 否 否注:表示更详细的 寄存器资源用途和规则可参阅OpenCNC PLC 发展手册一书。第二节 变量运算及变量表达式一、用户宏运算符要对变量进行各种运算操作就要用到运算符,它是“能对变量所存数据进行运算的符号”。本系统的运算符及其优先级如表 3-2 所示。表 3-2 运算符及其优先级运算名 符号 优先级括号 ( ), 1函数调用运算 ( ) 2取负 - 3求补运算 NOT 3乘法运算 * 4除

31、法运算 / 4模运算/求余运算 MOD 4加法运算 + 5减法运算 - 5第 页关系运算 ,= 6相等运算 = 7不等运算 #12) OR (#15 #13) END_REPEAT;第 页X(1.0) Y(1.0);M30;2、WHILE 当型循环语法:WHILE DOEND_WHILE;说明:WHILE 当型循环控制,先判断条件表达式,当条件满足时执行循环体,否则退出循环。例如:% MACRO / 启动 MACRO 语法#10 := 20.;#11 := 15.;#12 := #10/2;#13 := #11/2;#14 := 2.0;#15 := 1.5;G01 G92 X#12 Y#13

32、 F200.0;WHILE (#14 6.0 THENEXIT;END_IF;X(#12-#14) Y(#13+#15);X(#12+#14) Y(#13+#15);#14 := #14 + 2.0;#15 := #15 + 1.5;END_WHILE;X(-5.0) Y(5.0);M02;2、FOR 循环第 页语法:FOR := TO BY DOEND_FOR;说明:FOR 循环控制,式中各参数意义如下循环变量控制循环次数的变量;表达式 1循环计数的起始值,可为整数或表达式;表达式 2循环计数的终止值,可为整数或表达式;表达式 3循环计数每次的累加值,可为整数或表达式;循环体 循环每次执行内

33、容;FOR 循环执行过程为:先给循环变量赋起始值,然后判断循环变量是否为终止值,当循环变量已为终止值时退出循环,否则执行循环体,再对循环变量加上每次累加值,继续判断直到循环变量为终止值时退出循环。范例:% MACRO / 启动 MACRO 语法#1 := 2.0; (*INITIAL RADIUS*)#2 := 8.0; (*FINIAL RADIUS*)#3 := 9; (* SIDES*)#4 := 360.0 / #3; (*THETA*)#5 := (180.0 + #4)/2; (*START ANGLE*)G91 G92 X0. Y0. F300000;G01 X(#1);FOR

34、#6:=#1 TO #2 BY 2.0 DO#7 := 2.0 * #6 * COS(180.0-#5);#8 := (#7/2.0) / COS(180.0/6);#9 := #5;G01 X(1.0);FOR #10:= 1 TO #3 DOG03 X(#7*COS(#9)Y(#7*SIN(#9)I(#8*COS(#9-180.0/6)J(#8*SIN(#9-180.0/6);#9 := #9 + #4;END_FOR;END_FOR;第 页三、无条件转移1、GOTO 转移语句语法:GOTO n;说明:无条件地跳到指定的 n 行号执行,其中 n 可为整数或表达式。GOTO 常和 IF 语句

35、搭配使用,那就是说当程序检查到某个条件满足时用 GOTO 语句去进一步处理,但应尽量少用该语句以提高程序可读性。范例:% MACRO / 启动 MACRO 语法IF( #1 = 2 ) THEN GOTO 100;G01 X10. Y10.;N100 G01 X30. Y30.;M02;2、EXIT 循环中断语句语法:EXIT;说明:循环中断,跳离循环控制;用在循环控制中,通常 EXIT 都和 IF 语句搭配使用,当某个条件满足后就跳离循环。请参考 WHILE 范例。第四节 库函数库函数是系统开发人员根据用户的需要事先编制并提供给用户使用的。在进行用户宏编程时若用户需要就直接在程序中调用即可,

36、具体方法前面已有论述。本系统就提供了丰富的库函数,并分为四类,见表 3-4;此将分别介绍其中的常用函数使用方法,其他函数请参见附录。表 3-4 系统库函数分类类别 用途说明 函数名数学函数类 基本的数学运算,象三角函数、求整,规范化数据等ABS、ACOS 、ASIN 、ATAN、COS、MAX、MIN、SIN、SQRT 、TAN、SIGN、CEIL、FLOOR、ROUND 、STD 、STDX 、RANDOM信息传递类 对系统信息的读取,显示,数据保存等PUSH、POP、STKTOP、ALARM、PRINT、AXID、GETARG、COMMENT、GETTRAPARG、PARAM、SYSVAR

37、、SCANTEXT操作辅助类 辅助完成操作 SLEEP、WAIT第 页文档操作类 对文档或数据的一些操作OPEN、CLOSE、DBOPEN、DBLOAD仿真状态类 在仿真状态下的一些绘图操作DRAWHOLE、DRAWMARK 、SETDRAW一、数学函数类1、ABS调用方法:ABS()函数描述:求一个数的绝对值范例:#1 := ABS(-2.3); / #1 的结果是 2.3注:此处函数内 “参数”既可为实际数值,也可为变量或表达式,以下若无特殊说明均按此处理。2、SIN调用方法:SIN ()函数描述:求一个数的正弦值范例:#1 := SIN(#10);3、ASIN调用方法:ASIN ()函数

38、描述:求一个数的反正弦值范例: #1 := ASIN(#10);4、MAX调用方法:MAX()函数描述:求两个数的最大值范例 1:#1 := MAX(10,20); / #1 等于 20范例 2:#1 := MAX(#2,#3);5、SQRT调用方法:SQRT ()函数描述:求一个数的平方根值范例 1:#2 := SQRT(3); / #2 等于 1.732范例 2:#16 := SQRT(#10);6、SIGN调用方法:SIGN ()函数描述:返回一个数的符号,-1 表示该数是负数,1 表示该数是正数,0 表示该第 页数是零。范例:IF( SIGN(#10) 0 ) THENEND_IF;6、 CEIL调用方法:CEIL()函数描述:返回比一个数大或与其相等的最小整数范例 1:#2 := CEIL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 产品手册

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报