Vai al contenuto
PLC Forum


Protocollo Ppi S7 200 - Costruiamo un OCX per interfacciarlo


Gabriele Corrieri

Messaggi consigliati


  • Risposte 53
  • Created
  • Ultima risposta

Top Posters In This Topic

  • Gabriele Corrieri

    14

  • ifachsoftware

    7

  • Ivan Castellaro

    6

  • ciccio12

    4

Gabriele Corrieri

Dopo la precisazione iniziamo a impostare delle basi ... cosa ci vuole, cosa si vuole ottenere ...

· COSA SI VUOL OTTENERE

Il risultato finale sarà un OCX, ossia un oggetto, che permetterà di accedere ad ogni parametro (Ingressi, Uscite, Merker, Memorie V, Registri SM) di una cpu S7 200

· COSA CI VUOLE

· Ci vuole innanzitutto una cpu S7 200, sarebbe bello averle di versioni differenti, dalle 212 alle 226XM onde testare il codice su tutte ... io personalmente ho una 224 Rel 1.12.

· Il software MicroWin che serve normalmente a programmare il plc, qui è disponibile una demo a 60 gg

http://www.ad.siemens.de/simatic/portal/ft...on(Italian).exe

· Un convertitore PPI, chi non lo ha consiglio caldamente la realizzazione di questo:

S7200CNV.pdf

testato e funzionante (lo uso anch'io)

· Un software di cattura dei byte in transito dalla seriale, il mio consiglio è di usare questo software, che cattura il flusso dati in modalità trasparente, prima si avvia PortMon e poi si avvia MicroWin

Per utenti W95/98/Me/2000/XP

http://www.sysinternals.com/files/portm98.zip

Per utenti W NT 4.0 SP 6A

http://www.sysinternals.com/files/portmon.zip

Settaggi consigliati per PortMon

*** MENU EDIT
· MAX OUTPUT BYTES   -> 4096
· HYSTORY DEPTH      -> 0
· FILTER/HIGHLIGHT  
   · INCLUDE         -> *
   · EXCLUDE         -> IOCTL
   · LOG READS       -> V
   · LOG WRITES      -> V

*** MENU CAPTURE
· CAPTURE EVENT      -> V
· PORTS              -> La porta a cui è connesso il plc 
      Serial 0 = COM1
      Serial 1 = COM2

*** MENU OPTIONS
· SHOW TIME          -> V
· SHOW HEX           -> V
· CLOCK TIME         -> V
· AUTO SCROLL        -> V

Nota i settaggi non sono obbligatori, ma sono dati dalla mia personale esperienza ... quindi un po' di parte ... eventuali tips sono ben accetti.

·VISUAL BASIC 5CCE o 6

Chi non ha VISUAL BASIC lo può scaricare (versione 5 CCE) da qui:

http://msdn.microsoft.com/vbasic/downloads/tools/cce/

Detto questo mi pare ci sia tutto, tutti sono i benvenuti in questo progetto, speriamo che tanti contribuiscano, con ricerca e sviluppo del codice ... solo in questo modo possiamo prefiggerci un risultato.

La discussione ora credo prenderà due diverse pieghe: la parte di analisi del protocollo, con i logs, e la parte di stesura del codice in VB ... io mi concentrerò di più sull'analisi del protocollo, visto che di VB ne conosco poco.

Se qualcuno vuole iniziare a stendere le linee generali del codice è ben accetto.

Per informazioni non esitate a scrivere in questo post, oppure anche privatamente, mail e messaggi personali.

Per chi vuole potete trovarmi anche in chat, sia AIM, ICQ o MSN.

Il codice prodotto ed i logs di PortMon potete mandarmeli a questo indirizzo mail

hotmail.com]Gabriele_Corrieri[at]hotmail.com

e verranno pubblicati nel thread.

Ringrazio tutti quelli che parteciperanno, buon lavoro a tutti.

Link al commento
Condividi su altri siti

Il problema e' capire il protocollo , poi fare l'OCX e' abbastanza semplice.

Una domanda : Tale protocollo andra' poi bene anche per il 300 ?

Ciao :)

Link al commento
Condividi su altri siti

Gabriele Corrieri

Ciao Claudio,

poi fare l'OCX e' abbastanza semplice
Io non so da che parte iniziare ... guarda un po' te :D:D

Tale protocollo andra' poi bene anche per il 300 ?

E' una domanda da un milione di dollari ... :P io penso che parte del protocollo sia simile ... ma riutilizzarlo in toto mi sembrerà oltremodo difficile ... i teutonici sono famosi per inventare sempre cose nuove :lol:

... Sei della banda? :)

Ciao

Link al commento
Condividi su altri siti

... Sei della banda?

Vi posso dare un supporto esterno in quanto che l'unico S7200 che e' rimasto in casa ha la seriale fulminata e in ditta usiamo solo OMRON , comunque la cosa e' molto interessante.

Se vi puo' servire ho del codice in Assembler/C che funzionava son S5 sotto DOS

Ciao :)

Link al commento
Condividi su altri siti

Gabriele Corrieri

Ciao Claudio,

grazie ... magari sarai della banda lato VB, visto che mi pare lo mastichi bene, sicuramente meglio di me.

Riciclare codice del protocollo 3964R oppure AS511, secondo me ci fa perdere tempo, ossia ci porta a provare del codice e 'vediamo se l'hanno fatto uguale' ... conoscendo i teutonici hanno minimo minimo rifatto metà cose ... cogito che partendo da zero ci si risparmia la tortura ... comunque discussione democratica .... se si vuole iniziare a testare il vecchio codice ... sentiamo i pareri!

