Vai al contenuto
PLC Forum


M340 - Alcune Domande Per Cominciare... - Comunicazione e Linguaggi di Programmazione


pixel

Messaggi consigliati

Salve,

devo fare una premessa doverosa... ho sempre lavorato con PLC Simens dalla Serie Logo alla 3xx. Da poco ho ricevuto l'input x la valutazione di un Modicon M340. Anche se un pò titubante... :ph34r: ho cominciato a dare una lettura alla mole spropositata (almeno per la tipologia di PLC) di documentazione e, sorpresa... :rolleyes:, sono rimasto veramente impressionato dalle potenzialità (almeno su carta) del piccoletto!!! :rolleyes:

Ho alcune domande da farvi :

1 - Connesione Seriale - a quanto mi è sembrato di capire la porta seriale può essere configurata in RS-232 e RS 485 via Unit Pro?

2 - La Porta seriale può essere usata per comunicare sia in modalità "free" (protocollo da costruire per apparecchiature seriali) e in Modbus per la comunicazione con un sistema di supervisione?

3 - Il Modbus può essere impostato su RTU o su ASCII da Unit Pro?

4 - Per Dotare di Web Server il PLC con seriale devo montare un qualche modulo Ethernet?

5 - Il Web Server utilizza lo spazio della SD che limiti ci sono (spazio, formati dei file, etc.)

Infine la cosa che mi ha incuriosito di più... ho visto che con un modulo apposito è possibile realizzare un Servizio Web SOAP!!!! qualcuno ha provato qs. tecnologia? In teoria qs. sistema eliminerebbe la necessità di comunicare in modbus! qualcuno ha provato con .Net o Java.

Quanto è orientativamente il costo dell'Hardware necessario per implementare il Servizio Web?

Grazie in anticipo a tutti

Pixel

Link al commento
Condividi su altri siti


1 - Connessione Seriale - a quanto mi è sembrato di capire la porta seriale può essere configurata in RS-232 e RS 485 via Unit Pro?

Esatto

2 - La Porta seriale può essere usata per comunicare sia in modalità "free" (protocollo da costruire per apparecchiature seriali) e in Modbus per la comunicazione con un sistema di supervisione?

Esatto

3 - Il Modbus può essere impostato su RTU o su ASCII da Unit Pro?

Esatto

4 - Per Dotare di Web Server il PLC con seriale devo montare un qualche modulo Ethernet?

Le cpu con Ethernet onboard hanno un WEB SERVER ridotto, per accedere a tutte le funzionalità web server devi equipaggiare, anche la cpu base è sufficiente, il PLC di una scheda ethernet NOE 110. In questo caso il web server di classe C30 è gestibile con la propria scheda di memoria da 16 mByte e non occupa la CPU.

Infine la cosa che mi ha incuriosito di più... ho visto che con un modulo apposito è possibile realizzare un Servizio Web SOAP!!!!

Verissimo e funzionante, puoi anche comunicare in TCP profilo Modbus, utilizzando, ad esempio ABSX Comm, NMODBUS (testata anche in .NET).

Link al commento
Condividi su altri siti

minchia quante domande!!!

intanto dal logo a M340 c'è un abisso, non sono nella stessa fascia evidentemente. M340 è come S7300.

Il piccoletto è un MODICON ancora da crescere!!

1 - Connesione Seriale - a quanto mi è sembrato di capire la porta seriale può essere configurata in RS-232 e RS 485 via Unit Pro?

esatto

2 - La Porta seriale può essere usata per comunicare sia in modalità "free" (protocollo da costruire per apparecchiature seriali) e in Modbus per la comunicazione con un sistema di supervisione?

Modalità caratteri (free)

Modbus RTU

Modbus ASCII

In modbus non comunichi solo con una supervisione ma con un'infinità di apparecchiature

3 - Il Modbus può essere impostato su RTU o su ASCII da Unit Pro?

Esatto ..... UNITY PRO non Unit Pro!!

4 - Per Dotare di Web Server il PLC con seriale devo montare un qualche modulo Ethernet?

Il web server sfrutta una connessione ethernet quindi necessariamente devi mettere o un modulo ethernet (NOE) o la CPU con ethernet integrata

