1.0 通讯组件概述
通讯组件用于PC与可编程控制器(PLC)、智能仪表等进行数据通讯,适用于基于PC高级语言的工业自动化控制系统。组件采用动态链接库文件(*.DLL)的形式,在PC系统的项目工程里引用该组件,调用相应的属性与方法函数,即可快速实现PC与PLC的高效数据交换。
DLL通讯组件无须安装,直接复制到工程文件目录,方便打包安装部署;无须任何配置,直接调用函数,与应用开发无缝衔接;多年工程经验的软件团队开发测试,经过本公司及客户的海量实际工程应用检验,稳定可靠;采用稳定高效的内部协议,无须编写PLC内部程序配合,直接访问PLC的内存,通讯响应快速;内建动态管理的多独立线程连接,同时支持外部应用的多线程结构调用;兼容WINDOWS系统下的所有开发环境,包括各种版本的VB.NET、C#、VC++,以及DEIPHI 、VB、LabView等;支持几乎所有PLC的CPU自带通讯口、通讯扩展模块。
2.0 通讯组件名称及下载地址
PLC端口直接通讯:
Q/L系列以太网(E71模块): EntQsPlc.DLL
Q/L系列以太网(MELSEC): EntQsPlc.DLL
Q系列串口(扩展口): ComQsPlc_EX.DLL
FX系列以太网(FX5U): EntFxPlc.DLL
FX系列以太网(FX3U): EntFxPlc_ADP.DLL
FX系列 串口(编程口): ComFxPlc.DLL
FX系列 串口(扩展口): ComFxPlc_EX.DLL
PLC数据采集到数据库: 相关软硬件资料下载:
无法下载或它疑问可加微信lflzdh或者QQ532011903留言;
3.0 数据类型
通讯组件能对PLC的输入、输出端口,以及内部中间继电器存储区域、内部数据存储区域,以及扩展存储区域进行读写操作,支持以下数据类型:
BOOL1: 1位布尔型数据;
INT16: 16位有符号整数;
UINT16: 16位无符号整数;
DINT32: 32位有符号整数;
HEX32: 32位16进制字符;
REAL32: 32位单精度浮点数据;
STRING: 多个字符或数字组成的字符串CII)
4.0 函数与参数
4.1 函数参数
[EntLink] 设置PC、PLC的通讯参数,建立与PLC的以太网连接;
参数: pcIP,String,本地地址,即PC端的IP地址
pcPort , Uint16, 本地端口,即PC端的网络端口,默认为0
plcIP , String ,远程地址,即PLC的IP地址
plcPort ,Uint16, 远程端口,即PLC的通讯端口
Handle, Integer ,DLL组件返回网络中PLC的连接句柄 *1
SN , String,调用序列号码,可联系本公司获取
OverTime,Uint16, 通讯超时时间限制,毫秒单位,默认1000
返回值:Int16,函数执行结果,见4.3详细说明。
[ComLink] 设置PC、PLC的通讯参数,建立与PLC的串口连接;
参数: CommPort,Uint16,联接PLC的PC通讯端口
CommRate,Int32,与PLC通讯的速率
DataBit, Uint16, 通讯数据位数
StopBit,Uint16, 数据的停止位数
Parity,PrtType, 数据校验方式
Station, Uint16, PLC的站号码
OverTime,Uint16, 通讯超时时间限制,毫秒单位
SN , String,调用序列号码,通过联系本公司获取
返回值:Int16,函数执行结果,见4.3详细说明
[DeLink] 断开与PLC的连接;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
返回值: Int16,函数执行结果,见4.3详细说明
[CmdRead] 批量读取PLC的数据;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
ValType, DataType, 数据类型枚举,见4.2详细说明
Address ,Uint16, 要读取的存储区域起始地址
Count ,Uint16, 要读取的数量,以ValType对应的数据类型为单位
ReData() , Object/String,读取到的数据(传地址方式的形式参数)
返回值: Int16,函数执行结果,见4.3详细说明
[CmdWrite] 批量写入数据到PLC;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
ValType, DataType, 数据类型枚举,见4.2详细说明
Address ,Uint16, 要写入的存储区域起始地址
Count ,Uint16, 要写入的数量,以ValType对应的数据类型为单位
Data() , Object/String,要写入PLC的数据(传地址方式的形式参数)
返回值: Int16,函数执行结果,见4.3详细说明
[Bit_Test] 以Bit(位)的方式读取一个位的状态;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
Address ,Uint16, 要读取的位所在的字或字节地址
Bit,Uint16, 要读取的位在Address中的位号码
State , Boolean,读取到的位的状态(传地址方式的形式参数)
返回值: Int16,函数执行结果,见4.3详细说明
[Bit_Set] 以Bit(位)的方式设置其状态为ON;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
Address ,Uint16, 要设置的位所在的字或字节地址
Bit,Uint16, 要设置的位在Address中的位号码
返回值: Int16,函数执行结果,见4.3详细说明
[Bit_Reset] 以Bit(位)的方式复位其状态为OFF;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
Address ,Uint16, 要复位的位所在的字或字节地址
Bit,Uint16, 要复位的位在Address中的位号码
返回值: Int16,函数执行结果,见4.3详细说明
[CmdReadString] 读取PLC中的字符串;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
Address ,Uint16, 要读取的存储区域起始地址
PlcDaize ,Uint16, PLC内定义的存放字符的最大字符数
返回值: String,正常时为读到的字符串,异常时为空
[CmdWriteString] 写入字符串到PLC;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
Address ,Uint16, 要写入的存储区域起始地址
PlcDaize ,Uint16, PLC内定义的存放字符的最大字符数
Data ,String, 要写入到PLC的符数,长度应≤PlcDaize
返回值: String,正常时为读到的字符串,异常时为空
[DataConvert] 数据类型转换函数;
参数: SourType,DataType, 数据类型枚举,见4.2详细说明
SourData , Object,需要转换的源数据
DestType , DataType, 数据类型枚举,见4.2详细说
DestData ,Object,转换后的目标数据(传地址方式的形式参数)
StartByte ,Int16,目标数据从源数据取数的起始字节(可选参数)
返回值: Int16,函数执行结果,见5.3详细说明。
*1: Handle参数说明