Connessione SlimLine in modalità Client TCP/IP
Home › Forum › Controllori SlimLine e Netsyst (LogicLab) › Connessione SlimLine in modalità Client TCP/IP
- Questo topic ha 4 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 10 anni, 2 mesi fa da
Sergio Bertana.
-
AutorePost
-
Febbraio 13, 2015 alle 10:18 pm #35733
Michele
PartecipanteHo uno SlimLine MPS046B100 dotato nativamente di porta ethernet configurata in Network Configuration via web al suo indirizzo 192.168.0.122. Il modulo è connesso via cavo cross ad una macchina marcatrice, la macchina ha indirizzo IP 192.168.0.33. Ho creato una FB che attraverso la funzione SysIPReach esegue il ping ad intervalli prestabiliti (3 secondi) per determinare se il partner è raggiungibile. Tutto funziona correttamente.
Ho però la necessità di inviare e ricevere via TCP/IP dei comandi alla marcatrice se il ping ha successo, il mio problema è: come invio i dati via TCP/IP premettendo che deve essere lo SlimLine la parte attiva, cioè dopo che il ping ha avuto successo assumo che la marcatrice è connessa e quindi posso inviare uno specifico comando per fargli intraprendere una azione. Cioè, non devo aspettare che la marcatrice apra verso lo SlimLine una comunicazione (perchè non lo farà), deve essere lo SlimLIne ad intraprendere una specifca comunicazione su una porta che la marcatrice ha già aperto per scambiare i comandi. Oltretutto devo poi ricevere dalla marcatrice le risposte ai comandi che precedentemente avrò inviato. Come faccio ?
Febbraio 14, 2015 alle 7:48 am #38729Sergio Bertana
Amministratore del forumLa tua domanda permette di allacciarmi ad argomenti già trattati nel forum e quindi ne approfitto per un riepilogo, la porta Ethernet dello SlimLine è autosensing (Topic) quindi puoi usare sia cavi diritti che cross per la connessione, il Ping è trattato in questo topic.
Per quanto riguarda la possibilità di aprire una connessione TCP/IP in modalità Client sugli SlimLine LogicLab è attualmente un lavoro in progress, mentre questa possibilità è disponibile sugli SlimLine CODESYS. Esistono due possibilità per aggirare il problema.
Connessione UDP
Se la marcatrice accetta connessioni UDP è possibile dialogare in UDP con la macchina, con il protocollo UDP non vi sono limitazioni puoi ricevere ed inviare pacchetti UDP con le funzioni SysUDPSktRcv e SysUDPSktSend (Topic).Connessione TCP/IP Client con convertitore
Per connetterti in TCP/IP in modalità client puoi utilizzare un convertitore Ethernet-Seriale (Esempio ATC-1000) connesso ad una porta seriale COM dello SlimLine. Il convertitore andrà impostato come Client e dovrai definire l’indirizzo IP e la porta del server a cui connettersi (Nel tuo caso la macchina marcatrice). Il convertitore cercherà di aprire e mantenere attiva una connessione con il server e tu potrai in questo modo inviare e ricevere i dati dalla porta COM. Un utilizzo di questa tecnica è in questo topic.Febbraio 14, 2015 alle 8:40 am #38730Sergio Bertana
Amministratore del forumAggiungo che se la marcatrice supporta il Modbus TCP basterà impostare il convertitore Ethernet-Seriale per connettersi alla porta 502 (La standard di Modbus) della marcatrice. Nel tuo programma utilizzando il FB ModbusMaster passando il FILEP della porta COM conessa al convertitore potrai gestire lo scambio dati in Modbus.
Febbraio 14, 2015 alle 9:21 am #38736Michele
PartecipantePurtroppo abbiamo acquistato questo SlimLine con Ethernet in sostituzione ad uno che utilizzava già una comunicazione seriale con una vecchia marcatrice. Acquistando una nuova serie di marcatrici che comunicano in Ethernet fino ad ora sono state connesse con PLC SIEMENS S7-300 in Ethernet adesso però stiamo cercando soluzioni alternative ed abbiamo pensato a SlimLine.
In una prima fase di sviluppo abbiamo acquistato un solo SlimLine in vista del fatto di sviluppare un prototipo per poi passare alla estensione alle altre marcatrici (anche in altre nostre sedi). Non siamo intenzionati a “complicare” il sistema aggiungendo convertitori, oltretutto le porte seriali dello SlimLine ci servono per comunicare con altri dispositivi e la fieldbus con un pannello Weintek già acquistato sempre da voi. Non c’è un sistema per implementare il TCP/IP con connessione attiva lato SlimLine ?
Un aggiornamento al firmware che implementi le funzioni SysUDPSktRcv e SysUDPSktSend equivalenti per il TCP/IP ? Avremmo una certa urgenza di sviluppare il sistema.
Febbraio 16, 2015 alle 10:22 am #38737Sergio Bertana
Amministratore del forumNon mi dici che protocollo usano le marcatrici ma da quanto dici sembra che operano solo in TCP/IP e non in UDP. Come dicevo già nel post precedente la possibilità di connettersi in modalità Client è attualmente un work in progress, purtroppo non ho scadenze certe di tempi.
Allo stato attuale la soluzione con lo SlimLine in ambiente LogicLab è utilizzare un convertitore Ethernet-Seriale, in questo modo è possibile sviluppare l’FB di dialogo, che se il protocollo è Modbus TCP è già disponibile tra i blocchi funzione da noi forniti.
Se il protocollo è proprietario potete sviluppare una FB apposita e/o utilizzare quella già sviluppata per connettervi in seriale tenuto conto che la connessione sarà sempre comunque tramite uno stream di I/O (Tipo FILEP). Salvo poter poi nel futuro quando sarà diponibile la connessione Client solo cambiare il tipo di stream di I/O senza ulteriori modifiche alla FB di gestione protocollo.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.