Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Sergio Bertana
Amministratore del forumSe i punti da controllare non sono vicini, è possibile utilizzare ad esempio una soluzione basata su rete LoRaWAN. Un modulo TS301 o TS302 può acquisire 1/2 sonde Pt100, il modulo ha una batteria ed un display di visualizzazione locale della temperatura.
Un gateway LoRaWAN come l’UG56 può acquisire i valori di temperatura dai vari moduli e pubblicarli in MQTT. Con FB MlsDevice è possibile ricevere dallo SlimLine i valori e analogamente alla situazione precedente memorizzarli nel file CSV.
Se sul punto di misura è disponibile una sorgente di alimentazione è possibile utilizzare un controller IoT LoRaWAN UC300, oppure un modulo di I/O remoto WiFi come ad esempio lo Yotta A-1212. La soluzione WiFi è sicuramente più semplice anche come implementazione, basterà connettersi ad una rete WiFi esistente o crearne una con un access point ad esempio il RUT140, e potrai acquisire direttamente i valori di pressione via Modbus TCP.
Per i ns sistemi SlimLine abbiamo un FB YottaA1MMng dedicato ai moduli Yotta, oppure puoi acquisisire il valore direttamente utilizzando il FB ModbusMaster con il FB SysTCPClient.
Sergio Bertana
Amministratore del forumIl trasduttore di pressione Milesight EM500-PP ha range da 0-1600 kPa (16 Bar) quindi non è adatto alla tua applicazione.
Non mi è chiaro se sul punto di misura hai disponibile una sorgente di alimentazione oppure no.
Se non hai disponibile la sorgente di alimentazione devi forzatamente utilizare un dispositivo LoRaWAN con alimentazione a batteria. Sul mercato ne puoi trovare diversi modelli ma noi non li trattiamo. Teoricamente qualsiasi dispositivo LoRaWAN 868Mhz si può interfacciare con il gateway suggerito.
Se invece hai disponibile la sorgente di alimentazione puoi scegliere un qualsiasi trasduttore di pressione con uscita 4-20mA e poi interfacciarlo ad esempio con un controller IoT LoRaWAN UC300, oppure un modulo di I/O remoto WiFi come ad esempio lo Yotta A-1212. La soluzione WiFi è sicuramente più semplice anche come implementazione, basterà connettersi ad una rete WiFi esistente o crearne una con un access point ad esempio il RUT140, e potrai acquisire direttamente i valori di pressione via Modbus TCP.
Per i ns sistemi SlimLine abbiamo un FB YottaA1MMng dedicato ai moduli Yotta, oppure puoi acquisisire il valore direttamente utilizzando il FB ModbusMaster con il FB SysTCPClient.
Sergio Bertana
Amministratore del forumIn modalità bridge il pannello assume un unico IP, le due porte LAN si comportano come uno switch a doppia porta di rete.
Proverei con un progetto vuoto per essere certo che non sia qualcosa a livello del progetto a modificare l’indirizzo IP.
Sergio Bertana
Amministratore del forumDal datasheet vedo che il prodotto può interfacciarsi in Bluetooth® 4.0, questa tecnologia (nota anche come Bluetooth Low Energy o BLE) ha una portata teorica in ambienti chiusi circa 10 metri, in esterno (linea di vista) fino a 50-100 metri. Quindi la prima considerazione và fatta sulla distanza di comunicazione.
Poi chiedi un metodo per interfacciarti al sensore, non dici che tipo di interfaccia ti serve, la tecnologia Bluetooth è plug and play su sistemi Android o PC ma se devi interfacciarti con un PLC nasce qualche problema, noi non abbiamo nessun tipo di interfaccia adatto.
Diverso se per acquisire la pressione utilizzi un sensore LoRaWAN come ad esempio questo della Milesight, non è disponibile sul ns sito ma possiamo fornirlo a richiesta. LoRaWAN (Long Range Wide Area Network) è una tecnologia di comunicazione wireless a bassa potenza progettata per connettere dispositivi su lunghe distanze, soprattutto in applicazioni IoT (Internet of Things). La portata dei sistemi LoRaWAN a 868 MHz all’interno degli edifici è generalmente molto buona grazie alla sua capacità di “penetrazione profonda” (deep indoor penetration) e può arrivare a 50–100 metri, mentre in esterno (linea di vista) fino a 10–20 km.
Per l’acquisizione dei dati occorre un gateway come l’UG56, il gateway può raccogliere i dati da molti sensori, i dati acquisiti sono pubblicati in MQTT operando come broker. Per i ns sistemi programmabili SlimLine forniamo il blocco funzione MlsDevice già predisposto allo scopo. E’ comunque possibile programmare il gateway in Python o Node-RED per permettere la pubblicazione dei dati in svariati altre modalità ad esempio in Modbus TCP.
Sergio Bertana
Amministratore del forumCominciamo con il dire che ho dato una occhiata al modello di convertitore che utilizzi e mi sembra che possa andare bene.
Ora dalla tua domanda sembra che vuoi connettere più contatori sulla porta RS485 del convertitore. Bene allora il programma è eattamente quello dell’esempio dove ne vengono gestiti 3 (Ma ne puoi aggiungere quanti ne vuoi). Naturalmente ognuno avrà un ID Modbus diverso tutti saranno raggiungibili dall connessione TCP alla porta 1000 del tuo convertitore. Se vedi l’esempio ST_EastronSDM120 in questa pagina dopo avere sostituito il FB SysSerialPort con il FB SysTCPClient dovrai solo modificare il gestore della comunicazione come riportato qui sotto.
// ------------------------------------------------------------------------- // ENERGY METERS MANAGEMENT // ------------------------------------------------------------------------- // Manage the Modbus communication. TCPClient(Connect:=TRUE); //TCPClient management MMdb.File:=TCPClient.File; //File pointer MMdb(); //Modbus master // Manage the energy meters. Meter[0].Enable:=NOT(Meter[2].Done); //FB enable Meter[1].Enable:=Meter[0].Done; //FB enable Meter[2].Enable:=Meter[1].Done; //FB enable FOR i:=0 TO 2 DO Meter[i](); END_FOR;
Se hai tante “isole” con un convertitore ethernet/seriale e dei contatori, dovrai semplicemente duplicare il programma modificando l’indirizzo IP a cui si connette il FB SysTCPClient.
Riguardo al supporto remoto ricordo che è possibile acquistarlo da questa pagina, dopo l’acquisto come indicato in questo articolo è possibile accedere direttamente al supporto tecnico e iniziare una sessione di assistenza.
Sergio Bertana
Amministratore del forumEcco alcune verifiche che puoi fare:
- Verificare che l’interfaccia di rete abbia l’indirizzo IP impostato in modo statico e non in DHCP, se in DHCP può succedere che venga a mancare il server DHCP e quindi il pannello non riesca più a settare l’indirizzo a fine lease.
- Verifica che il tuo programma non agisca sulle TAGs di sistema di impostazione IP (LW-9129/32 o LW-10786/89) modificando il valore impostato all’accensione.
- Verifica che le due porte LAN siano configurate su reti diverse.
Se è tutto corretto prova a trasferire un progetto vuoto e verificare se il problema persiste.
Sergio Bertana
Amministratore del forumNella domanda non citi se li vuoi acquisire con i ns PLC SlimLine oppure con altri sistemi.
Se li acquisisci con lo SlimLine puoi utilizzare i FB appositi EastronSDM120 e EastronSDM630, in tal caso basterà utilizzare dei semplici convertitori Ethernet/Seriale come ATC-1200 o WiFi/Seriale come ATC-1000WF, a cui sulla RS485 potrai collegare uno o più contatori. I convertitori si potranno acquisirre come dagli esempi riportati, basterà utilizzare al posto del FB SysSerialPort il FB SysTCPClient che punterà all’indirizzo IP del convertitore.
In alternativa alla connessione ethernet è possibile utilizzare i convertitori LoRaWAN, dai una occhiata a questo articolo.
Se li acquisisci da un sistema diverso (Esempio uno SCADA) possono valere le stesse considerazioni fatte prima, ma attenzione… il convertitore ATC-1200 come la soluzione su LoRaWAN non convertono il protocollo da Modbus TCP a RTU, quindi occorre che il sistema di acquisizione sia in grado di inviare su connessione TCP il protocollo Modbus RTU, cosa che non tutti i sistemi permettono di fare.
Se il sistema di acquisizione utilizza il protocollo Modbus TCP occorre utilizzare un gateway come ATC-1300 o ATC-3002.
Sergio Bertana
Amministratore del forumCome indicato in questo articolo le librerie sono in continua evoluzione, aggiornamenti e/o aggiunte di nuovi oggetti, ma le raccolte (Packages) sono rilasciati solo a scadenze programmate. Tra i rilasci ci possono essere versioni di libreria che verranno poi incluse nella successiva versione del package.
Durante questo periodo viene rilasciata una versione beta del package (riconoscibile dal codice che termina con “_”) che contiene le librerie in fase di sviluppo. La versione beta è in continua evoluzione, viene pubblicata sul sito ad ogni variazione in modo che:
- Gli utenti che hanno segnalato un problema possano utilizarla e verificarne l’effettiva risoluzione.
- Gli eventuali nuovi oggetti, fuzioni e FB, possano essere testati sia da noi che dagli utenti.
Solo dopo questo periodo di “rodaggio” si decide di chiudere la fase di beta test e rilasciare la versione definitiva. Nel frattempo chi ha utilizzato la versione beta nei suoi progetti può continuare ad usarla anche se consigliamo nelle eventuali modifiche future di utilizzare la versione rilasciata.
Sergio Bertana
Amministratore del forumIl modello di CPU è molto datato, è basato su processore ARM7 per l’aggiornamento del firmware poi fare riferimento a questo articolo. Come vedi esiste il download sia per convertire il modulo nella vecchia architettura XTarget che per la nuova XUnified. Purtroppo essendo un modulo datato non è possibile l’aggiornamento via connessione ethernet ma dovrai aggiornarlo da seriale.
Però se segui i passaggi indicati in questo articolo dovrebbe essere possibile convertire un vecchio progetto LogicLab realizzato per l’architettura XTarget per poterlo utilizzare sulla nuova architettura XUnified.
Sergio Bertana
Amministratore del forumIl sistema di Teleassistenza HMI-PLC – WeinCloud EasyAccess 2.0 permette di accedere in VPN a tutti pannelli Weintek, rendendoli accessibili via IP da PC, Tablet e Smartphone senza dover effettuare impostazioni e/o configurazioni sulla rete del cliente. Il pannello diventa accessibile anche da qualsiasi connessione Internet comprese connessioni 4-5G tramite router o USB dongke con comuni SIM.
Installando l’App EasyAccess sul PC non solo si avrà il completo accesso al pannello in visualizzazione, ma si potrà accedere anche per la programmazione. Inoltre la procedura di pass-through permette di “mappare” fino a 10 dispositivi IP connessi al pannello rendendoli accessibili come se connessi fisicamenti in rete al PC. Quindi sarà possibile operare sul PLC, driver ed altri dispositivi con i relativi tools di sviluppo proprio come se fossero sulla Vs scrivania, questa funzione non è disponibile sui dispositivi Android e iOs.
Venendo alla tua richiesta quindi il tuo cliente potrà tramite PC, Tablet o Smartphone accedere da remoto al dispositivo con l’App cMTViewer ed operare sullo stesso. Ricordo che i pannelli cMT permettono fino a 10 utenti di connettersi con l’App cMTViewer ed ognuno potrà navigare sulle proprie pagine indipendentemente dall’altro.
Sergio Bertana
Amministratore del forumNel FB SysTCPClient, i parametri RxSize e TxSize definiscono la dimensione dei buffer di ricezione e trasmissione dati in byte, quindi determinano la dimensione del pacchetto TCP. Il loro valore non influisce sulla dimensione dei dati in transito, in quanto nelle comunicazioni TCP i dati possono essere suddivisi in più pacchetti TCP che poi vengono “riassemblati” dal gestore della comunicazione.
Nel tuo caso il gestore della comunicazione è il FB ModbusMaster che la gestisce, siccome i pacchetti Modbus possono avere come lunghezza massima 250 coils (32 bytes) o 125 registri (250 bytes) è inutile definire valori maggiori in RxSize e TxSize. E se il valore è inferiore alla dimensione del pacchetto Modbus, il pacchetto verrà frazionato.
Ora veniamo al tuo problema che credo sia riferito ad un BUG del FB ModbusMaster_v3 presente nel package Pck055a040, il BUG è stato risolto e verrà rilasciato con la nuova versione di package Pck055a050 disponibile in versione beta scaricabile dal sito.
Giugno 30, 2025 alle 2:51 pm in risposta a: Errore S1305 in conversione programma da XTarget a XUnified #83160Sergio Bertana
Amministratore del forumIl passaggio dall’architettura XTarget alla XUnified è stato trattato in questo articolo, nel passaggio sono state apportate modifiche ad alcuni oggetti di libreria vedi tabella Oggetti libreria modificati.
Nel tuo caso la funzione SysSpyData probabilmente utilizzata nel FB ModbusTCPGateway, è stata sostituita dalla funzione SysWrSpyData, ecco il motivo dell’errore. Ma se nel tuo progetto aggiungi la libreria eLLabXTargetAdjLib l’errore verrà eliminato.
Il FB ModbusTCPGateway come vedi in questo articolo fà ormai parte dei FB obsoleti, sicuramente è presente nel tuo progetto in gli oggetti di libreria o le intere librerie un tempo venivano incorporati nel progetto LogicLab, ora è preferibile utilizzare la raccolta librerie. Ora puoi scegliere tra queste tre opzioni:
- Aggiungi la libreria eLLabXTargetAdjLib e ricompili il progetto senza modifiche.
- Elimini dal progetto tutte le librerie includi l’ultima versione della raccolta librerie disponibile, aggiungi la libreria eLLabXTargetAdjLib e ricompili il progetto senza modifiche.
- Se il programma esegue unicamente un gateway tra Modbus TCP e Modbus RTU puoi realizzare un nuovo programma utilizzando il FB ModbusGateway. A tal proposito ti basterà includere nel progetto il programma ST_ModbusGateway.
Giugno 30, 2025 alle 11:14 am in risposta a: Termometro con interfaccia web a programmazione settimananale #83104Sergio Bertana
Amministratore del forumIl sistema di monitoraggio IP WiFi HWg-STE2 R2/Plus che è l’evoluzione del prodotto STE che avete ha molte delle caratteristiche che cercate:
- Possibilità di collegarlo alla rete aziendale; (Si)
- Visualizzazione del valore di temperatura da remoto con possibilità di impostare la temperatura desiderata (Si) e programmazione settimanale; (No)
- Possibilità di inviare una e-mail in caso di superamento di una temperatura di allarme (Si)
- Uscita di comando (per azionare gli aerotermi) (No)
Per gestire una programmazione settimanale ed una uscita logica di comando occorre utilizzare un dispositivo Perseus, il dispositivo permette l’impostazione di schedulazioni giornaliere, settimanali, mensili, annuali.
Solo se si ha esperienza nella programmazione di pannelli operatore e PLC, è possibile realizzare uno schedulatore ad hoc utilizzando un pannello Weintek abbinato ad un PLC SlimLine per l’acquisizione della temperatura e la gestione delle uscite di comando (Vedi articolo).
Con il solo sistema SlimLine è possibile realizzare pagine web dinamiche per gestirsi il proprio schedulatore come hanno fatto alcuni ns clienti di cui riporto la pagina di impostazione valori (Screenshot).
Giugno 30, 2025 alle 10:21 am in risposta a: Cambio indirizzi IP rete cliente in teleassistenza #83091Sergio Bertana
Amministratore del forumNon mi è chiara la posizione del driver brushless come mai ha lo stesso indsirizzo IP del PLC, è un refuso?
Immagino che nel pannello la LAN1 sia connesa ad Internet tramite la connessione cliente o con un router LTE, mentre la LAN2 sia utilizzata per la connessione ai dispositivi di macchina (PLC, driver brushless, ecc..). La manovra così come riportata mi pare corretta, le sequenze da eseguire sono:
- Con configurazione attuale cambi IP ai vari dispositivi connessi al pannello, PLC, driver brushless, ecc… con la procedura specifica del dispositivo, tool di configurazione, pagina web, ecc…
- A questo punto puoi cambiare l’indirizzo IP della LAN2 del pannello.
- Ora puoi impostare i nuovi indirizzi nella configurazione IP pass through di EasyAccess per poter nuovamente raggiungere da remoto i dispositivi..
- Ora dovrai modificare il programma HMI con EasyBuilder per impostare il nuovo indirizzo IP di comunicazione con i dispositivi di macchina (PLC, driver brushless, ecc..).
Giugno 30, 2025 alle 7:55 am in risposta a: Scelta simboli da esportare da progetto LogicLab a EasyBuilder #83075Sergio Bertana
Amministratore del forumIl Symbols converter nella versione attuale include nel file di TAGs terminale tutti i simboli che nel programma LogicLab sono allocati nella DB100 che attualmernte è l’unica indirizzabile da Modbus. Nella creazione delle TAGs nel caso di array il programma genera un TAG per ogni elemento dell’array quindi una dichiarazione del tipo:
VAR_GLOBAL MyArray AT %MW100.16 : ARRAY[0..3] OF UINT; END_VAR
Genererà 4 TAGs
MyArray[0],MyProgram,%MW,40008,,16-bit Unsigned MyArray[1],MyProgram,%MW,40009,,16-bit Unsigned MyArray[2],MyProgram,%MW,40010,,16-bit Unsigned MyArray[3],MyProgram,%MW,40011,,16-bit Unsigned
In realtà nel programma HMI quando si accede ad arrays molte volte si utilizzano i registri indice, quindi l’unica TAG a cui ci si riferisce è quella ad indice 0.
Attualmente non è possibile effettuare impostazioni che permettano di escludere simboli e/o non espandere gli arrays. Comunque il numero delle TAGs importate nel programma HMI non incide ne sull’impegno di risorse ne sulla velocità di comunicazione del pannello con il PLC. Il pannello utilizza solo le variabili abbinate a oggetti grafici utilizzati nel programma.
-
AutorePost