YFIOServer 后台IO接口使用说明
1、YFIOServer目前實(shí)現(xiàn)的驅(qū)動(dòng)如下
????
?????? I、modbus Rtu / ASCII / TCP
?????? II、西門子 MPI? / PPI / CP243 / Prodave / SoftNet
?????? III、DDE? Client / Server
????? IV、OPC Client? / Server
????? V、YFIOServer TCP?? Client? / Server (兩個(gè)IOServer后臺(tái)可以遠(yuǎn)程通過(guò)網(wǎng)絡(luò)進(jìn)行互相訪問(wèn))
????? VI、此外是我們公司的一些設(shè)備的通信驅(qū)動(dòng)
2、目前可以操作變量類型如下(比以前更為細(xì)化)
?
??? I、位 / 字節(jié) / 字 / 雙字 / 整型 / 雙整 / 實(shí)數(shù) / 字節(jié)BCD / 字BCD
??? II、可訪問(wèn)的硬件變量區(qū)和具體的硬件設(shè)備相關(guān),一般包括 I(輸入) Q(輸出) DB/V(內(nèi)存變量)SM/M(系統(tǒng)變量)等等
?? III、可以操作位,有位偏移參數(shù) 0~7
3、如何訪問(wèn)IOServer后臺(tái)
??? I、DDE方式:只要是DDE客戶端,就可以實(shí)現(xiàn)與YFIOServer互連 有三種連接方式 熱連接/溫連接/冷連接
???????
?????? 要構(gòu)選 “DDE服務(wù)”后,該變量才提供DDE服務(wù)。
?????
?? II、OPC 2.0 方式:只要是標(biāo)準(zhǔn)OPC客戶端,就可以實(shí)現(xiàn)與YFIOServer互連,目前提供同步和異步兩種方式
??
?? III、API 接口
?'IO內(nèi)存區(qū)初始化
Public Declare Function IOMInit Lib "YFIOS.dll" () As Long
'關(guān)閉IO內(nèi)存區(qū)
Public Declare Function IOMClose Lib "YFIOS.dll" () As Long
'讀指定標(biāo)識(shí)的數(shù)據(jù)? 標(biāo)識(shí)=變量名.字段名
'字段名:值Value,類型Type,小數(shù)位Decimal,上上限HHMax,下下限LLMin,上限HMax,下限LMin,讀寫模式RWMode,讀寫標(biāo)志RWFlag,數(shù)據(jù)更新時(shí)間DateTime,IO連接標(biāo)志IOConnect
Public Declare Function IOMReadField Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'寫指定標(biāo)識(shí)的數(shù)據(jù)? 標(biāo)識(shí)=變量名.字段名
Public Declare Function IOMWriteField Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'讀外部數(shù)據(jù) 可以更改讀寫標(biāo)志?? 由其它應(yīng)用程序采用
Public Declare Function IOMReadData Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'寫外部數(shù)據(jù) 可以更改讀寫標(biāo)志?? 由其它應(yīng)用程序采用
Public Declare Function IOMWriteData Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'讀內(nèi)部數(shù)據(jù) 可以更改讀寫標(biāo)志?? 由驅(qū)動(dòng)程序采用
Public Declare Function IOMRead Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'寫內(nèi)部數(shù)據(jù) 可以更改讀寫標(biāo)志?? 由驅(qū)動(dòng)程序采用
Public Declare Function IOMWrite Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'添加內(nèi)存數(shù)據(jù) 多個(gè)數(shù)據(jù)可以用","分開
Public Declare Function IOMAddNote Lib "YFIOS.dll" (ByVal strName As String, ByVal strData As String) As Long
'刪除指定變量名的數(shù)據(jù)
Public Declare Function IOMDelNote Lib "YFIOS.dll" (ByVal strName As String) As Long
'清除所有的內(nèi)存變量數(shù)據(jù)
Public Declare Function IOMClearNote Lib "YFIOS.dll" () As Long
'獲取內(nèi)存變量的數(shù)據(jù)個(gè)數(shù)
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 控件接口??
函數(shù)名稱:IOControl 類型: YFIOS操作函數(shù)
功能描述:無(wú)
輸入: ByVal lngFlag(IOSERVERMODE)
l???????? 0-打開
l???????? 1-啟動(dòng)
l???????? 2-暫停
l???????? 3-停止
l???????? 4 關(guān)閉
l???????? 5 鎖定
l???????? 6 解鎖
l???????? 7 監(jiān)控
輸出:
l???????? 0 成功
l???????? 1 參數(shù)出錯(cuò)
l???????? 2 IOserver窗口找不到
l???????? 3- 控制異常
l???????? -1 異常
?
函數(shù)名稱:IORead / IOWrite 類型: YFIOS操作函數(shù)
功能描述:外部應(yīng)用 讀/寫IO數(shù)據(jù)
輸入:
l???????? ByVal strName(String) - 名稱
l???????? ByVal strData(String) – 返回的變量數(shù)據(jù)
輸出:
l???????? - 0 成功
l???????? 非0失敗
?
函數(shù)名稱:IOReadField,IOWriteField 類型: YFIOS操作函數(shù)
功能描述:讀寫數(shù)據(jù)字段
輸入:
l???????? ByVal strName(String) - 標(biāo)識(shí)=變量名.字段名
Name???????? 32???? 變量的名稱
Type 2?????? 數(shù)據(jù)類型 B布爾型 I整型 F浮點(diǎn)型 S 字符串
Value 32???? 變量的值
Comment??? 32???? 注釋
EULO???????? 16???? 量程上限??????? 0-無(wú)效??
EUHO??????? 16???? 量程下限??????? 0-無(wú)效
RawLO?????? 16???? 裸數(shù)據(jù)上限????? 0-無(wú)效
RawHI??????? 16???? 裸數(shù)據(jù)下限????? 0-無(wú)效
LLLimit????? 16???? 下下限????????? 0-無(wú)效
LLimit???????? 16???? 下限??????????? 0-無(wú)效
HLimit??????? 16???? 上限??????????? 0-無(wú)效
HHLimit???? 16???? 上上限????????? 0-無(wú)效
Dev??????? 8???????? 報(bào)警偏差??????? 0-無(wú)效
SP????? 16???? 偏差設(shè)定值
Rate?? 4?????? 報(bào)警變化率????? 0-無(wú)效
RateCyc????? 4?????? 變化率周期
AlmTime??? 8?????? 報(bào)警延遲時(shí)間
HLDeadBand?????? 8?????? 上下限報(bào)警死區(qū)
DevDeadBand????? 8?????? 偏差報(bào)警死區(qū)
RWMode??? 2?????? 讀寫類型 0 只讀 1 只寫 2 讀寫(自動(dòng)讀) 3 讀寫(手動(dòng)讀)
4-只讀(手動(dòng))
RWFlag?????? 2?????? R 自動(dòng)讀 W 自動(dòng)寫 r 手動(dòng)讀 n讀不操作 N 寫不操作
Decimal?????? 2?????? 小數(shù)位數(shù) 0~9
Priority?????? 2?????? 報(bào)警優(yōu)先級(jí)
OperateFlag???????? 2?????? 操作標(biāo)志??????? 0 無(wú)操作 1 開平方操作 >5開關(guān)量報(bào)警
Alarm????????? 2?????? 報(bào)警標(biāo)志??????? 1 報(bào)警 0 未報(bào)警
LLStatus???? 2?????? 下下限報(bào)警狀態(tài) 1 報(bào)警 0 未報(bào)警
LStatus?????? 2?????? 下限報(bào)警狀態(tài)??? 1 報(bào)警 0 未報(bào)警
HStatus?????? 2?????? 上限報(bào)警狀態(tài)??? 1 報(bào)警 0 未報(bào)警
HHStatus??? 2?????? 上上限報(bào)警狀態(tài) 1 報(bào)警 0 未報(bào)警
RateStatus 2?????? 變化率報(bào)警狀態(tài) 1 報(bào)警 0 未報(bào)警
DevStatus?? 2?????? 偏差報(bào)警狀態(tài)??? 1 報(bào)警 0 未報(bào)警
DateTime??? 24???? 數(shù)據(jù)更新時(shí)間
?
ByVal strData(String) – 返回的字段名數(shù)據(jù)
????
輸出:
l???????? 0 成功
l???????? 非0失敗
?
函數(shù)名稱:IOReadData,IOWriteData 類型: YFIOS操作函數(shù)
功能描述:內(nèi)部驅(qū)動(dòng)讀寫數(shù)據(jù)
輸入:
l???????? ByVal strName(String) - 名稱
l???????? strData(String)?????? - 數(shù)據(jù)
????
輸出:
l???????? - 0 成功
l???????? 非0失敗
?
函數(shù)名稱:HideSysKey 類型:系統(tǒng)鍵屏蔽函數(shù)
功能描述:屏蔽系統(tǒng)鍵Ctrl+Alt+Del WinKey等
輸入:
l???????? 無(wú)
輸出:
l???????? 無(wú)
?
函數(shù)名稱:ShowSysKey 類型:系統(tǒng)鍵屏蔽函數(shù)
功能描述:恢復(fù)系統(tǒng)鍵 Ctrl+Alt+Del WinKey等
輸入:
l???????? 無(wú)
輸出:
l???????? 無(wú)
?? V、內(nèi)部腳本也可以直接訪問(wèn)內(nèi)部變量
?
?
?
轉(zhuǎn)載于:https://blog.51cto.com/yfsoft/324077
總結(jié)
以上是生活随笔為你收集整理的YFIOServer 后台IO接口使用说明的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 体验感是什么意思
- 下一篇: 数据访问模式二:数据集和数据适配器(传统