840D sl 超过M99后的M代码如何去定义、使用

840D sl 的M指令大于99时如何去写,比如M200。
看到有两种方式:一种是比较DB21.DBW68和DB21.DBD70中的值;另一种是通过DB75和DB76基于列表的M解码实现。
两者有什么区别?

图片说明:

840D sl 超过M99后的M代码如何去定义、使用    840D sl 超过M99后的M代码如何去定义、使用   

最佳答案

使用解码列表的解码方法,1、此种解码方法不分通道;2、此种解码方法可以解码256个M功能,分成16个组,每组16个(扩展地址16个,每个扩展地址内的值最多16个);3其接口信号需要用户自己生成。使用方法:1、生成DB75,作用是告诉PLC哪些M功能用这种方法解码,①在STEP7中打开library(已经安装过toolbox)→②选择相应的基本程序文件夹(根据toolbox会生成不同的)→③打开"Quellen"(德语,源文件)→④复制文件"medclist"至用户PLC程序的源文件文件夹中→⑤"medclist"文件内"MSigGrp[1].MExtAdr"是M功能的扩展地址(共16组,以第一组为例,下同),"MSigGrp[1].MFirstAdr"为该组的起始值,"MSigGrp[1].MLastAdr"为该组的最终值(每组可以不是16位,即有部分可以不使用,如"MSigGrp[1].MExtAdr"=0,"MSigGrp[1].MFirstAdr"=10,"MSigGrp[1].MLastAdr"=15,即使用M10-M15;如"MSigGrp[1].MExtAdr"=10,"MSigGrp[1].MFirstAdr"=10,"MSigGrp[1].MLastAdr"=15,即使用M10=10-M10=15)→⑥改好后进行编译("Compile")→在程序内自动生成DB75;4、打开OB100,在FB1中有一个"ListMDecGip"的形参,DB75一共16个组,使用了几个组就在里面输几;5、下载DB75和OB100,执行PLC暖启动(PO);6、生成接口信号DB76,以上面的例子为例:
Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 DB76
- - M15 M14 M13 M12 M11 M10 DBB0
- - - - - - - - DBB1
- - M10=15 M10=14 M10=13 M10=12 M10=11 M10=10 DBB2
- - - - - - - - DBB3
完成后调用例如:在NC程序内输入"M10=15",即将DB76.DBX2.5置位,这种M功能有 一个特点:一旦执行这个M功能,NC程序是否继续往下执行由PLC来决定,也就是PLC可以决定M功能未执行完成前NC程序要不要继续运行,直至PLC将M功能对应的DB76复位,NC才能继续运行,所以在PLC程序内必须编制一个复位程序,DB76(NC→PLC),但要求PLC要将其复位为零后才能继续执行NC

以前笔记,供你参考

使用DBB58解码的方法:
例如编一段NC程序:N10    M8    M10=8    M9999    M10000    M15
                             M fct.1    M fct.2   M fct.3    M fct.4     M fct.5
DBB58 M fct.1-5指的是该行程序内的第几个M功能,例当执行上程序"M8"时,NC告诉PLC这一行有一个M功能要执行,PLC会将DB21.DBX58.0置一个OB1周期的"ON"
DB21.DBW68储存的是M功能的扩展地址,如Mx=yy,x就是扩展地址,DB21.DBD70储存的是M功能的值(内容),yy就是值(以上都以通道1,M功能1为例)
为了方便编程,不去固定M功能在程序段内的位置,需要在PLC内进行“或”
这种M功能的解码范围为M[0~99](扩展地址0~99)=0~99999999(值的范围),其解码范围特别大

提问者对于答案的评价:
很详细,谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc295794.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日
下一篇 2020年10月31日

相关推荐

  • 802D SL驱动的疑惑

    一台802dsl在使用过程中突然出现231116和026106报警,怀疑电机编码器有问题,但是把电机放到别的机床上却运行正常,下一步怎么查呢? 问题补充:x轴只有电机上的编码器,没…

    2020年10月31日
  • 西门子840d报警21760

    各位大佬,西门子数控系统偶尔会报警21760 too many auxiliary functions programmd什么情况…

    2020年10月31日
  • 802DSL TOOLBOX

    各位师傅     请问谁有802DSL 铣床版TOOLBOX软件,可否给我一份。谢谢,我邮箱  &n…

    SINUMERIK 2018年12月5日
  • Sinumerik 840D 无法删除强制位

    数控系统: Sinumerik 840D NCU型号:NCU573.5今天在做设备相关功能测试时,在S7里强制了1个输出信号,后来想解除强制却发现怎么…

    SINUMERIK 2020年10月31日
  • 802C数控铣床Z轴回参考点方向不稳

    一台802C数控铣床很少用,定期会通电转动。近期几次Z轴回参操作,发现方向有时向上,有时向下。向下时,关闭系统电源或机床电源,再通电也不行。过几天又行了,再过几天又不行了。请专家指…

    SINUMERIK 2017年5月28日
  • 810d系统出现25022报警

    我的数控内磨装的是810D的系统,在一次重启的过程中系统无法进入,停留在810Dde开机画面上,操作面板的指示灯不停的闪烁。主板背面的8段数码管无数值显示。重新将NC和PLC清零后…

    SINUMERIK 2018年12月2日
  • 840D PLC调试

    840D PLC调试时,用STEP7上传PLC程序时,怎么设置接口参数及上传步骤。最好的图文并茂说明最好 最佳答案 楼主的问题非常好,对于学习西门子840D数控系统,具有…

    2017年11月2日
  • PROTOOL程序无法移植到WINCCFLEXIBLE 2008 ADVANCE SP3 中

    大家好。目前遇到PROTOOL的程序无法移植到WINCCFLEXIBLE 2008 ADVANCE SP3 中,急求助 最佳答案 因为WIN…

    SINUMERIK 2020年10月31日
  • 828D系统编程软件软件

    大家好,我是一个西门子系统的初学者,哪位大师有828D系统的PLC编程软件,我的电脑是W7,怎样与电脑连,都需要改哪些参数,谢谢 最佳答案 软件使用PLC Program…

    SINUMERIK 2021年7月5日
  • 西门子810M程序传输问题

    各位大侠。帮帮忙啊! 我现在要恢复一个西门子810数控系统,这个系统是几年前用过的,现在因为内置电池掉电,内部PLC程序和NC程序都已丢失,现在要将这些程序重新导入。备份…

    SINUMERIK 2018年12月2日