5 - Il Web Server utilizza lo spazio della SD che limiti ci sono (spazio, formati dei file, etc.)

per disegnare pagine web con la NOE0110 fino a 32 Mb con la SD della NOE stessa

con un modulo apposito è possibile realizzare un Servizio Web SOAP!!!!

BMXNOE0110 modulo ethernet Web Factory Cast

In teoria qs. sistema eliminerebbe la necessità di comunicare in modbus

No, permette di comunicare con altre applicazioni (vedi Microsoft.NET, SQL Server, Microsoft Office, IBM (WebSphere), SUN (Java, Eclipse), Lotus, Oracle, SAP, MES ed ERP)

Quanto è orientativamente il costo dell'Hardware necessario per implementare il Servizio Web?

Il modulo NOE0110 sarà sui 1000€ poi dipende dagli sconti che ti fanno

Link al commento
Condividi su altri siti

minchia quante domande!!!

e ne avrei tante altre... ma capisco che non posso abusare e che ora è arrivato il momento di studiare

No, permette di comunicare con altre applicazioni (vedi Microsoft.NET, SQL Server, Microsoft Office, IBM (WebSphere), SUN (Java, Eclipse), Lotus, Oracle, SAP, MES ed ERP)

Scusa... ma non ci pensa il modulo Web Factory Cast ad esporre le variali del PLC :huh: ? In .Net Aggiungi un rifermento al progetto e accedi direttamente ai metodi per farti trasmettere i dati che ti interessano... Giusto? se così non è necessario implementare Modbus per cominicare. :huh:

Ultima domanda... c'è un posto da dove scaricare Tips, Esempi, etc.?

Grazie ancora per le risposte

Saluti

Link al commento
Condividi su altri siti

Scusate ma leggendo....

Ma vedo che il PLC si può porgrammare anche con Lnguaggio ST (simile al C) :rolleyes:. Ma si possono fare le stesse cose del LD e IL?

Penso ci sia un calo di prestazioni... anche se per la maggior parte delle applicazioni e assolutamente irrilevante!

Saluti

incomincia proprio a piacermi.... :rolleyes:

Link al commento
Condividi su altri siti

Scusa... ma non ci pensa il modulo Web Factory Cast ad esporre le variali del PLC ? In .Net Aggiungi un rifermento al progetto e accedi direttamente ai metodi per farti trasmettere i dati che ti interessano... Giusto? se così non è necessario implementare Modbus per cominicare

Hai perfettamente ragione, ma non è che devi eliminare modbus tcp usando il web. Sono semplicemente due tipi di comunicazione che possono coesistere e si adattano a situazioni diverse. Per questo ti avevo risposto no.

Ma vedo che il PLC si può porgrammare anche con Lnguaggio ST (simile al C) . Ma si possono fare le stesse cose del LD e IL?

Penso ci sia un calo di prestazioni

i linguaggi sono 5:

ST; IL; LD; FBD; SFC

ST è simile al Pascal ed è il linguaggio più "potente" e malleabile.

Perchè pensi ad un calo di prestazioni e soprattutto di che prestazioni hai bisogno?

Link al commento
Condividi su altri siti

ST è simile al Pascal ed è il linguaggio più "potente" e malleabile.

Spettacolo... :):rolleyes:

Avete un sito da dove scricare Tips di porgrammazione e/o esempi?

Grazie ancora

Link al commento
Condividi su altri siti

  • 3 weeks later...

Sul sito c'è veramente molto materiale e i interessanti video corsi... :rolleyes:

Nel giro di qlc gg. sono riuscito a mettere mani all'ambinete (devo dire molto razionale) e a scrivere un pò di codice... naturalmente in ST! :rolleyes:

Bello veramente...

Non vedo l'ora di mettere mani alla comunicazione in Modbus (senza odiosi e costosi convertitori proprietari... vedi SIEMENS) e tirare fuori qualche dato.

Saluti

Link al commento
Condividi su altri siti

pixel, se hai una scheda NOE (cioè la scheda ethernet) puoi configurare il servizio I/O Scanning via Ethernet e quindi la comunicazione con qualsiasi apparato Modbus è un gioco.

Altrimenti non è certo un problema usare le librerie modbus per M340 (read_var; write_var; data_exch)

