My Blog

Using IToolS in WPF

by IToolS on domenica 1 febbraio 2015 03:37
In questo esempio viene mostrato come utilizzare i componenti IToolS in WPF mediante il pattern MVVM:

<Window x:Class="TestIToolSWpfMVVM.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:TestIToolSWpfMVVM"
        Title="MainWindow" Height="350" Width="525">
    <Window.DataContext>
        <local:ViewModel/>
    Window.DataContext>
    <Grid>
        <ListView Name="ListViewGroup" ItemsSource="{Binding Group}"  >
            <ListView.View>
                <GridView x:Name="grdTest">
                    <GridViewColumn Header="VariableName" 
DisplayMemberBinding="{Binding VariableName}"  Width="100"/>
                    <GridViewColumn Header="Value" 
DisplayMemberBinding="{Binding Value}"  Width="100" />
                    <GridViewColumn Header="Address" 
DisplayMemberBinding="{Binding Address}" Width="100" />
                    <GridViewColumn Header="Area" 
DisplayMemberBinding="{Binding Area}" Width="100" />
                    <GridViewColumn Header="VariableType" 
DisplayMemberBinding="{Binding VariableType}" Width="100" />
                <GridView>
            <ListView.View>
        <ListView>
    <Grid>
<Window>

IToolS & XmlSerializer

by IToolS on venerdì 2 gennaio 2015 08:03

Un esempio di applicazione che mostra come utilizzare il namespace "IToolS.Lite" per salvare la configurazione di applicazione attraverso XmlSerializer.

IToolS Mitsubishi Melsec driver

by IToolS on venerdì 2 gennaio 2015 06:53
Il driver IToolS Melsec permette di comunicare con il plc Mitsibishi, le aree disponibili sono:

  X
  Y
  M
  L
  F
  B
  D
  W

ed i tipi di dato gestiti dal driver sono:
 
 Bool
 Byte
 UByte
 Integer
 UInteger
 Real
 DoubleReal
 Long
 DoubleLong
 ULong
 DoubleULong
 String
 WString
 Bcd
 Variant
 Driver

La configurazione del PLC Mitsubishi serie Q e' fattibile attraverso GX-Developer


   Passi preliminari per preparare GX-Developer alla comunicazione con la CPU
   
      Dopo aver creato un nuovo progetto per la CPU Q13UDEH impostare il trasferimento dati attraverso la voce 
      Transfer Setup del menù Online. Nella finestra Transfer Setup:

         -alla riga "PC Side I/F" aprire "Ethernet board" e selezionare TCP dalla 
          combobox "Protocol";
   
         -alla riga "PLC Side I/F" aprire "PLC module", assicurarsi che la voce "Ethernet port direct connection" sia
         deselezionata e impostare l'indirizzo IP del PLC. Se sconosciuto è possibile cercarlo attraverso il bottone
         "Find CPU".

   Passi per la configurazione del PLC per la comunicazione TCP/IP
    
      Espandere il ramo "Parameter" della scheda Project ed aprire "PLC Parameter" con doppio click.
      Nella scheda Built-in Ethernet port:
      
         -inserire l'indirizzo ip della CPU in formato decimale;
         -selezionare "Binary code" nel gruppo Communication data Code;
      
      Cliccare poi sul bottone "Open settings" della finestra Built-in Ethernet port e nella finestra
      seguente impostare la riga numero uno con i seguenti valori
      
            - Protocol: TCP
            - Open system: MC Protocol
            - Host station port No: "numero di porta del PLC per la comunicazione";



Using IToolS MOXA OnCell driver

by IToolS on venerdì 2 gennaio 2015 06:03
La classe MoxaOnCellG3111 permette di interfacciarsi con il Gateway Cellulare Moxa OnCell G3111 

Le tre proprietà 

  • CommonGsmGprsSettings, 
  • GprsSettings, 
  • GsmSettings 

memorizzano i parametri del dispositivo relativi ai modi di funzionamento Gsm, Gprs, Sms. 

