Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Luglio 23, 2018 alle 3:50 pm in risposta a: Rilasciato FB MQTTClient per gestione protocollo MQTT #45164
Sergio Bertana
Amministratore del forumIl problema capita solo se attivo lo spionaggio, c’è un bug nella gestione dello spionaggio del frame trasmesso. Ho corretto il bug e tra poco sarà disponibile una nuova versione della libreria eLLabNetworkLib_B100 .
Sergio Bertana
Amministratore del forumGiusta osservazione, per calcolare la velocità di rotazione di un asse si possono utilizzare due metodi.
Contare gli impulsi generati da un generatore posto sull’asse, come nel tuo caso e contando il numero di impulsi in un certo tempo si può determinare la velocità dell’asse. Questa soluzione è adatta quando la velocità di rotazione è elevata (Molti impulsi nel tempo di campionamento). Se la velocità è lenta ci sono pochi impulsi nel tempo e quindi si ha una acquisizione imprecisa.
Misurare il tempo che intercorre tra un impulso e l’altro, questa soluzione è adatta quando la velocità di rotazione è lenta. Se la velocità è elevata il tempo tra gli impulsi è molto poco e quindi difficile da acquisire.
Conclusioni, se vuoi spaccare il capello in 4 puoi gestire entrambi i modi di acquisizione, passando da uno all’altro in base alla velocità di rotazione.
Luglio 23, 2018 alle 7:26 am in risposta a: Rilasciato FB MQTTClient per gestione protocollo MQTT #45153Sergio Bertana
Amministratore del forumVisto il problema, in effetti non veniva inizializzato il buffer che contiene il nome del topic. Ho provveduto a correggere il FB ed a rilasciare la nuova versione di libreria eLLabNetworkLib_B000 scaricabile dal sito.
Luglio 21, 2018 alle 7:59 am in risposta a: Rilasciato FB MQTTClient per gestione protocollo MQTT #45146Sergio Bertana
Amministratore del forumSi se la dimensione del messaggio ricevuto da un topic ha lunghezza pari a 0 o superiore alla dimensione del buffer definito per contenerlo (Parametro VBLengthRxD) il messaggio viene scartato segnalando errore 10067288.
Luglio 21, 2018 alle 7:52 am in risposta a: Rilasciato FB MQTTClient per gestione protocollo MQTT #45143Sergio Bertana
Amministratore del forumSi certo è possibile sottoscriversi a tutti i topics che si desidera, ma venendo al tuo problema, se ho ben capito con TopicRxD tu intendi la variabile stringa il cui indirizzo è passato in:
MQTT.VBufferRxD:=ADR(TopicRxD); (* Value buffer (Received) *)
Quindi nella stringa tu vedi la ricezione del valore pubblicato da qualcuno su quel topic (Nel tuo caso la app sullo smartphone). Bene ho provato esattamente la tua situazione (Utilizzando il programma IOOnMQTT scaricabile da questa knowledge) e non noto alcun problema, io uso la app MyMQTT per i test.
Non è che sia l’app ad inviare insieme al dato anche il nome del topic?
Sergio Bertana
Amministratore del forumLa risposta è nell’errore, la funzione ValueScale ha più operandi
Input (REAL) Valore in ingresso da scalare.
ILow (REAL) Limite minimo del valore in ingresso da scalare.
IHigh (REAL) Limite massimo del valore in ingresso da scalare.
OLow (REAL) Limite minimo del valore in uscita scalato.
OHigh (REAL) Limite massimo del valore in uscita scalato.E tu non li hai messi. Devi scrivere ad esempio se vuoi trasformare un ingresso 4-20 mA in 10-50 PSI:
LD Sensore (* Input, Valore in ingresso da scalare *)
ValueScale 4.0, 20.0, 10.0, 50.0
ST PressioneSergio Bertana
Amministratore del forumLa risposta alla tua domanda è nel manuale di LogicLab, con LogicLab vi sono due manuali, uno è quello che spiega il funzionamento del programma (F1 su una qualunque finestra del programma) è l’altro è quello con i riferimenti a tutte le funzioni e FB fornite con i nostri prodotti (F1 su un nome di funzione o FB).
Ma venendo alla tua domanda per eseguire una funzione da IL basta metterne il nome come primo operando di una riga di programma. Occorre ricordare che il primo parametro alla funzione è passato tramite l’accumulatore, mentre gli altri vanno posti in linea alla definizione. Il risultato della funzione è ritornato in accumulatore. Ecco lo screenshot con un esempio.
Sergio Bertana
Amministratore del forumNon ti serve la libreria, se scarichi il programma del post ti trovi all’interno tutto quello che ti serve. Se poi vuoi utilizzare il FB HTTPClient in altri progetti lo potrai semplicemente importare da questo progetto.
Comunque metto in linea la nuova versione della libreria per poterla scaricare dal sito.
Sergio Bertana
Amministratore del forumPer non dover copiare la variabile, l’unico modo è di passarne l’indirizzo alla funzione o al blocco funzione visto che utilizzi il linguaggio IL ecco come scrivere il programma che utilizza il FB ILRetainCtr. Ho dichiarato nel programma la variabile Counter di tipo ILRetainCtr.
VAR
Counter : ILRetainCtr;
END_VAREd ecco semplice listato IL, come vedi l’ingresso Di00CPU è connesso al clock del counter, ed a Value è passato l’indirizzo della variabile Counters[0] che è di tipo RETAIN.
LD Di00CPU
ST Counter.Clk
ADR Counters[0]
ST Counter.Value
CAL CounterAllego il progetto LogicLab per il download.
Luglio 10, 2018 alle 12:14 pm in risposta a: SIM dati M2M da utilizzarsi per soluzioni di telecontrollo #45116Sergio Bertana
Amministratore del forumTi rispondo da autodidatta, non sò esattamente come i gestori trattino le comunicazioni dati in dial-up, a quanto ne sapevo e come ho più volte scritto ritenevo fose necessario avere SIM per comunicazione M2M (Con numerazione dedicata) e che le normali SIM telefoniche non funzionassero.
Ora tu mi dici che 2 SIM normali funzionano… hai distrutto una mia certezza… poi a che piano telefonico si aggancino è un mistero…
Per quanto riguarda altri operatori, credo che alcuni non gestiscano comunicazioni dati in dial-up, ormai si tende a comunicare via TCP/IP in GPRS/3G/4G ed in questo caso la tariffazione è la classica tariffazione dati Internet.
Sergio Bertana
Amministratore del forumL’errore è che istanzi il FB, lo parametrizzi, ne utilizzi il valore, ma non lo esegui… Devi aggiungere dopo la parametrizzazione:
AI_Wind(); (* Eseguo acquisizione valore analogico *)
Luglio 10, 2018 alle 10:16 am in risposta a: Come gestire accesso a pagina protetto da password #45110Sergio Bertana
Amministratore del forumLa gestione delle password sui pannelli è stata trattata in questo topic, per i dispositivi serie cMT vedi questo topic.
Nei miei piccoli progettini io personalmente modifico la finestra di sistema 07 Password Restriction, la ingrandisco e al suo interno inserisco un oggetto inputazione dati. Così alla pressione del tasto si visualizza la finestra che presenta già il campo di inputazione password. Si digita la password, si chiude la finestra ed ora il tasto di cambio pagina è accessibile (Screenshot).
Luglio 10, 2018 alle 9:53 am in risposta a: Comunicazione Modbus RTU su Slimline Compact Ethernet #45106Sergio Bertana
Amministratore del forumTutte le soluzioni che hai prospettato sono possibili, la più semplice ed economica è utilizzare un convertitore RS232/Rs485 ed utilizzare la porta seriale per comunicare con l’inverter. Nella nostra gamma di convertitori Seriale/Seriale trovi modelli economici (Non isolati galvanicamente) o modelli più costosi isolati galvanicamente.
In alternativa puoi utilizzare un convertitore Ethernet/Seriale in questo topic trovi una descrizione di come utilizzarlo.
Poi certamente puoi utilizzare uscite analogiche per la gestione della velocità, ma il vantaggio della connessione in Modbus è che oltre alla velocità è possibile gestire altri comandi dell’inverter e/o acquisire informazioni ad esempio gestirne la diagnostica.
Sergio Bertana
Amministratore del forumLa soluzione più semplice ed economica è utilizzare un modulo SlimLine LogicLab CPU Compact Ethernet, il modulo ha 2 ingressi analogici 0-10Volt con i quali puoi acquisisre i segnali analogici. Se ti servono più ingressi puoi collegare un modulo di estensione con ingressi analogici. Per la gestione dei dati hai diverse possibilità.
Datalogger locale con salvataggio su file ed invio del file a server FTP remoto (Vedi topic).
Utilizzare il protocollo REST per inviare i dati ad un server nel cloud che ne gestisce la storicizzazione con possibilità di avere dashboard di visualizazione (Vedi Knowledge). Come vedi noi forniamo le librerie per gestire il protocollo REST ed un esempio del programma sul cluod. Ma devi essere tu a sviluppare l’applicazione.
Sergio Bertana
Amministratore del forumPurtroppo al HWg-STE2 puoi solo collegare sonde di temperatura o umidità con interfaccia 1-Wire. Nella gamma di prodotti HWgroup puoi trovare il Poseidon a cui è possibile collegare oltre alle sonde 1-Wire un convertitore per segnali 4-20 mA o un sensore di tensione 60Vdc con il quale puoi leggere segnali in volt anche nel range 0-10 Volt.
Non sò con che segnale esce la tua sonda tensiometrica e non sò quale è la tua applicazione, ma potresti dare una occhiata ai nostri sistemi SlimLine che dispongono di ingressi analogici anche sui moduli CPU. Ma se ti serve una precisione elevata il modulo di estensione analogica che può acquisire diversi tipi di segnali ed anche valori analogici nel range 0-1 Volt con risoluzione di 1.577uV.
-
AutorePost