Vai al contenuto

Cambio indirizzo IP da software

Home Forum Controllori SlimLine e Netsyst (LogicLab) Cambio indirizzo IP da software

Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Autore
    Post
  • #48228
    Marcello
    Partecipante

    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’indirizzo

    Per 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…

    #48251
    Sergio Bertana
    Amministratore del forum

    Per 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.

Stai visualizzando 2 post - dal 1 a 2 (di 2 totali)
  • Devi essere connesso per rispondere a questo topic.