签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
SSI位移传感器读到一组数据,保存在DB2.DBD20,现在想每隔10ms,采集1个数,将其保存在DB11里,保存时间长度大约5S,如何递增保存呢?
以下是我在OB35中写的程序,但是无法将数据递增保存在DB11中,恳请各位老师指教。
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1601372&b_id=4&s_id=0&num=7
参考fifo队列的数据处理:
定义一个数组,
for i:=0 to max-1 do
mydata[i]:=mydata[i+1];
end_for
mydata[max]:=pv;
你的程序在哪里体现出DB11了?
你得先打开DB11。
在 T DBD[MD200]的前面加一个OPEN DB11。否则,保存到DB2了。
是的,在OPN指令后,不能访问完整的DBn.DB..,一进行访问就重新打开了DBn,如果要同时访问个数据块,又不想用完整地址,可以OPN DBn,和OPN DIn,分别打开两个数据块
OPN语句没效果。
T DBD[MD200]指向的是DB2.DBD[MD200]
最后你实现了没?
IF #var >= 1 AND #var <= 500 THEN // Statement section IF ; "recorde data".data[#var] := #input; #var := #var + 1; END_IF; IF #var > 500 OR #var < 1 THEN #var := 1; END_IF;
用数组, 和两个 index实现一个循环队列。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录