Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Controllo Teste


Messaggi consigliati

Inserito:

Buongiorno a tutti.

Devo realizzare il controllo della discesa e risalita di 10 teste su una macchina per la lucidatura. Per chiarire meglio le idee descrivo come è strutturata la macchina.

La macchina è strutturata ne seguente modo:

C'è un nastro trasportatore dove vengono poggiati i pezzi da lucidare uno dietro l' altro a distanza di 500 mm circa, il nastro scorre fino ad arrivare sotto ad ogni testa e al momento che arriva la testa si deve abbassare per la lunghezza del pezzo che può variare la sua lunghezza.

Sul tappeto prima della prima testa è situato un sensore che rileva la presenza del pezzo,e in fondo al tappeto è calottato un encoder da 1000 impulsi che rileva la lunghezza del pezzo e l' automatismo delle teste.

Il sistema deve essere realizzato con un PLC per varie esigenze.Qualcuno si e mai cimentato in tali applicazioni,saprebbe descrivermi come poter realizzare l' applicazione con un PLC

Grazie mille


Inserita:
prima della prima testa è situato un sensore che rileva la presenza del pezzo,e in fondo al tappeto è calottato un encoder da 1000 impulsi che rileva la lunghezza del pezzo e l' automatismo delle teste

Non ho capito! La lunghezza del pezzo la ricavi leggendo l'incremento della quota letta dall'encoder quando hai il sensore di presenza intervenuto?

I pezzi sono tutti alti uguali?

Ciao

Inserita:

Le teste devono "solo" scendere in posizione o devono "anche" muoversi in altezza secondo quote prestabilite ??

Se devono solo scendere, potresti anche non usare l'encoder, basta una ( o al massimo due ) fotocellule che sentono l'inizio e la fine del pezzo.

Se invece serve la quota per modulare l'altezza delle teste, oppure, come dice Lucios, i pezzi non sono tutti alti allo stesso modo, le cose cambiano un po'.

Ci dai qualche ragguaglio ??

Del_user_23717
Inserita:

Parli solo di lunghezze, sicuro che non misuri anche altezze?

Inserita:

Per lucios

Non ho capito! La lunghezza del pezzo la ricavi leggendo l'incremento della quota letta dall'encoder quando hai il sensore di presenza intervenuto?

I pezzi sono tutti alti uguali?

Esattamente, la lunghezza del pezzo la leggo leggendo l' incremento della quota letta dall'encoder quando ho il sensore di presenza pezzo.

I pezzi hanno tutti la stessa altezza

Per walter.r

La discesa delle teste sono pneumatiche con dei pistoni con valvole a semplice effetto le teste hanno delle battute meccaniche

Per attilio fiocco

Devo misurare solo la lunghezza del pezzo l' altezza non mi interessa perché prima delle teste è stato installato un calibratore che mi calibra i pezzi tutti alla stessa altezza

Quello che a me interessa è gestire l' automatismo, per automatismo intendo la salita e discesa delle teste.

Non appena il pezzo arriva sotto la prima testa la testa deve scendere "attivando un elettrovalvola che è collegata ad un pistone pneumatico" quando il pezzo è stato completamente lucidato la testa deve risalire aspettando il pezzo successivo e cosi anche per le altre teste

Grazie mille

Inserita:
La discesa delle teste sono pneumatiche con dei pistoni con valvole a semplice effetto le teste hanno delle battute meccaniche

OK, quindi, se non hai DIVERSE necessità di dover misurare la lunghezza, l'automatismo lo puoi risolvere con una o al massimo due semplici fotocellule per ogni testa.

Se invece quello che vuoi fare è : " entrano i pezzi, tutti lunghi uguali, ho una sola fotocellula all'inizio del nastro e conosco le distanze tra le teste e la fotocellula, e tutto deve funzionare così ...", allora devi avere in memoria nel PLC i dati di lunghezza pezzo, quota di entrata ( per ogni testa ), e di conseguenza quota di uscita ( per ogni testa ), accoppiare ad ogni pezzo che entra un contatore di quota da azzerare con il segnale della fotocellula e da confrontare poi con i dati memorizzati per abbassare e alzare le teste. Una serie di traguardi, insomma.

Ogni pezzo, un contatore, e una ulteriore fotocellula in uscita di nastro che ti dice che QUEL pezzo è finito, e che quindi puoi riutilizzare il quel contatore per un successivo pezzo.

Il numero massimo di contatori dipende da rapporto fra lunghezza nastro e lunghezza minima del pezzo.

Se sono stato chiaro, bene, altrimenti dimmelo........ :rolleyes:

Inserita:

Walter scusami ma non mi è molto chiaro il tuo concetto

Quello che devo realizzare e la seconda soluzione da te decritta misurare la lunghezza dei pezzi con un sensore che si trova allinzio della macchina che mi rileva il passaggio del pezzo e un encoder che mi rileva la lunghezza del pezzo e la discesa delle teste non appena ogni pezzo arriva sotto ogni testa e la salita non appena ogni pezzo viene finito di lucidare questi sono i miei componenti.

