求解释下MM420变频器FC块中的一段小程序

以下是MM420 FC块中的一段小程序,应该是变频器跟电机通讯的一段程序,该程序已经在项目中应用过,是没有问题的,不过我看得不是很明白,哪位能帮忙在后面注释下吗?其中CTRL为控制字起始地址,STATUS为状态字起始地址,M_CTRL为控制字标记位,M_STATUS为状态字标记位,SPEED为实际速度【0-100%】,SET为设置的速度【0-100%】

程序段1:Load status word

L #CTRL
SLD 3
LAR1
L PIW[AR1,P#0.0]
T LW2
T #M_STATUS

程序段2:Load actual speed      16384=100%

L #CTRL
L 2
+I
SLD 3
LAR1
L PIW[AR1,P#0.0]
ITD
DTR
L 1.638400e+002
/R
T #SPEED

程序段3:Write control word

L #STATUS
SLD 3
LAR1
L LW0
T PQW[AR1,P#0.0]
T #M_CTRL

程序段4:Set speed      16384=100%
L #STATUS
L 2
+I
SLD 3
LAR1

L #SET
L 1.638400e+002
*R
RND
T PQW[AR1,P#0.0]

问题补充:
这段程序是在实际项目中使用过好几次的,是没问题的

最佳答案

控制字地址编号和状态字地址编号可能有误
________________________________________________________________________

程序段1:Load status word

L #CTRL   //载入控制字地址编号到累加器1(我认为这里有笔误应是状态字编号#STATUS)
SLD 3     //左移3位得到控制字地址(因地址指针的低3位是位地址)
LAR1      //以上地址放入地址寄存器AR1
L PIW[AR1,P#0.0]   //载入控制字到累加器1
T LW2              //保存累加器1到局部变量LW2
T #M_STATUS        //保存累加器1到变量#M_STATUS

程序段2:Load actual speed      16384=100%

L #CTRL   //载入控制字地址编号到累加器1(我认为这里有笔误应是状态字编号#STATUS)
L 2       
+I        //累加器1加2(因速度是PZD的第二个字) 
SLD 3     //左移3位得到速度的地址
LAR1      //以上地址放入地址寄存器AR1
L PIW[AR1,P#0.0]   //载入速度到累加器1
ITD                //累加器1从整数转换为双整数
DTR                //累加器1从双整数转换为实数
L 1.638400e+002
/R                 //累加器1除以163.84得到实际速度,因为16384对应速度100% 
T #SPEED           //保存速度到#SPEED

程序段3:Write control word

L #STATUS   //载入状态字地址编号到累加器1(我认为这里有笔误应是控制字编号#CTRL)
SLD 3       //左移3位得到状态字地址
LAR1        //以上地址放入地址寄存器AR1
L LW0       //载入局部变量LW0到累加器1
T PQW[AR1,P#0.0]    //输出累加器1到状态字地址
T #M_CTRL           //保存累加器1到#CTRL

程序段4:Set speed      16384=100%
L #STATUS   //载入状态字地址编号到累加器1(我认为这里有笔误应是控制字编号#CTRL)
L 2
+I          //累加器1加2(因速度是PZD的第二个字) 
SLD 3       //左移3位得到速度的地址
LAR1        //以上地址放入地址寄存器AR1

L #SET      //载入变量#SET到累加器1
L 1.638400e+002   
*R                //累加器1乘以163.84,因为16384对应速度100% 
RND               //实数转换为双整数  
T PQW[AR1,P#0.0]  //输出速度 

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

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月30日 下午1:40
下一篇 2017年6月30日 下午1:40

相关推荐