M指令,多位数怎么解读,比如M40600001

进口设备大量使用M指令,超过M99怎么使用?PLC写的如下:谁能给个解读的方向,阅读能力不足M指令,多位数怎么解读,比如M40600001

 OPN   "SysDbSysFgr"

      L     #KnNr                       //-------------------

      JL    VBEB

      JU    BEB

      JU    KN1L                        //Sprungverteiler

      JU    KN2L

      JU    KN3L

      JU    KN4L                        //-------------------

VBEB: JU    BEB

KN1L: L     P#18.0                      //Adresse 1.MFkt.-Wert Kanal 1 

      LAR1  

      L     DBB   15                    //M-膎derungssignale Kanal 1

      JU    LDMA

KN2L: L     P#98.0                      //Adresse 1.MFkt.-Wert Kanal 2 

      LAR1  

      L     DBB   95                    //M-膎derungssignale Kanal 2

      JU    LDMA

KN3L: L     P#456.0                     //Adresse 1.MFkt.-Wert Kanal 3

      LAR1  

      L     DBB  453                    //M-膎derungssignale Kanal 3

      JU    LDMA

KN4L: L     P#536.0                     //Adresse 1.MFkt.-Wert Kanal 4 

      LAR1  

      L     DBB  533                    //M-膎derungssignale Kanal 4

      JU    LDMA                        //----------------------

BEB:  A     "SysZmEins"

      R     #Vorh

      BEC                               //----------------------

