Vai al contenuto
PLC Forum


microcontrollore che va a male. Regolatore velocità motore dc.


marco88

Messaggi consigliati

Salve a tutti.

Ho progettato un regolatore di velocità con un micro avr. In pratica ricevo un ingresso co periodo di 80ms in cui rilevo il duty cycle e tramite quel duty cycle ne imposto un altro del pwm del micro ad una frequenza piu alta. Volevo usare 8kHz. COmunque il tutto funziona. Il problema è che quando collego il motore il tutto se ne va a male. Me ne accorgo da un led che lampeggia una volta al secondo che lampeggia in modo irregolare al collegamento del motore.

Il motore è 24Vdc che a regime consuma circa 130 mA. 

Il circuito è fatto cosi:

 il pwm del micro pilota un bc337 ed è collgato alla base tramite una resistnza da 10k o 1k. (non ricordo e ho messo il termorestringente). COmunque il'emettitore è a massa e il collettore è collegato tramite una resistenza da 1k alla base di un darlington 2sb1626. Infine l'emettitore del darlington è a +24V e il collettore al motorino. L'altro capo del motorino va a massa.

C'è un diodo inversamente collegato in parallelo al motorino. E la 24V è la stessa che alimenta tutta la scheda oltre il motore.
SCusate le cose scritte male ma sono di frettissima.

LA regolazione sembra farla ma il motore gira irregolare e comunque il micro se ne va  a male.  A volte nonsubito.

grazie

 

 

Link al commento
Condividi su altri siti


Controlla l'alimentazione dell' Avr mettila sotto regolatore con relativi condensatori di filtro . Metti un 100nF tra Vdd e gnd il più vicino possibile all' Avr

Link al commento
Condividi su altri siti

La lettura in ingresso a 80 mS non serve a campionare l'uscita per realizzare il feedback giusto? Perchè altrimenti ovviamente saresti lento
 

Il pilotaggio del BC337 non è ottimale , quello del darlington è pessimo  ... se lo vede Livio :toobad:

Che poi , non era più semplice usare un mosfet ?

Cosa intendi il "micro se ne va male" ? si guasta? 

In ogni caso sembrerebbe che il disturbo generato dalla commutazione va a rompere le scatole al micro, probabilmente passando per l'alimentazione.<

L'alimentazione del micro sarà immagino a +5V con un 7805 o simili, meglio filtrare a monte del 7805 con un LC , un paio di 100nF a film in ingresso e uscita del regolatore di tensione e un 100nF nei pressi dei pin di alimentazione del micro.

Link al commento
Condividi su altri siti

Non ho capito il perchè di tutti questi giri di pista inutili.

Prova a leggere la posizione di un potenziometro collegato ad un ingresso analogico e con questo regoli il duty cycle generato dal micro.

 

Prima di fare le prove sistema al meglio l'accrochio che hai fatto per pilotare il motorino (ha gia detto tutto Tesla), sperando che tu abbia messo il diodo shotky di ricircolo in parallelom inverso al motore.

 

Quando il tutto funziona correttamente così, puoi anche pensare di pilotarlo con il PWM esterno, così se non funziona correttamente sai dove sta il problema.

Link al commento
Condividi su altri siti

Ciao a tutti. Purtroppo oggi ero cosi di fretta che ho scritto il messaggio per miracolo. Purtroppo mi trovavo in un laboratorio con poca roba dove ho recuperato per miracolo un transistor di potenza (appunto il darlington) per pilotare il motorino. Mosfet purtroppo non ne avevo.
Il micro è alimentato da un 7805, si. La 24 che alimenta il motore va a monte del regolatore.

L'ingresso per fortuna non mi serve come feedback. In sostanza ho una sorta di plc che mi genera segnali multipli di 8ms con un livello logico alto a 24V. Abbiamo dunque deciso di usare 10 intervalli per definire un segnale di informazione con periodo  80ms per indicare la velocità da assegnare al motore. IO con il micro leggo sto segnale e, in base al duty-cycle rilevato, genero un segnale a frequenza maggiore con un duty-cycle funzione dell'ingresso.

