Nel campo address e' necessario inserire l'indirizzo che di trova nel file APPLI.SYB:
=K5SYB.V1 =LOGIC =1534836188 =4 =1371717010 =1 =1 =0 0x01000001(0)[0]=bBOOL 0x0c000001(0)[0]=iINT16 ...
Sopra e' riportato una stralcio del file APPLI.SYB dove e' presente la dichiarazione di due variabili:
0x01000001(0)[0]=bBOOL 0x0c000001(0)[0]=iINT16
Se vogliamo ad esempio interrogare la variabile "bBOOL", nel campo address dobbiamo inserire "01000001". Alla partenza il driver in base al valore inserito in Address si calcola l'indirizzo reale e il tipo di dato associato, in fase di progettazione non e' quindi necessario impostare la proprieta' "VariableType" in quanto e' il driver che in base al valore presente nel campo "Address" estrae il tipo e lo imposta.
using System; using System.Collections.Generic; using System.Text; namespace TestStratonNG { class Program { static void Main(string[] args) { IToolS.Components.ComponentBase.RaiseEventsOnMainThread = false; IToolS.Components.Communication.Variable s_variable1 = new IToolS.Components.Communication.Variable(); IToolS.Components.Communication.Group s_group1 = new IToolS.Components.Communication.Group(); IToolS.Components.IOServers.IOServer s_ioServer1 = new IToolS.Components.IOServers.IOServer(); IToolS.Components.Communication.Client s_client1 = new IToolS.Components.Communication.Client(); s_ioServer1.Name = "StratonNG"; s_ioServer1.NetConfig.Port = 1100; s_ioServer1.NetConfig.Address = "172.17.250.183"; s_variable1.VariableName = "sSTRING"; s_variable1.Address = "08000001"; s_variable1.Changed += s_variable1_Changed; s_group1.Items.Add(s_variable1); s_client1.Group = s_group1; s_client1.IOServer = s_ioServer1; s_client1.Start(); Console.WriteLine("Press ENTER to exit"); Console.ReadLine(); } static void s_variable1_Changed(object sender, IToolS.Data.ChangedEventArgs e) { Console.WriteLine(String.Format("Variable: {0} type: {1} value: {2}", ((IToolS.Components.Communication.Variable)sender).VariableName, ((IToolS.Components.Communication.Variable)sender).VariableType, e.NewValue)); } } }
IToolS Blog