26.10.2.2 对于地址操作

传输时定义寄存器代码和地址代码,还定义每个CSV文件的传输目标(或源)地址。
使用的地址数取决于地址中指定的寄存器。

一次只能传输一个文件(一组CSV数据)。

例如,当指定了16位寄存器时

[控制字地址]使用16个连续字,指定要传输的数据和目标地址。

在设置完文件编号、模式、寄存器代码、地址代码和数据量后,当[控制字地址]的位0置ON时,会将指定文件编号的配方(CSV数据)写入指定地址。

此外,当[控制字地址]的位1置ON时,会将保存在控制器/PLC指定地址中的配方保存到外部存储器。

将根据该地址的位0或位1的状态传输数据。

传输状态和结果反映在该地址中。

错误代码(反映在错误状态位中)

0

成功完成

传输成功完成。

1

无文件编号

当执行外部存储器至控制器/PLC的传输时,传输目标文件不存在。

2

保留

3

内部寄存器范围错误
错误

在外部存储器至控制器/PLC的数据传输中,如果已将传输的起始地址指定为内部寄存器,数据传输试图使用内部寄存器指定范围以外的一个地址。

4

没有外部存储器

未找到外部存储器或卡盖为打开状态。

5

读取错误

当执行外部存储器至控制器/PLC的传输时,读取外部存储器失败。

6

写入错误

当执行控制器/PLC至外部存储器的传输时,写入外部存储器失败。可能没有足够的可用空间。

SD卡处于写保护状态。

7

CF卡错误/USB存储器错误

CF卡/USB存储器未正确格式化或损坏。

8

删除错误

文件删除失败或文件是只读文件。

9

保留

10

保留

指定要传输的文件编号。

设置配方数据格式以允许负数。

用寄存器代码指定要访问的寄存器。还可以用地址代码指定目标(或源)地址。
寄存器和地址代码根据控制器的不同而各异。请参阅“GP-Pro EX控制器/PLC手册”获取更多信息。要在地址模式中指定人机界面内部寄存器,如果是LS寄存器, 请使用寄存器代码 0x0000,如果是USR寄存器,请使用寄存器代码 0x0001。

指定CSV数据配方中的数据项目数量。数据量的最大值对16位数据为10000条,对32位数据则为5000条。如果数据量超出该限制,传输操作将不能进行。

自动传输(地址操作)时序图

当数据传输完成时,状态位1(传输完成标记)置ON。在传输完成标记显示后通过控制器/PLC将触发位置OFF。将触发位置OFF即会自动将状态地址上的传输完成标记置OFF。

地址操作传输示例

从外部存储器写入控制器/PLC

例如,传输“ZR00001.csv”(数据项目数量:6,数据长度:16位,无符号)控制器/PLC的地址D100。
控制字地址:D50

  1. 将传输文件编号“1”写入D52。

  2. 将“0”(16位,无符号)写入D53。

  3. 将“0”写入D54。

    • 当传输目标是内部寄存器时,写入“1”。

    • 对Memory Link类型,写入“0”。

  4. 将传输目标寄存器“0x0000”(D寄存器)写入D55。

  5. 在D56/D57中指定传输目标地址。在D56中写入“100”,在D57中写入“0”。

  6. 将“6”写入D58。

  7. 将D50的位0置ON。CSV数据被写入地址D100到D105。

  8. 当数据传输完成时,将D51的位0([传输中]位)置OFF。将[传输完成标记](位1)置ON。

从控制器/PLC读到外部存储器

例如,传输6个数据项(数据长度:16位,无符号),从控制器/PLC的D100到D105传输到CF卡并创建文件ZR00002.csv。

  1. 在D52中写入文件编号“2”,即传输后将创建的文件。

  2. 将“0”(16位,无符号)写入D53。

  3. 将“0”写入D54。

  4. 在D55中写入传输源寄存器“0x0000”(D寄存器)。

  5. 在D56/D57中指定传输源地址。在D56中写入“100”,在D57中写入“0”。

  6. 将“6”写入D58。

  7. 将D50的位1置ON。则会读取D100至D105的数据,并在CF卡[文件]文件夹中创建文件“ZR00002.csv”。
    当数据传输完成时,将D51的位0([传输中]位)置OFF。将[传输完成标记](位1)置ON。

    • 当从控制器/PLC向外部存储器传输时,以两位数字格式设置CSV数据日期。

删除文件

例如,从CF卡中删除文件“ZR00002.csv”。

  1. 在D52中写入要删除的文件编号“2”。

  2. 将D50的位15置ON(删除位)。
    当文件删除完成时,D51的位1(传输完成标记)置ON。