Link al commento
Condividi su altri siti

Grazie... :)

la connessione la vorrei effettuare però tra PC e CPU... in seguito mettere in comunicazione magari uno zelio.

A tal proposito avendo una CPU con porta seriale posso realizzare il cavo come da manuale?

Grazie ancora

Link al commento
Condividi su altri siti

  • 3 weeks later...

Ciao a tutti,

rieccomi con altre domande... :rolleyes:

ho finalmente sottomano un M340 BMX P342030 e vorrei cominciare a fare qualche prova con la comunicazione Modbus. Per la CPU con la Seriale sembra semplice settare il protocollo di comunicazione (modbus RTU /ASCII); invece per qs. CPU sono riuscito solo a settare una nuova rete e associarla alla porta Ethernet della CPU. domande:

1 - Come faccio ad indicare che protocollo utilizzare per comunicare col PC?

2 - E' Possibile settare il simulatore e lavorare con una comunicazione come se fosse realmente impostata sul PLC?

Grazie in Anticipo

Link al commento
Condividi su altri siti

1 - Come faccio ad indicare che protocollo utilizzare per comunicare col PC?

Per programmare non devi scegliere nessun protocollo (che è sempre ModBus) semmai il mezzo : USB o Ethernet e questo lo fai da Unity -> PLC -> Imposta indirizzo -> parte PLC

2 - E' Possibile settare il simulatore e lavorare con una comunicazione come se fosse realmente impostata sul PLC

Col simulatore puoi sfruttare la comunicazione Ethernet (Modbus TCP) per esempio per testare un supervisore su PC o un pannello. Questo lo imposti sempre dove ho detto prima ma nella parte Simulatore

per qs. CPU sono riuscito solo a settare una nuova rete e associarla alla porta Ethernet della CPU

perchè dici "solo"?? quella è l'unica rete disponibile.

Oppure c'è il bus canOpen che si configura cliccando sulla porta in configurazione non dalla cartella comunicazione

Link al commento
Condividi su altri siti

Ciao,

intanto ti ringrazio x la risposta. Ho collegato la CPU e configurato la LAN e tutto funziona correttamente :rolleyes: di una semplicità ntevole!

La domanda relativa al Modbus riguarda la selezione del formato caratteri (ASCII o RTU). Ma un giro su wikipedia è ho capito che su tcp esiste solo la variante TCP giusto? ;)

Link al commento
Condividi su altri siti

Tanto per tenervi aggiornati... Modbus TCP ok!

Ho scritto due righe .Net e collegato il cavo di rete il PLC mi ha risposto...

Bella la semplicità del protocollo che ancora non avevo mai affrontato prima, immediata o quasi (basta studiare anche il codice altrui) l'implementazione anche su PC visto che sono reperibili le specifiche.

Adesso sto sfogliando il factory Cast per i moduli e le CPU Ethernet... veramente potente!

mi sà che sto per mettere da parte la CPU Siemens!!!

Link al commento
Condividi su altri siti

l'implementazione anche su PC visto che sono reperibili le specifiche

non so dove tu stia reperendo i documenti, ma ad ogni modo trovi tutto su

www.modbus.org = www.modbus-ida.org

per M340 ti propongo

http://www.download.schneider-electric.com...40/en/index.htm

ed il nuovo sito www.schneider-electric.it (appena rifatto)

http://www.schneider-electric.it/italy/it/..._range_id=1468#

(c'è scritto M341 ma credo sia un errore evidentemente)

Link al commento
Condividi su altri siti

Ciao grazie x i link ;)

ma ho altre domande... sto sfogliando velocemente il manuale utente di Factory Cast. Acceso al web server integrato OK... ma ho alcune domande :

1) per usufruire dei servizi SOAP è le estensioni grafiche è necessario per forza il modulo ethernet Supplementare?

2) A cosa Servono i file .MIB

Grazie

Link al commento
Condividi su altri siti

ti ho dato il link del nuovo sito...... sfoglia quello, trovi tutto lo scibile!!

Per il discorso MIB eccetera eccetera vai a questo link

http://www.schneider-electric.it/italy/it/..._range_id=1468#

e scarica questo manuale

