求平均值问题

我是新手,正在自学PLC,现做了一个题目恳请各位师傅帮忙看看我做的对吗?是否还有其它方法,请给个思路,谢谢!!
       求出从VB100开始的20个字型数据的平均值
 LD     SM0.1
 MOVD   0, AC0
 MOVW   0, AC0
 MOVB   0, VB10
 LDB<=  VB100, 19
 LPS
 MOVD   &VB100, AC1
 AENO
 +I     AC1, AC0
 LRD
 +I     2, AC1
 LPP
 INCB   VB10
 LDB=   VB10, 19
 MOVW   AC0, VW14
 AENO
 /I     20, VW14

问题补充:
LD     SM0.1
 MOVD   0, AC0
 MOVW   0, AC0
 MOVB   0, VB10
 LDB<=  VB100, 20
 LPS
 MOVD   &VB100, AC1
 AENO
 +I     *AC1, AC0
 LRD
 +I     2, AC1
 LPP
 INCB   VB10
 LDB=   VB10, 20
 /D     20, AC0
 AENO
 MOVW   AC0, VW14
 各位师傅,我把程序改正了一下,但是我是初学者,而且只有书本和电脑,书本我还没有看到循环指令的那部分,我就是想在不使用循环指令的情况下做出这个程序,不知道做得怎么样,还望各位就我做的这个程序给出一些意见和建议.谢谢

最佳答案

你的程序不正确,需要重复执行若干次时,可以使用FOR/NEXT循环指令
   LD  SM0.0
   MOVD  0,AC0
   MOVD  &VB100,AC1
   FOR  VW0,1,20
   LD SM0.0
   +I  *AC1,AC0
   +D  2,AC1
   NEXT
   LD SM0.0
   /D  20, AC0
   AENO
   MOVW  AC0,VW14
 LZ你这种思路时间比较长,需要20个扫描周期才能完成。现在按你的思路写一个从VB100开始20个实时累加和的平均值,你看一下。
 LD     SM0.1
 LD     M0.0
 EU
 OLD
 MOVD   +0, AC0
 MOVD   +0, AC1
 MOVB   0, VB10
 MOVD   &VB100, AC1
 LDB<   VB10, 20
 +I     *AC1, AC0
 +D     +2, AC1
 INCB   VB10
 LDB>=  VB10, 20
 LPS
 EU
 /D     +20, AC0
 MOVW   AC0, VW14
 LPP
 =      M0.0
 

提问者对于答案的评价:
非常感谢!但用这种思路似乎只能在多个扫描周期内完成任务,还是使用循环指令比较合适,看来我要加快步子多学点了.

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午12:05
下一篇 2021年7月5日 上午12:05

相关推荐

  • TD400C如何实现显示历史故障

    我想通过一段程序,将发生过的故障信息存储在PLC中,然后通过TD400C可以查询。可是,我试过很多次,都存不上,也显示不了。求各位高手指点一下! 问题补充:您能不能再说的详细点,或…

    SIMATIC S7-200 2021年7月5日
  • s7-200cpu226如何与施耐德a71变频器通讯(modbus)”

    s7-200cpu226如何与施耐德a71变频器通讯(modbus)”是否有相关的库文件,谢谢 问题补充:这个库文件如何装?能否做个例子程序看看.xieixe &nbsp…

    SIMATIC S7-200 2021年7月5日
  • 如何判断两个数能否整除

    一个双整数除以另一个双整数,需要判断是否能整除,用除法指令后,低16位保存商,高16位保存余数,想用判断余数是否为0的方式来判断被整除,如何实现? 最佳答案 直接把高16位地址和0…

    SIMATIC S7-200 2017年11月13日
  • 关于称重模块siwarex ms传感器接线的问题

    如题,请问在对siwarex ms进行传感器接线时,如果有两个单点式称重传感器是否要使用手册中所说的siwarex JB接线盒子?  &nb…

    2021年7月5日
  • 通讯接头接线

    自己制作DP通信接头时,除了加终端电阻外,是不是只要引出3,8脚,用两芯屏蔽双绞线就行了?为什么有人所要用四芯的屏蔽双绞线?    &nbs…

    SIMATIC S7-200 2021年7月5日
  • wincc与s7200 plc通讯

    wincc与plc通讯,还需要在plc中编写什么通讯程序吗 最佳答案 不用编写通讯程序的,安装PC  Access就可以。 提问者对于答案的评价:谢谢 专家置评…

    SIMATIC S7-200 2017年6月7日
  • 西门子s7200输入输出端接线问题

    各位大侠,请问在用s7226做控制柜时,s7226的IO口配线用普通的0.5的塑料软线且线槽内有动力线,有影响吗?模拟量输入输出都采用屏蔽线了,盼答谢 最佳答案 如果输出是继电器输…

    SIMATIC S7-200 2017年6月11日
  • s7 micro/win 的演示版

    官网上下载的s7 micro/win 是正式版还是演示版呢?深入浅出西门子s7 200的书上随附光盘上也有该软件,可是说是演示版。不知道正式版和演示版…

    SIMATIC S7-200 2021年7月5日
  • S7-200 PLC 存储卡?

    编写了一个S7-200 PLC程序,编译下载后提示程序太大,当前CPU不能装载,能用S7-200 PLC 存储卡扩展CPU内存吗?存储卡的功能是都有什…

    SIMATIC S7-200 2020年10月31日
  • HSC程序问题

    我用CPU222CN 晶体管的PLC用PTO的输出(Q0.0)作为HSC的输入(I0.0)进行编程,可是我发现PTO的输出是正常的,但是HSC的数值一直为0,不知道是为什…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论