Tali proprietà sono organizzate in base allo specifico modo di funzionamento cui si riferiscono (GprsSettings, GsmSettings) e in base alle impostazioni comuni (CommonGsmGprsSettings) ai tre modi di funzionamento. 

La modalità Sms ha parametri comuni a tutti i modi quindi non ha una rappresentazione nelle proprietà. Il metodo GetSettings() permette di ottenere i paramatri impostati nel dispositivo memorizzandoli nelle proprietà relative. Il metodo SetSettings() permette di impostare nel dispositivo i valori dei parametri contenuti nelle proprietà. 

Altri metodi permettono di ottenere (es: GetCommonSettings(...), GetGsmGprsOperativeMode(...), ecc...) o impostare (es: SubmitCommonSettings(...), SubmitOperativeMode(...), ecc...) specifici parametri. 

Tre metodi 

 

  • ActivateGprs(), 
  • ActivateGsm(), 
  • ActivateSms() 

permettono di attivare direttamente uno specifico modo di funzionamento. 

Dopo ogni Submit o Activate è necessario riavviare il dispositivo attraverso il metodo SaveRestart() per rendere effettive le modifiche ai parametri. Utilizzo della classe MoxaOnCellG3111. 

 

IToolS SqlStoreServer Driver

by IToolS on venerdì 6 giugno 2014 10:55

Mediante il driver IToolS SqlStoreServer è possibile pubblicare i valori letti mediante uno tra i tanti protocolli disponibili nel framework IToolS su un database SqlServer. Infatti il driver SqlStoreServer oltre all’utilizzo tradizionale può essere utilizzato come driver di pubblicazione. Con driver di pubblicazione si intende un driver in grado di pubblicare le informazioni contenute nelle variabili utilizzate con un altro protocollo IToolS. Da punto di vista tecnico significa che IToolS da un lato utilizza le variabili per leggere e scrivere informazioni mediante un dato protocollo, ad esempio SIEMENS, dall’altro utilizza le stesse variabili per fornire le stesse informazioni mediante un altro sistema, in questo caso SqlServer, in questo modo è possibile creare un “Real-Time” database contente i valori puntuali letti mediante un qualsiasi protocollo disponibile.

Automation Factory

by IToolS on martedì 10 settembre 2013 16:23

IToolS Scripting namespace

by IToolS on martedì 10 settembre 2013 15:17

All'interno del namespace IToolS.Data.Scripting e' presente la classe Script, mediante la quale e' possibile eseguire uno script passato in formato stringa.  

Lo script viene sostanzialmente "confezionato" all'interno di un metodo definito in una classe compilata in memoria, puo' avere parametri, utilizzare variabili passate per riferimento e deve necessariamente restituire un valore: 

Ipotizziamo che il mio script sia: 

  "System.Windows.Forms.MessageBox.Show("Hello!"); return 0;" 

la classe IToolS Script genera una classe compilata in memoria con al proprio interno un metodo "Execute" contenente lo script: 

public Object Execute(...)
{
System.Windows.Forms.MessageBox.Show("Hello!");
return 0;

IToolS Modbus RTU

by IToolS on mercoledì 4 settembre 2013 10:26
Un esempio semplice che mostra la configurazione di un driver IToolS per la comunicazione in modbus RTU seriale e la lettura/scrittura di un tag di tipo stringa.

Using SQL Driver

by IToolS on martedì 6 agosto 2013 23:20
Il driver SqlStore permette di archiviare i dati in una tabella Sql piuttosto che in un file come avviene per il driver Disk. 

L'implementazione è identica a quella del driver Disk con la sola differenza che i dati sono archiviati in una tabella Sql Server.

IToolS SNMP Driver

by IToolS on venerdì 5 luglio 2013 14:06


Attraverso il driver SNMP IToolS è possibile interrogare dispositivi remoti attraverso il protocollo SNMP, le operazioni consentite sono:

  • GET
  • GETNEXT
  • GETBULK
  • WALK
  • SET


TestSnmpDriver.zip

Tags