Jump to content

Volante Direct drive con arduino / stm32


manu79

Recommended Posts

  • 3 weeks later...
  • Replies 1.8k
  • Created
  • Last Reply

Top Posters In This Topic

  • manu79

    322

  • Cip060

    243

  • maddex

    157

  • Tetuz

    129

Top Posters In This Topic

Posted Images

On 6/3/2019 at 9:22 PM, Eu Genio said:

mi sfugge una cosa... ma i pedali?... hanno la taratura automatica?

No, li tari con diview o programmi simili credo

Link to comment
Share on other sites

  • 1 month later...

Ciao a tutti! Ultimamente, complice il caldo, il mio motore si scalda parecchio e temo che con più corrente avrei problemi.

Per migliorare la situazione pensavo a due cose:

1. Fare più buchi (di piccolo diametro, tipo 2/3 mm) sui coperchi in alluminio per migliorare la circolazione d'aria

2. Comprare alcuni dissipatori (tipo
https://s.click.aliexpress.com/e/crCtBKNS ), piegarli e attaccarli alla superficie laterale del motore usando della pasta termica e della colla, magari grattando via la vernice dal motore.

Cosa ne dite, potrebbe funzionare o si potrebbe avere qualche problema? Specialmente con il primo rimedio.

Link to comment
Share on other sites

Ciao a tutti,

avrei bisogno di un aiuto. Per prima cosa mi scuso anticipatamente se la mie domande sono già state trattate (ho controllato nei limiti del possibile le 150 pagine sull'argomento ma non ho trovato nulla a riguardo).

Ho iniziato il progetto con Leonardo + bts. Visto che ho disponibile un motore Dunker da 40v 100W (lo sto alimentando al volo con un 12v) che monta un encoder re20 100 ppr sempre marca dunker ho voluto provare con questi componenti prima di buttarmi eventualmente nell'acquisto di un motore più serio. 

In sintesi il problema è questo: programmazione Leonardo firmware etc. OK - encoder riconosciuto e manualmente funzionante (testato anche in gaming il volante gira) ma quando collego il motore alla BTS quest'ultimo parte comincia a girare e non si ferma. La cosa strana è che dal momento in cui collego il motore smette di girare il triangolo rosso in RFR e se lo scollego esco e rientro dal programma e l' encoder ricomincia a funzionare manualmente. Consapevole che l'accoppiata motore+encoder potrebbe non essere idonea mi sono chiesto perchè comunque l'encoder viene riconosciuto e impartisce i comandi?

Grazie per eventuali risposte

 

Link to comment
Share on other sites

Per nikymatt

Provo a risponderti io.
Il controllore dev'essere programmato come segue: H-BRIDGE + DIR
Il bts continua a far girare il motore perchè forse uno dei due pwm non è collegato.
La configurazione dev'essere così:  

RPWM -> pin 10
LPWM -> pin 11

REN -> +5v
LEN -> +5v

gnd -> gnd

vcc -> +5v

_____________________________________________________________

Per Tetuz
Per dissipare il motore puoi utilizzare delle barre in rame che troverai facilmente sul aliexpress,
il mio consiglio è quello di creare un box ventilato con una ventola in entrata e una in uscita, la ventola in uscita deve girare un minimo più forte rispetto a quella d'entrata, io di solito per limitare la velocità utilizzo un diodo in serie (principio di caduta di tenzione) o metto una resistenza da 1watt da 100ohm in serie.

sempre per Tetuz
hai qualche guida per il diview? sapresti dirmi se il programma applica la modifica scrivendo sull'stm32 o se rimane sul sistema operativo?

per tutti:
Sapete come configurare l'stm32 per fare in modo che possa giocarci sulla ps4 con granturismo?

Link to comment
Share on other sites

Grazie mille Eu Genio. i collegamenti li avevo fatti come da te descritto, provo a verificare se uno dei due PWM ha qualche problema di contatto o altro. Perdona la domanda da neofita: cosa intendi per 

26 minutes ago, Eu Genio said:

Per nikymatt

Provo a risponderti io.
Il controllore dev'essere programmato come segue: H-BRIDGE + DIR
Il bts continua a far girare il motore perchè forse uno dei due pwm non è collegato.
La configurazione dev'essere così:  

RPWM -> pin 10
LPWM -> pin 11

REN -> +5v
LEN -> +5v

gnd -> gnd

vcc -> +5v

_____________________________________________________________

Per Tetuz
Per dissipare il motore puoi utilizzare delle barre in rame che troverai facilmente sul aliexpress,
il mio consiglio è quello di creare un box ventilato con una ventola in entrata e una in uscita, la ventola in uscita deve girare un minimo più forte rispetto a quella d'entrata, io di solito per limitare la velocità utilizzo un diodo in serie (principio di caduta di tenzione) o metto una resistenza da 1watt da 100ohm in serie.

sempre per Tetuz
hai qualche guida per il diview? sapresti dirmi se il programma applica la modifica scrivendo sull'stm32 o se rimane sul sistema operativo?

per tutti:
Sapete come configurare l'stm32 per fare in modo che possa giocarci sulla ps4 con granturismo?

Grazie mille Eu Genio gentilissimo. I collegamenti li ho già fatti come da te indicato. Provo a verificare che non ci sia un problema di contatto su uno dei due PWM. Scusa la domanda  da neofita: cosa intendi per programmazione h-bridge + dir? In RFR ho selezionato PVM+dir e ci sono altre opzioni ma nessuna come da te descritto.

Link to comment
Share on other sites

nikymatt è proprio quello il problema allora,

con il bts devi utilizzare la configurazione PWM(H-Bridge)
ti spiego la differenza...
con il PWM+DIR tu hai due fili il cui Dir (direzione) quando il volante deve girare a destra dà un impulso di +5Volt, quando deve andare a sinistra dà 0 Volt, il PWM (Pulsazioni con modulazione) invece è un segnale ad impulsi modulato in questo caso da 0 Volt in posizione di riposo a +5volt in posizione di pieno carico.
Nella configurazione PWM (H-Bridge) invece hai 2 segnali PWM che corrisponde uno al pwm per segnali a destra, e l'altro per pwm lato sinisto.
Il bts per gestire la direzione ha 2 pin che si chiamano LEN e REN, left enable, right enable, che servono ad abilitare il ponte (H) e vanno messi entrambi a 5Volt per essere sempre abilitati, (l'ideale sarebbe portare i due Dir, ma purtroppo non funziona bene perchè le porte logiche hanno un funzionamento particolare, per il quale alcuni punti necessitano di resistenze in parallelo per evitare tensioni accidentali) mentre per gestire la potenza e l'uscita reale utilizza i due LPWM e RPWM.

Utilizzando la configurazione PWM+DIR sul BTS non funzionerà mai, perchè girerebbe solo da un lato perchè l'impulso lo riceve solamente un lato.
Visto che tu comunque a quanto ho capito stai utilizzando l'arduino leonardo, ti rimando al video della persona che ha creato il firmware elbogy:

Fammi sapere se hai dubbi,
vedrò come posso supportarti diversamente 😉

Link to comment
Share on other sites

1 hour ago, Eu Genio said:

nikymatt è proprio quello il problema allora,

con il bts devi utilizzare la configurazione PWM(H-Bridge)
ti spiego la differenza...
con il PWM+DIR tu hai due fili il cui Dir (direzione) quando il volante deve girare a destra dà un impulso di +5Volt, quando deve andare a sinistra dà 0 Volt, il PWM (Pulsazioni con modulazione) invece è un segnale ad impulsi modulato in questo caso da 0 Volt in posizione di riposo a +5volt in posizione di pieno carico.
Nella configurazione PWM (H-Bridge) invece hai 2 segnali PWM che corrisponde uno al pwm per segnali a destra, e l'altro per pwm lato sinisto.
Il bts per gestire la direzione ha 2 pin che si chiamano LEN e REN, left enable, right enable, che servono ad abilitare il ponte (H) e vanno messi entrambi a 5Volt per essere sempre abilitati, (l'ideale sarebbe portare i due Dir, ma purtroppo non funziona bene perchè le porte logiche hanno un funzionamento particolare, per il quale alcuni punti necessitano di resistenze in parallelo per evitare tensioni accidentali) mentre per gestire la potenza e l'uscita reale utilizza i due LPWM e RPWM.

Utilizzando la configurazione PWM+DIR sul BTS non funzionerà mai, perchè girerebbe solo da un lato perchè l'impulso lo riceve solamente un lato.
Visto che tu comunque a quanto ho capito stai utilizzando l'arduino leonardo, ti rimando al video della persona che ha creato il firmware elbogy:

Fammi sapere se hai dubbi,
vedrò come posso supportarti diversamente 😉

Ok grazie mille. La tua spiegazione in merito alle varie funzioni del BTS è chiarissima. Adesso sono via per lavoro, sabato quando rientro provo con il software e firmware che c'è nel video che mi hai indicato. Lui però collega il LEN e il REN al pin 8 (schema al minuto 2:36 del video) e non al 5v. Va bhe dai non ti disturbo oltremodo, mi hai già dato una grossa mano. Intanto scarico i software indicati e faccio le prove e poi ti faccio sapere. grazie ancora.

Link to comment
Share on other sites

2 hours ago, Eu Genio said:

Per Tetuz
Per dissipare il motore puoi utilizzare delle barre in rame che troverai facilmente sul aliexpress,
il mio consiglio è quello di creare un box ventilato con una ventola in entrata e una in uscita, la ventola in uscita deve girare un minimo più forte rispetto a quella d'entrata, io di solito per limitare la velocità utilizzo un diodo in serie (principio di caduta di tenzione) o metto una resistenza da 1watt da 100ohm in serie.

sempre per Tetuz
hai qualche guida per il diview? sapresti dirmi se il programma applica la modifica scrivendo sull'stm32 o se rimane sul sistema operativo?

per tutti:
Sapete come configurare l'stm32 per fare in modo che possa giocarci sulla ps4 con granturismo?

Come fai a creare un box con all'interno il motore? Per le ventole montarne una davanti è impossibile, hai il mozzo del motore collegato al volante. E con barre in rame intendi banalmente delle sbarre piatte?

Per l'stm non lo so, potresti provare a collegarla ad un altro PC e installarci mmos, se lo apri e la rileva correttamente salva sulla scheda. Credo comunque sia così ma non ci metterei la mano sul fuoco.

Per la PS4 temo proprio sia impossibile, non è possibile con gli osw e dubito sia possibile con questo.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.