《Fatek Server ActiveX Interface 使用说明.PDF》由会员分享,可在线阅读,更多相关《Fatek Server ActiveX Interface 使用说明.PDF(15页珍藏版)》请在三一文库上搜索。
1、 FaconServer ActiveX 程序接口定义 接口名称 说明 开启先前已储存的项目文件(扩展名为fcs),功能与操作窗口的开启项目相同. OpenProject 储存目前规划数据至档案(扩展名为fcs), 功能与操作窗口的储存项目相同. SaveProject 执行联机动作,将 PLC 数据读回 PC, 功能与操作窗口的联机相同. Connect 中断联机动作, 功能与操作窗口的脱机相同. Disconnect 新增组群, 功能与操作窗口的新增组群相同. AddGroup 编辑组群, 功能与操作窗口的编辑组群相同. EditGroup 删除组群, 功能与操作窗口的删除组群相同. De
2、leteGroup 新增项目(新增要自动读取的变量), 功能与操作窗口的新增项目相同. AddItem 删除项目, 功能与操作窗口的删除项目相同. DeleteItem 读取变数值 GetItem 写入变数值 SetItem www.PLC OpenProject 执行开启项目的动作,开启已存在编辑完成的项目文件,搭配 Connect 函式,FaconServer 会依照专案内所 设定的联机装置,控制器,组群及项目,作数据读取或写入的服务. HRESULT _stdcall OpenProject( BSTR filename /项目文件名称 ); 参数 filename In 欲开启专案的文
3、件名. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 FaconServer 在读取 PLC 数据前,必须先建立项目文件. 相关函式 SaveProject, Connect, Disconnect. www.PLC SaveProject 执行储存项目的动作,将已开启的项目储存至档案. HRESULT _stdcall SaveProject( BSTR filename /项目文件名称 ); 参数 filename In 欲储存项目的文件名. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 储存项目前,必须先开新
4、项目或开启项目. 相关函式 OpenProject, Connect, Disconnect. www.PLC Connect 执行联机的动作,开始做数据读取或写入的服务. HRESULT _stdcall Connect(); 参数 无 传回值 如果函式完成,会传回 S_OK 如 果函式失败,会传回 S_FALSE. 备注 FaconServer 在联机之前,必须先建立项目文件. 相关函式 OpenProject, SaveProject, Disconnect. www.PLC Disconnect 执行脱机的动作,停止做数据读取或写入的服务. HRESULT _stdcall Disco
5、nnect(); 参数 无 传回值 如果函式完成,会传回 S_OK 如 果函式失败,会传回 S_FALSE. 备注 FaconServer 必须在联机的状态下,才能执行脱机动作. 相关函式 OpenProject, SaveProject, Connect. www.PLC AddGroup 执行新增组群的动作,新增加一个组群,方便管理读取变量项目. HRESULT _stdcall AddGroup( BSTR path, /新增组群在项目中,所在的路径 BSTR groupname, /组群的名称 byte priority, /组群更新速度的优先权 byte enabled /组群更新动
6、作致能或除能 ); 参数 path In 欲新增组群的路径. groupname In 欲新增组群的名称. priority In 欲新增组群的更新速度的优先权. 0 表示优先权为最高,1 表示优先权为中等,2 表示优先权为最低. enabled In 欲新增组群的致能旗标. 0 表示除能,1 表示致能. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 组群路径表示:当要新增”Group1”组群到联机装置Channel0及控制器Station1时,组群路径等于 “Channel0.Station1”, 联机装置名称与控制器名称中间加入逗号. 相关函式 Op
7、enProject, SaveProject, EditGroup, DeleteGroup, AddItem, DeleteItem. www.PLC EditGroup 执行编辑组群的动作,编辑组群属性,方便管理读取变量更新速度. HRESULT _stdcall EditGroup( BSTR path, /编辑组群在项目中,所在的路径 BSTR groupname, /编辑组群的名称 byte priority, /编辑组群更新速度的优先权 byte enabled /编辑组群更新动作致能或除能 ); 参数 path In 欲编辑组群的路径. groupname In 欲编辑组群的名称
8、. priority In 欲编辑组群的更新速度的优先权. 0 表示优先权为最高,1 表示优先权为中等,2 表示优先权为最低. enabled In 欲编辑组群的致能旗标. 0 表示除能,1 表示致能. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 组群路径表示:当要编辑联机装置Channel0及控制器Station1及组群”Group1”时,组群路径等 于“Channel0.Station1”, 联机装置名称与控制器名称中间加入逗号. 相关函式 OpenProject, SaveProject, AddGroup, DeleteGroup, AddIt
9、em, DeleteItem. www.PLC DeleteGroup 执行删除组群的动作,将不再使用的组群删除,方便组群管理. HRESULT _stdcall DeleteGroup( BSTR path, /删除组群在项目中,所在的路径 BSTR groupname, /删除组群的名称 ); 参数 path In 欲删除组群的路径. groupname In 欲删除组群的名称. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 执行删除组群时, 组群内部所有的变量项目,也会一并删除. 组群路径表示:当要删除联机装置Channel0及控制器Station
10、1及组群”Group1”时,组群路径等 于“Channel0.Station1”, 联机装置名称与控制器名称中间加入逗号. 相关函式 OpenProject, SaveProject, AddGroup, EditGroup, AddItem, DeleteItem. www.PLC AddItem 执行新增项目的动作,将需要读取的变量项目加入组群. HRESULT _stdcall AddItem( BSTR path, /新增项目在项目中,所在的路径 BSTR itemname, /新增项目的变量名称 ); 参数 path In 欲新增项目的路径. itemname In 欲新增项目的变量
11、名称. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 项目路径表示:当要新增”R0”变量项目到联机装置Channel0及控制器Station1及组群 ”Group1” 时,项目路径等于“Channel0.Station1.Group1”, 各阶层名称中间加入逗号. 新增项目名称可以单一项目或复合项目,例如”R0”或”R0,R2,M0- M7”. 相关函式 AddGroup, EditGroup, DeleteGroup, DeleteItem. www.PLC DeleteItem 执行删除项目的动作,将不需要的变量项目从组群移出. HRESULT _s
12、tdcall DeleteItem( BSTR path, /删除项目在项目中,所在的路径 BSTR itemname, /删除项目的变量名称 ); 参数 path In 欲删除项目的路径. itemname In 欲删除项目的变量名称. 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 项目路径表示:当要删除在联机装置Channel0及控制器Station1及组群”Group1”内”R0”变量 项目时,项目路径等于“Channel0.Station1.Group1”, 各阶层名称中间加入逗号. 相关函式 AddGroup, EditGroup, Delet
13、eGroup, AddItem. www.PLC GetItem 执行读取项目的动作,直接读取变量值. HRESULT _stdcall GetItem( BSTR path, /读取项目在项目中,所在的路径 BSTR itemname, /读取项目的变量名称 VARIANT* value /读取项目的变量存放位置 ); 参数 path In 欲读取项目的路径. itemname In 欲读取项目的变量名称. value out, retval 欲读取项目的变量所存放位置 传回值 如果函式完成,会传回 S_OK 如 果函式失败,会传回 S_FALSE. 备注 项目路径表示:当要读取在联机装置C
14、hannel0及控制器Station1及组群”Group1”内”R0”变量 项目时,项目路径等于“Channel0.Station1.Group1”, 各阶层名称中间加入逗号. 相关函式 AddItem, DeleteItem, SetItem. www.PLC SetItem 执行写入项目的动作,直接写入变量值. HRESULT _stdcall GetItem( BSTR path, /写入项目在项目中,所在的路径 BSTR itemname, /写入项目变量的名称 BSTR value /写入项目变量的数据 ); 参数 path In 欲写入项目的路径. itemname In 欲写入项
15、目的变量名称. value In 欲写入项目变量的数据 传回值 如果函式完成,会传回 S_OK 如果函式失败,会传回 S_FALSE. 备注 项目路径表示:当要写入在联机装置Channel0及控制器Station1及组群”Group1”内”R0”变量 项目时,项目路径等于“Channel0.Station1.Group1”, 各阶层名称中间加入逗号. 相关函式 AddItem, DeleteItem, GetItem. www.PLC 附录一. VB 范例 说明: 程序启动时,自动启动FaconServer ActiveX Server,并加载已完成设定的档案(D:Demo.fcs)后,并执行
16、 联机动作. 联机时,设定一个定时器固定一段时间读取 R0 的数据显示在程序的标题. 程序结束时,程序会自动关闭并释放 FaconServer ActiveX Server. Dim server As Object 定义 FaconServer 对象 Private Sub Form_Load() Set server = CreateObject(“FaconSvr.FaconServer“) 建立 FaconServer 对象 server.OpenProject (“D:DEMO.fcs“) 开启已编辑完成项目文件(D:Demo.fcs) ConnectBtn_Click End Su
17、b Private Sub ConnectBtn_Click() server.Connect FaconServer 执行联机动作,将 PLC 数据读回 PC Timer1.Enabled = True 设定显示变量定时器 End Sub Private Sub DisconnectBtn_Click() Timer1.Enabled = False 停止显示变量定时器 server.Disconnect FaconServer 停止联机动作 End Sub Private Sub Timer1_Timer() Label1.Caption = server.GetItem(“Channel
18、0.Station0.Group0“, “R0“) 读取变数 R0 数值 If server.GetItem(“Channel0.Station0.Group0“, “M1922“) 0 Then 读取接点 M1922 数值 Shape1.FillColor = importlib(“stdvcl40.dll“); uuid(E33C7B53-90BB-41E9-88E5- 3DD8D485E95B), version(1.18), helpstring(“Dispatch interface for FaconServer Object“), dual, oleautomation inte
19、rface IFaconServer: IDispatch id(0x00000001) HRESULT _stdcall OpenProject(in BSTR filename ); id(0x00000002) HRESULT _stdcall SaveProject(in BSTR filename ); id(0x00000003) HRESULT _stdcall Connect( void ); id(0x00000004) HRESULT _stdcall Disconnect( void ); id(0x00000005) HRESULT _stdcall AddGroup(
20、in BSTR path, in BSTR groupname, in byte priority, in byte enabled ); id(0x00000006) HRESULT _stdcall EditGroup(in BSTR path, in BSTR groupname, in byte priority, in byte enabled ); id(0x00000007) HRESULT _stdcall DeleteGroup(in BSTR path, in BSTR groupname ); id(0x00000008) HRESULT _stdcall AddItem
21、(in BSTR path, in BSTR itemname ); id(0x00000009) HRESULT _stdcall DeleteItem(in BSTR path, in BSTR itemname ); id(0x0000000A) HRESULT _stdcall GetItem(in BSTR path, in BSTR itemname, out, retval VARIANT * value ); id(0x0000000B) HRESULT _stdcall SetItem(in BSTR path, in BSTR itemname, in BSTR value
22、 ); ; www.PLC uuid(6FC145E9-A43F-4A71-89B5- 9D7284540D5B), version(1.7), helpstring(“Events interface for FaconServer Object“) dispinterface IFaconServerEvents properties: methods: ; uuid(56A9ADF8-604D-40B7-A696- 990FCFAD1E46), version(1.0), helpstring(“FaconServer Object“) coclass FaconServer default interface IFaconServer; default, source dispinterface IFaconServerEvents; ; ; www.PLC