PLC
泛型定长数据队列
队列长度
泛型队列
向列尾插入元素
并移去列首超出数量的元素
是否整个队列的数据都相同、
三菱PLC 使用MC协议(Qna-3E)
plc名
PLC的IP和端口
PLC的通讯超时时间
D类型地址标识
M类型地址标识
从5000开始读200个字(不建议使用)
批量读字 一次最多读960个字
(返回16静置字符串数组,高低位反过来解析,比如第1个字是[1],[0],如果是双字则是[3],[2],[1],[0])
返回的结果字符串数组(16进制字符串),两个字符串是一个字,高低位反过来
读取多字
(返回uint数组)
读单个字
(返回16静置字符串数组,高低位反过来解析,比如第1个字是[1],[0])
返回的结果字符串(16进制字符串),一共4个字符,高低位反过来
读取单字
(返回uint)
写单个字
写多个字
读取M地址
开始地址
读取数量
读取结果
读PLC
开始地址
读取数量
读取结果
地址类型 D或M
写PLC
开始地址
写入内容
写入数量
地址类型 D或M
PLC基类
构造一个新的PLC对象
plc名
PLC的IP和端口
PLC的通讯超时时间
PLC的IP地址
PLC的端口
PLC 的通讯超时时间
PLC的tcp连接
PLC的tcp连接的网络流
TCP传输锁
获取PLC的连接状态
初始化PLC连接
连接是否成功
连接plc(不要用,用PlcInit就行)
连接是否成功
断开plc连接
断开是否完成
读取plc指定地址的值(弃用)
所有值
是否读取成功
根据单个地址读取值
地址
该地址下储存的值(16进制字符串)
是否读取成功
根据单个地址读取值
地址
该地址下储存的值(uint)
是否读取成功
根据起始地址和地址数量来读取值
起始地址
地址数量
返回值
是否读取成功
根据起始地址和地址数量来读取值
起始地址
地址数量
返回值(uint数组)
是否读取成功
向plc指定的单个地址写入值
指定的地址
写入的值值
是否写入成功
向plc多个地址写入值
起始地址
写入的值
地址数量
是否写入成功
自定义指令的发送,这里只支持字单位的读取和写入
指令
返回值
基恩士PLC(KV8000)
基恩士PLC 使用上位链路通信协议
plc名
PLC的IP和端口
PLC的通讯超时时间
默认方法(禁用)
读DM单字(无符号16位)
(返回值是10进制数字)
读DM单字
(返回uint)
读DM多字(无符号16位)
(返回值是10进制数字)
读取多字
(返回uint数组)
写DM单字(无符号16位)
写DM多字(无符号16位)
发送数据
发送的数据
是否接收长数据,最长支持682个字
返回的结果
强制复位
强制置位
读
软元件类型
地址
返回数据类型(可省略)
返回数据
写
软元件类型
地址
数据
写入数据类型(可省略)
是否写入成功
连续读
软元件类型
地址
读取长度(最大682)
返回数据类型(可省略)
返回数据
连续写
软元件类型
地址
写入数据类型(可省略)
写入长度
数据数组
写入数据类型(可省略)
是否写入成功
软元件类型代码
KV-8000/KV-7500/KV-EP21V
继电器 默认读取格式是位
内部辅助继电器 默认读取格式是位
数据存储器 默认读取格式是字
扩展数据存储器 默认读取格式是字
读写的数据格式
16位无符号十进制数
16位有符号十进制数
32位无符号十进制数
32位有符号十进制数
16位十六进制数
缺省
plc名
PLC的IP和端口
PLC的通讯超时时间
读写模式:0读,1写
检查命令帧中的EndCode
主码
副码
指示程序是否可以继续进行
初始化并连接plc
连接plc
断开PLC
默认读取指令(不建议使用)
这里默认读取150个D区地址,从D5000开始到D5149,读取的返回值都是高位在前低位在后
返回值
读取单字(D) D00000-D32767
(返回16进制字符串数组,比如第一个字是[0],[1])
读取单字(D) D00000-D32767
(返回uint)
读取多字(D) D00000-D32767
(返回16进制字符串数组,比如第一个字是[0],[1],如果是双字就是[0],[1],[2],[3])
读取多字(D) D00000-D32767
(返回uint数组)
写单字(D) D00000-D32767
写多字(D) D00000-D32767
批量读CIO位 CIO000000-CIO614315
读取多字(WR区)WR000-WR511
(返回16进制字符串数组,比如第一个字是[0],[1],如果是双字就是[0],[1],[2],[3])
读取多字(WR区)WR000-WR511
(返回uint数组)
从文件读取的PLC报警信息
alarmData有5个元素,分别对应字,位,报警触发值,报警代码,报警信息
报警字地址
报警位地址
报警触发值
(为true的话就是当读取值是true的时候触发这个报警)
要上传到mes的报警代码
报警说明
PLC报警记录模块
报警模板(从触摸屏导出的报警数据)
报警记录路径(实际记录下来的实时报警)
是否忽略报警状态下的新增报警
报警记录类型
初始化一个报警读取器
报警文件路径
文件格式 .csv
字,位,触发数值,报警代码,报警内容
40000,0,1,E001,急停报警(IO:A1_I0.05)
40000,1,1,E002,上下料安全门报警(IO:A1_I0.06)
报警记录目录路径
报警记录类型
是否忽略报警状态下的新增报警
新增报警事件
报警复位事件
当前记录中的报警
读取本地报警文件
寻找报警代码
字地址
位地址
值
报警信息
是否找到
获得当前报警列表
报警字开始地址
报警地址递增步进(个别情况用)
比如按字读取基恩士MR地址时,字地址是40000,40100,40200这样增加的,此时就要把addrStep设成100
报警字长度(有几个字)
读到的数据
返回的当前报警列表
输入读取的数据,判断当前是否报警,保存报警记录
报警字开始地址
报警地址递增步进(个别情况用)
比如按字读取基恩士MR地址时,字地址是40000,40100,40200这样增加的,此时就要把addrStep设成100
报警字长度(有几个字)
读到的数据
触发新增报警事件
触发报警复位事件
当报警消除的时候记录已消除的报警
报警数据
结束时间
当报警触发的时候记录报警
报警数据
报警记录数据(同时作为报警事件的事件参数)
报警信息
报警代码
报警日期
报警开始时间
报警文件记录选项
不记录
报警触发的时候记录
报警复位的时候记录
PLC数据
读取的值类型
字地址
位地址
功能
描述
数据类型
高低位类型
读取的值
读取数据类型
位
短整型 16位
整型 32位
浮点 32位
将字节数组转成16进制字符串
把字符串截取成每个元素2个字符的字符串数组
前置非数据字节数,omron为30,Mitsubishi为11
将条码转换成UInt16数组
没两个字符对应一个UInt16
位转字
输入一个长度16的bool数组,返回一个Int16形式的字
高位在左,低位在右
Word
字转位
输入一个Int16形式的字,返回一个长度16的bool数组
Bits
位转字节
字节转位
把两个uint16的数据合并成一个float
把float分隔成两个int16
低位在前高位在后
把int分隔成两个int16
低位在前高位在后
把两个Int16的数据合并成一个Int32
PLC类型
欧姆龙 Fins协议
三菱 MC协议
基恩士 上位链路协议
西门子 S7协议
西门子PLC S7系列
西门子PLC 使用S7通讯协议,基于Sharp7实现
端口默认102
连接PLC 不会弹窗报错
读plc地址
地址类型(按byte读)
S7Consts.S7AreaPE,
S7Consts.S7AreaPA,
S7Consts.S7AreaMK,
S7Consts.S7AreaDB,
S7Consts.S7AreaCT,
S7Consts.S7AreaTM
起始地址
读取长度
当Area为S7AreaDB时才生效
读取结果
错误信息
写plc地址
当Area为S7AreaDB时才生效
地址类型
S7Consts.S7AreaPE,
S7Consts.S7AreaPA,
S7Consts.S7AreaMK,
S7Consts.S7AreaDB,
S7Consts.S7AreaCT,
S7Consts.S7AreaTM
数据类型
S7Consts.S7WLBit,
S7Consts.S7WLByte,
S7Consts.S7WLChar,
S7Consts.S7WLWord,
S7Consts.S7WLInt,
S7Consts.S7WLDWord,
S7Consts.S7WLDInt,
S7Consts.S7WLReal,
S7Consts.S7WLCounter,
S7Consts.S7WLTimer
起始地址
返回结果
错误信息