Ciao

Link al commento
Condividi su altri siti

Io in questo momento sono preso con il progeto SCADA e non ho molto tempo. Però si potrebbe integrare le due cose, anzi sicuramente un OCX per la comunicazione con S7-2xx è un complemento utile, io pensavo di usare il modo freeport proprio per fare poi un'applicazione semplice.

Se c'è qualc'uno che inzia a lavorarci penso che magari più avanti qalche prova potrei farla anch'io

Link al commento
Condividi su altri siti

Sicuramente la soluzione FreePort e' la piu' semplice anche se meno performante.

C'e' da dire a suo vantaggio che sarebbe portabile anche su altri PLC (Vedi S7300) riscrivendo i soli driver lato PLC e potrebbe diventare uno standard multi-protocollo (Es: PROTOCOLLO PLCForum) che magari si interfaccia anche a PLC di altre marche.

Ciao a tutti :)

Modificato: da ifachsoftware
Link al commento
Condividi su altri siti

Gabriele Corrieri

Ciao

IMHO

Di protocolli ce ne son già troppi ... quindi uno nuovo sarebbe inutile

A mio parere fare una modalità freeport poi toglie un vantaggio: debug e scada connessi insieme ...

Io volevo proprio sviscerare PPI.

Il S7300 non ha modalità freeport, se non sulle CP o sulle CPU PTP, quindi è abbastanza lontana la cosa ... (IMHO).

Ciao

Link al commento
Condividi su altri siti

Gabriele Corrieri

Ciao,

appena ci siamo contati, tempo 10 giorni, il 25/11 non un giorno più in là iniziamo a dividerci i compiti.

Naturalmente chiunque voglia aggiungersi è ben accetto, anche dopo, però prima di partire vorrei che si definisse la 'squadra' che animerà il progetto.

Ciao

Link al commento
Condividi su altri siti

Dovrei ricevere una cpu 200 da un cliente tra poco propio per fare uno scada .

Pensavo al microcomputing , ma lavorare su questo progetto non e' una brutta idea....

Io gia sto lavorando sul VB e con MSCOMM per la comunicazione seriale .... non so se e' possibile sfruttarlo per il PPI.

Per quello che posso aiutare sono qua'

Saluti

Link al commento
Condividi su altri siti

Gabriele Corrieri

Ciao a tutti,

è utile sapere che tipo di cpu avete ... tanto da vedere se siamo 'assortiti' o meno.

Ciao

Modificato: da Gabriele Corrieri
Link al commento
Condividi su altri siti

Io posseggo una cpu 224 + cavo PPI ,

adesso ho un altro problema non trovo piu' il mio file con le specifiche del protocollo che avevo trovato su internet

qualcuno sa dove poterle recuperare, Ho cobinato un disastro con il mio portatile e si e' rotto HD

nel pc c'era anche un mio doc. dove avevo trovato come leggere e scrivere qli ingressi.

:( e un disastro

ciao e grazie

Modificato: da ciccio12
Link al commento
Condividi su altri siti

replica

:huh: Ho dei dubbi riguardo ai post arrivati nella discussione

http://www.plcforum.it/forums/index.php?showtopic=4555

riguardo alla legalita della cosa .

non vorrei finire in grossi guai con SIEMENS per questa cosa e aggiungo che se la cosa non e legale

io non intendo piu partecipare e abbandono tutto anche il progetto.

per fortuna qualcuno si è posto domande a cui io non o pensato mi rendo conto laciare idee smuovere persone

per applicarle e poi buttare tutto non e bello pero'

non e mia intenzione ripeto finire in quai legali

grazie :(

Link al commento
Condividi su altri siti

Scusate,

io purtroppo non posso essere utile in nessun modo visto che di S7 ne so praticamente niente.

Però in alcuni CD Rom allegati ad una rivista...avevano ficcato dentro degli ActiveX per interfacciarsi con dei PLC tra i quali c'erano pure i SIemens e mi pare addirittura la serie S5.

Se vi interessano, una mail di destinazione e ve li trasmetto!

Buon lavoro! :)

Link al commento
Condividi su altri siti

Gabriele Corrieri

Ciao Claudio,

conosco per rapporti epistolari diretti sia Thomas Hergenhahn che Luca Gallina (webmaster di Runmode.Com), LibNoDave è atto per funzionare sotto Linux e con un adapter MPI (o NetLink) in mezzo, la mia idea è di utilizzare un cavo PPI, e il protocollo in uscita è sicuramente diverso.

Su Runmode.Com c'è un piccolo logging dell'I/O dall'adapter seriale ... adapter MPI!

Visto che ieri hai sollevato il problema 'legale' sarebbe giusto vedere se Thomas ha avuto problemi ... visto che risiede in Germania, patria di Siemens ...

Ciao

Link al commento
Condividi su altri siti

Ivan Castellaro
Visto che ieri hai sollevato il problema 'legale' sarebbe giusto vedere se Thomas ha avuto problemi ... visto che risiede in Germania, patria di Siemens ...

Lo senti tu, visto che dici di avere rapporti diretti?

Link al commento
Condividi su altri siti

Gabriele il progetto che hai lanciato potrebbe integrarsi a meraviglia con il progetto di scada in VB.

Io dispongo di una CPU S7-226 e sono disponibile per prove varie.

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