想对以数据进行每100ms采集一次,循环采集100次,每次采集的数据相应保存在DB数据块中的100个数据中,请问如何编程简单可靠。
问题补充:
采集到数据好办,我的意思是说比如每间隔100ms采集一次模拟量输入比如PIW512的值,采集100次,将每一次采集到的值存入数据块,数据块为100个real类型的双字,DBD0..DBD396,就是说在10s时间中的第一个100ms采集到的PIW512的值存入DBD0,第二个100ms采集到的PIW512的值存入DBD4....第一百个100ms采集到的PIW512的值存入DBD396
最佳答案
用OB35做
OB35: "Cyclic Interrupt"
程序段1:
A(
L P#4.0
T MD 30
SET
SAVE
CLR
A BR
)
JNB _001
L P#400.0
T MD 40
_001: NOP 0
程序段2:
L MD 20
L MD 40
<D
= L 20.0
A L 20.0
JNB _002
L MD 20
L MD 30
+D
T MD 20
_002: NOP 0
A L 20.0
NOT
JNB _003
L P#0.0
T MD 20
_003: NOP 0
程序段3:
OPN DB 2 //存储数据的数据块
L MD 100 //每100ms采集到的数据值
T DBD [MD 20]
提问者对于答案的评价:
很详细,已试成功。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc306796.html