Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Dicembre 30, 2011 alle 7:41 am in risposta a: Gestione controlli di stringa su impianto fotovoltaico #37099
Sergio Bertana
Amministratore del forumCerco di dare il mio punto di vista sulla domanda postata. Alcuni nostri clienti hanno utilizzato i pannelli operatore Weintek per la gestione dei controlli di stringa nel campo fotovoltaico, ed in modo particolare la ditta IOR3 ha realizzato un sistema davvero completo denominato Galileo. Il sistema sfrutta appunto un terminale Weintek connesso in rete RS485 con schede di controllo di stringa. Come si evince dal datasheet del prodotto, il sistema non solo visualizza sul pannello i dati di produzione, ma gestisce tutti gli allarmi di stringa e crea report sulla produzione. Inoltre grazie ad una serie di macro realizzate ad hoc può inviare SMS ed Email. In merito alla tua domanda sulla possibilità di connettere i controlli Seneca al terminale, non ci sono assolutamente problemi, i terminali supportano in modo nativo tutti i protocolli comunemente usati nei PLC ed anche il Modbus RTU.
Il software di programmazione EasyBuilder è gratuito, scaricabile dal nostro sito, e permette anche il completo debug live della applicazione. Questo vuol dire che puoi sviluppare il programma sul PC connettere il PC in seriale con i controlli di stringa ed eseguire una emulazione del terminale che funziona esattamente come il terminale reale. Previo contatto con il nostro ufficio commerciale è anche possibile avere un supporto tecnico che può essere presso la nostra sede oppure in teleassistenza.Sergio Bertana
Amministratore del forumIl vantaggio di essere un sistema programmabile real time, permette di delegare al programma sul modulo CPU la gestione delle logiche locali sgravando il PC da questo compito.
Il programma sul modulo CPU ad esempio, può realizzare l’automazione di un cancello automatico gestendo il motore ed i relativi finecorsa, ricevendo dal PC solo il comando di apertura e chiusura. Chi conosce la programmazione IEC61131 naturalmente può utilizzare qualsiasi dei 5 linguaggi disponibili per realizzare il programma di automazione cancello (Probabilmente il più indicato è LD, Ladder Diagram).
Ma per chì è avvezzo alla programmazione in linguaggio “C” forse trova piu friendly utilizzare il linguaggio ST Structured Text. Ecco un esempio di semplice automazione in linguaggio ST.
MotoreApri:=FALSE;
IF (ApriDaPC) THEN
IF NOT(FcAperto) THEN MotoreApri:=TRUE; END_IF;
END_IF;MotoreChiudi:=FALSE;
IF (ChiudiDaPC) THEN
IF NOT(FcChiuso) THEN MotoreChiudi:=TRUE; END_IF;
END_IF;Sergio Bertana
Amministratore del forumIn merito alle informazioni tecniche e commerciali, ricordo che registrandosi al sito si può effettuare il download di tutte le informazioni disponibili e del software di programmazione LogicLab e del relativo simulatore su PC. Inoltre sarà consultabile anche il listino prezzi.
In merito alla connettività, il modulo gestisce in modo nativo il protocollo Modbus sia Ascii che RTU su porta seriale RS232/RS485, ed il protocollo Modbus over IP su porta Ethernet.
Quindi è sicuramente possibile da PC Linux e/o con altro sistema operativo, realizzare la connessione con la CPU tramite il protocollo modbus, leggere e/o scrivere memoria all’interno dell’area indirizzabile della CPU. Su questa memoria è possibile da programma LogicLab appoggiare gli I/O logici.
Un’altra possibilità di comunicazione è utilizzare i blocchi funzione presenti nella libreria di sistema, per gestire la comunicazione via UDP. I blocchi funzione SysUDPSktRcv e SysUDPSktSend (Estratto manuale), permettono di ricevere ed inviare pacchetti UDP verso determinate coppie di IP/Porta. I pacchetti sono completamente liberi quindi è possibile realizzare un “proprio” protocollo di comunicazione per scambiarsi dati tra il PC ed il modulo CPU.
Dicembre 28, 2011 alle 7:50 am in risposta a: Disponibilità protocollo SNP-X per PLC GE Fanuc #37096Sergio Bertana
Amministratore del forumTutti i protocolli supportati dai terminali Weintek sono visibili sulla Guida connessioni PLC, che è scaricabile dal nostro sito nella sezione Downloads della pagina web dei pannelli operatore.
In merito alla disponibilità del protocollo SNP-X per i PLC della GE Fanuc, ti riporto estratto della guida, come vedi sono indicate tutti i tipi di variabili PLC che il terminale gestisce tra cui:
Bit M: Auxiliary relay, range da 1 a 10000
Word R: Data register, range da 1 a 32640
Nell’estratto trovi anche lo schema elettrico delle connessioni seriali tra il terminale ed il connettore seriale del PLC.Dicembre 27, 2011 alle 4:57 pm in risposta a: Problemi programmazione CPU SlimLine da LogicLab #37095Sergio Bertana
Amministratore del forumNon mi dici se la connessione tra il PC e lo SlimLine è di tipo seriale RS232 oppure TCP/IP su Ethernet, vediamo entrambi i tipi.
Connessione seriale RS232
Occorre connettere la porta COM del PC ad una delle porte seriali della CPU SlimLine, COM0 oppure COM1, utilizzando l’apposito adattatore CBL054*000 ed il cavo CBL057**00. Nelle pagine dei prodotti alla sezione download trovi gli schemi elettrici. Nel caso volessi autocostruirtelo. In LogicLab devi dal menù Communication -> Settings, selezionare Modbus ed impostare la porta COM del PC a cui è connesso lo SlimLine. I parametri di comunicazione sono 155200, e, 8, 1 ed il nodo Modbus è 1 oppure quello di broadcast 255 (Screenshot).Connessione TCP/IP
Occorre connettere lo SlimLine in rete ethernet con il PC, è possibile fare una connessione peer to peer con un cavo diretto, la porta ethernet dello SlimLine è autosensing sia 10 che 100 Mb ed accetta cavi sia patch che crossed. E’ importante che gli indirizzi IP del PC e dello SlimLine appartengano alla stessa classe. In LogicLab devi dal menù Communication -> Settings, selezionare ModbusTCP ed impostare l’indirizzo IP dello SlimLine. Ll porta di comunicazione è quella standard del Modbus over IP la 502 e come indirizzo di nodo puoi definire 1 oppure quello di broadcast 255 (Screenshot).Sergio Bertana
Amministratore del forumLa distanza da coprire è ridotta, se dalle postazioni delle 4 telecamere vi è un LOS buono (Non vi sono ostacoli tra i punti) con la postazione centrale puoi utilizzare un Rocket M con antenna Omnidirezionale sulla postazione centrale e 4 Nanostation M nelle postazioni delle telecamere. Tutti gli oggetti operano in 802.11n ed hanno velocità di trasmissione fino a +150Mbps.
Per la configurazione tutte le stazioni saranno in configurazione Bridged, il Rocket andrà configurato come Access point e le Nanostation come Station.
Sergio Bertana
Amministratore del forumIl trasferimento ciclico con base tempi di 2 Secondi (E’ il real time clock interno al terminale a fare avanzare autonomamente i secondi), permette di eseguire la lettura della data e ora dal PLC e di aggiornare i registri di data/ora interni al terminale. In questo modo tutti i riferimenti che il terminale abbina alla data/ora (Esempio log allarmi, eventi, ecc.) riporteranno lo stesso valore del PLC.
Se come PLC viene utilizzato uno SlimLine, il trasferimento ciclico deve essere di 6 word dall’indirizzo 100 dello SlimLine verso l’indirizzo LW 9017 del terminale. Per visualizzare data ed ora dovrai inserire 6 oggetti introduzione numerica definendo gli indirizzi di lettura e scrittura diversi (Vedi screenshot), di seguito elenco indirizzi.
Giorno: Lettura LW 9020, Scrittura 3x 103
Mese: Lettura LW 9021, Scrittura 3x 104
Anno: Lettura LW 9022, Scrittura 3x 105
Ore: Lettura LW 9019, Scrittura 3x 102
Minuti: Lettura LW 9018, Scrittura 3x 101
Secondi: Lettura LW 9017, Scrittura 3x 100Nota: Per fare in modo che sia visualizzato lo zero davanti al numero quando il valore da visualizzare è di una sola cifra, nell’oggetto Numeric Input nel TAB Font, occorre scegliere come Align il valore Leading Zero.
Allego un semplice programma di esempio che funzione collegato con uno SlimLine tramite rete ethernet, ma il progetto può essere facilmente modificato per adattarlo alle proprie esigenze (Download esempio).
Attenzione! A causa della diversa gestione del real time clock, in fase di simulazione sul PC il programma di esempio funziona solo sul terminale reale.
Dicembre 21, 2011 alle 3:27 pm in risposta a: Semplice antifurto per pannelli solari con fibra ottica #37088Sergio Bertana
Amministratore del forumUtilizzando le funzioni Sysfputc e Sysfgetc è molto facile da programma ladder inviare in uscita un carattere ogni 100 mS e poi controllarne la ricezione. Nel caso in cui il carattere ricevuto non sia lo stesso carattere trasmesso e/o non si riceva il carattere per più di un certo tempo, viene attivata una flag di errore.
Ti ho realizzato un semplice programma in LogicLab tutto in linguaggio LD, così è semplice comprenderne il funzionamento, allego la stampa del programma ed il progetto sorgente.
Dicembre 21, 2011 alle 8:01 am in risposta a: Chiarimenti sul concetto di variabili RETAIN in IEC61131 #37086Sergio Bertana
Amministratore del forumSulle versioni attualmente distribuite di LogicLab (Versione 1.7.0.0) abbinate al nostro modulo CPU SlimLine con sistema operativo SFW167D000, esiste un un bug sulla gestione delle variabili RETAIN.
Se la variabile RETAIN è inizializzata (Campo INIT VALUE), ad un valore diverso da 0, quando si spegne il PLC e lo si riavvia, essa riassume il valore dichiarato in INIT VALUE. Se invece il valore definito in INIT VALUE è 0 il funzionamento è corretto, il suo valore è mantenuto allo spegnimento del sistema.
Dicembre 21, 2011 alle 7:45 am in risposta a: Chiarimenti sul concetto di variabili RETAIN in IEC61131 #37085Sergio Bertana
Amministratore del forumDa quanto esposto nel post precedente risulta ovvio che variabili che contengono valori che devono restare “in macchina” oltre che allo spegnimento e riaccensione del sistema, anche tra ricaricamenti successivi del programma, non possono essere allocate in variabili RETAIN ma solo nella memoria ritentiva del sistema (Esempio a partire da DB 100.2048 sui sistemi SlimLine).
Fanno parte di questa categoria tutte le impostazioni di set definiti tramite pannello operatore e/o impostati da debug all’atto del test dell’impianto. Eventuali contametri, contapezzi, ecc. e qualsiasi altra variabile che abbia valenza storica per l’impianto.
Dicembre 21, 2011 alle 7:29 am in risposta a: Chiarimenti sul concetto di variabili RETAIN in IEC61131 #37084Sergio Bertana
Amministratore del forumLa tua domanda mi da lo spunto per chiarire il concetto di funzionamento dell’attributo RETAIN sulle variabili. Nella norma IEC 61131 sono indicati due tipi di avvio di un programma in un PLC.
Warm restart conosciuto anche come Warm reboot, alla applicazione della alimentazione al sistema. L’esecuzione del programma parte dal suo inizio e le variabili RETAIN assumono il valore che avevano allo spegnimento del sistema.
Cold restart, dopo avere caricato il programma nel PLC o su condizioni di errore che hanno provocato il riavvio del programma. L’esecuzione del programma parte dal suo inizio e le variabili RETAIN assumono il valore definito nel campo INIT VALUE.
In ogni PLC esistono solitamente ulteriori aree di memoria che pur non avendo l’attributo RETAIN sono ritentive, nel modulo CPU nostro sistema SlimLine ad esempio l’area di memoria DB 100 a partire dall’offset 2048 sino alla sue fine (Offset 4095) è tutta ritentiva. Quindi tutte le variabili allocate in quest’area mantengono il loro valore sullo spegnimento del sistema ed a differenza delle variabili RETAIN lo mantengono anche sul caricamento del programma e/o sul suo riavvio.
Dicembre 20, 2011 alle 2:21 pm in risposta a: Problemi programmazione CPU SlimLine da LogicLab #37082Sergio Bertana
Amministratore del forumSugli ultimi moduli CPU ARM7 della famiglia SlimLine è presente la nuova versione del sistema operativo SFW167D000, per l’eventuale upgrade delle vecchie versioni vedi FAQ.
La nuova versione permette il download del programma sorgente nel modulo CPU (Per utilizzare questa feature occorre avere inserita la SD card nel modulo CPU). Il download del programma sorgente, consente di collegarsi con LogicLab al modulo CPU, di leggere dal modulo il programma sorgente, trasferirlo in una cartella del PC e poi operare su di esso per effettuare modifiche.
Per poter utilizzare LogiLab sulla nuova versione del software, occorre scegliere “SlimLine Mps046**** 8.0” in menù Project->SelectTarget. Se la versione del LogicLab è antecendente alla 1.7.0.0, questo target non è presente e quindi occorre installare l’ultima versione di LogicLab.
Nel caso in cui sul modulo CPU non sia presente la SD card, oppure nel caso non si desideri eseguire il download del programma sorgente sul modulo CPU (Magari per risparmiare tempo nel download), è possibile disabilitare l’opzione dal menù Communication->Source code download. Attenzione! questa opzione viene automaticamente attivata di default alla apertura del progetto, quindi se non è desiderata occorre provvedere a disabilitarla ogni volta che si apre il progetto in LogicLab.
E’ possibile proteggere il codice sorgente con una password, in tal caso non sarà possibile effettuarne la lettura se non si conosce la password di protezione. Per impostare la password ed altre informazioni relative al progetto occorre utilizzare il menù Project->Option (Vedi screenshot).
Nel caso in cui sia abilitato il download del programma sorgente e non sia definita la password di protezione, la procedura di download genererà un messaggio di warning che indica questa condizione.
Dicembre 19, 2011 alle 3:35 pm in risposta a: Sistema di videosorverglianza wireless con telecamere IP #37081Sergio Bertana
Amministratore del forumLa soluzione che hai prospettato mi sembra buona, nella configurazine dei WDS, l’AP posizionato sulla colonna (A) avrà configurato come WDS Peers l’indirizzo MAC della colonna (B). Tutti gli AP intermedi avranno configurato come WDS Peers gli indirizzi MAC dell’AP da cui ricevono e dell’AP verso cui ritrasmettono. L’AP della colonna (E) avrà come WDS Peers l’indirizzo MAC della colonna (D).
La soluzione WDS naturalmente riduce la banda passante dell’intero sistema, visto che ogni AP dovrà oltre a trasmettere i suoi dati anche ritrasmettere i dati degli altri. Ma anche se mettessi delle Nanostation per l’interconnessione ti troveresti nella situazione che la Nanostation del punto (A) avrebbe comunque il carico di tutte quelle a valle.
La soluzione con le Nanostation avrebbe però il vantaggio che essendo una trasmissione direttiva non ci sarebbe dispersione del segnale in direzioni indesiderate non disturbando altre reti e non essendo facilmente intercettabile.
In merito alla banda, ti ricordo che il Bullet M utilizza un solo trasmettittore e quindi come banda massima è un MCS7, mentre le Nanostation M utilizzano due trasmettitori e raggiungono un MCS15. Se vuoi avere un MCS15 con antenna omnidirezionale devi utilizzare dei Rocket M, ma naturalmente lievitano i costi.
Per il ponte per estendere la rete internet tra due edifici puoi usare le NanoBeam M, essendo prodotti con antenna direttiva non hanno grosse interferenze con la rete di videosorveglianza. Ma se nella rete di videosorverglianza usi antenne omnidirezionali, potrebbe essere questa ad interferire con il bridge. Quindi per evitare ogni tipo di interferenza è meglio usare i 2,4 Ghz per una rete ed i 5 Ghz per l’altra.
Operando su di un fondo privato al momento attuale non sono richieste autorizzazioni.
Sergio Bertana
Amministratore del forumIl problema della verniciatura a scopo estetico e/o mimetico delle antenne e degli stessi dispositivi Ubiquiti è un argomento trattato in molti posts su Ubiquiti Networks Forum, eseguendo una ricerca con la voce painting, si potrà fare riferimento ai posts relativi.
Ho chiesto espressamente al supporto tecnico Ubiqiti chiarimenti in proposito, e la loro risposta è stata che è possibile dipingere sia le antenne sia i dispositivi utilizzando vernici che non contengano basi metalliche. Naturalmente dipingendo il prodotto si decade dalla garanzia, quindi consiglio di dipingerli dopo che si è testato il loro funzionamento.Dicembre 19, 2011 alle 10:56 am in risposta a: Utilizzo terminali MT6000 con protocollo Modbus slave #37077Sergio Bertana
Amministratore del forumAllego per il download un semplice programma EasyBuilder che permette di gestire una connessione Modbus Slave ed ha la possibilità di impostare da terminale l’indirizzo di nodo con la relativa macro di copia allo startup. E’ presente anche un oggetto Numeric Input che permette di Visualizzare/Impostare la variabile LW 10 a 32 bit.
Per leggere il valore della variabile dovremo inviare da Toolly la stringa modbus di lettura Read holding registers di 2 registri a 16 bit che ipotizzando indirizzo di nodo 1 sarà :0103000A0002F0$0D$0A, ipotizzando che la variabile LW 10 contenga valore 900000 (0x15F90) verrà ritornata la stringa :0103045F90000108$0D$0A. Come si nota viene ritornato prima il registro LSB e poi quello MSB.
Per scrivere il valore 500000 (0x7A120) nella variabile, dovremo inviare il comando Preset Multiple Registers scrivendo due registri a 16 bit, la stringa sarà :0110000A000204A120000717$0D$0A, e riceveremo come risposta la stringa :0110000A0002E3$0D$0A.
-
AutorePost