Vai al contenuto
PLC Forum


Convertitore Usb- S7200 Ppi


drugo66

Messaggi consigliati

Ciao a tutti,

vorrei chiedere il vostro consiglio per lo schema di un convertitore USB-PPI per PLC S7-200, per poi pubblicare il tutto (schema e sbroglio PCB) ufficialmente sul forum; l'ho già provato su breadboard e sembra funzionare; la parte USB è basata sul chip CP2104, che è minuscolo (QFN) e molto difficile da saldare; ho voluto usare questo perchè dovrebbe essere lo stesso che utilizza Siemens per il LOGO! (almeno, i driver sono quelli), poi perchè sul sito della casa madre si trovano sia i driver per sistemi a 32 bit che per quelli a 64 ed infine perchè presenta ulteriori opzioni interessanti; cerca e ricerca sul web chi lo commercializza a minor prezzo, mi sono imbattuto in una schedina già montata per Arduino (credo), comprensiva di connettore USB (è questa); costa poco ed è già montato, quindi ...; l'unico neo, volendo, è che la vendono in Cina; nella parte restante dello schema ho cercato di isolare il più possibile l'USB dal MAX485 che andrà poi al PLC.

Lo schema è questo (spero si veda qualcosa ...):

bedad80c908e6a39b27692ae724d8f03.jpg

