VB、C#等高级语言与三菱PLC(Q系列、L系列、FX系列、A系列)串口、以太网通讯的DLL及源代码 (2)

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

4.2  枚举结构体参数说明:

--PlcMemory   要操作的PLC的内存区域类型:

DI:    数字输入区域X

DQ:    数字输入区域Y

MR:   内部中间继电器M

SR:   内部状态继电器S

DR:   内部数据寄存器D

ER:   扩展数据E

RR:   数据存储区R

ZR:   数据存储区ZR

--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  技术支持

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zypzpg.html