您现在所在的是:

西门子SIEMENS

回帖:7个,阅读:2437 [上一页] [1] [下一页]
* 帖子主题:

求助编程问题!

986
knightliness
文章数:73
年度积分:50
历史总积分:986
注册时间:2004/1/12
发站内信
发表于:2004/2/7 23:43:00
#0楼
因特殊要求,需要将I/O输入值滞后15秒再进行运算控制,请教各位高手控制算法!表情
6285
karl 版主
文章数:1703
年度积分:48
历史总积分:6285
注册时间:2003/12/26
发站内信
发表于:2004/2/7 23:52:00
#1楼
A I ?.?
L S5T#15S
SD T?

...
T?滞后I ?.? 15秒。
...

可以吗?如有异议,把条件给的更严格些。
图
986
knightliness
文章数:73
年度积分:50
历史总积分:986
注册时间:2004/1/12
发站内信
发表于:2004/2/7 23:57:00
#2楼
天啊!要是这么简单就好了! 这是一个连续的信号呀!我要连续处理,我没说清楚??开关量,模拟量都行啊!
6285
karl 版主
文章数:1703
年度积分:48
历史总积分:6285
注册时间:2003/12/26
发站内信
发表于:2004/2/8 0:05:00
#3楼
老大,你不是让我帮你写个移位注册表程序吧?
按你的要求,数字量需要做个不小于15秒的注册表(DB),不知道你的信号变化频率如何?
模拟量就更麻烦了,需要多表(DB)再记录模拟量。
频率要很高的话,你算一下空间,PLC是不合适的。
图
986
knightliness
文章数:73
年度积分:50
历史总积分:986
注册时间:2004/1/12
发站内信
发表于:2004/2/8 8:16:00
#4楼
呵呵! 我知道PLC做这个很困难,要不就不会让我头疼一天了!不过我总觉得做开关量的不用那么复杂,有简单省地方的方法,这个信号变化频率不定,是随机的,一秒内连续的信号可以忽略,但要记住秒内最后的一个值的变话.你有没有好的思路?,既要不能采丢信号,又要保存时间够长.
不管怎么样,都还是要感谢兄弟的帮忙,我知道你会答复的,你有没有其他的网络联系手段?(QQ,ICQ,POPO,MSN.....)以便交流,呵呵!再次谢谢兄弟!
6285
karl 版主
文章数:1703
年度积分:48
历史总积分:6285
注册时间:2003/12/26
发站内信
发表于:2004/2/8 22:36:00
#5楼
简单说:数字量
1.需要一个Cyclic Interrupt Organization Blocks -- OB32 (Default 1s) 或自己编写的可触发每秒读写程序。直接读取输入值: L  PIW??? ;  T  DB??.DBW??
2.移位注册表程序: 规划表结构(静态表格:每秒一个,15秒则最少有15个数据位置),决定数据在表内移动(访问固定的位置)或者做动态数据指针(推荐),两者的性质其实一样。

高级的:检测连续变化。用硬件中断。动态的数据表格,动态数据指针。

图
986
knightliness
文章数:73
年度积分:50
历史总积分:986
注册时间:2004/1/12
发站内信
发表于:2004/2/8 23:05:00
#6楼
呵呵!这个小问题用上中断太......浪费了吧!
难道我们的大斑竹只会这种中规中距的编程吗? (玩笑)
我的问题开关量已经解决了,简单的只用了一个字,方法嘛!就是用字逻辑和字位移.
简单的让我不敢相信.呵呵!
至于模拟量,我已经想出思路,但还不太清晰,还好不用着急,有的是时间想,我想借鉴INTOUCH的存数方法,还不成熟,以后再讨论吧,
对了兄弟,你有没有西门子关于FUZZ软件包和相关资料啊,我虽然干工控多年,但接触西门子时间不长,还只是菜鸟,呵呵.
6285
karl 版主
文章数:1703
年度积分:48
历史总积分:6285
注册时间:2003/12/26
发站内信
发表于:2004/2/8 23:14:00
#7楼
哈哈,不用中断,固然好。但S7的时间精度...
楼主,我做工业程序过多,太多虑了。向你学习!


[此贴子已经被作者于2004-2-8 23:20:25编辑过]
图

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003