请问下面语句写的什么意思?

那位大哥大姐能帮小弟解释一下下面的语句写的是什么意思吗?越详细越好,  在此非常感谢各位
 SET   
       SAVE  
       =     L     54.1
       L     #DB_WNR
       ITD   
       L     L#8
       *D    
       OPN   #DB_Nr
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #GEAR
       L     #DB_WNR
       L     4
       +I    
       ITD   
       L     L#8
       *D    
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #DIAMETER
       L     #DB_WNR
       L     8
       +I    
       ITD   
       L     L#8
       *D    
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #SPEED_MAX_FC
       L     #DB_WNR
       L     12
       +I    
       ITD   
       L     L#8
       *D    
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #V_SP_ORG_OLD
       L     #DB_WNR
       L     16
       +I    
       ITD   
       L     L#8
       *D    
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #I_V_V2_OLD
       L     #DB_WNR
       L     20
       +I    
       ITD   
       L     L#8
       *D    
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #UP_TIME_OLD
       L     #DB_WNR
       L     24
       +I    
       ITD   
       L     L#8
       *D    
       LAR1  
       L     DBD [AR1,P#0.0]
       T     #DN_TIME_OLD
       L     #III_TQ_ACS
       T     #TQ_CALC
       A     #I_N_OR_V
       JCN   A7d0
       L     #I_V_V2
       L     #DIAMETER
       /R    
       L     3.141593e+000
       /R    
       L     #GEAR
       *R    
       T     #I_N_N1
       JU    A7d1
 A7d0: L     #I_N_N2
       L     #GEAR
       *R    
       T     #I_N_N1
 A7d1: L     #SPEED_MAX_FC
       L     1.000000e+002
       /R    
       L     #I_N_N1
       TAK   
       /R    
       T     #I_N_N1_P
       L     #II_N_N1
       L     #GEAR
       /R    
       T     #II_N_N2
       L     #DIAMETER
       L     3.141593e+000
       *R    
       L     #II_N_N2
       *R    
       T     #II_V_V2
       L     #TQ_CALC
       ITD   
       DTR   
       L     1.000000e+002
       /R    
       T     #III_TQ
       L     #V_SP_ORG_OLD
       L     #V_SP_ORG
       ==R   
       L     #I_V_V2_OLD
       L     #I_V_V2
       =     L     54.2
       ==R   
       NOT   
       A     L     54.2
       JCN   A7d2
       L     #DB_WNR
       L     16
       +I    
       ITD   
       L     L#8
       *D    
       L     #I_V_V2
       OPN   #DB_Nr
       TAK   
       LAR1  
       TAK   
       T     DBD [AR1,P#0.0]

       SAVE  
       BE    
 

最佳答案

SET                      置位
       SAVE                     SAVE将RLO保存到BR位中
       =     L     54.1         赋值
       L     #DB_WNR
       ITD                      将整型(16位)转换为长整型(32位)
       L     L#8                装载
       *D                       ACCU 2的内容乘以ACCU 1的内容
       OPN   #DB_Nr             打开DB
       LAR1                     从ACCU 1装载地址寄存器
       L     DBD [AR1,P#0.0]    将ACCU 1的原有内容保存到ACCU 2中
       T     #GEAR              定时
       L     #DB_WNR            装载 写入
       L     4                  装载
       +I                       将ACCU 1-L的内容与ACCU 2-L中的内容相加
       ITD                      将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                装载
       *D                       ACCU 2的内容乘以ACCU 1的内容
       LAR1                     用ACCU 1的内容(32位指针)装载地址寄存器AR1
       L     DBD [AR1,P#0.0]    装载
       T     #DIAMETER          定时
       L     #DB_WNR            装载
       L     8                  装载
       +I                       将ACCU 1-L的内容与ACCU 2-L中的内容相加
       ITD                      将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                  装载
       *D                       ACCU 2的内容乘以ACCU 1的内容
       LAR1                     用ACCU 1的内容(32位指针)装载地址寄存器AR1
       L     DBD [AR1,P#0.0]     装载
       T     #SPEED_MAX_FC      速度设定
       L     #DB_WNR
       L     12                 装载
       +I                        ACCU 2的内容乘以ACCU 1的内容
       ITD                       将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                 装载
       *D                        ACCU 2的内容乘以ACCU 1的内容
       LAR1                       从ACCU 1装载地址寄存器1
       L     DBD [AR1,P#0.0]     装载
       T     #V_SP_ORG_OLD
       L     #DB_WNR             装载
       L     16                  装载
       +I                       ACCU 2的内容乘以ACCU 1的内容
       ITD                         将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                 装载
       *D                       ACCU 2的内容乘以ACCU 1的内容
       LAR1                       从ACCU 1装载地址寄存器1
       L     DBD [AR1,P#0.0]     装载
       T     #I_V_V2_OLD
       L     #DB_WNR             装载
       L     20                  装载
       +I                         ACCU 2的内容乘以ACCU 1的内容
       ITD                        将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                装载
       *D                      ACCU 2的内容乘以ACCU 1的内容
       LAR1                       从ACCU 1装载地址寄存器1
       L     DBD [AR1,P#0.0]    装载
       T     #UP_TIME_OLD
       L     #DB_WNR            装载
       L     24                 装载
       +I                        ACCU 2的内容乘以ACCU 1的内容
       ITD                        将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                装载
       *D                      ACCU 2的内容乘以ACCU 1的内容
       LAR1                      从ACCU 1装载地址寄存器1
       L     DBD [AR1,P#0.0]    装载
       T     #DN_TIME_OLD
       L     #III_TQ_ACS        装载
       T     #TQ_CALC
       A     #I_N_OR_V
       JCN   A7d0           当RLO = 0时跳转
       L     #I_V_V2          装载
       L     #DIAMETER        装载
       /R                   将累加器2的内容除以累加器1的内容
       L     3.141593e+000    装载
       /R                   将累加器2的内容除以累加器1的内容
       L     #GEAR
       *R                   累加器2与累加器1的内容相乘
       T     #I_N_N1
       JU    A7d1           无条件跳转
 A7d0: L     #I_N_N2         装载
       L     #GEAR           装载
       *R                    累加器2与累加器1的内容相乘
       T     #I_N_N1
 A7d1: L     #SPEED_MAX_FC    装载
       L     1.000000e+002    装载
       /R                     将累加器2的内容除以累加器1的内容
       L     #I_N_N1          装载
       TAK                  将ACCU 1与ACCU 2互换
       /R                    将累加器2的内容除以累加器1的内容
       T     #I_N_N1_P
       L     #II_N_N1         装载
       L     #GEAR            装载
       /R                      将累加器2的内容除以累加器1的内容
       T     #II_N_N2
       L     #DIAMETER        装载
       L     3.141593e+000      装载
       *R                     累加器2与累加器1的内容相乘
       L     #II_N_N2          装载
       *R                      累加器2与累加器1的内容相乘
       T     #II_V_V2
       L     #TQ_CALC         装载
       ITD                      将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       DTR                  将ACCU 1的内容解释为32位长整型
       L     1.000000e+002      装载
       /R                     将累加器2的内容除以累加器1的内容
       T     #III_TQ          定时
       L     #V_SP_ORG_OLD    装载
       L     #V_SP_ORG        装载
       ==R                  将ACCU 2的内容与ACCU 1的内容进行比较
       L     #I_V_V2_OLD      装载
       L     #I_V_V2          装载
       =     L     54.2       输出
       ==R                   将ACCU 2的内容与ACCU 1的内容进行比较
       NOT                    对RLO取反
       A     L     54.2       与运算
       JCN   A7d2            当RLO = 0时跳转
       L     #DB_WNR          装载
       L     16              装载
       +I                     ACCU 2的内容乘以ACCU 1的内容
       ITD                      将ACCU 1-L的内容解释为16位整数并将其转换为32位长整数
       L     L#8                 装载
       *D                        ACCU 2的内容乘以ACCU 1的内容
       L     #I_V_V2
       OPN   #DB_Nr
       TAK                 将ACCU 1与ACCU 2互换
       LAR1                从ACCU 1装载地址寄存器1
       TAK                 将ACCU 1与ACCU 2互换
       T     DBD [AR1,P#0.0]    定时

       SAVE                将RLO保存到BR寄存器
       BE                  块结束

 
  任何人也只能这样了,具体的结合你自己的定义的内容来读,应该能看懂了吧

提问者对于答案的评价:
谢谢!

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年8月16日 下午11:45
下一篇 2017年8月16日 下午11:46

相关推荐

  • SIMATIC Logon Service

    安装SIMATIC Logon Service后的默认用户名和密码是多少? 最佳答案 SimaticLogon中可以使用windows密码 而不必单独…

    SIMATIC PCS 7 2017年10月24日
  • intouch与400H的OPC通讯

    intouch与400H的OPC通讯 最佳答案 可以通过OPC的方式通讯,需要安装Simatic Net1、 Step7或PCS7项目编程组态,符号表命名不要用…

    SIMATIC PCS 7 2017年6月1日
  • MTA连接电缆

    现在有4个ET200站,其中有3个AI冗余(3317NF00)和4个AO冗余(3325HF00),冗余比例1:1,分别选了3个6ES7650-1AA51-2XX0和4个6ES765…

    SIMATIC PCS 7 2017年8月18日
  • 关于PCS7组成的300冗余系统改造

    现有一套PCS7软件,组态了300软冗余系统,和WINCC。现在需要增加几个模拟量模块,想问一下,WINCC部分的冗余通讯部分需要修改么?PCS7也是基于TIA做么?也想STEP7…

    SIMATIC PCS 7 2017年6月9日
  • 上线问题

    我们公司用的PCS7系统,项目是多项目程序,最近从工程师站上在线cpu,好几个cpu都特别慢,最长的大约得3分钟,没什么异常提示,最近也没动什么东西,不知道什么原因导致的! 问题补…

    SIMATIC PCS 7 2017年6月12日
  • PCS7中的梯形图编程

    第一次使用pcs7,程序完全是逻辑控制,而且以前在s7-300中已经有很成熟的程序,可以在pcs7中用梯形图建成fc块在cfc中调用吗,和s7-300相比建块时需要注意哪些方面呢?…

    SIMATIC PCS 7 2017年6月18日
  • plc模拟量输入滤波程序和方案?

    plc模拟量输入滤波程序和方案? 最佳答案 l pv//输入信号 l k//滤波系数0。0~1.0 *r t ld0&n…

    SIMATIC PCS 7 2017年8月16日
  • S7-400含交换机的冗余系统的组态

    学校实验室中的西门子系统是这样子的,第一排分别是两个电源模块,两个CPU(412-3H),两个CP443。第二排是一个 SCALANCE X208。第三排是两个…

    SIMATIC PCS 7 2017年6月7日
  • 西门子CP5611不能通信(上位机)

    组态上位机主板损坏,将其硬盘移置另外一台计算机后,NT系统能够正常启动,组态软件FIX 7.0也能够运行,但是计算机不能够通过西门子CP5611与现场PLC通信,组态画面…

    SIMATIC PCS 7 2017年10月29日
  • 如何解决STEP7安装过程中的问题

    我在安装STEP7时,中途出现:EngliSh ReSource_dll not Found.我忽略了些问题,继续安装,待安装完了之后,发现找不到ST…

    SIMATIC PCS 7 2017年11月1日