技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > PLC模拟量的问题

PLC模拟量的问题

郑志武 发布于2012-12-25 11:41 682 0 标签:

s7-300实现功能如下:对piw256模拟量输入值进行采样,采样个数可以上位给定,并求其平均数,还得实现先入先出原则
比如:采10个数,求其平均数,采第11个数剃掉先采的个数,求其平均数。不知道怎么做,请帮忙会写程序的帮忙写个我看看。


佳答案

建议你先多看看信号处理、数据结构及其算法方面的文章,因为应用场合不同,所使用的处理方法也是不一样的。你现在所说的办法对周期性的干扰比较有效,但对偶尔的脉冲干扰效果就有可能很差。

编程思路大致为:首先定义一个n+3个字的数据块,n为上位机可能给出的采样个数的大值,第n+3个存放上位机给定的采样个数a,第n+2个存放指针,第n+1个存放平均值,其余空间作为环形链表用(此处环形链表相对于fifo队列来说的优点在于环形链表只需移动指针,而fifo队列需要移动队列中的数据)。每次plc启动后首先给数据块赋初值,可以全为0或除第n+3个字不处理外其它全为0。程序运行时,1、读取模拟量输入值到指针指示的单元,2、指针值加一,3、比较当前指针值是否大于a,是则清零,4、前a个数据求和再除以a,所得平均值存放在第n+1个单元。

需要注意的一些细节:1、数据累加时很可能超限,可根据需要在计算时转换为di或real数据类型;2、好在plc程序而不是在上位机中对a进行限制,如果a大于n会导致程序错误;3、建议做成一个fb,以方便多处调用。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签