Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Ricavare funzione di trasferimento da funzione di uscita

PLC, servomotori, inverter...robot

Moderatori: Foto Utentecarlomariamanenti, Foto Utentedimaios

0
voti

[31] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteEcoTan » 22 mar 2019, 9:06

OK: Comunque uno schema a blocchi fisicamente più completo di quello riportato in [3], possibilmente usando i nomi delle variabili, servirebbe come base per ragionare insieme.
(personalmente ho realizzato per hobby diversi controlli anche "difficili", attualmente sto facendo un semplice robottino con due motori d.c. e encoders DIY in quadratura sulle ruote che non è poi così semplice se si vogliono determinati risultati, in generale uso lo schema a blocchi appunto quando la confusione è diventata troppa, altrimenti vado per intuito e ragionamento e sopratutto migliaia di prove sul campo, come hobby è bellissimo).
Allegati
diego3.jpg
ruota
diego3.jpg (59.86 KiB) Osservato 1336 volte
diego2.jpg
sensore
diego2.jpg (54.11 KiB) Osservato 1336 volte
diego1.jpg
assieme
diego1.jpg (80.3 KiB) Osservato 1336 volte
Avatar utente
Foto UtenteEcoTan
5.773 4 10 13
Expert EY
Expert EY
 
Messaggi: 3604
Iscritto il: 29 gen 2014, 8:54

0
voti

[32] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteEcoTan » 22 mar 2019, 12:29

SandroCalligaro ha scritto:Nel post [17], Foto Utentetino20 parla di un encoder.

Non so se serva, riferisco che ho trovato degli intoppi usando un encoder per fare (pre)regolazione di velocità. Allo stato attuale il modulo, previsto nell'hardware della MCU per gestire gli encoder in quadratura, rimane inutilizzato, naturalmente inutilizzato anche il relativo software (altro che Arduino!), e l'elaborazione avviene a partire dagli interrupt originati dai 4 ingressi digitali + 2 3 timer.
Avatar utente
Foto UtenteEcoTan
5.773 4 10 13
Expert EY
Expert EY
 
Messaggi: 3604
Iscritto il: 29 gen 2014, 8:54

0
voti

[33] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteEcoTan » 22 mar 2019, 17:44

EcoTan ha scritto:uno schema a blocchi fisicamente più completo di quello riportato in [3], possibilmente usando i nomi delle variabili, servirebbe come base

mi auto-cito per ritornare On Topic (è sempre OT..)
Avatar utente
Foto UtenteEcoTan
5.773 4 10 13
Expert EY
Expert EY
 
Messaggi: 3604
Iscritto il: 29 gen 2014, 8:54

0
voti

[34] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteSandroCalligaro » 22 mar 2019, 18:23

EcoTan ha scritto:Allo stato attuale il modulo, previsto nell'hardware della MCU per gestire gli encoder in quadratura, rimane inutilizzato, naturalmente inutilizzato anche il relativo software (altro che Arduino!), e l'elaborazione avviene a partire dagli interrupt originati dai 4 ingressi digitali + 2 3 timer.

Non capisco bene se avevi a bordo o no una periferica dedicata per encoder in quadratura.
Se la periferica c'è, non dovrebbe essere impossibile usarla. Che micro utilizzi?

Va detto che Foto Utentetino20 vuole fare controllo diretto della posizione.
Avatar utente
Foto UtenteSandroCalligaro
2.325 4 5
Master EY
Master EY
 
Messaggi: 979
Iscritto il: 6 ago 2015, 19:25

0
voti

[35] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto Utentetino20 » 22 mar 2019, 19:42

Ecco lo schema a blocchi. Il riferimento è ovviamente in posizione. Tra arduino e il ponte ho dimenticato a mettere i segnali che controllano il verso della rotazione.
Allegati
Screenshot (16).png
Avatar utente
Foto Utentetino20
5 5
New entry
New entry
 
Messaggi: 71
Iscritto il: 13 lug 2011, 13:40

0
voti

[36] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteMarcoD » 22 mar 2019, 20:01