A mia disposizione ho anche un darlington npn, oltre che pnp. Avevo pensato di usare il pnp cosi lo mandavo in interdizione senza pull up. sul bc337 Mi piacerebbe sistemarlo con questo perchè non ho completamente tempo di passare a comprare della roba in negozio.

avete altri suggerimenti per pilotare gli stessi transistor?

Il diodo che avevo non è shottky purtroppo. Pensavo che per qualche khz potesse andar bene lo stesso un classico 1n4xxx. Forse mi sbaglio, non ho controllato nessun datasheet :wacko: "non ho avuto tempo" :wallbash:

Link al commento
Condividi su altri siti

Andiamo con ordine.

Per pilotare un trnasistor interruttore, non basta mettere in serie un resistore tra base e uscita del micro.

Per fare un lavoro decente, bisogna mettere anche un resistore (4700 ohm a naso) tra emettitore e base, così da ssicurare e rendere più veloce l'interdizione. Poi sarebbe conveniente mettere anche un condensatore di speed up in parallelo al resistore di base (1nF - 10nF sempre a naso).

 

Il diodo in antiparallelo deve essere veloce non per la frequenza di ripetizione degli impulsi, ma per la velocità dei fronti; se è lento serve a poco o nulla.

 

Ti consiglio vivamente di mettere a punto il sistemino, usando un riferimento differente dal PLC (l'ingresso analogico mi sembra il più facile); solo dopo aver vrificato l'esatta funzionalità del sistema puoi eseguire l'unione. In queso moto è chiaro se il malfunzionamento è intinseco al circuito del micro o provien dall'esterno.

 

Fare le cose bene, seguendo dei passaggi logici corretti, non è una perdita di tempo, anzi (quasi) sempre ne fa risparmiare!

Link al commento
Condividi su altri siti

Se il led che dici dovrebbe lampeggiare periodicamente a 1 Hz è gestito dal micro indipendentemente dalla lettura dell'ingresso, la cosa più probabile è che vada in palla il clock del micro che in effetti potrebbe essere abbastanza critica se è il classico quarzo esterno al micro... 
Anche il Layout , specie il GND, può influire pesantemente sul funzionamento...

 

Dai come si fa a non avere un mosfet? Io giro con un IRF840 nel portafoglio :)

Link al commento
Condividi su altri siti

Quote

la cosa più probabile è che vada in palla il clock del micro che in effetti potrebbe essere abbastanza critica se è il classico quarzo esterno al micro...

 

Non spiega come gestisce il LED, potrebbero essere tantisime le cause.

Sempre procedere con una variazione alla volta.

Non connettere il motore e eridicare che il PWM lavori correttamente, ed il diodo spia anche, usando un riferimento anlogico o altro ma interno al micro.

Connettere il motore e riverificare.

Se connesso il motore sorgono problemi la causa è data dai disturbi generati dalla commutazione sul motore.

Se il motore el controllo lavorano bene connettere il PLC. Se a questo punto cominciano i problemi la causa è da ricercarsi da eventuali disturbi introdotti trmite il collegamento al PLC.

Link al commento
Condividi su altri siti

Ciao a tutti e grazie mille per le risposte!

 

Quote

 Io giro con un IRF840 nel portafoglio :)

 

hahaha mi hai fatto crepare! 

 

Comunque per adesso questo coso non mi serve più. Tuttavia credo comunque che pian piano col tempo farò un progettino con più calma e più logica. Seguirò senza dubbio il consiglio di Livio sul provare le cose separatamente e poi eventuamlente vedere il funzionamento completo!

Ancora grazie. Di sicuro riscriverò in questa discussione appena ci rimetto mani

Link al commento
Condividi su altri siti

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