Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 3,616 a 3,630 (di 4,379 totali)
  • Autore
    Post
  • in risposta a: Come inserire valore di variabili nel testo di un allarme #37290
    Sergio Bertana
    Amministratore del forum

    La visualizzazione del valore di variabili all’interno di un testo di allarme è possibile, si possono visualizzare fino a 4 variabili. Nell’oggetto allarmi, devi definire nel testo dell’allarme il tag %(WATCHx)d, dove WATCHx con x da 1 a 4 indica la variabile da visualizzare e d indica la visualizzazione in decimale (Screenshot).

    In basso si apriranno i dialog per la definizione delle variabili e potrai definire sia variabili locali pannello che variabili PLC. Il valore visualizzato nel testo dell’allarme è quello che la variabile aveva al momento dell’allarme, se il valore della variabile cambia il valore visualizzato non lo segue.

    Allego un programma di esempio che permette di attivare l’allarme e di ritornare nel testo dello stesso il valore di due variabili. La definizione dell’allarme è: Testo V1:%(WATCH1)d,  V2:%(WATCH2)d ed ecco lo screenshot del programma in simulazione (Download programma).

    in risposta a: Gestione stringhe da seriale e da connessione UDP #37289
    Sergio Bertana
    Amministratore del forum

    Andiamo con ordine e vediamo di risolvere i problemi sulla ricezione seriale, poi analizzeremo quelli sulla connessione UDP. Il fatto che la funzione SysGetIChars torni al massimo 255 l’ho spiegato prima, quindi è normale. Il programma che ho postato infatti esegue il buffering dei dati ricevuti proprio per poter suddividere la ricezione dei tuoi 2048 bytes in pacchetti massimo di 255 bytes.

    Per quanto riguarda la trasmissione UDP puoi trasmettere pacchetti di 1000 bytes, quindi se il pacchetto ricevuto è di dimensioni maggiori dovrai suddividerlo. Ti allego la stampa ed il programma sorgente di un programma che bufferizza i dati in ricezione e trasmette il pacchetto ricevuto su UDP.

    Utilizzando Toolly puoi inviare un file testo da 2040 caratteri (20 righe da 100 caratteri <CR><LF>) sulla seriale verso lo SlimLine e dal server UDP vedrai i dati ricevuti dalla connessione UDP (Vedi screenshot). I dati sono trasmessi dallo SlimLine dopo 1 secondo che non riceve più dati dalla porta seriale. Come puoi notare  dallo screenshot il debug della variabile TxChrs indica i bytes ricevuti e poi ritrasmessi su connessione UDP.

    in risposta a: Connessione multicast su convertitori Ethernet/Seriale #37287
    Sergio Bertana
    Amministratore del forum

    Devi realizzare una rete multicast tra i tuoi 4 convertitori, come vedi dallo screenshot del post precedente, in configurazione UDP il convertitore ATC1000 può inviare dati contemporaneamente fino a 10 altri convertitori. Quindi ipotizzando che gli IP dei convertitori siano (Per configurare l’IP del convertitore vedi post):

    PLC1: 192.168.0.1, PLC2: 192.168.0.2, PLC3: 192.168.0.3, Master seriale: 192.168.0.10.

    Intanto fissi la porta su cui dialogare, esempio 1000.
    Sul master seriale definisci i 3 IP dei PLC (192.168.0.1, 2, 3) e relativa porta 1000.
    Sui 3 PLC definisci l’IP del master seriale (192.168.0.10) e relativa porta 1000.

    in risposta a: Precisione e limiti acquisizione di temperatura #37285
    Sergio Bertana
    Amministratore del forum

    Il modulo di acquisizione analogico PCB126, utilizza per l’acquisizione del segnale analogico il convertitore Sigma-Delta AD7794 della Analog Devices, come si vede dal datasheet il convertitore ha 24 bits di risoluzione quindi è in grado di suddividere il campo di lettura in oltre 16 milioni di parti.

    Per l’acquisizione delle Pt100 si utilizza una parte della intera scala di acquisizione del convertitore e quindi il numero di bits a disposizione diminuisce, questo porta alla risoluzione di lettura indicata 0.002°C. Ma attenzione a non confondere la risoluzione con l’accuratezza di lettura che dipende dal trasduttore impiegato e dal cablaggio dello stesso.

    Le Pt100 possono acquisire temperature nel range da -200 a 850 °C, tipicamente hanno una precisione di 0.2%, 0.1% o 0.05%, dipende dal prezzo. Molta importanza sulla accuratezza di lettura la riveste il cablaggio, dovendo misurare valori di resistenza molto piccoli (Tipicamente 100 Ohm) occorre eseguire la compensazione della resistenza del filo di rame con cui è connessa la Pt100 con il convertitore, ecco quindi che è preferibile scegliere un cablaggio a 4 conduttori.

    in risposta a: Gestione stringhe da seriale e da connessione UDP #37284
    Sergio Bertana
    Amministratore del forum

    C’è un pò di confusione, vediamo di chiarire il concetto della gestione delle comunicazioni seriali sullo SlimLine. Il buffer seriale è effettivamente di 256 bytes, ma non è necessario aumentarne la dimensione. Il buffer seriale serve a contenere i dati che arrivano dalla seriale solo per dare il tempo al programma utente di leggerli.

    Quindi considerato che il programma utente (Task di background) ha come tempi di esecuzione valori tipici di pochi mS è evidente che in quel tempo può essere ricevuto solo qualche carattere. Ora il tuo problema è di leggere i dati dal buffer di ricezione e di trasferirli nella stringa che hai definito.

    Se vuoi ricevere l’intera stringa, il problema è capire quando la stringa è terminata, può essere utilizzato un carattere delimitatore (Se esiste), oppure attendi un timeout, se non ricevuti caratteri per un tempo definito si considera la stringa ricevuta e si invia sul socket UDP.

    Attenzione anche in trasmissione devi eseguire uno spooling dei dati in uscita caricando nel buffer di trasmissione solo i caratteri che possono essere contenuti. Per darti una idea di qaunto detto ti allego la stampa ed il programma sorgente di un dimostrativo.

    in risposta a: Distanza massima connessione in RS422/485 #37279
    Sergio Bertana
    Amministratore del forum

    Abbiamo fatto un test in laboratorio ed effetivamente esiste un problema con il baud rate di 115.2 Kbps. Abbiamo informato il fornitore che ci ha comunicato un errore di montaggio su di un lot di produzione, in pratica una resistenza sull’optoisolatore di trasferimento dati seriali ha un valore maggiore di quello richiesto.

    Il problema è il valore di R7 che deve passare da 390 Ohm a 200 o 220 Ohm (Vedi Foto). Per quanto riguarda i pezzi a Vs mani, potete eseguire voi la sostituzione della resistenza oppure ritornarci i pezzi e provvederemo a sostituirli con pezzi nuovi.

    L’apertura del convertitore è molto semplice, occorre rimuovere l’unica vite di chiusura posta nella parte  sottostante e poi tirare verso l’alto la calotta di chiusura (E’ trattenuta a pressione da due clips plastiche).

    in risposta a: Gestione visualizzazione testi in diverse lingue #37277
    Sergio Bertana
    Amministratore del forum

    Per alcune lingue che richiedono fonts particolari è possibile selezionare dai fonts di Windows il font desisiderato (Vedi screenshot). Ricordo però che utilizzando il font Arial è comunque possibile realizzare testi in diverse lingue come si vede dal progetto allegato (Vedi screenshot).

    Nel progetto la parola Cane viene convertita in Inglese, Greco, Chinese, Arabo. Agendo sulla bandierina si cambia il valore nella LW-9134 (Visualizzata a lato della scritta) e la parola viene visualizzata nella lingua scelta, non mi assumo responsabiltà sulle traduzioni fatte tramite il traduttore di Google (Download progetto).

    in risposta a: Drivers per Windows 7 convertitori USB-Seriale Trycom #37276
    Sergio Bertana
    Amministratore del forum

    Il convertitore TRPC08 ad una porta utilizza il chip PL2303HX della Prolific, presso il sito del costruttore del chip è possibile trovare tutta la documentazione tecnica ed i drivers anche per Windows 7. Eseguendo il download del driver vi è all’interno una guida in pdf per l’installazione.
     
    Nel caso non riusciate ad eseguire il download del driver potete inviare una richiesta a technical[at]elsist.it vi invierò il driver.

    in risposta a: Gestione trasferimento ricette tra terminale e pen drive USB #37273
    Sergio Bertana
    Amministratore del forum

    Purtroppo non c’è un bit di segnalazione trasferimento in corso. LB-9039 indica lo stato del backup non del data transfer.

    Ho clienti che hanno semplicemente realizzato tramite una macro una temporizzazione e dopo il tempo segnalano la fine del trasferimento. La disponibilità di un bit di segnalazione trasferimento in corso è una richiesta che abbiamo già posto a Weintek, può essere che nelle prossime versioni del firmware sia disponibile.

    in risposta a: Gestione di un semaforo tra task #37271
    Sergio Bertana
    Amministratore del forum

    Mi sembra di capire che più che tra due tasks il tuo problema sia di gestire un comando tra due programmi. Sia il programma LD di gestione DLMS che il tuo programma ST di gestione dialogo UDP devono essere e sicuramente lo saranno entrambi eseguiti nella task Back.

    Cerco di dare una breve spiegazione di come è gestita l’esecuzione nello SlimLine, esistono 4 tasks di esecuzione, ed è possibile forzare l’esecuzione dei vari programmi collegandoli alla relativa task (Screenshot). All’interno di ogni task i programmi sono eseguiti nell’ordine in cui sono riportati (Nella task Back prima viene eseguito il programma LDProgram e poi STProgram).

    Come hai già fatto notare tu tutte le variabili globali sono visibili da tutti i programmi e da tutte le tasks, quindi se tu definisci una variabile BOOL globale la puoi settare dal programma LD e la puoi testare dal programma ST. Nel mio programma di esempio nel programma LD ad ogni attivazione di SysClock1000 attivo per un loop la variabile BOOL Flag. Nel programma ST se Flag è attivo incremento Counter. In questo modo Counter verrà incrementato ad ogni secondo, stampa e download programma.

    in risposta a: Misura corrente di fuga su condensatori elettrolitici #37270
    Sergio Bertana
    Amministratore del forum

    Nella domanda mancano alcune informazioni importanti, quale è il valotre della corrente di fuga, e quale è il tempo di misurazione della stessa.

    Per effettuare il test dei condensatori se utilizzi un sistema automatico che applica la tensione di prova e testa la corente di fuga puoi utilizzare prodotti della nostra famiglia SlimLine. Come vedi sono sistemi modulari e programmabili e nella gamma di moduli abbiamo sia moduli digitali che analogici.

    Per la misura della corrente puoi utilizzare un modulo di acquisizione analogico,  come vedi dalle caratteristiche il modulo è in grado di eseguire 62 acquisizioni al secondo con risoluzione di 19 bits ed un range di 0-10Vdc oppure 0-1.17Vdc. Naturalmente dovrai convertire la corrente in tensione con uno shunt appositamente calibrato per il fondo scala di acquisizione.

    in risposta a: Gestione trasferimento ricette tra terminale e pen drive USB #37269
    Sergio Bertana
    Amministratore del forum

    Vediamo di fare chiarezza, l’oggetto Backup serve per trasferire su di un pen drive USB tutta l’area delle variabili RW per poterla poi eventualmente salvare su di un PC (E’ possibile definire il formato CSV per essere facilmente importato in Excel) e non è previsto alcun restore da pannello ma è possibile restorare l’area utilizzando il programma EasyManager.

    Quello che invece tu necessiti se ho ben capito è di salvare su pen drive USB un tuo ricettario e poterlo ricaricare dalla pen drive su comando da pannello operatore. Per fare questo devi utilizzare l’oggetto Trasferimento dati con trigger. Questo oggetto come si vede dal dialog (Screenshot) permette di trasferire a comando (L’oggetto ha la forma di un pulsante), oppure definendo una sorgente di trigger (Un pulsante o una variabile PLC), una serie di variabili RW dal terminale ad un pen drive.

    Come vedi puoi definire la sorgente e la destinazione dei dati, con EMx si indica un file sul pen drive (Il file si chiamerà EMx.emi). Ogni file EMx può contenere fino ad un massimo di 2 GW di dati (Dipende dalla dimensione del supporto), puoi avere fino a 10 file EM.

    Naturalmente avrai un oggetto con sorgente RW e destinazione EMx per il backup ed uno con sorgente EMx e destinazione RW per il restore. Dal menù Edit -> Parametri di sistema puoi impostare sia il nome del file che il supporto per i file di memoria estesa (Screenshot).

    in risposta a: Utilizzo software di alarm management con prodotti Damocles #37268
    Sergio Bertana
    Amministratore del forum

    Presso il sito del produttore HWgroup è possibile trovare una lista dei programmi commerciali compatibili con i prodotti. Per ogni programma è riportata una breve descrizione ed uno screenshot illustrativo.

    in risposta a: Sockets TCP/IP disponibili sul modulo CPU #37267
    Sergio Bertana
    Amministratore del forum

    Solitamente il pannello è master modbus ed interoga le variabili sul PLC. Questo comporta avere tutti i sockets in ascolto per ricevere le stringhe di interrogazione modbus dai vari pannelli.

    Per connettere più pannelli operatore ad un modulo CPU è preferibile ribaltare il modo di gestione, il pannello diventa un server modbus ed il modulo CPU scrive e legge i dati su di esso. In questo modo è possibile realizzare reti con più pannelli anche in connessione seriale RS485 (Abbiamo un caso reale di un nostro cliente che ha realizzato una rete con 15 pannelli server in RS485).

    Se vuoi usare la connessione ethernet, potrai configurare il pannello per operare come server modbus in connessione UDP (Screenshot) ed il programma sul PLC gestisrà le interrogazioni verso gli indirizzi IP dei vari pannelli in rete.

    in risposta a: Sockets TCP/IP disponibili sul modulo CPU #37266
    Sergio Bertana
    Amministratore del forum

    Il modulo CPU SlimLine ARM7 gestisce un massimo di 10 sockets TCP/IP contemporaneamente, vediamo nel dettaglio quali sono:

    1 socket su porta 21: Server Ftp
    1 socket su porta 23: Server Telnet
    1 socket su porta 80: Server Web
    3 sockets su porta 502: Server modbus

    Naturalmente per utilizzare il server Ftp occorre avere disponibile un socket per i dati, quindi si evince che rimangono 3 sockets disponibili per programma utente, (Vedi post).

    Quindi se vuoi connettere più pannelli Weintek in modbus TCP puoi utilizzare i 3 sockets disponibili ed aggiungerne eventualmente altri 3 da programma utente (Vedi post).

Stai visualizzando 15 post - dal 3,616 a 3,630 (di 4,379 totali)