http://blog.sina.com.cn/s/blog_16d7d3ecb0102x3qi.html
1.0 通讯组件概述
通讯组件用于PC与可编程控制器(PLC)、智能仪表等进行数据通讯,适用于基于PC高级语言的工业自动化控制系统。组件采用动态链接库文件(*.DLL)的形式,在PC系统的项目工程里引用该组件,调用相应的属性与方法函数,即可快速实现PC与PLC的高效数据交换。
DLL通讯组件无须安装,直接复制到工程文件目录,方便打包安装部署;无须任何配置,直接调用函数,与应用开发无缝衔接;多年工程经验的软件团队开发测试,经过本公司及客户的海量实际工程应用检验,稳定可靠;采用稳定高效的内部协议,无须编写PLC内部程序配合,直接访问PLC的内存,通讯响应快速;内建动态管理的多独立线程连接,同时支持外部应用的多线程结构调用;兼容WINDOWS系统下的所有开发环境,包括各种版本的VB.NET、C#、VC++,以及DEIPHI 、VB、LabView等;支持几乎所有PLC的CPU自带通讯口、通讯扩展模块。

2.0 通讯组件名称及下载地址
FINS TCP 以太网: FinsTcp.DLL
FINS UDP 以太网: FinsUdp.DLL
FINS COM 串口: FinsCom.DLL
HOSTLINK 串口: HostLink.DLL
DTU透传FINS : TransFins.DLL
无法下载或它疑问可加微信lflzdh或者QQ532011903留言;

3.0 数据类型
通讯组件能对PLC的输入、输出端口,以及内部中间继电器存储区域、内部数据存储区域,以及扩展存储区域进行读写操作,支持以下数据类型:
INT16: 16位有符号整数;
UINT16: 16位无符号整数;
DINT32: 32位有符号整数;
HEX32: 32位16进制字符;
REAL32: 32位单精度浮点数据;
BIN16: 16位二进制字符串;
BCD16: 4字符BCD数字;

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, 要读取的存储区域起始地址
PlcDataSize ,Uint16, PLC内定义的存放字符的最大字符数
返回值: String,正常时为读到的字符串,异常时为空

[CmdWriteString] 写入字符串到PLC;
参数: Handle, Integer , 通过EntLink函数获取的网络中PLC的句柄 *1
Memory , PlcMemory, PLC数据区域枚举,见4.2详细说明
Address ,Uint16, 要写入的存储区域起始地址
PlcDataSize ,Uint16, PLC内定义的存放字符的最大字符数
Data ,String, 要写入到PLC的符数,长度应≤PlcDataSize
返回值: String,正常时为读到的字符串,异常时为空

[DataConvert] 数据类型转换函数;
参数: SourType,DataType, 数据类型枚举,见4.2详细说明
SourData , Object,需要转换的源数据
DestType , DataType, 数据类型枚举,见4.2详细说
DestData ,Object,转换后的目标数据(传地址方式的形式参数)
StartByte ,Int16,目标数据从源数据取数的起始字节(可选参数)
返回值: Int16,函数执行结果,见5.3详细说明。

 *1: Handle参数说明为方便同一应用程序连接多台PLC而设置的参数,在通讯组件外部调用时,定义一个全局变量,DLL在与PLC网络连接成功以后,自动分配PLC句柄数据,外部程序通过该句柄区分操作不同的PLC;变量为输入输出型参数,即传地址方式的形式参数,外部赋值无效。

4.2 枚举结构体参数说明:
–PlcMemory 要操作的PLC的内存区域类型:
CIO: 输入输出区域
WR: 内部中间继电器W区域
DR: 内部数据寄存器D区域
ER: 扩展数据E区域
HR: 保持区域H区域
–PrtType 串口通讯的校验方式
None: 无校验
Odd:奇校验
Even:偶检验

