回复:S7-200如何实现10-50Hz的正弦波信号的模拟量输出?

自然规律

  • 帖子

    45
  • 精华

    0
  • 被关注

    24

论坛等级:侠圣

注册时间:2007-11-01

黄金 黄金 如何晋级?

发布于 2017-05-27 13:44:40

19楼

展开查看
以下是引用一世天蓝在2017-05-27 11:41:31的发言 >18楼

200PLC纯碎编程恐怕难以实现。首先,正弦波的数值变化是规律性的,也就是每个数据变化的间隔时间一致,那我们程序上要做到这个特性,只能使用定时中断,也许也可以直接依靠监控主程序的扫描时间来换算。三菱PLC具有恒定周期扫描的功能,但是西门子似乎没有,所以每个扫描周期会有波动。假如使用中断,那么因为定时中断时基是MS级,所以20MS内能改变的数据数量有限,这样的数据用在正弦波上,想想都知道,波形失真是一定的。不使用中断的话,可以先把正弦波需要的数据集中在一个区域,比如,200个数据,VD0-VD199。然后,在主程序利用for循环调用,但是这里有个问题,for的每次循环所用时间,我们也不确定,得通过实际测试,根据for每运行一个次数,需要的时间,来确定我们得取多少个数值,才刚好能在20MS内取完。这看起来似乎还能尝试,但实际上我觉得可能也是不可行的,因为我们的输出是用模拟量,据我所知,模拟量的读取与写入,花费的时间并不是us级别,而是ms级别的,所以我觉得实际上也是难以真正实现。

观点不对之处,欢迎各位指出。

时间长了以后误差越来越大,还得加修正程序,估计模拟一下还行,实际使用可能会很头疼。

天天学习,被动进步。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。