Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Sergio Bertana
Amministratore del forumYes you can try to run the project on the MT6103iP, if it works on it you are sure that the project is correct.
But if the project worhs on MT6103iP it has to work also in the SVR-100… if not yoy have probably awrong connection between it and the PLC.
Sergio Bertana
Amministratore del forumCerto che è possibile farla… Nel sistema sono previsti i 3 livelli di accesso Admin, User, Guest.
Nel firmware precedente era possibile avere 1 solo utente per ogni livello di accesso, quindi al massimo 3 utenti, per ogni utente si poteva definire none e password.
Nel nuovo firmware si possono avere fino ad un massimo di 4 utenti, a differenza di prima per ogni utente è possibile definire nome, password e livello di accesso.
Il comando UserConfig -a MyName MyPsw Admin, (-a) aggiunge un nuovo utente definendone il nome e la password e gli assegna il livello di accesso Admin. Può farlo solo un utente con gli stessi diritti o superiori dell’utente da aggiungere.
Il comando UserConfig -r MyName MyPsw, (-r) rimuove l’utente definito. Può farlo solo un utente con gli stessi diritti o superiori dell’utente da rimuovere.
Il fatto che entri senza credenziali mi fà pensare che non hai i corretti diritti sulle directories del disco.
Sergio Bertana
Amministratore del forumSe scarichi il corretto package che contiene anche le pagine web, basta che cancelli tutte le pagine dal disco “C” e le sostituisci con quelle del package. Al termine come scritto un paio di post prima di questo devi:
Dopo avere aggiornato il firmware e caricato le nuove pagine, dare da telnet (Loggandoti come Admin) il comando “CfgCommit -d” che aggiorna i diritti di accesso alle varie directories del sistema seguito dal comando “Reboot”.
Sergio Bertana
Amministratore del forumCon l’ultima versione del firmware abbiamo modificato la gestione degli utenti, ora si basa su 3 livelli di credenziali riportati in ordine decrescente di importanza.
Admin: Amministratore del sistema
User: Utente del sistema
Guest: OspiteL’utente loggandosi come amministratore (Default utente Admin password Admin) potrà operare sulle credenziali degli utenti creando altri utenti ed assegnando loro il relativo livello di accesso.
Ogni utente può definire o rimuovere altri utenti ma solo nell’ambito del proprio livello o dei livelli inferiori al proprio.
Ti rimando al manuale interprete comandi.
Sergio Bertana
Amministratore del forumNon ci sono differenze nel driver di comunicazione tra la famiglia iP e la famiglia cMT, quindi se i parametri di comunicazione sono impostati correttamente deve comunicare.
Eventualmente puoi provare a fare un progetto nuovo solo con la gestione di una variabile BOOL e magari testarlo in simulazione su PC. SE funziona sul simulatore deve funzionare anche sul pannello cMT reale.
In caso non funzioni è sicuramente un problema di cablaggio della connessione RS232.
Sergio Bertana
Amministratore del forumL’errore 10052200 come vedi indica che non si è ricevuta risposta dal server. Ora immagino che tu abbia inzializzato la stringa SNTPServerIP con l’URL del server da contattare vedi il mio esempio.
VAR i : UDINT; (* Auxiliary variable *) SNTPServerIP : STRING[ 32 ] := '0.pool.ntp.org'; (* UTC Date/Time reference *) SNTPReq : SNTPRequest; (* NTP request *) END_VAR IF (SysFirstLoop) THEN SNTPReq.SpyOn:=TRUE; //Spy On SNTPReq.NTPServer:=ADR(SNTPServerIP); //NTP server END_IF; SNTPReq(); IF (SNTPReq.Done) THEN SNTPReq.Query:=FALSE; (* Query On *) IF (SNTPReq.Ok) THEN i:=SysSetUTCDateTime(SNTPReq.UTCTime); END_IF; END_IF;
Importante il program deve essere eseguito nella task di Back.
Se vedi lo spionaggio dovresti vedere qualcosa di simile:
[Admin]> SpyData Spy data active, type "Ctrl-C" to exit... 18:12:29.152433|SNTPRequest:Lg|-------------------------------------------[Start NTP request]- 18:12:29.182338|SNTPRequest:Tx|1B 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... 00 18:12:29.195978|SNTPRequest:Rx|1C 02 00 E7 00 00 00 A7 00 00 00 17 C1 CC 72 E9 E5 6F 17 82 EA ... 94 18:12:29.197057|SNTPRequest:Lg|RT Delay:13.606 (mS) 18:12:29.197475|SNTPRequest:Lg|---------------------------------------------[End NTP request]-
Naturalmente se il server non risponde non avrai il report di ricezione ma dovresti avere quello di trasmissione.
Sei sicuro di avere impostato correttamente nello SlimLine sia l’indirizzo IP del gateway e del server DNS?
Puoi verificare se lo SlimLine può accedere ad Internet eseguendo da una connessione Telnet un comando di ping verso un server noto.
Sergio Bertana
Amministratore del forumPOsso consigliare di verificare le reti, verificare che non ci sia un altro dispositivo con stesso IP, che le 2 LAN siano su due network diverse e se usate non connesse alla stessa rete fisica…
Sergio Bertana
Amministratore del forumSi la famiglia di terminali serie cMT supporta la programmazione in ambiente CODESYS 3, per utilizzarla occorre acquistare una licenza. In questa nota applicativa istruzioni su come utilizzarlo.
Ricordo che WebVisu non è supportato, Weintek ha EasyBuilderPro il proprio ambiente di sviluppo HMI e non ha interesse a spingere i clienti ad usare WebVisu. Il loro approccio è usare CODESYS come PLC in un terminale dove la visualizzazione grafica è in ambiente EasyBuilder che comunica con il PLC in Ethernet via localhost.
La porta ethernet del CODESYS supporta anche il protocollo Ethercat.
Sergio Bertana
Amministratore del forumCerto che si… anzi è proprio uno dei motivi percui è nata la versione SlimLine equipaggiato con modulo Raspberry.
Girando nel nostro sito di supporto troverai la libreria libeS8CoreMng con esempi di programmazione in C, C++, ed esempi di programmazione in Python.
Ma è anche possibile ed in alcuni casi consigliabile unire programmi in CODESYS o LogicLab a programmi sviluppati altri linguaggi scambiando in dati via TCP in localhost come ad esempio utilizzando il ns server Harlequin sviluppato in NodeJs o programmi sviluppati in NodeRED. Il vantaggio di questa tecnica che puoi gestire tutta la logica degli I/O con un linguaggio PLC delegando ai linguaggi più specifici tutta la programmazione legata a funzioni di gestione dati, comunicazione, ecc…
Dicembre 14, 2021 alle 6:05 pm in risposta a: Lettura Variabili “Time_Of_Day – TOD” da PLC Siemens ET200 SP #62844Sergio Bertana
Amministratore del forumPurtropo non conosco i PLC Siemens, io naturalmente utilizzo PLC Elsist, e problemi come il tuo lo risolviamo ad esempio scrivendo direttamente un file CSV nel file system del PLC (Vedi StringToLogFile). Il file potrà poi essere acquisito in FTP (Il PLC ha un server FTP) oppure inviato direttamente dal PLC verso un server FTP remoto (Vedi FTPClient).
Nel tuo caso perchè non utilizzi l’oggetto Data Sampling direttamente nel pannello, in questo modo puoi leggere i valori dalle variabili PLC e registrarli in un file storico sul pannello già con il relativo riferimento di tempo. Se cerchi nel forum “Data Sampling” troverai topic che trattano l’argomento con programmi di esempio.
Oppure gestisci un orologio in EpochTime sul PLC e così dal pannello puoi acquisire il valore su di una variabile LWORD. Poi se ti serve data/ora dovrai fare una macro di conversione da EpochTime a data/ora.
Dicembre 14, 2021 alle 5:49 pm in risposta a: Connessione Modbus TCP con gateway lento nella risposta #62841Sergio Bertana
Amministratore del forumPremesso che con delle latenze cosi elevate sulla connessione potrebbero innescarsi anche altri problemi…
E’ possibile tentare di risolvere il problema agendo sui parametri di configurazione del Modbus TCP. Aumentare il timeout settandolo almeno a 15Sec ed impostando il ritardo di comunicazione ad almeno 10000mS (Screenshot).
Dicembre 14, 2021 alle 8:27 am in risposta a: Erro PLC no response entre LOGO siemens e MT8071iE #62725Sergio Bertana
Amministratore del forumPuoi verificare che l’access point utilizzato per la connessione WiFi non vada a modificare qualche impostazione di rete lato macchina.
Eseguito il collegamentoi verificare le impostazioni di rete nel PLC e nel pannello per accertare che siano sulla stessa classe di rete.
Verifica inoltre che non ci siano conflitti tra la classe di rete del PLC e pannello e la classe di rete della connessione WiFi.
Dicembre 14, 2021 alle 8:10 am in risposta a: Eseguire Ping di un indirizzo IP per testare comunicazione #62721Sergio Bertana
Amministratore del forumCon la nuova versione del firmware è stata aggiunta la possibilità di definire la lunghezza del pacchetto dati inviato nella richiesta ICMP di ping. Definendo dopo l’URL o l’indirizzo IP da pingare il parametro “-l” è possibile definire il numero di bytes di dati da inviare (Con MTU=1500 il numero massimo è 1472), ecco un esempio:
[Admin]> ping www.google.com -l 16 PING www.google.com [216.58.205.68] with 16 bytes of data: Answer from: www.google.com, Delay: 11.441 (mS)
Se non viene definita la lunghezza il pacchetto dati è di 32 bytes come nella versione precedente del firmware. Quindi non riesco a spiegarmi il motivo del tuo problema, considerato che funziona sui server pubblici e non sui tuoi server interni.
Dicembre 13, 2021 alle 8:36 am in risposta a: Visualizzare valore nel testo di un evento/allarme #62715Sergio Bertana
Amministratore del forumCome riportato in questo topic, la visualizzazione del valore di variabili all’interno di un testo evento o allarme è possibile, si possono visualizzare fino a 8 variabili.
Nel testo dell’evento/allarme definire il tag %(WATCHx)d, dove WATCHx con x da 1 a 8 indica la variabile da visualizzare ed indica la visualizzazione in decimale (Screenshot).
Il link Sintax apre una finestra di aiuto che riporta il significato del carattere di impostazione formato di visualizzazione con alcuni esempi.
Dicembre 10, 2021 alle 2:49 pm in risposta a: Eseguire programma CPhrAccess da riga di comando #62682Sergio Bertana
Amministratore del forumIl programma CPhrAccess è un semplice esempio di utilizzo della libreria libeS8CoreMng che dimostra come sia possibile gestire i moduli di espansione della famiglia SlimLine da un programma in linguaggio “C”.
Il programma si trova nel PTP168 scaricandolo troverai oltre al programma indicato altri programmi in linguaggio “C” da utilizzarsi sullo SlimLine Raspberry.
Il programma CPhrAccess\CPhrAccess\Release\CPhrAccess è l’eseguibile, per utilizzarlo lo devi trasferire in una cartella del sistema (Esempio /tmp) e dare i diritti di esecuzione.
Non devi avere in esecuzione altri programmi che utilizzano il bus di estensione come ad esempio in run time di LogicLab, eventualmente arrestalo (Vedi articolo) e devi connettere un modulo di espansione con delle uscite digitali impostato con indirizzo 0.
Eseguendo il programma si avrà l’uscita Do01 del modulo che lampeggia mentre sull’uscita Do00 verrà copiato lo stato dell’ingresso Di00 se il modulo ha anche degli ingressi digitali.
-
AutorePost