4.3 返回值说明:
0 执行成功;
-1 IP地址或端口参数错误;
-2 网络连接错错误;
-3 连接参数错误导致连接失败(如Rack>7 、Slot>15等);
-4 PLC握手连接异常;
-5 PLC握手无响应;
-6 PLC握手响应错误;
-10 读数据超过最大数据量限制;
-11 读数据时数据发送异常;
-12 读数据时PLC响应超时;
-13 读数据PLC返回格式错误;
-14 读数据PLC返回数据错误;
-15 读数据PLC返回数据校验错误;
-18 PLC的网络句柄解析错误;
-19 PLC的网络句柄数据错误;
-20 写数据超过最大数据量限制;
-21 写数据时数据发送异常;
-22 写数据PLC响应超时;
-23 写数据PLC返回格式错误;
-24 写数据PLC返回数据错误;
-25 写数据PLC返回数据校验错误;
-28 PLC的网络句柄解析错误;
-29 PLC的网络句柄数据错误;
-31 数据转换时源数据处理错误;
-32 数据转换时目标数据处理错误;
-41 位操作函数的参数错误;
-70 PLC内存区域的功能受限制;
-80 PC系统中无网卡;
-81 PC的IP地址格式错误;
-82 PLC的IP地址格式错误;
-83 PING命令返回错误;
-99 连接序列号错误或测试次数超过试用限制;

5.0 组件使用步骤
5.1 基本步骤
a. 复制DLL、OCX文件到需要用到该组件的工程项目目录下;
b. 注册DLL、OCX文件(VS.NET平台的DLL程序集组件不用注册);
c. 在项目开发环境里引用DLL文件,不同的开发环境引用方式有区别,具体参见所用语言的帮助文档;
d. 参照例程定义、实例化通讯组件,编写相关通讯代码;

5.2 DLL注册方法
VS.NET平台的DLL程序集组件不用注册,ActiveX的COM组件(.dll/.ocx)须要在系统下注册才能正常使用,注册的方法主要有两种:
a. 代码注册:用Windows提供的Shell命令,Shell “regsvr32 \s ”+ 组件的完整路径及文件名称;
b. 手动注册:同时按下 “Win”键 +“R”建,在弹出的运行对话框中输入:
“Regsvr32 ” + 空格 + 组件的完整路径及文件名称,然后点“确认”按钮;
Windows7 及以上的系统下注册,建议对用户账户作以下设置:
控制面板->用户账号和家庭安全->用户账户->更改用户账户控制设置,把滑竿拖到最下面,即“从不通知”。
Windows7 及以上系统64位注册方法:
a. 在C:\Windows\SysWOW64\下新建目录(以 regdll 为例),复制需要注册的dll到这个目录下(以WinTcpS7.dll为例);
b. 点击开始,在“搜索程序和文件”里键入cmd,然后在搜索出来的cmd菜单上右键,以管理员的权限运行;
c. 此时cmd提示符为C:\Windows\System32,键入: Regsvr32 C:\Windows\System32\regdll\WinTcpS7.dll
d. 按回车键,然后提示注册成功(注意此时使用的是syswow64目录下的regsvr32.exe,而不是system32下的regsvr32.exe)。

6.0 技术支持
本公司提供各类PC与PLC通讯的解决方案,提供工业自动化软件定制开发服务,包括定制化的OPC数据服务器软件,以及自动化设备与生产线监控、数据采集项目等欢迎交流咨询。
任意一款DLL通讯组件,以及本公司的OPC数据服务器SDK开发包等工业数据服务产品都会随产品提供多种语言的例程,同时通过以下方式提供24小时技术支持:
E-Mail: liuflamp@126.com
QQ: 5320 11903
微信: lflzdh

