如何将现场数据存入DB中?
问题:
先说一下现场情况:有一个RFID读写头,一套300PLC,每当工件经过读写头时,读写头会读取工件上载码体内的数据(数据格式为实数,不含字母),一天大约有2000多条数据,现在想将这2000多条数据都记录在一个DB中(现场没有上位系统,只能有PLC编程),我写了一段程序,但不能记录数据,麻烦高手帮忙看看,或者重新编一段也行。多谢多谢。
OPN;;;"TEST2_DB"
LAR1;;P#4.0
A;;;;;M;;;;;80.2;;;;;;;;;;;;;;;;;;\\这个是现场的光电开关信号,此信号为1时,去读取读写头里的数据就可以。
FP;;;;"TEST2_DB".P[1]
JCN;;;S1
L;;;;;3000
C:;;;;T;;;;;#Cycle
AN;;;;DBX;[AR1,P#4.0]
JCN;;;S2
L;;;;;"READ_BUFF_DATA".DB_VAR_36;;;\\这个是RFID读写头里的数据经过转换后所存的地址。
T;;;;;DBD;[AR1,P#0.0]
S;;;;;DBX;[AR1,P#4.0]
JU;;;;S1
S2:;;; AR1;;P#6.0
L;;;;;#Cycle
LOOP;;C
S1:;;;NOP;;;0
DB的开辟见图
佳答案
这个看似没有问题,不过可以用更简单的思路,就是用一个计数器来记录存储的数,通过这个记录数来存储。如下:
OPN;;;"TEST2_DB"
LAR1;;P#4.0
A;;;;;M;;;;;80.2
FP;;;m80.3
JCN;;;S1
L;;;;;mw82
slw;5
ar1
L;;;;;"READ_BUFF_DATA".DB_VAR_36
T;;;;;DBD;[AR1,P#0.0]
l;mw82
l;1
i
t;mw82
S1:;;;NOP;;;0
这样,只要做好初始化和MW82大于一定的数如3000,就重新从0开始就可以了。