Vai al contenuto
PLC Forum


S7-300 E Seriale Cp340. - Info e consigli


jumpier

Messaggi consigliati

Ciao a tutti!

Dunque, sto utilizzando una 315-2dp nuova con una porta seriale CP340.

Nulla di strano o di particolare a parte il fatto che, per motivi di velocità di scansione del programma, devo richamare ad interrupt l'FC che mi contiene i classici blocchi Siemens per il colloquio seriale SEND e RECV. Ora questa apparecchiatura con cui vado a dialogare in seriale, non so il perchè ma ogni tanto si "sporca" il buffer :angry::(<_< !!!!

Quindi, ad ogni avvio della cpu (o comunque ad ogni accensione del quadro elettrico), eseguo un FC dedicato per l'invio di una stringa per la richiasta della pulizia del buffer e tutto funziona alla meraviglia. E finalmente arrivo al problema: siccome in un giorno di lavoro (2 turni circa 15 ore scarse) il buffer si sporca dalle 2 alle 3 volte, pensavo di eseguire l'FC di "pulizia buffer" nei tempi morti del ciclo macchina ma .... il blocco siemens di trasmissione NON mi restituisce mai il bit di DONE o di ERROR e quindi cado nel mio allarme di timeout comunicazione e fermo macchina (peggio del peggio insomma!). L'hot line siemens mi dice: "i blocchi di SEND e RECV devono sempre essere eseguiti e poi darai gli strobe di abilitazione a tempo debito". Il mio problema è che visto il tempo ciclo e l'architettura dell'applicazione proprio non posso. Qualcuno ha qualche idea e/o info in merito? Ad esempio, quando richiamo un blocco contenente i bloccho SEND RECV (e quindi diventa vera la loro abilitazione), è bene aspettare un tempo "x" prima di eseguire il comando di trasmissione / ricezione oppure posso eseguirlo assieme? Se ho più blocchi di SEND e RECV abilitati che puntano alla stessa CP340, avrò dei problemi? Sapete se esistono metodi alternativi per gestire la seriale?

Grazie a tutti per qualsiasi info. Buon lavoro B)

P.S. non mi consigliate di riscrivere il software ... Vi prego!!!! :lol:

Modificato: da jumpier
Link al commento
Condividi su altri siti

  • 2 weeks later...

Ciao

Purtroppo parlo a memoria, non ho modo di verificare di preciso quello che ti sto per dire ( non ho il sw in questo pc ).

Mi sembra che le funzioni send e receive della cp340 possono aver bisogno di più scansioni per essere eseguite correttamente. Cioè non vanno richiamate ad interrupt ma su OB1 con enable della fb sempre a 1. Poi richiamerai a tempo l'invio e la ricezione.

L'eventuale aumento del tempo di ciclo dovrebbe avvenire solo nei cicli in cui avviene la trasmissione e la ricezione.

Verifica di quanto aumenta il ciclo abilitando su ob1 le fc send e receive senza abilitare i gate.

