Vai al contenuto

Accesso Modbus ad inverter KEB

Home Forum Discussioni su problematiche generali Accesso Modbus ad inverter KEB

Stai visualizzando 9 post - dal 1 a 9 (di 9 totali)
  • Autore
    Post
  • #35681
    Roberto
    Partecipante

    Mi trovo a dover inserire su una impianto esistente, un motore brushless (marca KEB modello F5 servo) comandato in modbus. Sino ad oggi sulla porta 485 della cpu MPS050*020 (full 485), vi era collegato solo un display weintek MT6070iE.

    Adesso che andrò ad inserire un nuovo slave (KEB F5) come mi devo comportare, la mia cpu sarà il mio master, display e azionamento i 2 slave ?

    Ho provato il codice esempio per utilizzare la libreria (ModBus Master rtu) che trovo sul manuale ma senza alcun risultato, inoltre dovrò modificare il baudrate portandolo a 9600 anzichè 11500 come di default. Potreste darmi qualche dritta. Grazie in anticipo.

    #38547
    Sergio Bertana
    Amministratore del forum

    Hai diverse soluzioni possibili, la prima è collegare il pannello operatore in RS232 liberando la RS485 per l’inverter, in tal modo non fai modifiche al programma del pannello operatore.

    Per la gestione dell’inverter connesso alla RS485 del modulo CPU devi utilizzare il blocco funzione ModbusMaster che permette di essere eseguito in cascata collegando l’uscita Done di uno sull’ingresso Enable di quello successivo e così via. L’uscita Done dell’ultimo FB andrà a fare ripartire la sequenza (Screenshot). In questo modo potrai definire tante FB in cascata per Leggere/Scrivere i vari registri dell’inverter. Se i registri dell’inverter hanno indirizzi contigui puoi usare una solo istanza della FB per Leggere/Scrivere più registri contemporaneamente. Per impostare i parametri di comunicazione puoi utilizzare nel tuo programma il FB SysSetSerialMode.

    Una alternativa è gestire la comunicazione con l’inverter dal pannello operatore che rimane master Modbus verso i due slaves (Uno è lo SlimLine e l’altro è l’inverter). Puoi usare l’oggetto DataTransfer che permette di trasferire dati tra diversi sistemi slaves, il trasferimento può essere ciclico e quindi puoi prendere variabili PLC e trasferirle nell’inverter e viceversa. Naturalmente la gestione fatta da terminale è molto più lenta che quella fatta da PLC.

    Sconsiglio di trasformare il pannello in slave modbus, e poi di gestirlo da master PLC, con questa soluzione devi ciclicamente trasferire dal PLC al pannello le variabili in visualizzazione è leggere le variabili in impostazione. Il trasferimento và fatto sempre di tutte le variabili gestite dal pannello indipendentemente dalla pagina visualizzata e se le variabili sono molte il traffico dati è molto elevato. Ti rimando a questo topic per informazioni più dettagliate sull’uso della FB ModbusMaster.

    #38564
    Roberto
    Partecipante

    Innanzitutto grazie per la veloce risposta datami. Visto che però ancora, non sono riuscito a risolvere il problema, vorrei chiedere un suggerimento per un programma che simuli uno slave (modbus) per verificare il corretto funzionamento della CPU slimLine.

    #38565
    Sergio Bertana
    Amministratore del forum

    Per fare un pò di  luce nella gestione del modbus ti consiglio di attivare la funzione di spionaggio (Topic) sulla FB ModbusMaster, in questo modo puoi vedere da telnet i pacchetti dati inviati e ricevuti da SlimLine verso e da inverter KEB. Vedendo i pacchetti puoi capire cosa risponde l’inverter e capire eventuali errori di numero di nodo, indirizzo registro, numero di registri letti, valore impostato nel registro scritto, ecc. Dai una occhiata a questo topic che tratta un argomento simile al tuo.

    Su Internet trovi molti programmi di simulazione Modbus, il sito che ti consiglio di visitare è quello della ModbusTools, dove trovi sia programmi per simulare il modbus master che il modbus slave.

    #38574
    Roberto
    Partecipante

    Grazie agli ultimi consigli, problema con inverter KEB risolto, potendo vedere i pacchetti letti/inviati ho trovato l’errore, non avevo incrementato di 1 l’indirizzo della variabile da cui partire, ora funziona tutto sia in scrittura che in lettura.

    #38596
    Roberto
    Partecipante

    Come spiegato nei posts precedenti ho un impianto gestito da uno SlimLine MPS050*020 (full 485), al quale vi è collegato un terminale Weintek MT6070iE sulla seriale 232 ed un dispositivo slave sulla seriale485 (Modbus).

    Chiedevo se e possibile collegarsi attraverso il terminale ed andare in debug sullo SlimLine passando dalla seriale libera.

    #38597
    Sergio Bertana
    Amministratore del forum

    Non è chiara la tua domanda, perchè collegarsi attraverso il terminale per andare in debug… Puoi collegare LogicLab direttamente alla seriale libera dello SlimLine ed eseguire sia il debug che la programmazione. In più avendo il tuo dispositivo la porta Ethernet puoi collegarti anche in Ethernet oltre che in seriale.

    Diversa situazione sarebbe se nel tuo impianto avessi un pannello Weintek con Ethernet connesso in seriale ad uno SlimLine e volessi tramite la Ethernet del pannello connettere LogicLab allo SlimLine per debug e programmazione. In tal caso devi utilizzare la procedura di Pass-Through (Topic).

    A maggior ragione se tu volessi programmare da remoto sia il pannello Weintek che lo SlimLine, disponendo di un pannelo con porta Ethernet potresti utilizzare EasyAccess 2.0.

    #38598
    Roberto
    Partecipante

    Cercherò di spiegarmi meglio, lo SlimLine MPS050*020 (full 485) installato non ha porta ethernet quindi il terminale (anche lui senza porta ethernet) è stato collegato allo SlimLine attraverso la seriale RS232 (connettore P4 RJ45). Al connettore P2 è connesso lo slave Modbus.

    Ora vorrei se possibile non dover scollegare il terminale per andare in debug, e testare il software dell’impianto.

    #38599
    Sergio Bertana
    Amministratore del forum

    La funzione Pass-Through è possibile solo con i terminali dotati di porta ethernet, ma lo SlimLine ha una porta USB e collegandoti al PC con il driver RNDIS (Topic) hai una connessione ethernet aggiuntiva (Indirizzo di default 192.168.1.122).

    In alternativa usando la sola connessione seriale, anzichè continuamente scambiare la connessione tra il terminale ed il PC, ti consiglio di utilizzare la simulazione On-Line del pannello (Dal programma EasyBuilder). In questo modo puoi sconnettere LogicLab e connettere il pannello simulato. Poi sconnettere il pannello simulato e riconnettere LogicLab sempre senza mai staccare fisicamente la porta seriale ma solo agendo dai due programmi.

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