Grazìie mille

Inserita:

Dimenticavo di dire che la lunghezza dei pezzi non sono tutti uguali la loro lunghezza può variare, solo l'altezza dei pezzi sono uguali.

Grazie mille

Inserita:

OK, saisas, allora devi :

1) Arrivo fotocellula,azzero il contatore C1 e inizio misura pezzo

2) Fine fotocellula, fine misura pezzo. A questo punto il dato di lunghezza L è noto, per QUEL pezzo.

3) Dati necessari :

A = Distanza tra fotocellula e prima testa

B = Distanza tra fotocellula e seconda testa

C = 3° testa . etc......

4) Aspetto che C1 = A , e comando la discesa prima testa

5) Aspetto che C1 = A + L , e comando la risalita prima testa

6) Aspetto che C1 = B , e comando la discesa seconda testa

7) etc...etc....

Mentre viene lavorato il PRIMO pezzo, occorre predisporre un secondo contatore C2 per il secondo pezzo, e poi un'altro per il terzo.

Ogni pezzo è ACCOMPAGNATO dal suo contatore di quota raggiunta.

Inserita:

Ciao saias, mi è già capitato di farlo ma sinceramente non riesco a giustificare la spesa dell'encoder, basta una fotocellula che segnala la presenza del pezzo:

Pezzo presente = Giù le teste,

pezzo assente = su le teste.

Come dice walter.r utilizzare l'encoder è fattibile ma secondo me antieconomico, a meno che tu non debba avere una precisione millimetrica.

Per esempio, è un problema se le teste si alzano 100msec dopo che è passato il pezzo?

tra l'altro se vuoi fare una cosa precisa dovresti anche calcolare lo spazio tra un pezzo e l'altro (quindi raddoppi i contatori), secondo me mi sembra molto strano utilizzaro un encoder per calcolare la lunghezza precisa del pezzo e poi rilevare la distanza solo con una fotocellula. Tanto vale che se il nastro gira a velocità costante puoi evitare l'encoder ed utilizzare un temporizzatore, conti il tempo che la fotocellula è oscurata ed ottieni la lunghezza del pezzo.....

Inserita:

è un'applicazione tipica nel settore lucidatura granito o ceramica

per un lavoro del genere non ti serve una grande definizione con l'encoder del tappeto

quando ho avuto a che fare con le lucidatrici per il granito si montava un encoder monodirezionale che forniva un impulso ogni 25 mm,

ad ogni impulso l'unità di controllo memorizzava lo stato dei segnali di ingresso e faceva uno shift di tutta la memoria in avanti,

praticamente aveva l'immagine delle lastre mappate in memoria

tu hai un solo sensore quindi ti basta memorizzare un bit ad ogni impulso encoder e shiftare tutti gli altri

non hai detto a quanto spostamento corrispondono i 1000 imp/giro dell'encoder ma è sicuramente sproporzionato per lo scopo

se vuoi seguire questa strada bisogna prima di tutto decidere la risoluzione di cui hai bisogno e di conseguenza dimensionare

l'encoder e la memoria dati necessaria nel plc

ciao

Inserita:

Per MarcoEli

I problemi per cui il tuo sistema da te descritto prima non e conforme sono 2:

1° perché la velocità del tappeto può variare

2° perché il cliente non pretende una precisione millimetrica ma nell'arco del centrimentro e con il sistema da te descritto non posso garantire tale precisione

Comunque ti ringrazio per i suggerimenti da te aggiunti nella discussione

Per cisio

La macchina di cui si sta parlando serve proprio alla lucidatura di marmi e graniti,non ho capito bene il tuo concetto me lo potresti esporre in modo più chiaro

Per walter.r

Il sistema da te descritto e molto semplice da realizzare, domani provo a fare qualche prova

Grazie mille

Inserita:
La macchina di cui si sta parlando serve proprio alla lucidatura di marmi e graniti

ah, mi pareva che fosse qualcosa del genere

ribadisco quello che ho detto prima riguardo all'encoder: se fai in modo di avere un impulso al centimetro (per esempio),

hai la precisione di cui hai bisogno senza neanche mettere contatori veloci e semplifichi molto i conti

poi devi tenere conto che le teste hanno una dimensione: oltre all'inizio e fine della lastra devi gestire anche l'inizio e fine della testa

e farla scendere solo quando hai sotto di essa una quantità minima di lastra

il metodo che ho descritto prima è sicuramente pesante da gestire ma si può riassumere così:

un dato al centimetro = 100 dati al metro = 1000 dati ogni 10 metri (non credo che la tua macchina sia più lunga)

il dato può essere un bit, ma secondo me una word è più comoda da gestire per i confronti successivi

ogni centimetro shiftare tutti i dati di una posizione in avanti, buttare via l'ultimo e introdurre il nuovo dato all'inizio

della tabella, con un plc moderno di fascia media shiftare 1000 word non dovrebbe essere un dramma come tempi

ad esempio un CJ1M-CPU11 della OMRON ci impiega meno di 1 ms con una sola istruzione, la WSFT

a questo punto per ogni testa devi impostare:

