力士乐mtx10vrs编程手册以下提供了控制的信息_第1页
力士乐mtx10vrs编程手册以下提供了控制的信息_第2页
力士乐mtx10vrs编程手册以下提供了控制的信息_第3页
力士乐mtx10vrs编程手册以下提供了控制的信息_第4页
力士乐mtx10vrs编程手册以下提供了控制的信息_第5页
已阅读5页,还剩514页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

120-2500-B389-以下手册提供了关于Rexroth120-2500-B389-没有明示, 内容。者将承担损失赔偿。者将承担损失赔偿。在实用新型或设计的专利授予或授予中 (DIN34-1)。真实性规格数据仅用于产品说明,且不被视为某种担保,除非在合同中有明示的确方BoschRexroth:+490)935240-0■传真:+490)935240-48/注 andand重要使用说 说 电气驱动装置和控制设备安全说 安全说明-总 安全说明的使用和 使用不 特定说 防止移 数控编程的基本原 简 标准和CPL编程的概 在零件程序中标识CPL元素 遵守CPL和标准语言元间的解释次数 NC编程 子程序—后通过DIN/CPL标识符影响过 程序 指 程序 概 模 非模 块编 子程 概 带P地址的子程序调 无P地址的子程序调 使用G和M代码的自定义子程序调 通过CALL命令在CPL中调用子程 概 CPL参数列 宏编 概 概 标准数控块和CPL块中的GoAhead(GOA)向前跳转至标准数控 GoBack(GOB)向后跳转至标准数控 GoCond(GOC)有条件转至标准数控 GoTo无条件跳转至标准数控 CPL跳转(GOTO)跳转至任何程序 概 CPL指令:CASE-LABEL...LABEL-OTHERWISE- CPL指令:IF-THEN-ELSE- 概 CPL指令:FOR-STEP-TO- CPL指令:REPEAT- CPL指令:WHILE-DO- 变量 变量 简 整数型变量 浮点变量(实数 标准NC编的变 评价CPL中函数错误的变量 管理数据 变量信息 赋 赋 数 概 关系运算"=、>=、>、<>、<=、 其他基本CPL元 常 概 整数常量 浮点常量(实数 概 CPL函数:WAIT(,<Waiting CPL函数 BlkNmb 概 等待PLCNC位接口处的状态:WAITA/ 等待永久CPL变量值:WPV/ 编写永久CPL变量:SPV/ 运动停止,直到到达某个轴位置:ASTOPA/ 达到基本工件位置前运动停止BSTOPA/ 达到基本工件位置前运动停止:WSTOPA/ 取消停止条件:OFFSTOPA/ 模块数控函数组概 采用依照DIN66025(包括补充标准)的语法的数控函 概 G代 快速进给"G0"中的线性插 进给模式中的线性插补 圆周/螺线/螺线-N插补"G2、 概 停留时间 切向圆周 样条编程 带系数样条编程(样条类型 B样条(NURBS)(样条类型 B样条近(样条类型 B样条近参 过冲限制速率控制"G8(SHAPE...)","G9(SHAPE...)","G9(ASHAPE...)","G9(X..., "AsynchrShapeOrder, 平面切换"G17、G18、 自由平面选择(与WCS无关 螺纹切削 螺纹切削 刀具路径补偿"G40、G41、 可编程零点偏置 零点偏置(ZO)"G53"、"G53.1-G59.1"至 公制编程 进给至参考点坐标 补偿切换打开"G78"、补偿切换关闭 绝对尺寸编程"G90"、相对尺寸编程"G91"、局部绝对尺寸编程"AC(...)"、局部相对尺寸编程 时间编程 回转轴每转进给编程 恒定切削速率"G96"、直接速度编程 3D刀具半径补偿"G140、G141、 定位:斜面"G151- Hermite样条(样条类型 M代 有条件程序中断(Cond.Progr.Stop)"M1、 主轴顺时针旋转"M3、M103、M203",主轴顺时针旋转和冷却液打开"M13、M113、 主轴逆时针旋转"M4、M104、M204",主轴逆时针旋转和冷却液打开"M14、M114、 对正主轴/定位主轴"M19、M119、 手动换档步进选择"M41...44、M141...144、 F地址 异步轴的速率 Omega地址(FeedRate) 编程主轴速度 D修正 ED补偿 使用一般语言语法的数控函 概 区域"区域 赋予逻辑轴名称 从NC中参数 向NC写入参数 执行所有组的活动辅助函数 轴耦合"AxCouple、 关闭主轴的C轴模式"AxisToSpindle、 关闭主轴的C轴模式并等待"AxisToSpindleWait、 改变最大轴加速率"AxVel、AVE",保存最大轴加速率"AxVelSave、 定位:工件位置修正"BcsCorr、 使用缓存数控块输入进行下一块 倒角编程"ChLength、CHL""ChSection、 自动探测转角和直线 G0插补配置"ConfG0、 选择轴转换"Coord、 样条耦合表"CoupleSplineTab、 曲线参数插补"CurveParamInterpolation、 启用D修正表"DcTSel、 从MP应用轴设置"DefAxis、 将通道主轴复位至MP"DefSpindle、 加工中测量"FlyMeas、 选择准停定位窗口"IPS1、IPS2、 CO编程"KvProg、 进给率100%"OvrDis、OVD","OvrEna、 启用定位表"PmTSel、 冲程释放时间(Inpos窗口)"PtInpos、 PTP进给运动"PtpMove、 输入工具:镜像"Scale(...), 确定NC重启调整程序的主轴语法 概 限制最小速度"SSpMin 运动编程"SSpMove 主轴定向"SSpOri 速度编程"SSpSpeed 开启主轴的C轴模式"SpindleToAxis、 开启主轴的C轴模式并等待"SpindleToAxisWait、 TCS中的进给"TCM(,, 在程序坐标中定义TCS"TcsDef、 概 配置缩回数据 配置动力学 启用缩回 切换主轴操作模式 影响通道IF信号 写入SERCOS参数"WriteId、 概 将ID列表中的ID编号写入驱动 使用扩展SERCOSID编号写入SERCOS参数"WriteId3、 概 将ID列表中的扩展ID编号写入驱动 激活零点偏置表"ZoTSel、 CPL函 概 概 概 D ToolCorrectionValue 概 文件 概 OPENW, 关闭文件 文件 文件 LJUST, NCS耦 概 概 ceMentTable ceMentValue 缩放 PLC接 概 概 连接STRING表达 ElectricElectricDrives|BoschRexrothand常规XML 概 ZeroOffsetTable ZeroOffsetValue" 附 ASCII字符 简 准停定位关闭时的路径斜坡 准停定位开启时的Inpos窗口 G0时的Inpos 数控 SERCOS通 简 短语 注 WAIT命 文件等待永久CPL变 版本参数 简 CPL 服务和支 索 说BoschRexrothBoschRexrothRexrothIndraMotionMTX控制用加工刀具的进给驱动器、主轴和辅助轴通过SERCOS另外,这还需要使用集成PLCI/OPLCCNCRexrothIndraMotionMTX典型的应用包

将RexrothIndraMotionMTX用于上述领域之外或指定文档和技术数据所述之BoschRexroth尚未发布针对此特定用途的RexrothIndraMotionMTX。安全说明(言版本。 警首次调设前请阅下说明,降人身和或设备损坏的风险 确保供货组件适合自己的应用,并检查本文档中关于组件使用的信息,只有确定所安装的机器和装置符合国家、有关应用的安全标准和规可在相应文档(组件和系统工程规划手册)EMC用户必须考虑的国(USA): 国家电气规范 电气制造商(NEMA),以及当地工 国家消防(NFPA):标准国际电工警告标志和级别说:程度(ANSI535.4-2002确定插图2- 分类(根据ANSIZ使用不当高压和高工作电流!电击导致或重伤勿动!不移动电机可能会导致、重伤或材料受损错误连接导致高压!电击导致或受伤警的人员警设备壳体表面高温!受伤!灼伤由于挤压、切割、碰撞或错误操作因电池操作不当而受伤避免接触电气部件这一部分是针对电压高于50伏的设备和驱动组件的说明。高压!有生命、遭电击或受重伤50V30,在工作前让电容充分放电。开始工作前先测量接通设备前,请正确安装随设备提供的防护盖和防护装置。打开设备之对于电压50的电气驱动和滤波元件,还应注意以下安全说壳体高压和高泄漏电流!电击导致或受伤流高于3.5mA。该设备连接全部使用横截面不小于10mm2 使用保护性特低电压防止电电压在5至50伏之间的所有力士乐产品的接头和接线端均为PELV系统。1)错误连接导致高压!电击导致或受伤如果包含高于50伏电压和电路的设备的特低电压电路(如主连接)警 士乐产品,那么连接的特低电压电路必须符合PELV要求。1)"保护性特2)"保护性特防止移

通常情况下,驱动组件中的装置已经足够防止已连接的驱动装置中出现操作故障了。但为了人身安全,尤其是为了防止人身和材料损坏的,仅靠是不能保证绝对安全的。在集成的功能发挥作用之前,任何情况下勿动!发生生命、受伤、重创或材料损坏 为避免发生事故、受伤和/或材料损坏,请执行 避免在电子电路和电源线附近使用高频、和无线电设备。如无法避免避免运行和安装过磁场和电磁场影载流导体和电机中的永久磁铁所产生的磁场和电磁场,对于佩戴心脏起搏器、金属植物助人会造成重人身。 警 接触电机壳体表面!灼伤60C,140°F以电机关闭后,在接触前请先长时间充分冷却。冷却时间最长需要140分对于某些应用,最终产品、机器或设备制造商会按照相应的安全采取操作和安装过的保因操作不当而受伤!因挤压、切割、碰撞而造成人身使用适当的安装和设备因操作不当而受伤 性(有和腐蚀) 环境保护和废物处理是很重要的。从法律规定的角度来看,产品中所包含的电池在海陆空中都被视为品(有 把用过的电池与其他分开处理。遵守产品装配国当地的。受压系统保

因受压线路操作不当而 有害。将对生态有害的介质与其他分开处理。遵守产品装配国当地的。数控控制器通过数控程序(零件程序)接收在机加工工件所需的所有信息。由于数控程序的结构是可变的,因而可采用各种工艺(铣削、车削、磨削等)对几乎任何类型的工件进行加工。零件程序不仅含有描述刀具路径相对于工件运动信息被细分为各种基本轮廓元素(NURBS)关于数控程序结构的基本指南,请参阅DIN66025。DIN66025"数控机床的程序结构"(第1和第2部分)于国际标准:ISO/DIS6983和ISO/DP6983IndraMotionMTX通过控制器中的"文件系统"来管理数控程序,也可以与外部驱对于MTX的数控程序,标准的文件扩展名是".npg 在特殊情况下,文件名最多容许30个字符(前提是相关程序不得被链CPL标准或者DINCPL编程(CPL:客户编程语言)标准或DIN编程可用于描述运动顺序及其边界条件(几何学、运动学、动力IndraMotionMTX的语法包括DIN66025(G和M代码)中规定令,以及有关G代码的重要补充和附加的常规类语言语法元素。CPL(客户编程语言)BASICPascalCPL+,-,*,=,<,>,使用CPL可实现:CPLCPL部补时,CPL部分是不存在的。CPL为了能提供有效的程序解释,程序的CPL部分必须特别标识:CPL(行号)在块启动时直接进行标识(参见第3.8.2章"块编号"第38页)。20 在CPL块20中,将值"U"赋予字符串变量"Ax1$如果CPL元素被编入标准数控程序块(例如,由于符号变量编程),则N10G1

N20助CPL表达式进行定义。30 CPL30100.5"XPOSN40G1X[XPOS 在数控程序块N40中,变量"XPOS"的内容被传递为遵守CPL和标准语言元间的解释次数示例 N523KvProg(X[@KVX])执行块N523时,用于X轴的CO值为永久变量N523@KVX(例这种情况下应使用"WAIT"函数以避免不确定性。WAIT命令可防止进行块准示例 同步块准N523KvProg(X[@KVX])N523XCO值为永久变量备已经进行了同步处理,CO 程序调用。此外,为CPL变量创建相应的管理结构,运行时控制器将这个成功程序的结果就是生成一个数控程序对应的表。IndraMotionMTX的所有表均保存在 下,该被指定在机床参数308000004中。程序表的名称由零件程序名称加扩展名".l"(l:)来确定。控制器启动过,会搜索所有现有表的相关数控程序。该搜索根据机床参数308000001中设定的搜索路径来进行。无对应零件程序的表将被删如果已经的数控程序被再次选定,则IndraMotionMTX会使用现有的表,前提是零件程序在此期间未被修改。在程序变更之后,再重新进行 子程序—如果在要的程序中调用子程序,IndraMotionMTX检查是否存在任何现有的表。如果有,将不再重新上述子程序。这样,将极大地缩短步如果零件程序不含CPL部分(跳转、CPL变量、CPL表达式等),而只包含数控块(DIN)和子程序调用,则执行前无需对该程序进行明确。在这种情况下,选择程序时可将切换软键Lrog/INrog"设定成"INProg"如果执新;,能不会执行该子程序的程序,因为只有这时才能启用变量名。因此,如果不 通过DIN/CPL标识符影响过 考虑切换软键"CPLProg/DINProg"的当前位置。如需这么做,必须在第一个程序行开始的时候就对关键字"(N)"进行编程。同样在这种情况下,如果需要,可在执行该程序时重新子程序,另外,可在调用程序中,紧接在子程序调用后写入关键字"DIN"(无圆括号(3.941)(DIN)(CPL"进行编程。这样,即使已经使用"DINProg"设定选定了相应的程序,或者该程序已经作为子程序通过DINID进行了调用,仍将强制生成该程序的表。 单

如果采用CPL变量(例如,P[UP$])进行子程序调用的编程,则调用程如果直接对子程序进行编程,而不是重新(如由于子程序调用的DINIDPUPDIN),调用程序和被调用的子程序就是同一单元的一部分;但是,该子程序所调用的其他子程序属于不同的单元。CPL为每个单元重新定义全局变量。因此,如果属于不同单元的各个的或结构化的CPL变量来执行。插图3- 单程序指

程序块所含字符不得超过512 则信息,请参阅第6章"使用一般语言语法的数控函数"第171页章节。

>用);常常把辅助功能也编程为M函数; 6171示例 概

CPL-值-CPLUPUP-PUP1UPUPCPLP值插图3-2:部分字的组无论是否有部分字2,都会产生G和M代码:GM例如,G0、G17、G54、M0、M3、M19…."G0","G41","G141","G52.0","M30", 则信息,请参阅第6章"使用一般语言语法的数控函数"第171页章节。3在数控块中被编程为独立程序字的参数,例如,"G2X10I1.3J2.5G94F1000"。这些都是在DIN66025中定义的主要参数。–对于在外括圆括号且位于无特定语法元素的参数列表内的参数,只能编入指定位置的值,例在本手册中,对于无法同时使用的现有参数(可选参数),在两个 则:TangToolOri({SYM<s>},{ 的值替换SYM的通配符<s>,同时用合适的值替换ANG的通配符<a>。通常,语则会指定<s>和<a>的允许值。 无特定语法元素的参数列表:该列表类型中的所有参数都是常量,可将其直接转换为数值或者名称。必须按 X1X们被赋予通道名"Y3"和"Y列表开始和中间处的可选参数不是必需的;但必须将相应的逗号编入程序。做,列中参数位才保持唯性。中间无参数的编程 结尾无参数的编程 使用CPL10 字符串变量"AX1$"被赋予"U"20:

将值"V"赋予字符串变量"AX2$N100 G17UV "和CPL20 1.2赋予变量"VALUEN30 XYCOY在变量"VALUE"中的数值,而X轴接受值40 将值"X"赋予串变量"AXISB$",并将值2赋N50 对"X"轴启用缩放,缩放系数为260DIMPARAMETER$(10) 为最大长度为10个字符的字符串创建字符数70N80 把2m/s2的轴加速度赋予"X"轴带后续值的参数 半径(R...)和插补参数(I...、J、 (F.)主轴速度和切削速率(S.、Si=.(ED.)D(D.) 非整数采用小数点写入;后缀零可以忽略(例如,"X100.500"相当于示例 带后续参数列表的参数:.,向量定向(O(...),ROTAX(..

IndraMotionMTX够识别以下属性: 和G90/G91无关,以绝对方式解释已编程位置说明。 和G90/G91无关,以增量方式解释已编程位置说明。 无论"PosMode"函数的编程以及机床参数的设定怎样,均以最 "PosMode"函数的编程以及机床参数的设定怎样,均以正 "PosMode"函数的编程以及机床参数的设定怎样,均以负 rpmMOD/min示例 N10G90G1F1000X10X轴完全进给至位置10,Y轴进一步增量进给15mmN20G91X=AC(15 进给5mmN30 N40 B(加工路径:350)定位到0N100 以1000rpm转动异步B回转两个部分字之间使用分隔 "0"-"9","","=","+","-","(",–或–示例 1.N10OVE 适当的分隔符:2N20 在第二种情况中,""或"+"也可以作为分隔符使用;在赋负值的情况下,"-"也轴和坐标名称的特殊特性 MP100300001MP701000010MP701000020MP708000010MP708000020符:"="、"+"、"-"或者空格。定义了轴名称"X"和"X2XXXXXXXX2X2X2X2X2- –或–在含有"M2"、"M02M30"M5.3M159示例:N250 N250是最后的程序块 见第第3.7.1章"模态"第36页页)。在主程序的末端,系统返回到该程序的起点,并等待下一次"NC启动"。如果"M2"、"M02"或"M30"已被用作主程序的末端,则模态状态被设定为初始串的M30部分。模 –或–NC零件程序示例 N10 将进给率设定为1000mm/min。F1000以模态方式N20G0X0 在快速进给至位置X0/Y0过进行线性插补。G0N30 在快速进给至位置Z100过进行线性插补N40G1(IPS1)X10Y101000mm/min线性插补(在进给过;采用细缩放定位窗)到X10/Y10位置。G1G0N50X20 1000mm/min线性插补(在进给过;采用细缩放定位窗)到X20/Y10位置。N60G1(IPS2)X30Y301000mm/min线性插补(在进给过;采用粗缩放定位窗)到X30/Y30位置。N70X40Y40 500mm/min线性插补(在进给过;采用粗缩放位窗)X40/Y40(500)FF500N80G0X0 在快速进给至位置X0/Y0过进行线性插补G0G1(..G0N90 N200 非模

NC零件程序示例 N10G1 激活线性插补。G1以模态方式作用将进给率设定为1000mm/min。F1000以模态方式作N20G75.1X100 进给至测头1。(G75.1)N30 以进给率线性插补到Z100。G1保持模态有效 语法 $<channel块编

示例 N10 该程序仅可在通道2中运行 CPL必须CPL标准数控块的块编号包含地址字母"N"纯CPL块(示例:"10",CPLCPL个备注字符都会使程序文件的大小增加1个字节。 无论是标准数控块还是CPL块,可以完全隐藏任何程序行。如需要对所有行提用圆括号"("和")"标准数控块中的注释 用圆括号"("和")"将标准数控块中的整个备注括起来。由此,也可以编制"嵌套备注",例如,当您希望隐藏某个已包含了带圆括号备注的程序行N10G0(<remark N20G0(NIPS(<remark 在带有可选参数列表的函数后面,如果该列表丢失的话,可用"//"来启用备注。这类备注可选择用"\\"终止。CPL块中的注释 10REM***SRtodemaskthestatus示例 ;N10<standardNC ;20 隐藏CPL (N30<standardNC (40 隐藏CPLN50G1X0Y0 N60G1(IPS(<remark> N70X10(Y10 标准数控块N80G0//<remark> N90G0//<remarkX0 100REM CPLMSG(<NoteGMSG(<Note也可以通过编制注释,为机床操作人员提供操作指南。为此,必须在同一行或者下一行编制(例如)M"。这样,可确保程序在注释文本输出后被立即终"NCtart"示例: 程序代N60(MSGmeasureworkpiece!)N70 (MSG<notetext>)(*MSG<notetext>)(MSG,<notetext>)(*MSG,<notetext>)(GMSG<notetext>)(GMSG,<notetext>)别的标识符(),这样不仅可以提高可读性,还可以提高加工效率,因为(3.941。(请参见第3.11章"编程和跳转指令"第51页 决策/分(3.1255概

(3.1357级CPL有关终止子程序的信息,请参见第3.6章"程序结束"第36页。够阻碍可达到的最大嵌套深度。有关详细信息,请参阅第3.9.8章"配置和错误排除"第48页。MTXV088MTXV09 允许的子程序嵌套采用以下图表表示。N1是程序的第一个块,在块N9中调用下一个子程序。M30完成相应子程序。name: N9N9PN9PN9P

1stsubprog 2ndsubprog 24thsubprogIndraMotionMTX用CALL(调用)函数从CPL描述 直接在P地址后面编入子程序名称。也可以编定子程序所在 CPLP需这么做,必须用方括号将CPL变量括起来。通过"PUP$"CPLP{<path>}<name>P{<path>}<name>{DIN}orP[<CPLvariable>] <CPL插图3- 带有P地址的SRCPLSR有关信息,请参阅CALL命令(第3.9.6章"通过CALL命令在CPL中调用子程序"第44页)。法示例 N40Pdrill 调用N50 SRN50:N140G0X10Y0 首先,在快速进给中定位到X10/Y0N150 200DIMSR$210SR$="drill220描述 也可在没有前导P地址的情况下调用子程序<name><name>或[<CPL<CPL插图3- 无P地址的语 示例 N40 "XSRN50 SRN50:100DIMSR$110120N100:::::

注意"X1SR"SR"X1""X"且名称为"SR"的程序并不存在。N140G0X10Y0 首先,在快速进给中定位到X10/Y0N150:

"XSR"。在使用在使用CPL变量的子程序中,无法使用MTX数控程序重 使用G和M使用M(MP309000003MP309000004),使用G(MP309000001MP309064G8M有关在特定机配置子程序调用的详细信息,请联系相关系统管SR调用的编程GM自定义模态子程序参见有关在特定机配置子程序调用的详细信息,请联系相关系统管以下情况适用于模态SR调用的编程 CALL命令允许从纯CPL程序调用子程序。CALLCPLCALL以"DIN"标识符(为影响进程)结束指令。CALL命令的的CPLCPL指令必须编入新的CPL块。IFA%=1CALL:通过"DIN"标识符影响LINK(

将把由此从进调用的子程序排除。例如,采用这种方式,可使包含数个SR调用的主程序的进程大大加快。IFA%=1CALLP999SR"P999"。在下列情况下,强烈建议将"DIN"调用的子程序只包含DINDIN"作为注释插入要调用子程序的第一行。示例:待调用程序中的"DIN"标识N10 N20:

或使用地址参数列表CPL使用参数地址字和参数值的组合()在需调用程序中编示例:"A"传递实数值"3.4N10Psubroutine(A3.4)N20Psubroutine(A=3.4)N30Psubroutine(A3.4)N30".4"赋予变量"A3"或将值"3.4(CPL变量)"A"。控制器寻找最后一个字母数".4""A3"A3"4N40Psubroutine(A3.4)。这种方式特别适用于字符串的传递。需要与地址参数如需使用地址参数列表向子程序传递参数,则必须在第一行编入关键字"(ADR_PARA)"。附加标识"(DIN)"确保不会该子程序。CPL为了传输多个参数,地址字和参数值对相互之间使用逗号分隔:N50Psubroutine(A3,B5.2)。不允许两个或多个连续逗号。与CPL参数列表相反,参数顺序不重要。子程序中不赋值给非编程地址。CPLCPLP1、P210N20Psubroutine(A=3.4)N30PN10G0X0N20G1X[A]说明主程序将值5.5赋予局部变量"AN20中,子程序被第一次调用,值3.4"A"3.4N30调用程序的局部变量"A"的值被赋予子程序的变量"A"。10N20Psubroutine(A=3.4,B[A*3],10IFB=NUL2030N10G1X[A]40DIM(UP$,CPL

N20P说明主程序将值5.5赋予局部变量"A"。块N20中,子程序被调用,值3.4被赋予子程序AB0赋予变量B。此后,在N10X轴进给至位置3.4,Y轴进给至位置3*5.516.5,因为调用子程序时3.4被赋予A16.5被赋予B。第三个参数规定子程序中调用了另一个被称为"OneSubroutine"的子程序。如果所选择的调用程序无 用PDIM命令(而非DIM命令)。(参见CPL参数列表)描述:CPL,可以向子程序传递参数。为此,必须在紧随子程序调用后在子程序调用过被转移的参数始终都是通过变量P1、P2、P3,根据参数参数也可以通过P1TEST、P2XYZP1、P2等变量后面的大写字母将被忽略(P1=P1TEST=P1XYZ)。CPL字符串常量(在引号中:"<CPLstringCPLCPLSR999P1P30P2P250IFA%=151CALLP999[2.75X% 1FACTOR=P1:XVALUE%=P2%N1G1X[XVALUE%*FACTOR]N2G22K[CORRTAB%]则必须使用PDIM命令。语法 示例 N10:N50P10PDIMP1$TEST

NC88通道错误 提高机床参数7060002103CPL通道错误 NNN每次子程序跳转使用了一个数控块。如果编定了过多子程序跳转而无进给运7060通道错误 CPLCPL错误,则所要求的CPL的堆栈内存高于设定值。机床参数707000010,增加索引1通道错误825或 机床参数707000010概

属性(DIN或CPL)宏一般仅在被配置的环境(DINCPL)NC例宏的名称 替换文本 ACC(X3.0,Y3.0,Z3.0)程序块 N10G0(NIPS)作用类似 N10ACC(X3.0,Y3.0,Z3.0)G0(NIPS)更复杂的示例见《RexrothIndraMotionMTX带参数的

为了以更灵活的形式设计宏,用户能够定义可传输化的宏。如果零件程序需调用带参数的宏,参数必须接圆括号中接宏名称。参数使用逗号分隔。如果参数需含有逗号或圆括号,参数必须写在引号之间。如果需在参数文本中传递引例宏的名称 替换文本 程序块 10Note("\"ValueA$=\",A$作用类似 10PRN#(0,"ValueA$=",A$例宏的名称 替换文本 G0编定块 作用类似 N10G0X[@J]宏的名称 移替换文本 G0(NIPS)ACC({2}) N10Move(X100Y100,"X3.0,Y3.0,Z3.0") 概

N10G0(NIPS)ACC(X3.0,Y3.0,Z3.0)X100Y100M5标准数控块(DIN)的编CPL块的编GoAhead(GOA GoCond(GOCCPL(GOTOCPL跳转GOTO在时已启动。但是,对于标准NC命令而如果使用 CPL跳 GOTO,则不允许跳转至CASELABEL...LABEL–OTHERWISE–ENDCASE命令。NCGoAhead、GoBack、GoCondGoTo不得用于从CPL重复或者CPL分支指令跳出或者跳入。这影响到下列CPLREPEAT–WHILE–DO–FOR–STEP–TO–IF–THEN–ELSE–CASE–LABEL...LABEL–OTHERWISE–标准数控块和CPL是跳转指令的跳转标记。MotionMTX对标准数控块(DIN)和CPL块 标准数控块(DIN)中的编程 232CPL块中的编 GoAheadGOA)向前跳转至标准数描述 GoAheadGoAhead插图3- GoAhead语示例 N40GoAhead:N80:

标准NC跳转命令GoAhead不得用于从CPL重复或CPL分支指CPL3.11.1章"概述"第51页页。GoBack(GOB)向后跳转至标准数描述 有关所需编程的信息,参见第第3.11章"编程和跳转指令"第51页GoBackGoBack插图3- GoBack语示例 N40:N80GoBack:

向后跳转至目标"LABEL1"。如果在N40N80间没有补充的跳转命令,则程序将在N40和N80之间进行无限循环。标准NCGoBackCPLCPL分支指令跳入或跳出。有关相关CPL指令的信息,参见第第3.11章"51页页。GoCond(GOC)有条件转至标准数描述: 号处继续行序。请意下内容:GoCondGoCond如果目标块编号采用先导零编制(例如,"N0020..."),则这里也必须编入先导零。("GoCondN0020插图3- GoCond语示例 10N20GoCond::::N090:

在N20前的所有块都已经处理之前,停止块N20效,则跳转至N090。NCGoCondCPLCPL令跳入或跳出。有关相关CPL3.11章"标签编程和跳转指令"第51页页。特殊特性和限制:在块准备和块执行之间的时间段内,通道接口信号"有条件跳转"予考虑。如果相关应用不允许这种行为,则用户必须在以前的程序行中编制请注意,在向文件开始的方向进行跳转时,可能会意外造成无限循GoTo无条件跳转至标准数描述 GoToGoTo如果目标块编号采用先导零编制(例如,"N0020..."),则这里也必须编入先导零。("GoToN0020")插图3- GoTo语示例 N40GoTo:N080GoTo:

N40如果您未能在N40和N080之间编制另外的跳转命令,则程序将在N40和N080之间陷入无限循环!特殊特性和限制 请注意,在向文件开始的方向进行跳转时,可能会意外造成无限循标准NC跳转命令GoTo不得用于从CPL重复或者CPL分支指令跳入或跳出。有关相关CPL3.11.1章"概述"第51页页。CPL跳转(GOTO)跳转至任何程序描述 可将CPL块编号、标准数控块编号或""(跳转标记)指定为跳转目语法 示例 10GOTO 跳转至块N2030GOTO CPL块120GOTO 跳转至150如果使用了如果使用了CPL跳转GOTO,则不允许跳转至CASELABEL...LABEL–OTHERWISE–ENDCASE命令。有关编程条件的信息,参见第第3.11章"编程和跳转指令"第51页概"跳过块"函

标准数控块(DIN)的"跳过块"CPL指令IF-THEN-ELSE-CPL指令CASE-LABEL...LABEL-OTHERWISE- 的开头编入"/"符号。"qCh_Bckash(跳过块)示例 :

接口信号"跳过块"被激活/N100 块N100被忽略 接口信号"跳过块"被取消:/N300 块N300被处理: 指令:CASE-LABEL...LABEL-OTHERWISE-描述: 在程序中,经常需要查询某个整数表达式或者整数型变量的两个以上的状态。在这种情况下,只有采用多重嵌套的F命令才能通过F命令进行查询。这就要求额的算时间并削弱程的读性和性。CASCASE<integerexpression>LABEL<int.constant>[,<int.constant>][::CASELABEL<integerconstants其中一个等于<integerexpression>的值。现在,在下一个LABEL或者如果没有满足该条件的LABEL命令,则程序将分支到OTHERWISE(如果OTHERWISE没有编制)直接分支到ENDCASECASE<commandCPLCASE示例 10CASEA%20LABEL030LABEL4050LABEL46070OTHERWISE8010CASE(INT(X/Y)+C%)20LABEL1,2:X=130LABEL40X=250LABEL60X=070OTHERWISEX=08010CASEINTFIELD%(1,2)20LABEL1,2,3:GOTO30LABEL4,5,6:GOTO40OTHERWISEGOTO50NC跳转命令GoAhead、GoBack、GoCondGoTo于从CASE-LABEL...LABEL-OTHERWISE-ENDCASE命令中跳入如果使用了CPL跳转GOTO则不允许跳转至CASECPL指令:IF-THEN-ELSE-描述 "IFTHEN则执行程序,或者ELSE语法 在同一行中条件作为"IF",并且在同一行里以"THEN"THENELSEELSEENDIF与循环命令的中止条件相似,IF命令的条件可以包含算术、三角和逻辑运算。误消息。所以,编程人员要养成审核IF命令的完整性的良好习惯。示例 10X=2030IFX>=10040GOTO50ELSE60GOTO7090概

NC跳转命令GoAhead、GoBack、GoCondGoTo于从IF-THEN-ELSE-ENDIF命令中跳入或者跳出。CPL指令FOR-STEP-CPL指令REPEAT-CPL指令CPL指令:FOR-STEP-TO-描述:例如,如果重复指令的终止条件必须是程序进程的直接结果,则必须有一个该计数器不要求为FORNEXT循环进行专门编程。要确定计数变量(整数),必须指定计数的始点和终点。如果计数增量不是1,则可单独指定步长语法:FOR<countingvar.>=<startcount>[STEP<stepsize>]TO<end示例 10FORI%=0TO2030NEXT在这个例子中,0180SINXSINE30I%示例 程1020SCHRITT%=2:ANFANG%=1:ENDE%=350030FORZAEHLER%=ANFANG%STEPSCHRITT%TO PRN#(1,"COUNTER:“,ZAEHLER%,"STEPWIDTH:“6070程序执行之后,会在"P222"示例 程COUNTER:1STEP3COUNTER:4STEP5COUNTER:9STEPCOUNTER:20STEPCOUNTER:56STEPCOUNTER:272STEPCOUNTER:3447STEPNC跳转命令GoAhead、GoBack、GoCondGoTo于从FOR-STEP-TO-NEXT命令中跳入或者跳出。CPL指令:REPEAT- REPEAT语法 REPEAT<routine>UNTIL示例 3040 LoopuntilX=50UNTIL:NC跳转命令GoAhead、GoBack、GoCondGoTo于从REPEAT-UNTIL命令中跳入或者跳出。 表示:"WHILE当满足条件时,DO执行程序!"。语法 WHILE<condition>DO<routine>示例 30WHILESD(9)=0 SD(904050:NC跳转命令GoAhead、GoBack、GoCondNC跳转命令GoAhead、GoBack、GoCondGoToCPL变量CPLCPL CPL虽然标准NC和CPL编程在形式上是分开的,但在理论上,变量名称为"X"的轴,但变量"X"也可以定义。字母。包含字母"N"且后面只有数字的变量名称不是有效的变量名8 示例 10NUMBER1 20#NUMBER2%= 变量

30@36%= 40@ABCD% 中间器的可能要求,因此需要变量的有效范围。为此,须对以下变量局部变量仅在这些变量的程序中有效。当该程序到达程序结尾(EP)时,变量为局部变量,从而不会因为它们各自名称的相似性而引起。一旦返#(数字符号、门或者哈希)字符进行标识。一旦全局变量被赋值,则可被整个程序的所有其他程序部分的内部进行、和/或修改。全局变量在程序结束(EP)后被删除。址。永久变量在单独的区,并且在程序结束后、控制器复位后,以及@1@100(有关整数型的详细内3.14.3章"变量类型"第63页)。为提高程序的可读性,此类此外,永久一维域变量@_R可使用100个"双精度"元素。@_RES_DOUBLE和@_RES_DWORD这两个永久变量保留用于内部应用,不应使用。可定义永久变量不通过系统软件的某个组件自动,而必须通过用户进入名为"wmhperm.dat(用于机床制造商提供的专有数据)和名为手动语法将在"wmhperm.dat"和"anwperm.dat"的文件结构部分予以 FEPROM发现的条目来创建"可定义永久变量",但前提是这些变量之前不存在。上述名称的文件中未被的现有"可定义永久变量"将被删除。16个字符是有效的。如果两个变量名17CPL已定义的永久变量可以是整数、实数、双精度、布尔或字符型。可通过@IJKL!@MNOP?@QRST$或布尔型域变量的最大域指数65535。字符型域变量的最大域指数为1024。 @WZNR(1)4 被赋值为0.2。永久变量的总内存空间:100千字节(102400字节内存空间(字节12@1-久变量数据34(4)=(1)-(2)-5带有100个双精度型元素的永久域6DOUBLE内部78(8)=(4)-(5)-(6)-插图3- 所有永久变量的内存空内存空间(字节911、4整数:4字节实数:4字节布尔:1(9)+(10)+插图3- 可定义永久变量的内存空双精度型和整数型"可定义永久变量"的100678/44=100678/(16+4+20)=100678/(8+4+20)=(100678-16-20)/4=(100678-16-20)/8="wmhperm.dat"

插图3- “可定义永久变量”的数的且以ENERDEF<variabletype>@<variablename>"wmhperm.dat"和"anwperm.dat"的示DEFINTDEFINT DEFREAL DEFDOUBLE DEFBOOL DEFCHAR DEFINT DEFREAL DEFCHAR 永久变量应用示例 10@1=15@2_COUNTER=20@ABCD%=

25@EFGH=30@IJKL!=35@MNOP?=40@PSTR1$=45@WZNR%(2)=50@WZKOR(3,2)=55@PSTR2$(3)=结构化变量可以被系统数据(SD)替换,但由于兼容性的原因而被保留(参见第7.13.2章"结构化类型的系统数据"第415页)。以"SV."开头。需要以CPL指令的所有结构化变量都必须通过用户进入名为machdef.dat的文件进行"手动"。在系统启动过,控制器先在根中搜索文件"machdef.dat",然后在用户FEPROM中搜索,最后在FEPROM中进行搜索。第一个发现的文件将在NC启动时被检查,同时将创建管理数据和结构化为0。"machdef.dat"文件仅用于定义结构化变量。每个定义都占用一个单独行,并以DEF<variabletype>SV<variablename>;<variabletype>和<variablename>都是字符串,可以包含小写或者大写字对于所有的变量名称,前16个字符是有效的。如果两个变量名称仅17CPL示例 DEFDBT1Rec_t "DBT1Rec_t"型结构化变量的定CPL指令可以SV.A及其所有的结构组件。各种结构组件相互之间均10SV.A.Hd=DBSEA("DBT1",-1,-浮点变量(实数

一个整数型变量占用32识。其值范围从-2.147.483.647到+2.147.483.647。在这种情况下,变量占用32位的内存空间。值范围为+/-1038。这对应有7个浮点变量(双精度逻辑变量(布尔域变量(数组

双精度型的实数变在这种情况下,变量占用64位的内存空间。值范围为+/-10308。这对应有通过为变量名称添加一个问号"?"来标识这类变量。逻辑变量(布尔型变量)的值只能为TRUE(真)或者FALSE(假)。可将其用于整个程序执行过ARRAY(数示例 100FIELDVAR(1.1)=110FIELDVAR(2.1)=120FIELDVAR(1,2)=130FIELDVAR(2,2)=140FIELDVAR(1,3)=150FIELDVAR(2,3)=最多65536最多1024DIM<variablename>(<fieldsize1>[,<fieldsize2>]采用DIM进行尺寸标注不适用于"可定义的永久变量"。相反,对这些变量的尺寸标注必须在文件"wmhperm.dat"或者"anwpwerm.dat"中进行。

字符变量由末尾的"$"符号标识。这种类型的变量即可以是单一的字符,也可 。 示例 1REMstringvariableAB(lengthDIMREM3stringvariablesCD(length5DIMAB$=CD$(2)=可能的域(数组)(X=是%XX!X?X$X全局最多8位有效字符(含"#"字符%XX!X?X$X永久1-永久%XX!X?X$X插图3- 变量概在进行这类赋值时,请注意,标准NC编的CPL表达式必须采用方括示例 10ANGLE=20VAL1=30VAL2=40XPOS=50YPOS=60FEEDRATE=1000N80ScaleN90G1X[POS]Y[POS]CPLCPLCPLCPL变量ERRNO(被调用的函数可在其内返回错误)可作为传递参数被传递到CPL函数,该函数在出现错误时会生成运行时错误。CPL变量ERRNO是可编入CPL函数的可选参数,在CPL函数中可将其作为如果ERRNO未被编入,则在出现错误时,CPL函数会生成运行时错误或者警ERRNOCPL不会生成运行时错误或者警告。在这种情况下,必须在CPL程序中对CPL变量ERRNO进行评价,而且必须明确生成运行时错误(使用SETERR)或者警告(使用SETWARN)。如果CPL函数已经直接执行,则ERRNO的值为0。错误将通过负值得以确CPLCPLXML-- - - - - - - - - - - - - - - - - - - - 通道轴X在第一个通道中的位置。可以编制下列四行中的任何一个(都具10POS=10POS=10POS=10POS= VERSINF$可以实现在CPL程序中查询IndraMotionMTX的管理数据。该函1:软件版整数型。函数的辅助模式,其取决于的<index1>=1:未提供辅助模<index1>=2:辅助模式硬件类型(默认插图3- VERSINF$语示例 10DIM20SYS_INFO$=30PRN#(0,”softwareversion:”,SYS_INFO$)描述 CLRWARN命令允许清除所有由SETWARN生成的通道警告信息CLRWARN([<channel>]CLRWARN([<channel>]如果<channel>未输入,则把当前通道作为默认插图3- CLRWARN如果编入ERRNO,则不会发布运行时错误。0:正-1:-5:通道不存法IFERRNO<>0SETWARN("warningsnot

描述:评价ERRNOCPLSETERR前终止零件程序。无论一般语言设置如何,将总是显示输入参数<errorstring中的文本。10VRS<errorstring<Weranumber>。由此循使用当前通道中的可选参数<mode>,您还可以指定是否显示零件程序的名称orWera 作为错误显示的文本(Wera3371)Wera将输出错误的通道号。如果<channel输入,则将当如果<mode>未输入,则使用0作为默CPLERRNO,0:正-1:插图3- SETERR语-5:通道不存

示例 通道轴X在第一个通道中的位10POS=20IFERRNO<>030SETERR("positioncouldnotbe40评价ERRNO之后,CPL命令SETWARN可以用来生成警告,零件程序将继续运行。无论一般语言设置如何,将总是显示输入参数<warningstring>10VRS<warningstring<Weranumber>;由此使用当前通道中的可选参数<mode>,您还可以指定是否显示零件程序的名称SETWARN(<warningSETWARN(<warningstringorWera<WarningstringorWera作为警告显示的文本(Wera3372)Wera如果<channel>未输入,则将当前通道作为默认如果<mode>未输入,则使用0作为默插图3- SETWARNCPLERRNO,则不会发布运行时错误。其返回值0:正-1:-5:通道不存描述:VARINF命令向零件程序提交请求,查询它是否含有结构化系统数据或者永久变量。如果零件程序包含所输入的变量,则命令的响应值为1。如果变量不存在,则命令为0。VARINF(<variableVARINF(<variable<variable插图3- VARINF语示例 10DIM10I%=40A$=50J%=

GOTO如果符号名称(变量)是单独的,则会引起错误消息"运行时错67=GOTO10"赋值。CHR$CL否CPL赋

插图3- 关键 示例 如果没有对变量赋值,则该变量的值为NUL。因此,语句<variable>=NUL程XSOLL=IFXSOLL=NULPRN#(0,"Variablenot数算的形式或者作为变量进行赋值以外,还可以把加除

深度最多为7个。示例 1I%=25:XACTUAL= 150/(100-I%)XCOMMAND的值为12L在紧跟对应命令字后的圆括号中。函数总是指输入值的内部数字表示方法。在表达式的情况下,尤其其中包含函数调用时,则必须考虑可能的最大嵌套深示例 1I%=-2XVALUE XVALUE10 示例 1XVALUE%= XVALUE的值为10<MinValue<MaxValue可指定随机数的值范围。<MaxValue>-<MinValue><=语法 RANDOM([[<MinValue>][,随机数的最小值(正数随机数的最大值(正数CPL变如果将CPL变量ERRNO编入参数列表中的任何位置,则值返回。如果出现错误,则生成随机数0。0:正-1:

插图3- RANDOM语法示例 1REM随机数0或24示例 2XVALUE%ROUND(5.5)XVALUE6)示例 1I%=2XSET=4*SQRT(100+I%)XCOMMAND的值为48SIN、COS、TAN、ASIN、ACOS、 1ANGLE=XVALUE XVALUE0.5YVALUEASIN(XVALUE)YVALUE30NOT、AND、OR、

辑运算。如下图所示,逻辑运算可以用常用的运算符号来表达,如"."和"+"符号(CPL)AND算优先于OR运算。圆括号的可嵌套深度为7。NOT函数ANDOREXCLUSIVEOR插图3- 逻辑运示例 位0是否设定在20IF@20AND1<>0THENGOTO30ELSEGOTO.UNSET数制间的转

<BCDvalue>=BCD(<binary示例 1BCD_VALUE= BCD_VALUE的值为73<binaryvalue>=BIN(<BCD示例 BIN_VALUE的值为31关系运算 =、>=、>、<>、<=、IF-THEN-ELSE-ENDIF)的关系("满足"或者"不满足")。CPL常

浮点常量(实数

示例 NUMBER%= 整数型常示例 PI= 实数常

4D5!=-1234.123456+12345+20D0! 22D1!=24D2!=-26D3!=-以下的查询将产生下列结果:E?=IF .123456THENE?=TRUEELSEE?=FALSE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论