Utilizzo porte seriali in modalità Full-Duplex
Home › Forum › Obsoleti › SlimLine (CODESYS) › Utilizzo porte seriali in modalità Full-Duplex
- Questo topic ha 5 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 10 anni, 2 mesi fa da
Sergio Bertana.
-
AutorePost
-
Febbraio 11, 2015 alle 2:11 pm #35730
Alberto
PartecipanteVorrei sapere è possibile gestire le porte RS232 delle SlimLine CPU CODESYS IEC61131-3 in modalità Full-Duplex ovvero con protocolli non Master/Slave ma ad evento spontaneo. In pratica ho degli apparati che inviano spontaneamente, verso il PLC delle stringhe in protocollo proprietario e contemporaneamente devo poter inviare dal PLC delle stringhe di comando verso l’apparato esterno. Ovviamente trattandosi di RS232 la connessione è punto-punto.
Mi serve anche la porta Ethernet per comunicare con lo SCADA tramite ModBus/TCP. Sono bene accetti suggerimenti su altri prodotti con caratteristiche adatte allo scopo anche se non si programmano in CODESYS.
Febbraio 11, 2015 alle 2:26 pm #38718Sergio Bertana
Amministratore del forumCerto che è possibile gestire le comunicazioni seriali nel modo che più ti aggrada, dopo avere aperto la porta con la funzione Sysfopen disponi di un file pointer che puoi utilizzare nelle funzioni:
Sysfgetc, get character from file,
Sysfputc, put character to file,
Sysfread, read data from file,
Sysfwrite, write data to file,
Ecc…Il problema è il Modbus TCP che sulla CPU CODESYS non è nativo ma devi cotruirti e/o cercare su Internet un gestore. Se invece utilizzi la versione SlimLine per LogicLab hai le stesse identiche funzioni ed in più hai anche disponibile il supporto di 3 server Modbus TCP.
Per la versione LogicLab puoi trovare nel forum molti esempi applicativi, semplice programma echo, sambio dati seriale/UDP, semplice convertitore Ethernet/Seriale. Ma usando il search nel forum troverai molti altri esempi in codice sorgente. Tutti gli esempi per LogicLab possono comunque essere adattati all’ambiente CODESYS.
Febbraio 11, 2015 alle 4:15 pm #38719Alberto
PartecipanteRingrazio per la risposta, sono interessato ad entrambe le tipologie di prodotto sia quello per ambiente LogicLab che quello per ambiente Codesys. Il Codesys mi permette più flessibilità, visto che programmo in questo ambiente diverse famiglie di PLC, per contro, pur non avendolo ancora mai usato credo che il LogicLab permetta una maggiore interazione con la macchina essendo proprietario.
Febbraio 11, 2015 alle 5:39 pm #38720Sergio Bertana
Amministratore del forumL’ambiente CODESYS ha sicuramente dalla sua il fatto di essere utilizzato da diversi costruttori di PLC e quindi dispone di maggiori fonti di informazioni. L’ambiente LogicLab pur avendo come ambiente di sviluppo nulla da invidiare al CODESYS 2 (Anzi per alcune cose lo preferisco) è presente su PLC e drivers di alcuni costruttori che a differenza di CODESYS non ne enfatizzano l’utilizzo.
Ecco quindi il nostro maggiore sforzo documentativo su questo ambiente che offre buone possibilità ma dove le fonti di informazioni sono molto ridotte. Tra le altre cose ricordo che LogicLab importa i files scritti in ST di CODESYS (Topic).
Ad oggi CODESYS ha dalla sua la possibilità di operare anche come client TCP cosa che nei sistemi programmabili da LogicLab è ancora in fase di sviluppo. Mentre non ci sono problemi ad operare come server TCP.
Altro vantaggio di CODESYS è la disponibilità del WebVisu (Topic), su LogicLab abbiamo le pagine web dinamiche (Topic).
Febbraio 20, 2015 alle 9:52 am #38753Antonio
PartecipanteLeggo con preocupazione che il Modbus TCP/IP non è nativo nelle CPU CoDeSys, ma come, nel catalogo viene riportato !. Il problema si pone, sopratutto con la lettura/scrittura dei registri del PLC da uno SCADA (potrebbe essere molto utile per effettuare scambio dati fra diversi PLC di un impianto o fra PLC e azionamenti) e inoltre, quali sono gli indirizzi Modbus delle locazioni di memoria del PLC ?
Febbraio 20, 2015 alle 10:11 am #38754Sergio Bertana
Amministratore del forumPer la connessione a SCADA e/o pannelli operatore HMI solitamente questi prodotti implementano il protocollo nativo CODESYS. Ad esempio i nostri pannelli operatore implementano il protocollo nativo (Estratto manuale).Per il Modbus nessuna preoccupazione, abbiamo sviluppato FB apposite per gestire il Modbus Ascii, RTU e TCP sia in modalità master che slave (Topic). Come vedi il FB slave opera su una propria area di memoria dove tu da programma mappi le variabili che ti interessa pubblicare sul protocollo.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.