Salve a tutti,
Sono venuto in possesso di un vecchio hard disk da 10000rpm e ne ho preso il motore( che ha 4 pin: 3 per le fasi e uno per la massa)...
Stavo cercando su Internet quale sia il metodo migliore per pilotarlo e ho trovato un'articolo che utilizza come integrato l'L293D http://letsmakerobots.com/node/2898
Avevo però delle domande su come pilotarlo con l'arduino..
Infatti pensavo che i motori brushless per essere pilotati correttamente avessero bisogno di una circuiteria che riusciva a capire quando commutare le fasi, invece facendo riferimento a questo articolo:
lui semplicemente decide la frequenza di commutazione e tutto va( almeno da quello che ho capito)
Ma inoltre ho un'altro dubbio....il duty cycle delle tre PWM non dovrebbe essere del 33%? e poi non sono limitato utilizzando le PWM dell'Arduino che, così come sono, se non sbaglio lavorano a 490hz?
Visto che, da come ho letto, già con frequenze di 100hz il motore potrebbe arrivare a valori che mi servono(5000-6000rpm) mi conviene pilotare direttamente i 3 pin, sovraccaricando però un po' il loop dell'Arduino?
grazie...
usare direttamente i pin arduino ha lo svantaggio che lo friggi; devi usare dei mosfet o simili per amplificare la potenza del segnale arduino.
Fatto ciò, nulla ti vieta di creare i 3 segnali con arduino al posto che usando l'apposito integrato; anzi negli ESC da modellismo che ho a casa per motori BL, all'interno c'è proprio un atmega, anche se non il 328p (ma una versione più "castrata" e quindi economica) e in versione SMD
sisi....infatti pensavo a 3 BJT in cui piloto il gate...
quindi basta questo?
per quelle frequenze non devo temere qualcosa?( tipo transitori o altro)?
e per il fatto del duty cycle mi puoi consigliare qualcosa?
Se usi il Brushless con un pilotaggio a frequenza fissa senza controllo della posizione del rotore é praticamente un motore sincrono con i rispettivi vantaggi/svantaggi (ha una velocitá di rotazione costante / non parte da solo)
I circuiti come i ESC o gli integrati che pilotano i motori dei HD o CD/DVD hanno un controllo della posizione per conoscere il momento di comutazione e percui partono da soli.
Se usi un Arduino e crei un sistema trifase con un L293D o dei Transistori devi programmare una rampa di accelerazione/decelerazione per far partire/fermare il motore.
@uwe
forse io non ho capito bene il procedimento....
comunque devo pilotare gli ingressi del L293D no? o mi sbaglio?
e gli devo trasmettere l'onda quadra che mi serve in uscita giusto?
il fatto di usare i bjt era per comodità perchè ho quelli al momento....
comunque intendevo fare un controllo che mi permettesse di accelerare la rotazione del brushless fin a farlo arrivare a regime(e la sua decelerazione)...perchè comunque volevo pilotarlo con un potenziometro
ma non capisco perchè in quell'articolo i duty cycle delle onde quadre non sono al 33%...da quel poco che mi ricordo dovevano esserlo....
Un'altro dubbio...
Ma è possibile farlo senza sensore( tipo di hall)? Perchè dovrei sapere( più o meno) quando devo iniziare la commutazione ad inizio giro...altrimenti va a finire che le commuto non al momento giusto....
Mi son espresso male...
Intendevo se fosse possibile senza alcun sensore, visto che su YT c'è chi riesce a pilotare il motore senza alcun feedback( nel caso del sensore di hall bisogna avere ad esempio la calamita nella faccia sotto del piatto).