Sergio Bertana
Risposte nei forum create
- 
		AutorePost
 - 
		
			
				
Marzo 5, 2013 alle 7:08 am in risposta a: Protezione della proprietà intellettuale del software #37587
Sergio Bertana
Amministratore del forumSi in effetti ho riletto quanto dichiarato nel post che tu citi e ci sono contraddizioni. Attualmente abbiamo rilasciato i nuovi moduli CPU Compact e la versione B dei moduli CPU ARM7. Questi nuovi prodotti sono retrocompatibili, ma avendo ridesegnato alcuni parti del sistema operativo stiamo lavorando su una nuova funzione per migliorare questo aspetto di protezione a livello utente.
Marzo 4, 2013 alle 1:08 pm in risposta a: Controllo temperatura con invio di Email e sgancio carico #37585Sergio Bertana
Amministratore del forumLa soluzione più semplice per gestire la sua applicazione è l’utilizzo del Poseidon 3268. Tramite un comune browser il prodoto può essere configurato per gestire una uscita logica sul superamento di una soglia impostabile di temperatura e anche gestire l’invio di una Email.
Nello screenshot indico le due impostazioni da effettuare, la prima è per gestire l’uscita logica, la seconda per l’invio della Email. La mail può essere inviata a un massimo di 2 destinatari, se serve inviarla a più destinatari è possibile utilizzare il software PD Trigger (Vedi post).
Sergio Bertana
Amministratore del forumAggiungo che tutto quanto descritto in merito al driver RNDIS è disponibile anche sui moduli CPU ARM7 versione B a partire da sistema operativo codice SFW184A200.
Sergio Bertana
Amministratore del forumAggiungo che dopo l’impostazione dell’indirizzo IP di rete il modulo CPU SlimLine sarà accessibile da TCP/IP come un qualunque modulo connesso in rete. Ad esempio digitando nella barra di indirizzo di un browser l’indirizzo del modulo (Esempio 192.168.1.122) ne possiamo visualizzare la pagina web di configurazione (Screenshot).
Allo stesso modo potremo accedervi da LogicLab con connessione ModbusTCP sulla porta 502, da Telnet sulla porta 23 e da Ftp sulla porta 21. Accedendo in Ftp con l’esplora risorse di Windows (Definendo nella barra indirizzo ftp: //Admin:[email protected]) potremo vedere il File system del modulo CPU (Screenshot).
Marzo 2, 2013 alle 7:14 am in risposta a: Protezione della proprietà intellettuale del software #37582Sergio Bertana
Amministratore del forumBloccare la lettura del SysCustomerCode non è possibile in quanto questo codice deve comunque essere leggibile da programma e quindi basterebbbe per un cliente realizzare un semplice ramo nel programma che con un MOVE ne copia il valore su una sua variabile per poterlo acquisire.
Come forse non è stato ben spiegato nei post precedenti, il SysCustomerCode può proteggere il programma solo se non si danno i sorgenti al cliente. Nel caso in cui si diano i sorgenti al cliente l’unico modo di proteggere efficacemente il programma è utilizzare il Manufacturer ID.
Altra tecnica che alcuni adottano è di utilizzare una variabile in memoria RETAIN impostandone in debug il suo valore, il blocco funzione criptato controlla questo valore e se diverso si blocca. Non essendo nota la locazione di memoria utilizzata e quasi impossibile bypassare la protezione.
Sergio Bertana
Amministratore del forumAggiungo la possibilità di utilizzare un Poseidon come netGSM gateway (Vedi post).
Febbraio 27, 2013 alle 8:02 am in risposta a: Protezione della proprietà intellettuale del software #37579Sergio Bertana
Amministratore del forumAggiungo per completezza dell’argomento che sui sistemi SlimLine è possibile avere anche un Manufacturer ID (MID), questo identificativo viene impostato sul dispositivo direttamente dalla Elsist che ne tiene tracciabilità. In questo modo nei programmi sviluppati che fanno riferimento a questo codice si ha la certezza che non possano essere eseguiti su sistemi SlimLine che non hanno lo stesso MID definito.
A differenza del Customer code, questo codice non è visibile da programma utente, esso viene controllato eseguendo una specifica funzione embedded che ne verifica l’esettezza utilizzando un algoritmo di criptazione. Ulteriori informazioni sono disponibili in questa FAQ.
Febbraio 27, 2013 alle 7:44 am in risposta a: Protezione della proprietà intellettuale del software #37578Sergio Bertana
Amministratore del forumCerco di spiegare meglio come funziona la protezione basata sul SysCustomerCode, la variabile è accessibile al programma utente perchè deve essere controllata nelle funzioni e FB protetti del cliente, e quindi è anche visualizzabile in debug. Ma si tratta di una variabile di sola lettura, quindi se si mette nella finestra di watch e si cerca di modificarne il valore LogicLab darà un errore.
Se qualcuno più smaliziato inserisce un ramo di programma ladder che con una istruzione MOVE oppure da ST con una assegnazione cerca di scrivere il valore nella variabile SysCustomeCode LogicLab si accorgerà del tentativo di scrivere su una variabile di sola lettura e darà un errore in compilazione.
Le protezioni descritte sono gestite da LogicLab, ma se qualcuno fosse così eclettico da inventarsi un qualche modo per riuscire a scrivere nella variabile SysCustomerCode il valore che tu hai fissato e che controlli nelle tue funzioni protette, ecco che interviene un controllo a livello sistema operativo di SlimLine. Il sistema operativo controlla il valore impostato della variabile con il valore presente in SysCustomerCode, e se riscontra una differenza (Segno che qualcuno in qualche modo ne ha forzato la scrittura) arresta l’esecuzione del programma.
Allo stato attuale (Sperando di non essere smentiti da qualche hacker) possiamo garantire che il Customer Code dà sufficenti garanzie di protezione sulla proprietà intellettuale del software.
Febbraio 27, 2013 alle 7:17 am in risposta a: Invio SMS su condizioni di allarme da dispositivi in rete #37576Sergio Bertana
Amministratore del forumLe soluzioni sono molteplici, la prima che posso suggerire è di utilizzare un servizio di Email to SMS (Vedi post), naturalmente in questo caso bisogna appoggiarsi ad un servizio esterno e questo prevede una connessione Internet oltre a dei canoni da pagare.
Un’altra soluzione basata su PC prevede l’utilizzo del software PD Trigger (Vedi post), in questo modo l’invio degli SMS è gestito direttamente dal PC dove è eseguito il PD Trigger, inoltre il programma può eseguire un controllo attivo del buon funzionamento del dispositivo inviando un tramite ping segnalando allarme se il dispositivo non risponde.
HWgroup prevede inoltre la possibilità di utilizzare un dispositivo Poseidon come gateway SMS, in questo modo tutti i dispositivi HWgroup connessi in rete potranno inviare tramite il gateway messaggi SMS (Vedi datasheet).
Febbraio 21, 2013 alle 5:55 pm in risposta a: Acquisizione temperatura ed umidità da sensore modbus #37575Sergio Bertana
Amministratore del forumIl sensore utilizza il protocollo modbus RTU quindi non vi è alcun problema ad interfacciarsi con un modulo CPU SlimLine al sensore, basta utilizzare il blocco funzione ModbusRTUMaster_v1 per eseguire la lettura dei registri indicati dal sensore.
Per comodità ti ho realizzato un semplice blocco funzione in ST che acquisisce i registri 7, 8 e 9 dal sensore, siccome i valori sono espressi in decimi del valore, nella FB eseguo la divisione per dieci, e ritorno il valore di temperatura in gradi centigradi, di umidità in percentuale e del punto di rugiada in gradi centigradi tutti espressi in REAL.
Per evidenziare la caratteristica di poter mettere in cascata piu istanze del blocco funzione per acquisire più sensori in una rete RS485, ho realizzato un semplice programma dove vengono acquisiti i valori da 2 sensori. Terminata l’acquisizione del primo si acquisisce il secondo, terminata l’acquisizione si riparte dal primo. Allego stampa del programma e codice sorgente.
Febbraio 20, 2013 alle 5:00 pm in risposta a: Controllo e log dati climatici in sala test prodotti #37574Sergio Bertana
Amministratore del forumPer quanto riguarda l’acquisizione dei valori da parte del PC che dovrà poi trasferirli in un data base, nell’SDK disponibile sul sito HWgroup, ci sono esempi per l’acquisizione in HTTP del file XML e per la sua analisi, quindi non dovrebbero esserci problemi a sviluppare un programma di interfaccia.
Ricordo comunque che tutti i dipositivi Poseidon dispongono del protocollo SNMP ed è quindi facile trovare client che possono acquisire i dati usando interrogazioni SNMP, la stessa HWgroup mette a disposizione il programma PDMS per la lettura e la storicizzazione dei dati.
Come ultima ipotesi è quella di eseguire interrogazioni Modbus TCP, esempio per eseguire la lettura dei valori della sonda di umidità e temperatura basterà inviare sulla porta 502 la stringa 00 00 00 00 00 06 02 04 00 64 00 02 (Lettura 2 input registers a partire da address 101) ed il sistema risponderà con la stringa del tipo 00 00 00 00 00 07 02 04 04 01 35 00 E5, che indica il valore 0x0135 (30.9%) di umidità ed il valore 0x00E4 (22.9°C) di temperatura, vedi screenshot nostra utility Toolly.
Febbraio 20, 2013 alle 4:13 pm in risposta a: Controllo e log dati climatici in sala test prodotti #37573Sergio Bertana
Amministratore del forumDovendo gestire con uscite logiche il controllo del range dei valori di temperatura ed umidità, disponendo il prodotto di solo 2 uscite logiche sarà possibile il controllo solo su una delle due sonde di umidità ed una delle due sonde di temperatura.
Per attivare l’uscita quando l’umidità è nel range (20..75%) occorre impostare il valore di soglia a 47.5% ed un valore di isteresi di 27.5%. Per attivare l’uscita quando la temperatura è nel range (21..25°C) occorre impostare il valore di soglia a 23°C ed un valore di isteresi di 2°C (Screenshot).
Nel caso si desiderino controllare tutte e 4 le sonde si può valutare la possibilità disponendo di un pannello operatore, di realizzare una macro sul pannello che esegue il controllo dei 2 valori di umidità e dei 2 valori di temperatura e provvede a gestire le due uscite logiche del Poseidon.
Febbraio 20, 2013 alle 11:28 am in risposta a: Controllo e log dati climatici in sala test prodotti #37572Sergio Bertana
Amministratore del forumAbbiamo diverse soluzioni possibili, la più semplice è di utilizzare un prodotto Poseidon (Esempio il modello 4002) che ha due relè in uscita e connettere due sensori combinati di umidità e temperatura. Per la visualizzazione dei valori istantanei è possibile utilizzare un pannello Touch screen. Il Poseidon 4002 supporta il protocollo Modbus TCP e rende disponibili i valori acquisiti dai sensori su variabili Modbus, registri da 100 a 10x, un registro per ogni sonda gestita (Estratto manuale). Sul pannello operatore è possibile realizzare una semplice pagina di visualizzazione del valore di umidità e temperatura che connettendosi in Modbus TCP con il Poseidon ne visualizza i valori reali (Screenshot). Allego il programma sorgente per il download, il programma può essere eseguito direttamente sul PC in emulazione con EasyBuilder, il tool di programmazione dei terminali, testandone il funzionamento senza necessità di avere il terminale.
Sergio Bertana
Amministratore del forumAggiungo che Weintek nella sezione download del proprio sito fornisce una serie di librerie di simboli già preconfezionate (Vedi post). Dal menu di gestione libreria immagini è possibile selezionando una liberia estrarre i simboli grafici, salvarli in un file immagine e poi reimportarli nella propria liberia. Se l’oggetto ha più stati occorre selezionare ed esportare uno stato alla volta (Screenshot).
Febbraio 19, 2013 alle 7:12 am in risposta a: Gestione librerie nell’ambiente di sviluppo LogicLab #37569Sergio Bertana
Amministratore del forumDa quello che scrivi sembrerebbe che hai impostato come target il Plc Emulator, questo target si riferisce al simulatore che viene eseguito sul PC. Nel simulatore non sono presenti funzioni ed FB embedded, quindi ecco perchè non ti appaiono nella finestra delle librerie in basso (Screenshot).
Per modificare il target devi utilizzare il menù Project -> Select Target e selezionare SlimLine, il progetto verrà automaticamente convertito. Ricordo che olltre alle funzioni ed FB embedded a corredo di LogicLab vi sono una serie di librerie con moltissime funzioni ed FB, fai riferimento al Manuale programmazione IEC61131-3 per un elenco completo. Ti rimando a questo post per ulteriori informazioni.
 - 
		AutorePost