Home › Forum › Controllori SlimLine e Netsyst (LogicLab) › Cambio indirizzo IP da software
- Questo topic ha 1 risposta, 2 partecipanti ed è stato aggiornato l'ultima volta 4 anni, 10 mesi fa da Sergio Bertana.
-
AutorePost
-
Giugno 17, 2019 alle 11:57 am #48228MarcelloPartecipante
In un sistema domotico costituito da uno slimline e da un HMI MT8070IER avrei la necessità di poter cambiare da HMI l’IP dello SlimLine (cortex7). Per quanto riguarda la configurazione su HMI non ci sono problemi perchè esiste una LB da mettere a TRUE quando si modifica l’IP di un dispositivo. Lo SlimLine necessita la scrittura (che non mi riesce) e il riavvio (che non mi riesce nemmeno quello). Per la scrittura ho letto che bisogna utilizzate un codice tipo questo:
ok:=SysOSIDValue(TRUE, OSID_ETH0_IP, ADR(newIP));
dove newIP è un Array USINT contenete i 4 valori dell’indirizzoPer riavviare ho provato un loop bloccante tipo questo WHILE (TRUE) DO END_WHILE; che entra in funzione solo se la variabile ok di cui sopra è a TRUE. Il risultato è che il PLC non si riavvia ma si mette in STOP e devo riavviarlo o attraverso LogicLab o spegnendo e riaccendendo il PLC. Inoltre l’indirizzo IP non cambia. Cosa posso fare?
Aggiungo un’altra domanda: è possibile inviare allo SlimLine tramite l’FB HTTPClient dei comandi telnet? (quindi auto-inviarsi dei comandi) oppure è possibile dall’HMI? Chiedo questo perchè tramite toolly l’operazione di cambio IP è molto semplice ma complicata da spiegare ad un installatore, stessa cosa vale per lo spiegargli di accedere alla webPage dello SlimLine…
Giugno 17, 2019 alle 12:10 pm #48251Sergio BertanaAmministratore del forumPer cambiare l’indirizzo IP la funzione è corretta, ma dopo averlo impostato con:
ok:=SysOSIDValue(TRUE, OSID_ETH0_IP, ADR(newIP));
Occorre scrivere la configurazione in memoria FLASH, in modo che al riavvio venga accettato il nuovo valore, usa:
ok:=SysOSIDValue(TRUE, OSID_CFG_WRITE, NULL);
Per riaviare il sistema da programma è corretto quello che hai fatto (Vedi forum) ma non devi avere LogicLab connesso, perchè altrimenti il sistema si accorge di essere in debug e si ferma in stop.
Per connetterti in Telnet puoi utilizzare il FB CLIManager, c’è un esempio nel manuale, se ti connetti a localhost sulla porta 23 puoi fare il login e gestire i comandi per impostare l’indirizzo IP e fare il reboot.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.