Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 811 a 825 (di 4,501 totali)
  • Autore
    Post
  • in risposta a: Problemi con il blocco funzione MQTT CLient #69326
    Sergio Bertana
    Amministratore del forum

    Le impostazioni da pagina web System settings, sono accessibili da programma utilizzando la funzione SysOSIDValue. Nel tuo caso per acquisire il valore impostato nel campo Device name devi riferirti al SYS_ID#OSID_DEVICE_NAME. Ecco un esempio di codice.

    PROGRAM MyProgram
    VAR
        i : BOOL; (* Auxiliary variable *)
        HostName : STRING[ 20 ]; (* Hostname *)
    END_VAR
        i:=SysOSIDValue(FALSE, SYS_ID#OSID_DEVICE_NAME, ADR(HostName));

    Nel tuo programma di gestione MQTT ti dovrai poi rifereire alla variabile HostName.

    MQTT.ClientID:=ADR(HostName); //Client identifier
    in risposta a: Configurazione EasyBuilder per comunicazione Modbus TCP/IP #69293
    Sergio Bertana
    Amministratore del forum

    Come indicato nella pagina delle FAQ terminali operatore, le 2 LAN devono essere impostate su due classi di rete differenti, qesto serve a separare le reti per garantire che da EasyAccess si possa raggiungere la sola rete di macchina impedendo l’accesso sulla rete aziendale. Nel caso si desideri avere una unica connessione tra la rete aziendale il pannello ed i PLC è possibile utilizzare solo la LAN1

    • LAN1 utilizzata per accesso al pannello via Internet, da collegare ad una rete con accesso ad Internet, esempio un router LTE.
    • LAN2 utilizzata per la connessione del pannello ai PLC.

    Dalla LAN1 non è possibile raggiungere i dispositivi connessi alla LAN2, è comunque possibile raggiungere il pannello sia per visualizzarlo in VNC o cMTViewer sia per accedervi in OPC-UA o protocollo Modbus TCP. La funzione Ethernet Pass-Through presente sui pannelli cMT permette di attivare il passaggio da LAN1 a LAN2 su uno specifico indirizzo IP.

    in risposta a: Accesso da remoto tramite FTP e HTTP #69290
    Sergio Bertana
    Amministratore del forum

    Appendere vicino al dispositivo una immaginetta sacra… o un calendario Pirelli…

    Sinceramente non capisco quale può essere il problema, passi l’FTP che per sua natura utilizza 2 porte TCP la 21 per i comandi e poi apre una porta scelta in automatico per i dati e questo anche se non dovrebbe potrebbe generare una criticità…

    Ma la connessione HTTP non deve avere problemi…

    Non è che il dispostivo ha dei blocchi sulle connessioni e non accetta connessioni che non arrivano da certi IP inseriti in una White list?

    in risposta a: Utilizzo di cURL per accedere a pagine web di SlimLine #69285
    Sergio Bertana
    Amministratore del forum

    I TAGs “OSID_xxxx” son TAGs che utilizziamo per la gestione nostre pagine web di sistema.

    Non sono documentati in quanto pur funzionando ne sconsigliamo l’utilizzo perchè questo ci permette di modificarne la funzionalità a nostra discrezione senza impattare con eventuali utilizzi dei clienti.

    in risposta a: Accesso da remoto tramite FTP e HTTP #69282
    Sergio Bertana
    Amministratore del forum

    No non devi fare nulla, sembra che quel dispositivo per qualche ragione non riesca a connettersi tramite il Pass-Trough.

    Sul dispositivo all’indirizzo 192.168.1.31 non funzionano solo i servizi che citi mentre altri servizi funzionano, oppure non funziona nulla?

    Il dispositivo si può pingare?

    in risposta a: Connessione con PLC B&R #69263
    Sergio Bertana
    Amministratore del forum

    La risposta la trovi nel post precedente, i pannelli Weintek supportano quasi tutti i protocolli di comunicazione con i PLC (Se scarichi il file trovi tutte le descrizioni).

    Nel caso del B&R se il pannello è connesso in Modbus devi rifare il progetto sul pannello Weintek.

    Se la gestione grafica è fatta dal PLC puoi visualizzarla su di un cMT-2008X utilizzando l’oggetto VNC viewer.

    in risposta a: Accesso da remoto tramite FTP e HTTP #69260
    Sergio Bertana
    Amministratore del forum

    Non capisco cosa intendi per port forwarding in riferimento all’accesso con EasyAccess.

    Quando accedi da remoto tramite EasyAccess ad un pannello il pannello ti viene mappato con un indirizzo IP scelto dal programma nel tuo PC, ora puoi riferirti all’IP assegnato come se fosse nella tua stessa rete non devi fare nessuna impostazione di forwarding.

    Se tramite EasyAccess vuoi accedere ad un dispositivo connesso alla porta Ethernet del pannello devi abilitare il Pass-Trough, in questo modo l’indirizzo che hai definito (Nel tuo caso 192.168.1.31) sarà connesso al tuo PC, ora puoi riferirti all’IP come se fosse nella tua stessa rete non devi fare nessuna impostazione di forwarding.

    Naturalmente tutto quelo che ho detto è operativo solo sul PC nel quale è attivo EasyAccess.

    in risposta a: Missing the “SysGetSysTime” function #69256
    Sergio Bertana
    Amministratore del forum

    Tutte le librerie sono nella cartella Libraries della installazione di Logiclab. Se installi l’ultima versione troverai anche la libreria che cerchi.

    Ho comunque provveduto ad aggiornare il programma della Ant020, puoi scaricare l’ultima versione da qui.

    in risposta a: Utilizzo di cURL per accedere a pagine web di SlimLine #69250
    Sergio Bertana
    Amministratore del forum

    Da pagina web non puoi accedere agli I/O del sistema puoi solo accedere a variabili allocate in DB100.

    Quindi se vuoi leggere gli ingressi o settare le uscite devi allocare variabili BOOL in DB100 e poi con un programma in ladder o in ST copiare lo stato degli I/O fisici sulle variabili allocate.

    in risposta a: Configurazione EasyBuilder per comunicazione Modbus TCP/IP #69248
    Sergio Bertana
    Amministratore del forum

    Vedo che hai configurato due classi diverse di rete, utilizzi le due porte del cMT-SVR oppure una sola porta per connettere tutti i dispositivi?

    Nel caso utilizzi una sola porta hai settato la maschera di rete in /16 (255.255.0.0) per poter raggiungere i due dispositivi?

    in risposta a: Utilizzo di cURL per accedere a pagine web di SlimLine #69228
    Sergio Bertana
    Amministratore del forum

    Aggiungo esempio per utilizzare cURL con l’autenticazione in m odo da poter accedere anche a pagine memorizzate in cartelle accessibili solo da utenti loggati.

    Il meccanismo di login utilizza i cookies per riconoscere l’utente, quindi la prima operazione è eseguire il login sul sistema abilitando il salvataggio in un file dei cookies ritornati. Il comando:

    curl -c "C:\Cookie" "http://192.168.0.181/SysCgi/Login.cgi?Username=Admin&Password=Admin&Action=Login"

    Esegue il login sul sistema con credenziali Admin:Admin, salvando i cookies ritornati nel file C:\Cookie. Ora se ai comandi cURL forniamo il file di cookies il sistema riconoscerà l’utente e ne abiliterà l’accesso. Quindi ipotizzando che la nostra pagina Values.htm sia ora trasferita nella cartella C:\Web\webpages del sistema, ecco che potremmo accedervi con il comando:

    curl -b "C:\Cookie" "http://192.168.0.181/webpages/Values.htm?UINT+10=8&UINT+12=20"

    Nei vari comandi possiamo aggiungere il parametro -v se desideriamo avere un ritorno verbose dell’operazione eseguita.

    L’autenticazione ha un tempo di vita sul sistema, quindi se si continuano ad eseguire accessi, la vita viene automaticamente rinfrescata, nel caso in cui non vi siano accessi dopo circa 1 minuto la sessione scade ed occorre nuovamente effettuare il login.

    in risposta a: Lettura variabili ritenitive da Python ritornano valore “0” #69227
    Sergio Bertana
    Amministratore del forum

    Scusa se mi viene in mente solo ora di suggerirtelo, ma per risalire all’indirizzo delle variabili solitamente non ci si riferisce al file di progetto, ma al file simboli.

    Il file simboli (Lo trovi nella cartella Build) ha lo stesso nome del progetto ed estensione sym. Il vantaggio potrebbe essere che è un file in formato XML e magari più gestibili da librerie Phyton.

    in risposta a: ModbusMaster_v2(55) – error S1305: Unknown function #69220
    Sergio Bertana
    Amministratore del forum

    Il FB ModbusTCPGateway è stato sostituito dal nuovo FB ModbusGateway che implementa ulteriori funzionalità.

    In questi casi il vecchio FB è stato trasferito nella libreria eLLabObsoleteLib insieme a tutti gli oggetti obsoleti (Download manuale). Quindi se non si vuole modificare il programma utilizzando il nuovo FB (Cosa che comnunque io consiglio di fare) è possibile importare il vecchio oggetto dalla libreria obsoleti.

    La crocetta rossa nella libreria appare nel caso tu abbia già un oggetto ModbusGateway nel tuo progetto, magari lo avevi importato nel progetto precedentemente ed ora hai incluso l’intera libreria eLLabMdbDevsLib. In questo caso se lo utilizzi verrà compilato l’oggetto importato e non quello della libreria.

    L’errore riguardo alla variabile Fp non riesco a capire da dove possa scaturire, ti consiglio di dare una occhiata al programma ST_ModbusGateway nella pagina di manuale.

    in risposta a: Riavvio casuale di PLC serie SlimLine #69210
    Sergio Bertana
    Amministratore del forum

    Andiamo per ordine, guardando l’estratto del file di log che hai postato noto che vi sono riferimenti a SFW198 che non è il firmware a cui tu ti riferisci. Questa versione di firmware può essere installata solo su MPS054B*** mentre sui MPS054C*** occorre installare la versione SFW210, come indicato in questo articolo. Comunque non è possibile commettere errori perchè il sistema durante l’aggiornamento controlla la versione firmware e se non è corretta non si aggiorna.

    Venendo all’errore specifico “[ 6120] Background locked“, questo errore si manifesta quando il tempo medio di esecuzione della task Back supera i 300mS. Si parla di tempo medio quindi se si manifesta significa che si hanno diverse esecuzioni della task Back con tempi superiori. Questo errore provoca il riavvio del sistema come si vede dai due report successivi.

    [05/01/2023 18:01:58.010] [L] SFW198[ 6010] Stop ApplID:0x13D00DBD
    [01/01/1970 00:00:28.678] [E] SFR050[ 1020] Except: WDOG At:0x0049DB30

    Probabilmente il tuo programma ha un tempo di esecuzione troppo lungo, i tempi di esecuzione si possono evincere eseguendo il debug delle variabili di sistema (Screenshot) i tempi sono in uS. Eseguendo il set di SysTimeInit si inizializzano i tempi minimo e massimo.

    Ipotizzando che sia troppo lungo il tempo, quali possono essere le cause, vedo che stai utilizzando la FLASH quindi stai utilizzando il File System per scrivere su file su disco C:. La scrittura su disco richiede tempi apprezzabili, per ogni settore (512 bytes) sono necessari mediamente 20mS, ma ricordo che la FLASH ha una vita in scrittura, più viene utilizzata più i tempi di scrittura si allungano sino a diventare non più scrivibile, ecco perchè consigliamo di non eccedere con le scritture sul disco C:, di preferire in alternativa la SDCard che anche lei ha una vita ma grazie al wear levelling ed alla dimensione molto più grande la vità è enormemente maggiore. Inoltre in caso di blocco in scrittura la si può sostituire. Dal log infatti vedo che il settore 18 è troppo lento. Per vedere le statistiche dei dischi utilizza il comando FSStats da telnet.

    [05/01/2023 18:02:58.649] [E] SFR050[ 5410] SFLASH slow sector[18]

    Nel caso di utilizzo del disco consiglio di non gestire mai in lettura/scrittura blocchi di dato troppo grandi, perchè ad ogni settore si sommano i tempi di accesso. Dovendo gestire blocchi grandi di dati occore suddividerne la gestione in più loop di programma. Ad esempio il FB FSFileCopy suddivide la copia in molti loop di esecuzione.

    in risposta a: Visualizzazione finestre in pop-up #69193
    Sergio Bertana
    Amministratore del forum

    Cerco di darti una spiegazione con questo screenshot. Come vedi l’oggetto Embed Window permette due tipi di  visualizzazione finestre  di pop-up:

    • Indirect: Si fà riferimento ad una variabile numerica il cui valore forzerà la visualizzazione della pagina relativa. Esempio se la variabile vale 50 verrà visualizzata la pagina 50.
    • Direct: Si fà riferimento ad una  variabile booleana, la cui attivazione/disattivazione forzerà la visualizzazione della pagina definita.

    Poi come vedi l’oggetto grafico nelle sue proprietà permette di definire la posizione di visualizzazione della finestra nella pagina e la dimensione della finestra di visualizzazione pagina.

Stai visualizzando 15 post - dal 811 a 825 (di 4,501 totali)