登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:西门子PLC堆栈延时怎么实现?

点击:1621 回复:5

用西门子300PLC,想利用堆栈做延时,谁有例子程序,求指导~
13-12-13 14:32
實在想不出堆棧如何做延時……你確認你要實現的功能是使用堆棧完成?而不是使用定時器或者時鐘脈衝或時鐘來完成?
Regards
13-12-13 16:22
因为PLC的内存是有限的,所以存储的数据量也是有限的,上位机也是不可以永远不开的。首先根据数据采集的周期以及PLC可用数据区的大小来决定上位机允许不开机的最长间隔时间,然后做个循环缓冲区。 比如保存1个数据记录(Word类型),加上时间戳(DWORD类型),数据共占3个WORD。假设1小时保存1次,那么1天的数据量就是24*3=72WORD,1个月按31天算也就2232WORD。如果上位机每月开1次,那么你的数据区就至少定义2232WORD。如果数据区存满,则将最早的记录覆盖掉。定义1个指针就可以实现。 上位机开机后,把整个数据区全部读出,然后根据事先定义好的数据结构进行解码就可以了。
13-12-13 17:35

引用 yunpofeng 在 2013/12/13 17:35:59 发言【内容省略】

这貌似在解释堆栈而不是在解释如何延时。
Good Luck~
13-12-13 20:43
明明可以用简单指令搞定的功能,最好不要用复杂指令,
耗时不说,
如果是新手,程序的可靠性很重要
13-12-13 21:06
最好自己做,下次不求人
13-12-13 21:13

工控新闻

更多新闻资讯