Пример подключения к Siemens OPC Server из VFP (Visual FoxPro) для контроллеров S7-200

*!* в основном модуле проекта описываем подключение к Siemens OPC Server
*!* должна быть установлена PC Access от Siemens
goOPC = CREATEOBJECT("OPC.SiemensDAAuto")
goOPC.Connect("S7200.OPCServer")
goGrpCollect = goOPC.OPCGroups
goGrp = goGrpCollect.Add("USER1")
goItemsCollect = goGrp.OPCItems

*!* ну а далее добавляем элементы OPC сервера
*!* здесь они присваиваются свойствам формы
with ThisForm
.PresetScales1 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW180", 1)
.PresetCement = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW190", 2)
.PresetWater = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW192", 3)
.PresetAdditive = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW196", 4)
.PresetScales2 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW182", 5)
.PresetScales3 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW184", 6)

.ErrorScales1 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW210", 7)
.ErrorCement = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW220", 8)
.ErrorWater = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW222", 9)
.ErrorAdditive = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW226", 10)
.ErrorScales2 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW212", 11)
.ErrorScales3 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW214", 12)

.WeightScales1 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW150", 13)
.WeightCement = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW152", 14)
.WeightWater = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW154", 15)
.WeightAdditive = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW156", 16)
.WeightScales2 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW158", 17)
.WeightScales3 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.VW160", 18)

.LoadScales1 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.M_08_6", 19)
.LoadCement1 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_00_6", 20)
.LoadCement2 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_02_5", 21)
.LoadWater = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.M_04_7", 22)
.LoadAdditive = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.M_08_2", 23)
.LoadScales2 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.M_10_0", 24)
.LoadScales3 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.M_10_2", 25)

.UnloadScales1 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_01_5", 26)
.UnloadCement = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_02_0", 27)
.UnloadWater = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_02_1", 28)
.UnloadAdditive = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_02_3", 29)
.UnloadScales2 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_01_6", 30)
.UnLoadScales3 = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.Q_01_7", 31)

.SkipUp = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.I_00_0", 32)
.SkipDn = goItemsCollect.AddItem("MicroWin.RBU_20160707.User1.I_01_1", 33)
endwith

*!* пример чтения тэгов
WITH This

.PresetScales1 .Read( 1)
.PresetCement .Read( 1)
.PresetWater .Read( 1)
.PresetAdditive.Read( 1)
.PresetScales2 .Read( 1)
.PresetScales3 .Read( 1)

.ErrorScales1 .Read( 1)
.ErrorCement .Read( 1)
.ErrorWater .Read( 1)
.ErrorAdditive .Read( 1)
.ErrorScales2 .Read( 1)
.ErrorScales3 .Read( 1)

.WeightScales1 .Read( 1)
.WeightCement .Read( 1)
.WeightWater .Read( 1)
.WeightAdditive.Read( 1)
.WeightScales2 .Read( 1)
.WeightScales3 .Read( 1)

.LoadScales1 .Read( 1)
.LoadCement1 .Read( 1)
.LoadCement2 .Read( 1)
.LoadWater .Read( 1)
.LoadAdditive .Read( 1)
.LoadScales2 .Read( 1)
.LoadScales3 .Read( 1)

.UnloadScales1 .Read( 1)
.UnloadCement .Read( 1)
.UnloadWater .Read( 1)
.UnloadAdditive.Read( 1)
.UnloadScales2 .Read( 1)
.UnLoadScales3 .Read( 1)

.SkipUp .Read( 1)
.SkipDn .Read( 1)
ENDWITH

Теги:
Siemens OPC Server, VFP9, Visual FoxPro и OPC
Добавлено: 13 Сентября 2016 08:53:48 Добавил: Igor MSM Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...