OMRON欧姆龙PLC与VB、C#通过以太网(FinsTCP/FinsUDP)、串口(FinsCom/HostLink)、DTU通讯的DLL相关推荐

  1. OMRON欧姆龙PLC如何实现远程上下载程序?

    欧姆龙(omron),是日系PLC当中市场占有率仅次于三菱的一款强大品牌,其兼具了三菱在运动控制以及西门子在总线控制上的优势,在中小型场合以及多轴控制上倍受工程师们的欢迎. 当前市面上欧姆龙PLC根据 ...

  2. VB编写欧姆龙PLC和霍尼韦尔扫描枪 的串口调试程序,可供大家参考

    VERSION 5.00 Object = "{648A5603-2C6E-101B-82B6-000000000014}#1.1#0"; "MSCOMM32.OCX&q ...

  3. 欧姆龙PLC以太网与西门子WINCC通讯

    摘要 工业通讯桥接器NET30-CS,可以用于欧姆龙CP和CJ系列PLC的以太网通讯,以太网同时支持FINSTCP.NTLINK和ModbusTCP通讯协议.桥接器主要为工业设备联网项目提供硬件支持, ...

  4. 以太网采集欧姆龙PLC DM数据并存入ACCESS 使用C#编写上位机程序

    以太网采集欧姆龙PLC DM数据并存入ACCESS 使用C#编写上位机程序,通过以太网使用FinsTCP协议读取欧姆龙PLC DM区数据. 附图是程序界面,只要输入PLC IP地址.DM区起始地址号和 ...

  5. MatrikonOPC与欧姆龙PLC以太网通讯

    摘要 MatrikonOPC通过以太网连接欧姆龙CP系列和CJ系列PLC,NET30-CS通讯桥接器为PLC提供以太网通讯接口, 同时支持hostlink.NTLINK.Finstcp和ModbusT ...

  6. RS485转以太网网关BL110之44:实现欧姆龙 PLC CJ/CS/CP 接入阿里云平台

    COM口采集欧姆龙 PLC CJ/CS/CP 的配置 RS485转以太网网关一共有四个COM 接口, 4个COM口的配置内容一样,COM1固定为RS232,COM2.COM3和COM4是RS232/R ...

  7. 以太网Profinet协议工业RFID读写器与欧姆龙PLC配置与联机操作说明

    随着工业自动化的推进和变革,越来越多的知名品牌RFID公司投入研发自己的RFID识别系统.百花齐放,使得工业自动化RFID识别技术得到长足发展与进步,但各家使用的工业RFID通信协议也竞相不同,例如西 ...

  8. 【IIOT】欧姆龙PLC数采之CP系列

    [IIOT]欧姆龙PLC数采之CP系列 前言 一.车间级数采系统架构 二.欧姆龙PLC介绍 三.CP系列产品说明 3.1. CPU规格 3.2. 内部寄存器 3.3. 支持协议 四.数采方案 4.1. ...

  9. 【IIOT】欧姆龙PLC数采之CJ2系列

    [IIOT]欧姆龙PLC数采之CJ2系列 前言 一.车间级数采系统架构 二.欧姆龙PLC介绍 三.CJ2系列产品说明 3.1. CPU规格 3.2. 内部寄存器 3.3. 支持协议 四.数采方案 4. ...

最新文章

  1. c语言交换a b(运算符),关于编程语言:是否有一个复合赋值运算符用于a = b
  2. Mysql主从和redis集群哪个好_Redis的三种模式:主从、哨兵、集群
  3. 轻轻松松明白什么是反射,反射有什么用,简单上手反射以及反射的优缺点
  4. 干货!不得不知的UI界面中“行为召唤按钮”设计秘诀
  5. PHP获取表单值--同时获取下拉框的Value和Text值
  6. jsp页面c标签循环map , c:foreach 循环map
  7. HackerRank,一行代码解决输出问题
  8. idea开发工具的一些实用技巧
  9. 数据过多,程序运行失败
  10. Hi,这是一个普通Android开发的2021小结
  11. 《大秦帝国》第四部,阵容太强大
  12. 如何生成王者荣耀、QQ飞车等游戏“空白名”、“重复名”等特殊名
  13. 机器学习入门——简单线性回归
  14. SteamVR手柄震动控制实现
  15. bat文件直接定位到指定目录并等待
  16. 针对WEB服务器的攻击途径和防范措施
  17. 【自然语言实战】·第二章(1.1)——获取词语首字字母
  18. 用FLASH制作RPG
  19. android openal播放器,Android OpenAL 录音参数不正确
  20. stm32 PWM中的频率、占空比计算的总结

热门文章

  1. 看雪学院-Android安全
  2. 【图神经网络】【图预训练】GAINT:基于自监督多尺度邻居预测的节点特征抽取
  3. Unity3D游戏制作-----环境搭建
  4. 微课教学在中等医学职业教育教学中的应用实践研究
  5. 毕业季基于springboot的管理系统设计与实现怎么做如何选题
  6. 记练习XML时遇到的问题及个人解决方案
  7. c语言中英文翻译 毕业设计,c语言中英文翻译资料 毕业(设计)论文.doc
  8. 五子棋AI 算法——极大极小搜索
  9. Ubuntu实现kiftd开机自启动(适用于Ubuntu 16.04或更高版本)
  10. dreamweaver cs6