Indice
Seconda prova 2019
Risorse
Operazioni preliminari
Leggendo attentamente il testo si osserva che:
- la prima parte è tutto sommato semplice da capire e implementare (preparazione del composto, scarico e trattamento termico)
- la parte sul traslo-elevatore è decisamente più complicata: vanno gestiti due motori con encoder e occupate in sequenza quattro celle, poi termina il ciclo
- il terzo punto chiede anche di dimensionare motore e riduttore (argomento che sfioriamo appena nella materia)
- il quarto punto richiede di progettare un circuito di condizionamento complesso
Punto 1
Ingressi, uscite e altro
Leggendo il testo della prova individuiamo ingressi e uscite:
nome | indirizzo | descrizione |
---|---|---|
PM | I0.2 | pulsante start NA |
PA | I0.3 | pulsante arresto NC |
SL | I0.6 | sensore livello NC (0 = livello raggiunto) |
FTCP | I0.7 | fotocellula passaggio panetto solido NA |
SP | I1.0 | sensore presenza contenitore NA (1 = presenza contenitore) |
FCMX | I1.11) | finecorsa sinistra motore traslo-elevatore asse x NC |
FCMY | I1.2 | finecorsa basso motore traslo-elevatore asse y NC |
HSCX | ID1000 | conteggio cm asse x |
HSCY | ID1008 | conteggio cm asse y |
EV1 | Q0.0 | elettrovalvola saracinesca carico |
NASTRO | Q0.1 | motore nastro trasportatore |
MESC | Q0.2 | mescolatore a pale |
EV2 | Q0.3 | elettrovalvola saracinesca scarico |
P6V | Q0.4 | contatto generatore da 6V per il piatto riscaldante |
P3V | Q0.5 | contatto generatore da 3,3V per il piatto riscaldante |
AGG | Q0.6 | aggancio contenitore |
MXA | Q0.7 | motore traslo-elevatore avanti asse x |
MXI | Q1.0 | motore traslo-elevatore indietro asse x |
MYA | Q1.1 | motore traslo-elevatore avanti asse y |
MYI | Q1.2 | motore traslo-elevatore indietro asse y |
LON | Q1.3 | lampada segnalazione ciclo attivo |
LOFF | Q1.4 | lampada segnalazione ciclo non attivo |
Saranno necessari anche questi timer e contatori:
nome | descrizione | parametri |
---|---|---|
CTUP | contatore panetti solidi | IN=FTCP, PV=5, reset con fronte salita di MESC o con PA |
CTUMAG | contatore celle magazzino | IN=AGG, PV=4 reset con PM o con PA |
TONM | timer mescolatore | PT=10' (10“ nel collaudo) |
TONS | timer scarico | PT=5” |
TON90 | timer piatto a 90°C | 10' (10“ nel collaudo) |
TON50 | timer piatto a 50°C | 5' (5” nel collaudo) |
TONAGG | timer aggancio/sgancio cella | PT=3' |
Osservazioni varie
Per gestire la temperatura del piatto riscaldante, dove servono 6V per 90°C e 3,3V per 50°C, si può usare un'uscita analogica. Un'alternativa più semplice è usare due generatori di tensione regolati su 3,3V e 6V e collegarli al piatto chiudendo il contatto di due uscite a relè.
Encoder degli assi X e Y del traslo-elevatore: ipotizziamo di usare due HSC per encoder incrementali (conta fino a 700) impegnando 4 ingressi (2 per encoder). Il valore del conteggio è contenuto nelle variabili ID1000 e ID1008 (double int). I conteggi vengono resettati da due finecorsa (sinistra e basso).
Per riempire le quattro celle il ciclo va ripetuto incrementando un contatore che indicizza i dati delle cordinate X e Y in due array. Gli array non possono essere dichiarati nella tabella delle variabili ma richiedono un blocco dati (DB1). Per esempio l'array con le quattro coordinate x si dichiara indicando Array[1..4] of Int
come tipo di dati e inserendo come valori inziali i quattro valori indicati nella tabella con le coordinate moltiplicati per 100 (nella tabella ci sono i metri mentre l'encoder fornisce un impulso ogni 10mm cioè ogni centimetro). Per l'array con le coordinate y si procede allo stesso modo. Come indice per iterare tra i valori dell'array useremo un contatore (l'indice sarà CTUMAG.CV
). NB: bisogna fare molta attenzione a non usare un indice non compatibile con la dichiarazione dell'array (ad esempio x[5]
) o il PLC segnalerà un errore.
SFC
Tralasciamo lo schema a blocchi, che è banale, e passiamo all'algoritmo che descriviamo con un diagramma SFC. Nel diagramma non ci sono i contatori perché incrementano il loro valore con dei segnali e non con il passo attivo. L'algoritmo ipotizza che il composto vada preparato dopo ogni deposito in una cella del magazzino ma si poteva supporre che il preparato fosse sufficiente a riempire tutte e quattro le celle; il testo non è chiaro al riguardo.
Punto 2
Punto 3
Il rapporto di riduzione richiesto si ottiene dividendo la velocità di un MAT a 4 poli (circa 1500 giri/m) per quella richiesta:
`i=n_(mot)/n_(mesc)=1500/40=37,5`
Alla velocità di 40 rpm la coppia resistente vale:
`C_r=60+1,17 ((40 cdot 2 pi)/60)^2=80,5 Nm`
La potenza richiesta dal mescolatore è:
`P=C cdot omega = 80,5 cdot (40 cdot 2 pi)/60 = 337W`
Tenendo conto del rendimento del riduttore la potenza minima del motore è:
Si sceglie allora un motore da mezzo chilowatt.
Punto 4: condizionamento
Il circuito proposto è questo:
La soluzione non è per niente banale e viene da qui.
Il circuito richiede guadagno 16 fino a 250mV. Questo si può imporre con opportuni valori di R1 e R2. Fino a questa soglia U2 satura (la tensione sull'ingresso invertente è maggiore di quella sull'ingresso non invertente), il diodo risulta interdetto e il ramo con R3 è interrotto.
Quando V1 supera i 250mV il guadagno richiesto è 24 (ΔVo/ΔVin) con un offeset di -2V (0.5*24=12V ma si vogliono 10V in uscita). In questo range di valori l'operazionale U2 e il diodo si comportano come un buffer e ci sono 250mV costanti applicati a R3. La tensione in uscita si calcola con la sovrapposizione degli effetti considerando separatamente la sola V1, in configurazione non invertente con guadagno R1/(R2 || R3), e la tensione costante di 250mV, in configurazione invertente con guadagno -R1/R3). Imponendo guadagno 24 si ottiene:
`24=1+(R1)/(R2 ∥ R3)`
dove, sostituendo i valori di R1 e R2 si ottiene R3 = 1,875Ω