LDMA: T     LB    16                    //Struktur M-Aenderungen

      L     0                           //M-Aenderung 1-5 ???

      ==I   

      R     #Vorh

      BEC   

      R     #Vorh

      L     0

      T     #W4_1

      AN    #MFktAend.M1                //----> M Fkt. 1 <----

      JC    M2AW

      L     DBD [AR1,P#0.0]             

      T     #MFktn

      A     #FktWertAus                 //Dekade 4-1 als Funktionswert ?

      JC    M1W9

      L     #MFktn                      //---------------- 

      L     #M8_1                       // MFkt = M8_1 ?

      ==D   

      =     #Vorh

      R     #MFktAend.M1

      JC    ENDE

      JU    M2AW

M1W9: L     #M8_1                       //----------------

      L     10000                       //Ermitteln , ob die

      MOD                               //Dekaden 8-5 der programmierten

      T     #ModM8_1                    //M-Funktion mit der

      L     #M8_1                       //abgefragten M-Funktion M8_1

      L     #ModM8_1                    //黚ereinstimmen

      -D    

      T     #M8_1MinMod

      L     #MFktn                      //M8_1 /10000 == MFkt / 10000 ?

      L     10000

      MOD                               //nein => n鋍hste M-Funktion 

      T     #ModMFkt                    //ja   => Ausgabe W4_1

      L     #MFktn

      L     #ModMFkt

      -D    

      T     #MFktMinMod

      L     #M8_1MinMod

      <>D   

      JC    M2AW                        //-------------------

      =     #Vorh                       //Ausgabe W4_1:

      R     #MFktAend.M1

      L     #ModMFkt                    //Modulo(MFkt / 10000) -> W4_1

      DTB   

      T     #W4_1

      JU    ENDE                        //-------------------

M2AW: AN    #MFktAend.M2                //----> M Fkt. 2 <----

      JC    M3AW

      L     DBD [AR1,P#6.0]

      T     #MFktn

      A     #FktWertAus                 //Dekade 4-1 als Funktionswert ?

      JC    M2W9

      L     #MFktn                      //---------------- 

      L     #M8_1                       // MFkt = M8_1 ?

      ==D   

      =     #Vorh

      R     #MFktAend.M2

      JC    ENDE

      JU    M3AW

M2W9: L     #M8_1                       //----------------

      L     10000                       //Ermitteln , ob die

      MOD                               //Dekaden 8-5 der programmierten

      T     #ModM8_1                    //M-Funktion mit der

      L     #M8_1                       //abgefragten M-Funktion M8_1

      L     #ModM8_1                    //黚ereinstimmen

      -D    

      T     #M8_1MinMod

      L     #MFktn                      //M8_1 /10000 == MFkt / 10000 ?

      L     10000

      MOD                               //nein => n鋍hste M-Funktion 

      T     #ModMFkt                    //ja   => Ausgabe W4_1

      L     #MFktn

      L     #ModMFkt

      -D    

      T     #MFktMinMod

      L     #M8_1MinMod

      <>D   

      JC    M3AW                        //-------------------

      =     #Vorh                       //Ausgabe W4_1:

      R     #MFktAend.M2

      L     #ModMFkt                    //Modulo(MFkt / 10000) -> W4_1

      DTB   

      T     #W4_1

      JU    ENDE                        //-------------------

M3AW: AN    #MFktAend.M3                //----> M Fkt. 3 <----

      JC    M4AW

      A     #FktWertAus                 //Dekade 4-1 als Funktionswert ?

      L     DBD [AR1,P#12.0]

      T     #MFktn

      JC    M3W9

      L     #MFktn                      //---------------- 

      L     #M8_1                       // MFkt = M8_1 ?

      ==D   

      =     #Vorh

      R     #MFktAend.M3

      JC    ENDE

      JU    M4AW

M3W9: L     #M8_1                       //----------------

      L     10000                       //Ermitteln , ob die

      MOD                               //Dekaden 8-5 der programmierten

      T     #ModM8_1                    //M-Funktion mit der

      L     #M8_1                       //abgefragten M-Funktion M8_1

      L     #ModM8_1                    //黚ereinstimmen

      -D    

      T     #M8_1MinMod

      L     #MFktn                      //M8_1 /10000 == MFkt / 10000 ?

      L     10000

      MOD                               //nein => n鋍hste M-Funktion 

      T     #ModMFkt                    //ja   => Ausgabe W4_1

      L     #MFktn

      L     #ModMFkt

      -D    

      T     #MFktMinMod

      L     #M8_1MinMod

      <>D   

      JC    M4AW                        //-------------------

      =     #Vorh                       //Ausgabe W4_1:

      R     #MFktAend.M3

      L     #ModMFkt                    //Modulo(MFkt / 10000) -> W4_1

      DTB   

      T     #W4_1

      JU    ENDE                        //-------------------

M4AW: AN    #MFktAend.M4                //----> M Fkt. 4 <----

      JC    M5AW

      A     #FktWertAus                 //Dekade 4-1 als Funktionswert ?

      L     DBD [AR1,P#18.0]

      T     #MFktn

      JC    M4W9

      L     #MFktn                      //---------------- 

      L     #M8_1                       // MFkt = M8_1 ?

      ==D   

      =     #Vorh

      R     #MFktAend.M4

      JC    ENDE

      JU    M5AW

M4W9: L     #M8_1                       //----------------

      L     10000                       //Ermitteln , ob die

      MOD                               //Dekaden 8-5 der programmierten

      T     #ModM8_1                    //M-Funktion mit der

      L     #M8_1                       //abgefragten M-Funktion M8_1

      L     #ModM8_1                    //黚ereinstimmen

      -D    

      T     #M8_1MinMod

      L     #MFktn                      //M8_1 /10000 == MFkt / 10000 ?

      L     10000

      MOD                               //nein => n鋍hste M-Funktion 

........

.........

版主推荐答案

掌握寻址方式,指针的指向,画流程图

间接寻址.JPG

查看完整帖子:
http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1617657&bid=20

提问者对于答案的评价:

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日 下午1:48
下一篇 2020年11月1日 下午1:48

相关推荐

  • 斜轴功能如何实现

    西门子840D的斜轴功能如何实现啊?谁有例子发我看看啊?谢谢了我邮箱157923609@qq.com 最佳答案 斜轴是为磨削技术而考虑的并且适用于以下操作: 用斜置横向进…

    SINUMERIK 2017年11月1日
  • 828D应用三轴立加-曲面加工出现刀痕

    加工拼接曲面,出现拉丝,痕纹。加工半球面没有问题。有没有大神有好一点的调试建议。都没有臻优曲面功能。这里有三种立式加工机床,但是大机床效果竟然比小机机床好一点。 钻石用户推荐最佳答…

    SINUMERIK 2021年7月5日
  • 询问 840d 操作面板诊断界面下 Alarmlist 和MESSEGE 显示的内容有啥区别?

    询问 840d  操作面板诊断界面下 Alarmlist 和MESSEGE 显示的内容有啥区别? 最佳答案 840d&n…

    SINUMERIK 2017年11月19日
  • sinumerik802Dsl

    西门子sinumerik802Dsl数控系统(铣削),其自身的攻丝循环cycle84及cycle840为什么总是出现025050号报警,此外还出现sp轴轮廓报警,这到底是怎么回事。…

    SINUMERIK 2017年12月2日
  • 测量系统的应用

    西门子840Dsl系统,用到DMC20/DME20。请问DMC20/DME20是怎么使用的,功能有哪些?谢谢 最佳答案 DMC20和DME20,是集线器的功能,前者只能装在电柜里,…

    SINUMERIK 2017年6月9日
  • ncu730.2 stop灯常亮

    总清nc和plc后,ncu上ready和run绿色常亮其他熄灭,led显示6。当恢复plc后,stop常亮,sf红色常亮。求大神解答下,为什么plc无法启动呢? 钻石用户推荐最佳答…

    SINUMERIK 2020年11月1日
  • 西门子840Dsl系统中的NCU模块

    840Dsl系统中的NCU模块上的LED显示数字“8”是怎么回事呢?请各位大侠帮帮忙。。。 最佳答案 西门子840Dsl系统中的NCU模块的操作和7段显示,对接通和启动 …

    SINUMERIK 2017年11月12日
  • 840D sl 系统S120散热风扇报警

    840D sl 系统S120散热风扇报警,检查散热风扇已坏,现在急需生产,没有备件和替换品,公司自只有这一台西门子840D sl机床,我想把散热风扇的…

    SINUMERIK 2020年10月31日
  • 圆光栅分度

    我现在有一个840D系统控制的可以车铣转换的数控机床,但是现在主轴的圆光栅旋转一周以后,就会出现7分的误差,我发现其第二测量系统没有工作,很是令人头疼。希望得到各位的支持。谢谢! …

    SINUMERIK 2019年6月11日
  • 840DSL EasyScreen界面上的中文字符无法显示

    840DSL EasyScreen界面上的中文字符无法显示,是因为格式的原因还是字体,亦或是其他的原因? 最佳答案 楼主的问题我遇见过,遵循以下方法:1.前提必须打开制造…

    SINUMERIK 2017年11月4日