1、YFIOServer目前实现的驱动如下
I、modbus Rtu / ASCII / TCP
II、西门子 MPI / PPI / CP243 / Prodave / SoftNet
III、DDE Client / Server
IV、OPC Client / Server
V、YFIOServer TCP Client / Server (两个IOServer后台可以远程通过网络进行互相访问)
VI、此外是我们公司的一些设备的通信驱动
2、目前可以操作变量类型如下(比以前更为细化)
I、位 / 字节 / 字 / 双字 / 整型 / 双整 / 实数 / 字节BCD / 字BCD
II、可访问的硬件变量区和具体的硬件设备相关,一般包括 I(输入) Q(输出) DB/V(内存变量)SM/M(系统变量)等等
III、可以操作位,有位偏移参数 0~7
3、如何访问IOServer后台
I、DDE方式:只要是DDE客户端,就可以实现与YFIOServer互连 有三种连接方式 热连接/温连接/冷连接
要构选 “DDE服务”后,该变量才提供DDE服务。
II、OPC 2.0 方式:只要是标准OPC客户端,就可以实现与YFIOServer互连,目前提供同步和异步两种方式
III、API 接口
'IO内存区初始化
Public Declare Function IOMInit Lib "YFIOS.dll" () As Long
'关闭IO内存区
Public Declare Function IOMClose Lib "YFIOS.dll" () As Long
'读指定标识的数据 标识=变量名.字段名
'字段名:值Value,类型Type,小数位Decimal,上上限HHMax,下下限LLMin,上限HMax,下限LMin,读写模式RWMode,读写标志RWFlag,数据更新时间DateTime,IO连接标志IOConnect
Public Declare Function IOMReadField Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'写指定标识的数据 标识=变量名.字段名
Public Declare Function IOMWriteField Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'读外部数据 可以更改读写标志 由其它应用程序采用
Public Declare Function IOMReadData Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'写外部数据 可以更改读写标志 由其它应用程序采用
Public Declare Function IOMWriteData Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'读内部数据 可以更改读写标志 由驱动程序采用
Public Declare Function IOMRead Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'写内部数据 可以更改读写标志 由驱动程序采用
Public Declare Function IOMWrite Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'添加内存数据 多个数据可以用","分开
Public Declare Function IOMAddNote Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'删除指定变量名的数据
Public Declare Function IOMDelNote Lib "YFIOS.dll" (ByVal strName As String) As Long
'清除所有的内存变量数据
Public Declare Function IOMClearNote Lib "YFIOS.dll" () As Long
'获取内存变量的数据个数
Public Declare Function IOMGetNoteNum Lib "YFIOS.dll" () As Long
'获取指定索引的变量名称
Public Declare Function IOMGetNodeName Lib "YFIOS.dll" (ByVal lngNo As Long, ByVal strName As String) As Long
IV、swl.ocx 控件接口
函数名称:IOControl 类型: YFIOS操作函数
功能描述:无
输入: ByVal lngFlag(IOSERVERMODE)
l 0-打开
l 1-启动
l 2-暂停
l 3-停止
l 4 关闭
l 5 锁定
l 6 解锁
l 7 监控
输出:
l 0 成功
l 1 参数出错
l 2 IOserver窗口找不到
l 3- 控制异常
l -1 异常
函数名称:IORead / IOWrite 类型: YFIOS操作函数
功能描述:外部应用 读/写IO数据
输入:
l ByVal strName(String) - 名称
l ByVal strData(String) – 返回的变量数据
输出:
l - 0 成功
l 非0失败
函数名称:IOReadField,IOWriteField 类型: YFIOS操作函数
功能描述:读写数据字段
输入:
l ByVal strName(String) - 标识=变量名.字段名
Name 32 变量的名称
Type 2 数据类型 B布尔型 I整型 F浮点型 S 字符串
Value 32 变量的值
Comment 32 注释
EULO 16 量程上限 0-无效
EUHO 16 量程下限 0-无效
RawLO 16 裸数据上限 0-无效
RawHI 16 裸数据下限 0-无效
LLLimit 16 下下限 0-无效
LLimit 16 下限 0-无效
HLimit 16 上限 0-无效
HHLimit 16 上上限 0-无效
Dev 8 报警偏差 0-无效
SP 16 偏差设定值
Rate 4 报警变化率 0-无效
RateCyc 4 变化率周期
AlmTime 8 报警延迟时间
HLDeadBand 8 上下限报警死区
DevDeadBand 8 偏差报警死区
RWMode 2 读写类型 0 只读 1 只写 2 读写(自动读) 3 读写(手动读)
4-只读(手动)
RWFlag 2 R 自动读 W 自动写 r 手动读 n读不操作 N 写不操作
Decimal 2 小数位数 0~9
Priority 2 报警优先级
OperateFlag 2 操作标志 0 无操作 1 开平方操作 >5开关量报警
Alarm 2 报警标志 1 报警 0 未报警
LLStatus 2 下下限报警状态 1 报警 0 未报警
LStatus 2 下限报警状态 1 报警 0 未报警
HStatus 2 上限报警状态 1 报警 0 未报警
HHStatus 2 上上限报警状态 1 报警 0 未报警
RateStatus 2 变化率报警状态 1 报警 0 未报警
DevStatus 2 偏差报警状态 1 报警 0 未报警
DateTime 24 数据更新时间
ByVal strData(String) – 返回的字段名数据
输出:
l 0 成功
l 非0失败
函数名称:IOReadData,IOWriteData 类型: YFIOS操作函数
功能描述:内部驱动读写数据
输入:
l ByVal strName(String) - 名称
l strData(String) - 数据
输出:
l - 0 成功
l 非0失败
函数名称:HideSysKey 类型:系统键屏蔽函数
功能描述:屏蔽系统键Ctrl+Alt+Del WinKey等
输入:
l 无
输出:
l 无
函数名称:ShowSysKey 类型:系统键屏蔽函数
功能描述:恢复系统键 Ctrl+Alt+Del WinKey等
输入:
l 无
输出:
l 无
V、内部脚本也可以直接访问内部变量
本文出自 “叶帆工作室” 博客,转载请与作者联系!