Per la parte di alimentazione, avrei potuto utilizzare il 5 Vdc dell'USB, ma avrei perso l'isolamento (ho adocchiato un chip isolatore per l'alimentazione, ma costa e non ho ancora avuto modo di provarlo), quindi ho optato per il classico, visto che è già presente una 24 Vdc nel connettore del PLC (ho voluto evitare i 7805 e LM317 perchè scaldano parecchio, dovendo ridurre la tensione da 24 V a 5 V):

73982970a962d36c9aab108c11049756.jpg

Tenete conto che è trascorso un po' di tempo dal mio ultimo progetto di elettronica: in questo caso, mi sono limitato a copiare schemi sui datasheet o reperiti sul web, per poi adattarli al mio utilizzo.

Quello che vorrei, oltre agli eventuali consigli e/o critiche, è che mi aiutaste anche a trovare un contenitore per la schedina USB con il chip CP2104: ho cercato, ma senza successo, eppure se vendono quella schedina ci dovrà anche essere qualcuno che vende un contenitore adatto ...

Grazie a tutti

Dimenticavo: se non ci sono modifiche gravose da effettuare, la prossima settimana comincerei lo sbroglio.

Modificato: da drugo66
Link al commento
Condividi su altri siti


Bello!

E' un Hi-Level Project.... :thumb_yello:

Ho fatto un po' fatica per via del grigio, ma sembra buono. Purtroppo non uso più il 200 da tanto tempo.

Ma il cinesino l'hai ordinato?

Per il contenitore è un po' dura....è un problema per gli autocostruttori. Io li recupero da tutto quello che viene buttato, o al limite li realizzo con ritagli di pcb e poi stampo una specie di etichetta....non è male il risultato all'inizio....dopo un po' però si scolorisce....ma si può sempre ristampare.

Link al commento
Condividi su altri siti

Beh, non esageriamo ... sei troppo buono.

In effetti lo sto modificando rendendolo anche un classico USB-485 e non solo specifico per S7-200 e poi inserendo la possibilità di alimentare tutto dall'USB (sempre isolandolo) oppure utilizzare l'alimentazione esterna: sto ancora provando, insomma.

Ho ordinato 6 schedine dalla Cina, sono arrivate (1 mese circa) e purtroppo mi sono accorto che mancano i soppressori per l'USB, che sul datasheet sono consigliati; il problema è che ho il timore di non riuscire a saldare il chip, che è minuscolo; l'idea che ho è quella di sbrogliare un solo PCB che abbia entrambe le funzioni (PLC + 485 classico), lasciando dei jumper per la configurazione che si desidera e, se riesco, inserisco anche la possibilità di usare la schedina cinese o saldare il CP2104 direttamente sul PCB insieme a un connettore USB tipo B.

Il CP2104 è veramente un bell'oggettino e vorrei utilizzarlo anche per altre cose che ho in testa: con un solo PCB, dovrei riuscire a rendermi conto se è lavorabile o meno e contemporaneamente avere un convertitore USB/485 funzionante (almeno spero !!).

Per il contenitore per ora soprassiedo, poi vedremo come vanno tutte le prove.

Modificato: da drugo66
Link al commento
Condividi su altri siti

Ciao...

Allora anche tu sei un programmatore col saldatore! :thumb_yello:

Per saldare.....la prima difficoltà è realizzare il pcb che non abbia le piste bruciate o incollate...poi....basta un po' di flussante, una lampadona con lente.....un qualcosa che faccia da molla per tenere l'ic in posizione e...vai!

Io ho rinunciato a far pcb....sporco sempre troppo, ho sempre risultati scadenti e se devo forare....non vado mai dritto....quindi....mando la traccia ad un fotolito che mi fa la pellicola su astralon...e poi mando la pellicola ad un caro amico che mi fa il pcb con tracce argentate....farebbe pure la serigrafia...ma a me non interessa.

Il prossimo step...sarebbe quello di mandare il tutto in cina....

Per non far scivolar via gli IC, prima di pinzarli con la molla, gli metto sotto un pochino di pasta bianca, quella termica...ho un barattolino del 1993 ed è talmente duro che fa quasi da collante...e in più, se mai ce ne fosse bisogno, aiuta il trasferimento termico da ic a pcb...ed è isolante.

Sarebbe una discussione interessante....come lavorare con gli smd....usando mezzi casalinghi.....devo guardare se c'è già nell'apposita sezione....Sì ma con foto e ben documentata....perché a parole è sempre tutto facile.

Link al commento
Condividi su altri siti

Più che un programmatore col saldatore sono un elettronico diventato programmatore per necessità, ma la passione è dura da far tacere, anche se è un bel po' che non mi ci cimento.

Al momento il problema sembra essere la clearance fra pad e pad del pattern e, di conseguenza, fra le piste: ho scaricato la libreria originale dal sito del costruttore (o meglio, i file per costruirla) e il risultato è che mi trovo sotto 0.254 mm: mai utilizzato un pattern del genere e non so nemmeno chi potrebbe accettarlo... appena mi viene l'ispirazione farò una verifica con il datasheet alla mano.

In più ci si è messo anche il cad a darmi rogne passando da XP a 7.

Di norma i PCB, anche doppia faccia, me li sviluppo da solo, ma con tutti i problemi che nomini tu, ma non con gli SMD: penso che non riuscirei proprio a combinare nulla di buono e l'idea di base è quella di investirci un po' di soldi; i PCB online costano un po', ma, ormai, mi sono messo in testa di provare (finora non li ho mai utilizzati). Ho anche una fresa che volevo dedicare per i PCB, ma dubito che posso funzionare con gli SMD.

Per la saldatura, invece, me la sono sempre cavata (per lavoro l'ho dovuto fare con gli SMD qualche anno fa e senza nemmeno chissà quale attrezzatura - mi comportavo più o meno come fai tu): il problema è che adesso comincio a non vederci più così bene e quel chip, come ho già scritto, è proprio piccolo.

Bella l'idea della discussione/guida.

Modificato: da drugo66
Link al commento
Condividi su altri siti

Per quei pcb,ma anche gli altri, non ho investito un gran che...uso circad98 comprato in fiera una vita fa in versione demo a 10.000lire....e mi costruisco i componenti che mi servono.

Poi sbroglio a mano e faccio una prova di stampa su carta patinata, controllo con lentino da tipografo e se va tutto bene faccio come ti ho già detto: spedisco al fotolito e poi al collega che sta dall'altra parte della penisola....io sto a como...lui a catania....ci metto almeno una settimana dal disegno al pcb....ma non ho tempi di consegna da rispettare.

Se investi sul software, poi devi avere l'attrezzatura all'altezza altrimenti son soldi buttati.

Farsi fare la pellicola dal fotolito è una garanzia e non butto soldi in stampanti laser che ogni tot sono da buttare.

Alla fine mi costa meno così che attrezzarmi con software, fornetti e lampade, soluzioni varie che macchiano e bucano tutto. Però diciamocela tutta, chi fa pcb online....è un ladro di prima categoria.

Per la saldatura, quando i componenti sono proprio piccini, uso la pasta e la piastra. In pratica stendi la pasta sui pad del pcb, ci appoggi sopra il componente e poi scaldi....si salda da solo!

Ti devi solo preoccupare di posizionare bene.

Modificato: da dott.cicala
Link al commento
Condividi su altri siti

  • 2 weeks later...

Ho deciso di evolvere lo schema per un generico convertitore Seriale/RS485 (o meglio USB/RS485), lasciando comunque la possibilità di utilizzarlo per il S7-200 con poche modifiche; da schemi trovati in rete ho aggiunto una sezione per la selezione del baudrate, lasciando comunque l'opzione della selezione automatica; ho inserito anche dei jumper per i pull-up e pull-down e per la resistenza di terminazione del bus: tutte le resistenze saranno montate su terminali in modo da facilitarne la sostituzione (almeno, questo è quello che mi sono prefisso); come già preannunciato, ho voluto inserire la possibilità di saldare direttamente il CP2104 sulla scheda o di utilizzare la famosa schedina ed in più la possibilità di utilizzare un alimentatore esterno oppure i 5Vdc della USB.

Per le prove pensavo di assemblarne 2 e di testarli connessi a 2 PC.

Sto terminando lo sbroglio, quindi allego lo schema per sentire il vostro parere.

Grazie

ConvUSB-485.pdf

Link al commento
Condividi su altri siti

Ciao, bel lavoro!

Sono un po' perplesso per il 555.

In pratica è un oscillatore libero e la sua frequenza dipende dalla r selezionata e da c7.

Se i componenti non sono più che ottimi e coeff. di temperatura nullo, alimentazione stabilissima, non vorrei che scaldandosi il circuito non riesci più ad avere i timings corretti.

Ma è solo la mia opinione eh.

Al momento non ho sotto mano niente di preciso, ma ricordo vagamente che si usava un divisore programmabile controllato a quarzo e per cambiare velocità si agiva sul modulo del divisore.

E' facile che mi sbagli.

Link al commento
Condividi su altri siti

E' lo stesso dubbio che è venuto anche a me.

Sullo schema che ho trovato in rete (mi sembra di averlo anche scritto nello schema) quei componenti dovrebbero avere precisione dell'1%, massimo 2%, ma, onestamente, non so se basterà ...

Sarebbe da provare prima su breadboard, ma non ho nulla che necessita di 485 (a parte il 200), altrimenti dovrei farne 2: poi non so nemmeno quanto sia valida la prova con 2 convertitori.

Navigando per la rete. se dovessi trovare qualcosa di somigliante a quello che mi hai menzionato, se lo posti mi fai un favore ...

Link al commento
Condividi su altri siti

  • 1 month later...

E' trascorso un po' di tempo, ma sono stato piuttosto preso con il lavoro; in ogni caso, sono riuscito a terminare lo sbroglio, oggi ho terminato le verifiche del caso ed ho ordinato i circuiti; non appena arrivano, se i gerber sono corretti arriveranno per fine mese, ne assemblo un paio, li testo ed infine sarò felice di postare i risultati; l'intenzione è quella di postare sia schema che sbroglio del convertitore USB/485 che di quello specifico per S7-200 (per quest'ultimo, però, sempre tempo permettendo, eseguirò solo lo sbroglio senza realizzarlo).

Link al commento
Condividi su altri siti

  • 1 year later...

E' passata un po' di tempo (:whistling:), ma non ho abbandonato il progetto: ho dovuto correggere alcuni errori, ho scelto di fare una sola scheda che inglobi tutte le opzioni che mi sono venute in mente e, visto che mi voglio male, ho inserito anche la possibilità di lavorare in seriale pura; oggi ho cominciato a montare la prima scheda e ho tentato, con poco voglia a dir la verità, di saldare il TSOP, ma senza successo (come scusante, ieri mi è toccato lavorare tutto il giorno), quindi ho utilizzato la schedina esterna e l'ho montata come interfaccia per il PLC S7-200; l'ho lasciata in comunicazione per un'oretta e, direi, che funziona bene, almeno come interfaccia per il 200; di seguito un po' di foto:

 

20160425_155234.jpg

 

la scheda mentre comunica con il 200,

 

GestionePeriferiche.JPGMicroWinSet.JPG

 

questo come la vede il PC in gestione periferiche e le impostazioni in MicroWin,

 

MicroWinStato.JPG

 

ed infine, il MicroWin in stato.

Ho testato la comunicazione sia a 9.6 Kb che a 19.2 Kb; purtroppo il MicroWin non mi permette di impostarla al massimo (187.5 Kb), perché, credo, MicroWin rileva la comunicazione in seriale (anche se emulata) e non con USB.

Il prossimo passo sarà di montarne una con la seriale senza la schedina cinese per USB (quella con il CP2104 montato) e provare anche quella, poi di montarne un paio RS485 e provarle, che so, con qualche inverter o qualcosa di simile che mi ritrovo in ditta e magari anche con 2 PC in comunicazione fra di loro.

Infine, c'è lo scoglio di saldare il TSOP del CP2104 direttamente sulla scheda: ho visto qualche filmato in rete ed appena mi verrò la voglia, ci proverò.

Appena mi assicuro che il tutto funziona, posterò la documentazione (schema, distinta componenti e gerber); se dovesse trascorrere ancora del tempo, me ne scuso in anticipo.

 

Grazie a tutti.

 

 

 

Link al commento
Condividi su altri siti

Già che ti vedo, Livio, permettimi una domanda: è meglio che attenda di terminare tutte le prove (ci vorrà del tempo ...) per aggiungere nella sezione "Upload/Download" la documentazione di cui sopra, oppure va bene anche se la inserisco adesso ed in seguito, in caso di correzioni e nuove release, posso inserire nuova documentazione senza preoccuparmi di "intasare" quella sezione ?

 

P.S.: ho preferito postare qui il quesito a beneifici degli altri utenti (almeno, spero).

Link al commento
Condividi su altri siti

Meglio metterla al termine delle verifiche, oppure nella descrizione scrivere che si tratta della versione beta.

Link al commento
Condividi su altri siti

Grazie per la risposta.

Direi di fare così, allora: se non ci sono richieste e se riesco a terminare le prove in un tempo ragionevole, attendo a caricare il tutto; altrimenti lo caricherò come versione Beta.

 

Link al commento
Condividi su altri siti

  • 4 months later...

Ciao a tutti,

ho ancora alcuni problemi, più la voglia di apportare ulteriori migliorie; vorrei sottoporvi una delle cose che non ho ancora risolto:

 

592168e20613878c16e5fc11642a918f.jpg

 

Nell'immagine si vede un 555 utilizzato per allungare l'impostazione della trasmissione del MAX485 (pin 3 del 555), calcolato in base al baudrate di trasmissione; quello che vorrei fare è dare la possibilità, tramite uno switch, di escludere il ritardo creato dalla rete RC; da qualche schema in rete ho visto che la tecnica consiste nello scaricare prematuramente il condensatore, portando a massa i pin 6 e 7 del 555; in uno schema ho visto l'utilizzo di un diodo 1N4148 con il catodo sul pin 2 e l'anodo sui pin 6 e 7; su un altro ho visto un transistor che porta a massa i pin 6-7 quando il pin 2 si attiva basso.

Ho eseguito un po' di prove e, con lo switch aperto, tutto funziona egregiamente: invece di vedere la classica trasmissione, sul pin 3 si vede un fronte alto di circa 1 mS (con baudrate 9600 dovrebbe essere corretto); con lo switch chiuso dovrei vedere ogni singolo bit trasmesso, invece, vedo il solito fronte, stavolta di 2 mS (???); ho tentato sia con il diodo che con un transistor, ma la situazione non cambia.

Dove sto sbagliando ?

Link al commento
Condividi su altri siti

  • 1 month later...

Salve a tutti,

finalmente ho teminato, o quasi: manca l'inserimento in un contenitore, ma, visto che ho terminato le prove e tutto funziona, ho pensato di caricare tutto sul forum.

La scheda che avevo precedentemente realizzato, con il collegamento USB, ogni tanto si bloccava e non riuscivo a capirne il motivo: poi mi è venuto un dubbio ed ho provato ad utilizzarla con la schedina esterna (quella acquistata in Cina) invece che con il chip saldato direttamente sulla scheda; il risultato è funzionava benissimo, ne ho quindi dedotto che le saldature del chip non erano eseguite bene (quel chip è troppo piccolo, almeno per me); ho deciso di rifare tutto, stavolta con due schede (una per USB ed una per RS232) e, per quella USB, di utilizzare la schedina CNT-003 montata direttamente sulla scheda, aggiungendo il soppressore e poco altro.

Ho tentato di evitare di utilizzare il 555 e di seguire il consiglio del Dott.Cicala, ma non ci sono riuscito, quindi sono tornato al progetto iniziale; le prove le ho eseguite sia con una CPU S7-200 che con un inverter Danfoss fino ad un baud-rate di 19200; per i valori più alti (fino a 115200) ho provato con le schede collegate una con l'altra, connesse a due PC; non so quanto possa valere quest'ultima prova, ma, non appena trovo un inverter che lavora con baud-rate più alti, conto di provare nuovamente.

Mi sembra sia tutto: il progetto per il convertitore USB/485 lo trovate qui, mentre quello per RS232/485 è qui.

 

 

USBConv_1.jpg

 

USBConv_2.jpg

 

232Conv_1.jpg

 

Le prime due immagini sono del convertitore USB, con e senza schedina con il chip CP2104, mentre la terza è del convertitore RS232.

L'unica cosa che non ho fatto, come scrivevo, è quello di montare il tutto in un contenitore, ma conto di farlo prossimamente.

 

Alla prossima.

 

Link al commento
Condividi su altri siti

Dimenticavo una questione: le resistenze di pull-up e pull-down della 485 e quella per la selezione del BR 115200, le ho montate su terminali (infatti il pattern è più ampio ed i fori maggiorati), in modo che possano essere facilmente sostituite, senza dover dissandare e risaldare sulla scheda.

 

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