Modicon M340 per Ethernet Moduli di comunicazione e processori 31007494

Lì dentro ti spiega per filo e per segno cos'è il Management Information Base a cosa serve, com'è fatto and so on.

Link al commento
Condividi su altri siti

Ciao,

scusate se insisto ancora con le stesse domande :blink: ma mi servono conferme in quanto devo ordinare del materiale di valutazione...

Allora gerazie ai link ho scaricato il manuale dei moduli Ethernet per M340... se non ho capito male solo i moduli aggiuntivi BMX NOE 0110 metteno a diposizione tutte le caratteristiche degli editor grafici e soprattutto, quello che più mi interessa, dei Servizi WEB SOAP.

giusto?

Saluti

Link al commento
Condividi su altri siti

sicuramente la scheda NOE110 fa quello che dici... tuttavia verifica la classe della NOE100 perchè credo che anch'essa sia in classe C e quindi qualcosa puoi fare anche lì... studiati la classi A,B,C,D / 10,20,30 per vedere cosa puoi fare e con quali moduli.

Link al commento
Condividi su altri siti

  • 2 weeks later...

Ciao a tutti,

allora... tempo fà ho testato in maniera "grossolana" la comunicazione in Modbus TCP con M340. Tutto OK Risposta alla funzione apparenetemente corretta...(verificato il formato paragonandola a quella di un simulatore) naturalmente lo stato dei registri richiesti tutti zero!

Adesso sto cercando di capire come lavorare sulle locazioni di memoria che vengono trasmesse alla richiesta per es. della funzione ReadCoils... mi spiego meglio, non capisco dove definire le locazioni di memoria che dovrò valorizzare nel task del PLC.

Cerco di essere più preciso... vorrei che da MW0 alla MW2 ci sia lo stato degli ingressi del PLC e alla richiesta, da parte del PC, della funzione il PLC trasmetta tutto aggiornato.

Devo dichiarare delle varibili IODDT o qualcosa del genere? allo stesso modo posso definire un intervallo di memoria dove scrivere qello che voglio e decidere di trasmetterlo "associandolo" alla relativa funzione Modbus?

spero di essere stato chiaro.... :ph34r:

Grazie

Link al commento
Condividi su altri siti

Siccome il protocollo modbus TCP Schneider NON supporta la lettura/scrittura di oggetti diversi da quelli di memoria (per capirci può leggere/scrivere SOLO le %MW), devi muovere lo stato degli ingressi nelle %MW (nel tuo esempio %MW0-%MW2 quindi 48 DI oppure 3 AI).

Da PC devi semplicemente (la semplicità dipende dal SW che utilizzi) impostare la word di partenza e le word da leggere. Ovviamente il tutto può funzionare SOLO se la rete Ethernet è correttamente cablata e se il PC ed il PLC sono sullo stesso piano di rete.

Io normalmente utilizzo M340 con CPU Ethernet e, a parte la definizione della rete (con relativo indirizzo IP), nel PLC non devo fare nulla per la parte inerente la comunicazione se voglio che il master sia il PC (ovvero il PC invia le richieste ed il PLC risponde). Resta a tua cura nel programa del PLC muovere gli ingressi nelle %MW e/o muovere le %MW nelle uscite.

Se, invece, vuoi che sia il PLC il master, devi utilizzare la Read_Var (ovviamente potrai accedere ad altri PLC / apparecchiature che supportino il modbus TCP)

Link al commento
Condividi su altri siti

Grazie per le info... :rolleyes:

quindi come pensavo deve essere il task del mio programma a trasferire le info che voglio trasmettere. Ma esattamente dove posso trovare l'elenco delle laocazioni di memoria che possono essere trasmesse per funzione Modbus?

Mi speigo meglio per la funzione ReadCoils la locazione di partenza e quella finale quali sono? (fermo restando che sarà il pc a chiedere un certo numero di Byte)

Grazie ancora

Link al commento
Condividi su altri siti

Massimo Vergani

puoi leggere le %mw dalla 0 in avanti. la %mw0 corrisponde all'indirizzo 40001 il resto è in sequenza

oppure puoi puntare alla memoria booleana %m se non ricordo male la corrispondenza è %m0 - 00001

ciao

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...