Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 661 a 675 (di 4,379 totali)
  • Autore
    Post
  • in risposta a: Dubbi sulla funzione SwapData #70020
    Sergio Bertana
    Amministratore del forum

    Ho realizzato un semplice programma che testa lo swap su variabili REAL, naturalmente per vedere il risultato dello swap ho dovuto appoggiare i valori dopo lo swap su variabili DWORD perchè i numeri REAL non essendo più nel formato corretto non sono più visualizzabili. Ecco il risultato:

    PROGRAM MyProgram
    VAR
        i : BOOL;  (* Auxiliary variable *)
        DWData : ARRAY[0..3] OF DWORD; (* DWord data example *)
        RLData : ARRAY[0..3] OF REAL; (* Real data example *)
    END_VAR
    
        RLData[0]:=1234.567;
        DWData[0]:=eGetDWORD(ADR(RLData[0])); //16#449A5225
    
        i:=SwapData(ADR(RLData[1]), ADR(RLData[0]), DWORD_TYPE, SWAP_HALF);
        DWData[1]:=eGetDWORD(ADR(RLData[1])); //16#5225449A
    
        i:=SwapData(ADR(RLData[2]), ADR(RLData[0]), DWORD_TYPE, SWAP_VARS);
        DWData[2]:=eGetDWORD(ADR(RLData[2])); //16#449A5225
    
        i:=SwapData(ADR(RLData[3]), ADR(RLData[0]), DWORD_TYPE, SWAP_ENDIAN);
        DWData[3]:=eGetDWORD(ADR(RLData[3])); //16#25529A44
    
    // [End of file]
    in risposta a: Comparazione programmi PLC #70012
    Sergio Bertana
    Amministratore del forum

    Non esiste un comando di comparazione ma se è stato eseguito l’upload del programma sorgente nel dispositivo (Vedi articolo) è possibile eseguirne il download e dopo averlo aperto con LogicLab ci si ritrova con il file di progetto plcprj relativo al programma presente nel dispositivo.

    Utilizzando un semplice programma di comparazione file di testo si possono vedere le differenze. Certo è tutto molto chiaro per i programmi testuali (Linguaggi IL ed ST) per i programmi grafici si vede la differenza ma non è facile capire quale sia.

    in risposta a: Campo di testo compilabile da utente #70006
    Sergio Bertana
    Amministratore del forum

    Puoi inserire nella pagine degli oggetti introduzione ascii, puoi appoggiare i dati inputati su variabili LW o su RW se vuoi mantenere il dato allo spegnimento.

    Per ogni riga puoi definire il numero di word (Ogni word sono 2 caratteri), naturalmente se vuoi scrivere su più righe dovrai inserire un oggetto di introduzione per ogni riga. Il testo non può scorrere tra i vari oggetti.

    in risposta a: Configurazione impulsi misura su Eastron SDM630 #69996
    Sergio Bertana
    Amministratore del forum

    Contatore di energia trifase SDM630 pur disponendo di una uscita Modbus da cui è possibile acquisire tutte le misure, per i ns sistemi SlimLine esiste un blocco funzione apposito gestisce comunque due uscite impulsive per la misurazione dell’energia attiva e reattiva.

    L’uscita 2 non è configurabile, è impostata per la misurazione dell’energia attiva, e genera 400 impulsi/kWh, la larghezza dell’impulso è 100mS.

    L’uscita 1 può essere impostata dal menu di configurazione con i parametri:

    • Pulse output, energia misurata, potenza totale (attiva kWh, reattiva kVarh), import potenza (attiva kWh, reattiva kVarh), export potenza (attiva kWh, reattiva kVarh).
    • Pulse rate, quantità di energia per ogni impulso (0.01/0.1/1/10/100 kWh/kVarh).
    • Pulse duration, durata impulso 200mS (Solo per dispositivi non MID), 100mS (Default), 60mS.

    La tua domanda, “avrei necessità di ottenere 60ms per 1000 impulsi”, puoi avere impulsi di durata 60mS ed impostando pulse rate a 0.01 avrai 100 impulsi ad ogni kWh.

    in risposta a: System registers, differenza registri LB-9153 e LB-10100 #69989
    Sergio Bertana
    Amministratore del forum

    In fondo al secondo post c’è il link al download, era un progetto realizzato con una vecchi versione di EasyBuilder quindi va convertito.

    L’operazione di conversione la esegue direttamente EasyBuilderPro basta aprirlo dal menù File. Terminata la conversione viene chiesto di definire il modello di pannello scegliere un modello da 4.8″.

    Ecco comunque il progetto CnnTest modificato per un pannello MT8051iP.

    in risposta a: Ancora idee per applicazione domotica #69984
    Sergio Bertana
    Amministratore del forum

    Certamente un sensore RS485 è più “robusto” elettricamente, nella nostra gamma di sensori abbiamo i sensori combinati temperatura, umidità, CO2 e VOC con il relativo blocco funzione di acquisizione.

    Una alternativa più costosa ma che permette anche l’impostazione è di utilizzare il  sensore temperatura e umidità ambiente con display, anche per questo c’è il suo blocco funzione di gestione.

    Se non vuoi stendere cavi puoi utilizzare i sensori wireless della Aranet.

    in risposta a: Realizzare programma a macchina a stati #69979
    Sergio Bertana
    Amministratore del forum

    Non capisco cosa intendi per “in caso di fluttuazione della tensione di linea tutto il ciclo riparte”, se il problema si manifesta perchè il PLC si riavvia o se sono altri componenti dell’impianto che si riavviano.

    Il PLC ha un controllo sulla tensione minima di alimentazione e comunque se c’è un “buco” di alimentazione certamente si riavvia. Ma questo è facilmente risolvibile con una batteria di emergenza sull’alimentazione, puoi usare un alimentatore UPS serie DRC.

    Se invece la tua necessità è di gestire le sequenze di impianto a stati puoi dare una occhiata a questo topic, in pratica si utilizza una variabile numerica per gestire gli stati macchina, nei linguaggi LD o FBD utilizzi l’operatore di comparazione per abilitare le operazioni nei vari stati, in linguaggio ST utilizzi l’operatore CASE.

    Se vuoi mantenere traccia dello sato in cui si trova l’impianto allo spegnimento basterà rendere ritentiva la variabile numerica che gestisce gli stati. Inoltre modificando il numero è possibile passare facilemente da uno stato all’altro.

    in risposta a: Comunicazione seriale su cavo ethernet #69969
    Sergio Bertana
    Amministratore del forum

    Utilizzando due convertitori ATC-1200 uno impostato come server e l’altro come client connessi entrambi alla stesa rete ethernet, non importa se in mezzo ci sono dei ripetitori WiFi che riportano la rete tu puoi avere una connessione seriale trasparente.

    Naturalmente la conversione seriale/Ethernet introduce sicuramente ritardi che possono andare da pochi mS fino a 100 mS e più (Dipendono anche dall’intasamento della rete Ethernet). Ma siccome mi dici trattarsi di un Modbus RTU gli eventuali ritardi sono sicuramente tollerabili e gestiti dal sistema.

    Molte volte mi viene chiesto se è possibile utilizzare questi convertitori Seriale/Ethernet per collegare centraline antifurto o centrali antincendio, ecco in questi casi il protocollo seriale è proprietario e può succedere che il sistema controlli i tempi di latenza generando errori di comunicazione.

    in risposta a: Ancora idee per applicazione domotica #69961
    Sergio Bertana
    Amministratore del forum

    Sono in molti ad utilizzare sistemi PLC per il controllo domotico in questo articolo diamo alcune informazioni in merito.

    “In caso del guasto del PLC” questo evento con i nostri prodotti non può succedere… Però capisco la tua apprensione e quindi và bene utilizzare il relè passo-passo, per leggerne lo stato ti conviene utilizzare dei relè a due contatti, uno per attuare il comando a 220V è l’altro per la segnalazione a 24V. Magari puoi prevedere anche il comando della bobina da PLC in parallelo al pulsante in modo da poter gestire automazioni sui comandi.

    • Quando inserisci l’antifurto spegni automaticamente tutte le utenze non utili.
    • Accendi ad orari prestabiliti o da remoto alcune utenze.
    • Crei scenari automatici sulle luci, per simulare presenza in casa.
    • Spegni utenze energivore al superamento della soglia di energia disponibile per evitare lo sgancio del contatore.

    Per acquisire il consumo di energia consiglio l’utilizzo del contatore di energia monofase SDM120 con il suo blocco funzione dedicato.

    Per l’acquisizione delle temperature è una buona idea l’utilizzo di sensori 1-Wire basati su DS18B20 come questo. Puoi collegarli tutti in parallelo ed acquisirli direattamente dall’interfaccia 1-Wire del modulo CPU.

    in risposta a: Colorazione definizione address TAGs interne #69950
    Sergio Bertana
    Amministratore del forum
    1. Le TAGs riportate con colore rosso indica che sono usate da qualche parte nel progetto.
    2. La visualizzazione della griglia indirizzi si attiva d al menù View selezionando Address Grid (Screenshot).
    3. Dovrai allocare le tue stringhe in un area libera, quindi cerca delle zone libere contigue adatte a contenere le stringhe.
    4. Per scrivere il dimostrativo sono partito da un esempio di Weintek, può essere che mi sia rimasta dentro qualche dicitura originale.
    in risposta a: Progetto di esempio “Demo_SQLQuery” #69947
    Sergio Bertana
    Amministratore del forum

    Si l’esempio Demo_SQLQuery è contenuto nel link che hai trovato, nel file zip ci sono anche alcuni esempi presi dal sito Weintek.

    Riguardo al MariaDB non so se tutti gli elementi siano supportati ma per quello che vedo direi di si.

    in risposta a: System registers, differenza registri LB-9153 e LB-10100 #69933
    Sergio Bertana
    Amministratore del forum

    Informazioni sull’utilizzo dei system registers relativi alla comunicazione con il PLC le puoi trovare in questo topic.

    Però è strano che se il PLC è on-line tu abbia questi problemi di comunicazione, hai impostato nel protocollo un tempo di timeout sufficente, ed eventualmente un numero di retries prima di generare errore (Screenshot).

    Sei sicuro che non vi siano oggetti che puntano ad indirizzo errato sul PLC, prova a fare un progetto con un unico oggetto switch e metti il programma in test per verificare se anche con un solo oggetto hai problemi di comunicazione.

    in risposta a: Accedere con cMTViewer a pannello cMT-2008X #69741
    Sergio Bertana
    Amministratore del forum

    L’accesso al pannello da cMTViewer è sempre attivo, è possibile connettere fino a 9 client cMTViewer in contemporanea oltre alla visualizzazione sul display del pannello.

    Il numero di connessioni contemporanee è impostabile da EasyBuilderPro nelle impostazioni di progetto (Screenshot).

    Attivando l’App cMTViewer sul PC o sul tablet/smartphone ed agendo sul tasto di ricerca dispositivi in rete (Screenshot), se il pannello è nella stessa rete verrà visualizzato nell’elenco e selezionandolo sarà possibile accedervi. Nel tuo caso visto che non trovi il pannello farei questi controlli:

    • Accertarsi che sia raggiungibile in rete, provando a fare un ping.
    • Verificare di non avere indirizzi IP sovrapposti tra pannello ed un’altro dispositivo.
    in risposta a: Visualizzare lista variabili con riferimento dove sono utilizzate #69727
    Sergio Bertana
    Amministratore del forum

    Aggiungo che comunque esiste la possibilità di avere un elenco di Cross reference completo al termine della compilazione del progetto.

    Dal menù Project->Options->Cross Reference occorre abilitarne la generazione, terminata la compilazione del progetto con il tasto Cross reference window è possibile aprire la finestra  di visualizzazione.

    Definendo in Name il nome della variabile verranno visualizzati tutti i punti dove è stata utilizzata (Screenshot).

    in risposta a: Visualizzare lista variabili con riferimento dove sono utilizzate #69710
    Sergio Bertana
    Amministratore del forum

    Il metodo che io utilizzo è il comando di ricerca nel progetto (Find in project), si attiva con la combinazione di tasti Ctr+F.

    Selezionando la variabile da cercare, con la combinazione di tasti Ctr+F si attiva la funzione che darà come risultato tutti i punti dove viene utilizzata la variabile (Screenshot).

    Un doppio click sui vari punti posizionerà l’editor direttamente sul punto per l’eventuale modifica.

Stai visualizzando 15 post - dal 661 a 675 (di 4,379 totali)