Io in una applicazione simile ho ridotto il send a trasmettere ogni 1,5 s ed il receive è abilitato al termine del send fino alla ricezione completa dei dati. Ogni tanto il ciclo sarà più lungo però più di 7ms non li perdo (e' una cp per 485 con cpu 315 nuova la 2ag10 )

Link al commento
Condividi su altri siti

Mi sembra che le funzioni send e receive della cp340 possono aver bisogno di più scansioni per essere eseguite correttamente. Cioè non vanno richiamate ad interrupt ma su OB1

of course !!

L'hot line siemens mi dice: "i blocchi di SEND e RECV devono sempre essere eseguiti e poi darai gli strobe di abilitazione a tempo debito". Il mio problema è che visto il tempo ciclo e l'architettura dell'applicazione proprio non posso. Qualcuno ha qualche idea e/o info in merito? Ad esempio, quando richiamo un blocco contenente i bloccho SEND RECV (e quindi diventa vera la loro abilitazione), è bene aspettare un tempo "x" prima di eseguire il comando di trasmissione / ricezione oppure posso eseguirlo assieme?

Potresti programmare 2 timer che in flip-flop abilitano-disabilitano i blocchi.

Il primo tiene il seganle alto per x Sec. abilitando la ricezione(RECV)EN_R=1.L'atro, fa la pausa di x Sec. abilitando la trasmissione(SEND) REQ=1.

Quindi, quando abiliti la ricezione, disabiliti la trasmissione e viceverza per un tempo che dipendera' del rapporto tra il baudrate e la lunghezza del telegramma selezionato .Poi, se hai parametrizzata la CP con telegrammi a lunghezza variabile, poi utilizzare i caratteri di controllo del flusso per resettare i tempi di timer in corso.

Potresti anche essere sempre in recezione fin quando ti arriva un codice di data stabilita come start alla trasmissione.

Il segreto e' di non bloccare la CP per overflow, trattando di enviare i ricevere i caratteri a secondo il setup eseguito e trattando di liberare i buffer CP contenente la data.

Per un eventuale reset della CP, basta alzare il segnale delle merker appoggiate su il parametro R su entrambi blocchi e tenerli su per 5 sec.

Questo azzera i buffer della CP dando luce verde alla communicazione.

Se ho più blocchi di SEND e RECV abilitati che puntano alla stessa CP340, avrò dei problemi?

Se ti riferisci a che piu' blocchi hanno lo stesso indirizzo iimpostato in LADDR, allora avrai problemi.Ti basta un blocco SEND e RECV per una CP.

Saluto.

Link al commento
Condividi su altri siti

  • 1 month later...
TesiAutomazione

Ciao. Penso che la gestione mediante Set e Reset sia molto proficua. Ma una domanda ?, se collegato alla porta seriale vi è un modem ad esempio che è occupato, si blocchera anche la ricezione!!.

Non è che per caso avete qualche esempio sulla comunicazione CP340 , commentato?

Ciaooo

Link al commento
Condividi su altri siti

  • 2 years later...

Salve a tutti! Volevo sapere le sezioni dei corrugati per l'impianto ellettrico che devo fare a casa mia.

Ditemi se sbaglio.

Non intendo la colonna che collega da multibox a un altro multibox

Per il telefono, corrugato da Ø 20

Per il cavo tv, corrugato da Ø 25

Per una singola presa da 2,5 mm2, corrugato Ø 20

Per le cornette dell'impianto citofonico corrugato Ø 20

Grazie per un eventuale risposta.

Link al commento
Condividi su altri siti

per il telefono potresti utilizzare tranquillamente anche il 16,per la tv credo ti serva un cavo coassiale e in questo caso il 20 dovrebbe andar bene,per la presa 3 cordine da 2.5 mmq puoi passarle anche nel 20 ma se in seguito vuoi aggiungere altri cavi usa il 25.per l'impianto citofonico,data la piccola sezione dei cavi usa pure il 20

Ciò che è veramente importante è non passare nello stesso coriugato tubi di impianti diversi(es in un 25 mettere antenna e 230!)

Questo è tutto,buon lavoro

Link al commento
Condividi su altri siti

Se non hai particolari esigenze è molto meglio sovradimensionare per avere meno difficoltà in fase di cablaggio, possibilità di aggiungere o sostituire cavi in futuro oltre ad avere una maggiore areazione nelle guaine.

Comunque una guaina va dimensionata rispetto al numero ed alla sezione dei cavi che dovrà ospitare, ma non dovrà essere stipata mai più di 2/3.

Link al commento
Condividi su altri siti

Devo predisporre le prese per i condizionatori. Inserite in parallelo verso la scatola multibox.

Cioé una presa per ogni stanza.

Per il condizionatore, corrugato da Ø 20 o 25?

Link al commento
Condividi su altri siti

Per il condizionatore, corrugato da Ø 20 o 25?
Dipende, se la distanza non è troppa e le curve sono poche va bene il 20, altrimenti opterei per il 25.

Se non hai problemi di spazio metti direttamente il 25 che sei tranquillo.

Link al commento
Condividi su altri siti

METTI SEMPRE IL CORRUGATO DA 25mm A TUTTO PER UN EVENTUALE MODIFICA A LIMITE METTI IL 20 mm PER LA LUCE MA SE SONO FARETTI INCASSATI IN UN CONTROSOFFITTO NON ESITARE A METTERE IL 25mm PER UN EVENTUALE GIOCO DI LUCI ECC.... IO MI SONO TROVATO BENE COSI' CIAO

#######Nota del moderatore########

Evitare di scrivere i post tutti in maiuscolo.

Grazie

Modificato: da Luca Bettinelli
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...