Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Sergio Bertana
Amministratore del forumSi certo questa è una possibilità, se cerchi di allocare uno spazio e non hai mai memoria disponibile tutte le operazioni legate al buffer di memoria sono bloccate.
Il verificare con un comando la disponibilità di spazio non è possibile e comunque siccome l’allocazione potrebbe essere richiesta da altre task corri il rischio che il comando dia una disponibilità che poi un’attimo dopo non sia più vera.
La soluzione migliore è di provare ad allocare lo spazio che ti serve, se dopo un tempo non riesci provare ad allocare uno spazio minore fino a quando l’allocazione riesce. Così sei certo che hai effettivamente la memoria disponibile.
Se poi vuoi cimentarti nella richiesta della memoria disponibile puoi utilizzare il FB CLIClient per eseguire il comando RMStats,l’esempio è già pronto nella pagina del manuale.
Sergio Bertana
Amministratore del forumIl software EasyBuilderPro permette la completa emulazione del progetto compresa la connessione On-Line con i PLC e/o dispositivi sia via seriale che TCP/IP.
Quindi puoi sicuramente realizzare un programma che si connette in RS485 (Dovrai usare un convertitore USB/RS485 come questo) con il tuo dispositivo e gestire e salvare il log delle letture.
Ma il programma EasyBuilderPro in simulazione opera per una 15ina di minuti poi si arresta, lo devi fare riaprtire manualmente. Weintek vende i pannelli operatore e se EasyBuilder funzionasse come un pannello si farebbe concorrenza da sola.
Ma se devi fare un log dati e non ti serve la visualizzazione puoi usare anche un sistema SlimLine con il FB StringToLogFile puoi realizzare un semplice data logger alcuni esempi sono già nella pagina del manuale.
Con il FB FTPClient puoi trasferire automaticamente i dati salvati in un server FTP remoto, un esempio è già nella pagina del manuale.
Gennaio 25, 2022 alle 4:33 pm in risposta a: Gestione motore con inversione senso di rotazione #63472Sergio Bertana
Amministratore del forumSicuramente il modello trifase che hai indicato và benissimo per il tipo di motore, ma ti ricordo che per pilotare un motore trifase fino a 2.2 Kw puoi anche utilizzare un modello con ingresso in monofase. Ad esempio il modello HWPINVG121 può pilotare motori fino a 0.4Kw.
Per quanto riguarda il funzionamento direi che il variare la velocità è la funzione basilare di ogni inverter. Puoi impostarla tramite il potenziometro presente sulla tastiera dell’inverter oppure collegare un potenziometro esterno.
Per il brandeggio dell’irrigatore mi sembra tu abbia previsto 2 finecorsa per delimitare il raggio di azione. Sull’inverter potremmo programmare la funzione 3 fili tipo 2 (P05.13=3) dai una occhiata al capitolo Controllo a 3 fili con velocità da potenziometro esterno in questa nota e utilizzare:
- Ingresso S1 marcia avanti (colleghiamo finecorsa indietro)
- Ingresso S2 marcia indietro (colleghiamo finecorsa avanti)
- Ingresso S3 abilitazione alla marcia
Alla accensione dovremo dare un comando manuale di avanti o indietro, poi quando l’irrigatore tocca il relativo finecorsa la rotazione si inverte e continua a fare oscillare l’irrigatore tra i due finecorsa.
Disabilitando l’ingresso S3 il motore si arresta.
Sergio Bertana
Amministratore del forumTutte le funzioni non avendo la possibilità di gestire variabili statiche al loro interno tornano immediatamente il risultato. Solo i FB possono gestire operazioni per la cui esecuzione occorrono più cicli di programma.
La SysRMAlloc è una funzione quindi ritorna immediatamente TRUE nel caso sia riuscita ad allocare il buffer richiesto, FALSE in caso contrario.
Certo se vuoi puoi allocare un buffer con la SysRMAlloc e poi utilizzarlo in tutti i POUs, ma attenzione la task di Boot è eseguita una sola volta, e anche se probabilmente si riuscirà ad allocare la memoria, nel caso non si riuscisse non avresti il buffer disponibile.
E’ meglio invece allocarlo in un POU eseguito in Back e prima di utilizzarlo controllare se è stato allocato.
Sergio Bertana
Amministratore del forumNella gamma di prodotti HW-group trovi diversi tipi di sensori. In generale oltre a diversi sensori temperatura/umidità abbiamo:
- HomeBox – Sensori Temperatura, Umidità, CO2, VOC, Pressione
- Rilevatore di perdite d’acqua
- Sensore 230Vac
- Sensore di luminosità
- Trasduttore di corrente
Ma sul modello STE puoi solo utilizzare i sensori di temperatura/umidità.
Sergio Bertana
Amministratore del forumCome hai detto giustamente tu non è il portale a contattare i devices, ma sono i devices che inviano i dati al portale. Come vedi dallo screenshot della pagina Portal di un STE2R2 puoi impostare i parametri di invio.
Il tuo dispositivo che è un STE non ha la possibilità di inviare i dati verso il portale SensDesk.
Sergio Bertana
Amministratore del forumCerto quando è possibile conviene sempre allocare memoria con SysRMalloc, puoi tenere la memoria allocata per tutto il tempo che ti serve e poi liberarla con SysRMFree. Occorre sempre controllare che SysRMalloc sia riuscito ad allocare il buffer richiesto prima di utilizzarlo.
Attenzione all’utilizzo della memoria allocata, la funzione non ritorna direttamene un puntatore come invece fa la SysMAlloc, ma ritorna l’indirizzo della memoria allocata in un buffer. Occorre sempre fare riferimento al valore nel buffer perchè il sistema operativo sposta automaticamente il blocco di memoria per ottimizzarne l’allocazione. In pratica il buffer allocato si sposta di posizione a tua insaputa quindi l’unico punto in cui è noto l’indsirizzo di allocazione è nel buffer fornito come parametro alla funzione.
La memoria disponibile alla funzione dipende dalla versione ddel sistema operativo, il comando da Telnet RMStats ne riporta indicazione.
[Admin]> RMStats Memory size......... 36000 Act free memory..... 31100
Come vedi in questo caso lo spazio totale è di 36KBytes e lo spazio libero è di 31KBytes.
Gennaio 24, 2022 alle 9:01 am in risposta a: Informazioni su uscita PWM moduli SlimLine Cortex #63408Sergio Bertana
Amministratore del forumAs output device for the PWM we use a PhotoMOS (Model AQY221R4V from Panasonic) as you can see from the datasheet the TOn and TOff characteristics change according the ambient temperature. Consider also that this times change also by device to device.
So if you need a very precise duty cycle you must characterize every device to measure the real Ton and TOff times at the working temperature and then compensate then by acting on the Duty parameter.
Sergio Bertana
Amministratore del forumPurtroppo l’STE gestisce solo 2 sonde, le sonde possono essere 2 separate oppure 1 combinata come nel tuo caso.
Se utilizzi 2 sonde utilizzeresti entrambi i 2 connettori RJ11, se usi 1 sonda combinata utilizzi un solo connettore RJ11 ma pur avendo ancora 1 connettore RJ11 libero non puoi connettere altre sonde.
Situazione diversa con il nuovo STE2R2 che può gestire fino a 5 sonde, quindi nel caso puoi utilizzare lo Splitter HUB 1-wire per connetterle al dispositivo.
Sergio Bertana
Amministratore del forumOgni volta che istanzi variabili o FB viene utilizzata memoria, quindi è certo che se possibile è meglio avere una sola istanza globale utilizzata in vari POUs. Ma occorre fare attenzione se è possibile farlo.
Và benissimo farlo per esempio per il FB SysETimeToDate, definendolo globale potrai da ogni POU riferirti ai suoi membri per avere i dati che ti servono. Lo faccio normalmente per i FB JSONEncode e JSONDecode, se guardi i miei esempi REST o HTTP vedrai questa tecnica.
Ma non puoi usarlo per il FB FIFOFile, perchè al di là degli indici ogni FB lavora con il file definito (Oppure memoria) e tiene traccia di dati riferiti allo stesso al suo interno.
Sergio Bertana
Amministratore del forumSe non vi è più spazio nel file o nella memoria allocata per il registro FIFO il record non viene più inserito.
Su comando In il record viene inserito solo se lo spazio è sufficente FIFOSpace maggiore/uguale a dimensione record.
Sono i due indici a tenere traccia delle posizioni di scrittura e lettura dati non conta la dimensione del file, siccome il file non viene mai cancellato dopo un po che il FIFO lavora ti troverai un file esattamente grande come la dimensione definita in FIFOSize.
I dati nel file continuano ad essere scritti in modo circolare (Raggiunta la fine si riparte dall’inizio). In questo modo si continua ad usare nuovi settori sul disco evitandone lo stress.
Ti ricordo l’utility FIFOViewer che ti permette di visualizzare i dati inseriti nel registro FIFO.
Venendo alla tua domanda non capisco quando dici che il file aveva dimensione massima ma senza dati dentro. Vuoi dire che non era attivo DataOn e che FIFOSpace è uguale a FIFOSize.
Sergio Bertana
Amministratore del forumPer applicazioni outdoor HW-group consiglia questo sensore combinato. Noi lo stiamo utilizzando proprio in esterno collegato ad un STE da ormai 7-8 anni senza problemi.
Sergio Bertana
Amministratore del forumIl tuo modello di STE può leggere fino a 2 valori, quindi la sonda è compatibile.
Ma certo non è una sonda adatta ad un uso esterno, la puoi utilizzare per acquisire temperatura ed umidità in interno.
Sergio Bertana
Amministratore del forumSi certo l’STE è ancora acquistabile, come vedi dal sito non lo consigliamo per i nuovi progetti ma siccome tu hai già altri STE puoi tranquillamente acquistarlo.
Sergio Bertana
Amministratore del forumTutti i pannelli serie cMT (Escluso il modello SVR senza video) possono essere visualizzati via VNC. Ma in più è possibile abilitare il WebView che permette da un browser digitando l’indirizzo IP del pannello di accedervi come con il VNC.
Ma la prerogativa della serie cMT è proprio nella disponibilità della App cMTViewer che permette di visualizzare ed agire sul pannello in modo trasparente alla immagine visualizzata. In questo modo più utenti possono connettersi al pannello ed ognuno accedere con le proprie credenziali avendo accesso alle proprie pagine grafiche in modo totalmente trasparente uno dall’altro.
L’App cMTViewer scarica alla connessione il progetto dal pannello al suo interno, così nella comunicazione tra l’App e il pannello si scambiano solo i dati permettendo un passaggio estremamente fluido e veloce tra le pagine. Potendo gestire con la stessa App più pannelli contemporaneamente, passando velocemente da un pannello all’altro.
Tu chiedevi di potervi accedere da remoto, il modello che hai chiesto a differenza di altri non ha la licenza EasyAccess inclusa nel prezzo, dovrai ordinarla separatamente.
-
AutorePost