Lo schema a blocchi è solo un pochino meglio
Dovresti chiarire:
Il PWM comprende il numero 0-255 che controlla la tensione di alimentazione +2bit per controllo senso di rotazione sblocco/sblocco motore? Indicalo
Per la posizione adoperi un encoder assoluto o incrementale con due segnali sfasati?
Se incrementale come realizzi il riferimento di posizione?
Nello schema a blocchi il nodo di sottrazione è esterno o fa parte di Arduino?
Iscrivi in un rettangolo tratteggiato tutto quello che è dentro Arduino.
Scrivi l funzione di trasferimento dei vari blocchi.
Fr
Avatar utente
Foto UtenteMarcoD
7.431 4 8 13
Master EY
Master EY
 
Messaggi: 3276
Iscritto il: 9 lug 2015, 16:58
Località: Torino

0
voti

[37] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto Utentetino20 » 22 mar 2019, 20:11

MarcoD ha scritto:Il PWM comprende il numero 0-255 che controlla la tensione di alimentazione +2bit per controllo senso di rotazione sblocco/sblocco motore?


il PWM (0-255) controlla solo la tensione di alimentazione, per il verso di rotazione e il blocco utilizzo altri 2 pin di arduino.

MarcoD ha scritto:Per la posizione adoperi un encoder assoluto o incrementale con due segnali sfasati?
Se incrementale come realizzi il riferimento di posizione?


utilizzo un encoder incrementale che vado ad inizializzare all'avvio di arduino.

MarcoD ha scritto:Nello schema a blocchi il nodo di sottrazione è esterno o fa parte di Arduino?


il nodo sommatore è interno ad arduino
Avatar utente
Foto Utentetino20
5 5
New entry
New entry
 
Messaggi: 71
Iscritto il: 13 lug 2011, 13:40

0
voti

[38] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteMarcoD » 22 mar 2019, 20:27

Il controllo di posizione può ruotare all"infinito, o ha dei limiti meccanici?
A cosa serve?
Quanto è l'errore di posizionamento che ritieni accettabile!
E. Il tempo per daggiubgerea posizione voluta?
Avatar utente
Foto UtenteMarcoD
7.431 4 8 13
Master EY
Master EY
 
Messaggi: 3276
Iscritto il: 9 lug 2015, 16:58
Località: Torino

0
voti

[39] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto Utentetino20 » 22 mar 2019, 20:31

Il motore può ruotare di 180° a destra o a sinistra. E' un progettino universitario sul controllo, non ha applicazioni pratiche.
Avatar utente
Foto Utentetino20
5 5
New entry
New entry
 
Messaggi: 71
Iscritto il: 13 lug 2011, 13:40

0
voti

[40] Re: Ricavare funzione di trasferimento da funzione di uscita

Messaggioda Foto UtenteEcoTan » 23 mar 2019, 0:53

tino20 ha scritto:Ho implementato la risposta al gradino e ho ricavato la funzione d'uscita della velocità
Y_v=\frac{4.93}{65.68 s^2+s}

Questa funzione di uscita antitrasformando è un esponenziale, quindi in un certo senso tu hai imposto questo tipo di funzione e ne hai identificato soltanto l'ampiezza e la costante di tempo. Tale funzione rappresenta, credo, il comportamento del solo motore quindi tutto il blocco di Arduino deve avere un comportamento istantaneo e privo di requisiti dinamici, almeno durante l'implementazione citata. Poi potrai aggiungergli la derivata e l'integrale. Il gradino di ingresso pari a 10,6V lo hai misurato ai morsetti del motore, non all'inizio della catena, probabilmente per questo motivo i conti col modello completo non tornano .
SandroCalligaro ha scritto:Che micro utilizzi?

Un dsPic33 MotorControl. Questo possiede dei moduli hardware per encoder in quadratura che possono dare un interrupt in caso di errore, mentre a me serve un interrupt ad ogni ciclo di 4 fronti dell'encoder allo scopo di fare la regolazione di velocità il più possibile in tempo reale, girando a livello di ISR per non interferire con le esigenze del main program.
Avatar utente
Foto UtenteEcoTan
5.773 4 10 13
Expert EY
Expert EY
 
Messaggi: 3604
Iscritto il: 29 gen 2014, 8:54

PrecedenteProssimo

Torna a Automazione industriale ed azionamenti

Chi c’è in linea

Visitano il forum: Nessuno e 7 ospiti