- posizione di inizio

- lunghezza della testa

e poi contare quante word sono a 1 tra l'inizio e la fine della testa

per esempio:

- posizione di inizio 100

- lunghezza della testa 20

conti quante word sono a 1 tra la word 100 e la word 119: se ce ne sono almeno 5, tanto per dire, comandi la discesa della testa

ciao

Inserita:

cisio ti ringrazio per il tempo che mi stai dedicando, ma ho delle grossa difficoltà nel capire il tuo concetto. Non riesco proprio a capire come viene gestito il tuo sistema.

Me lo potresti esporre in modo più chiaro e se non chiedo troppo con un esempio partendo dal momento che il pezzo arriva alla fotocellula di entrata fino alla fine.

un dato al centimetro = 100 dati al metro = 1000 dati ogni 10 metri

Per dato intendi contare degli impulsi ?

Per dato intendi contare la lunghezza del pezzo ?

ogni centimetro shiftare tutti i dati di una posizione in avanti, buttare via l'ultimo e introdurre il nuovo dato all'inizio

della tabella

Questo passaggio non riesco proprio a capirlo

Grazie mille

Inserita:

Un dato è lo stato del sensore che legge il pezzo (0 oppure 1)

1000 dati significa avere nella memoria del plc una tabella fissa lunga 1000 word

ad ogni centimetro shifti di un passo tutte le word della tabella, leggi il sensore e memorizzi il suo stato all'inizio della tabella

tutto questo però ha senso farlo se invece di un encoder 1000 imp/giro metti un encoder o un sensore che ti fornisce un impulso al centimetro

altrimenti lascia perdere

qual' è la velocità richiesta?

Inserita:

La velocità richiesta e di 8mt/min

L'encoder dovrebbe essere di 1000 imp

Inserita:

8 mt/min è una velocità molto elevata, equivale a 75ms per ogni centimetro

non sarà per niente facile sincronizzare bene le teste, specie se puoi variare la velocità a piacere

forse non ti conviene usare il mio metodo, prova quello di walter.r (che non è così semplice come sembra)

non capisco perchè devi usare per forza un encoder 1000 impulsi

a quanti mm corrispondono sti 1000 impulsi?

ciao

Inserita: (modificato)

Ciao, io qualche anno fà ho realizzato varie lucidatrici per marmo (20 teste) con plc omron di seguito cerco di spiegare come ho fatto:

Nr. 1 Sensore all'inizio del nastro (rileva la marmetta in ingresso)

Nr. 1 encoder montato sul nastro trasportatore e che usavo per calcolare un impulso al centrimetro

1) questo impulso lo usavo per eseguire un grosso scorrimento di bit, mi sembra di ricordare che erano 40 word (ogni bit era 1 centrimetro);

2) i bit che scorrevano venivano messi a 1 dal sensore in ingresso e a zero quando il sensore non rilevava;

3) con una formula matematica facevo un puntamento a bit per ogni testa conoscendo esattamente la distanza della testa dal sensore in ingresso e tra le varie teste;

4) questo mi permetteva di far scendere la testa quando veniva rilevato il bit puntato a 1 e si rialzava quando il bit era a zero (questo per ogni testa)

questo sistema l'ho usato su diverse lucidatrici di una grossa azienda che produceva macchine del marmo/granito (bei tempi)

Ciao :lol:

Modificato: da Infoplc
Inserita:
8 mt/min è una velocità molto elevata, equivale a 75ms per ogni centimetro

non mi sembra velocità così elevate.

Comunque secondo me manca un dato: la distanza fra il primo sensore e la prima testa......come lo misuri? con un altro sensore? e le distanze fra una testa e l'altra? Per avere tutti questi dati devi implementare anche una procedura di autoapprendimento, e come la fai con dei pulsanti che tu operatore premi quando il pezzo passa sotto ogni testa..... (non mi dire che metti un sensore su ogni testa se no diventa inutile l'encoder).

Un sistema simile si usa al contrario sulle macchine tessili serve per alzare le teste quando passa la cucitura, e li si viaggia a 100mt/min (senza encoder, con un proximity su una ruota dentata 1 imp=1cm)

Inserita:
la distanza fra il primo sensore e la prima testa......come lo misuri?

Ciao Marco, credo che questo sia un dato di macchina, cioè una misura fissa che imposti una tantum e che non tocchi più, così come le distanze delle successive teste.

Condivido l'idea che 8 mt/min non è una velocità altissima, se il controllo lo fai mediante encoder.

Può invece diventare critica se usi solo delle fotocellule, perchè poi devi cambiare la posizione delle fotocellule stesse a seconda della velocità.

Con l'encoder, invece, sei sempre "fasato", hai solo il ritardo del tempo di discesa delle teste che potrebbe farti mancare l'appuntamento con l'inizio del pezzo.

Inserita:

8 mt/min non è sicuramente una velocità elevata in assoluto, ma una testa per lucidatura con discesa pneumatica non ha dei tempi di risposta

così veloci, a meno che sia molto leggera e faccia pochi mm di corsa

ciao

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