.: robotitaly.NET :. - la community italiana sulla robotica  

Vai indietro   .: robotitaly.NET :. - la community italiana sulla robotica > Microcontrollori > PIC & AVR

PIC & AVR Forum dedicato ai diffusissimi microcontrollori PICMicro e AVR

Rispondi
 
Strumenti della discussione Modalità di visualizzazione
  #1  
Vecchio 06-08-2010, 07:15 PM
siriofb siriofb non è collegato
Nuovo Roboter
 
Registrato dal: Jun 2010
Messaggi: 1
Smile problema con Pic16f84a e ponte H!

Buonasera a tutti!
complimenti per il forum..davvero molto bello! mi sono appena iscritto e tra poche settimane avrò la maturità (ahime), girovacchiando su internet e leggendo le vostre discussioni ho deciso di costruire per la tesina una piccola gru comandata dal pic16f84a (ma cosa mi è saltato in testa)...il chip comanda un motore tramite un ponte H formato da 4 tip41 e 4 diodi 1n4007...il problema è che il ponte H muove il motore solo in un senso, il tester non registra un voltaggio negativo diciamo! ho pensato potesse essere un problema di programmazione...i pin di controllo sono RB2 ed RB3..:

inizio:
portb.2=1 'muove motore in senso orario
delay_ms(2000)
porta.2=0 'ferma il motore
delay_ms(2000)
portb.3=1 'muove il motore in senso antiorario
delay_ms(2000)
portb.3=0 ferma nuovamente il motore
delay_ms(2000)
goto inizio
secondo voi il programma (l'ho scritto con mikroBasic) ha qualche difetto??

oppure è un difetto di costruzione?

Vi allego lo schema elettrico..
Grazie..
Sirio
File allegati
Tipo di file: doc schema elettrico.doc‎ (30.0 KB, 18 visite)
Rispondi quotando
  #2  
Vecchio 06-09-2010, 02:44 PM
L'avatar di Caronte
Caronte Caronte non è collegato
Roboter Master
 
Registrato dal: Nov 2006
residenza: Ferrara
Messaggi: 927
Blog Entries: 116
predefinito

Premesso che di Pic non ci capisco niente, ma dal codice che hai postato e se è quello che hai implementato:

codice:
portb.2=1 'muove motore in senso orario
delay_ms(2000)
porta.2=0 'ferma il motore
delay_ms(2000)
portb.3=1 'muove il motore in senso antiorario
delay_ms(2000)
portb.3=0 ferma nuovamente il motore
portx.y = 1

andrà sempre in un senso, magari, per farlo andare in senso contrario dovrà essere:

portx.y = 2 o qualcos'altro ma se è sempre uguale a 1 si otterrà sempre la stessa reazione....... (magari dico na....)

Ciao

Antonio
Rispondi quotando
  #3  
Vecchio 06-09-2010, 02:58 PM
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Moderator
 
Registrato dal: Mar 2006
residenza: Roma
Messaggi: 2,131
Blog Entries: 1
predefinito

Quote:
Originariamente inviata da siriofb Visualizza il messaggio
il tester non registra un voltaggio negativo diciamo!
Se alla commissione d'esame dici "voltaggio" ti bocciano subito, si chiama tensione, voltaggio è un comune in provincia di Alessandria.
Magari se posti lo schema esatto del tutto, ponte H e connessioni col micro, è meglio.
Rispondi quotando
  #4  
Vecchio 06-10-2010, 08:06 AM
greybear greybear non è collegato
Roboter Graduato
 
Registrato dal: Mar 2006
Messaggi: 314
Blog Entries: 4
predefinito

Poveri transistorini Q2
Li hai collegati al contrario... Chissà se sono ancora buoni
Rispondi quotando
  #5  
Vecchio 06-10-2010, 08:28 AM
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Moderator
 
Registrato dal: Mar 2006
residenza: Roma
Messaggi: 2,131
Blog Entries: 1
predefinito

Quote:
Originariamente inviata da greybear Visualizza il messaggio
Poveri transistorini Q2
Li hai collegati al contrario... Chissà se sono ancora buoni
Non solo, i TIP41 hanno un hfe ridicolo e non si possono collegare direttamente ai pin di un micro, occorre usare un ulteriore transistor come driver oppure utilizzare direttamente un darlington.
Altro dettaglio, i ponti H o si fanno con coppie complementari, un PNP e un NPN per ogni ramo, oppure se si realizzano con quattro transistor identici è necessario elevare la tensione di base del ramo alto ad un valore pari a Vcc+vbe, o Vcc+Vgs nel caso dei mos.
Altro che bocciatura, qui ci sono tutti gli estremi per rimandarlo al primo anno
Rispondi quotando
  #6  
Vecchio 06-10-2010, 08:56 AM
greybear greybear non è collegato
Roboter Graduato
 
Registrato dal: Mar 2006
Messaggi: 314
Blog Entries: 4
predefinito

Qui trovi un ponte-H semplice semplice:

http://www.solarbotics.net/library/c...arHbridge.html
Rispondi quotando
  #7  
Vecchio 06-13-2010, 08:59 AM
CyB3rn0id CyB3rn0id non è collegato
Roboter Attivo
 
Registrato dal: Feb 2008
Messaggi: 164
Blog Entries: 11
predefinito

E si potrebbe pure aggiungere che gli 1N4007 non vanno bene per questo tipo di applicazione ma che ci vorrebbero dei diodi schottky, da dimensionare ovviamente in base alla corrente assorbita dal motore.
Con i prezzi che ormai hanno i ponti H integrati penso che farselo da se con i transistor non convenga più.
__________________
www.settorezero.com
Rispondi quotando
  #8  
Vecchio 08-01-2010, 11:36 AM
nlenzin nlenzin non è collegato
Roboter Attivo
 
Registrato dal: Nov 2007
Messaggi: 100
predefinito

Quote:
Originariamente inviata da siriofb Visualizza il messaggio
Buonasera a tutti!
complimenti per il forum..davvero molto bello! mi sono appena iscritto e tra poche settimane avrò la maturità (ahime), girovacchiando su internet e leggendo le vostre discussioni ho deciso di costruire per la tesina una piccola gru comandata dal pic16f84a (ma cosa mi è saltato in testa)...il chip comanda un motore tramite un ponte H formato da 4 tip41 e 4 diodi 1n4007...il problema è che il ponte H muove il motore solo in un senso, il tester non registra un voltaggio negativo diciamo! ho pensato potesse essere un problema di programmazione...i pin di controllo sono RB2 ed RB3..:

inizio:
portb.2=1 'muove motore in senso orario
delay_ms(2000)
porta.2=0 'ferma il motore
delay_ms(2000)
portb.3=1 'muove il motore in senso antiorario
delay_ms(2000)
portb.3=0 ferma nuovamente il motore
delay_ms(2000)
goto inizio
secondo voi il programma (l'ho scritto con mikroBasic) ha qualche difetto??

oppure è un difetto di costruzione?

Vi allego lo schema elettrico..
Grazie..
Sirio

potresti utilizzare un ponte fatto con un l293 oppure un l298 dipende dalle correnti in gioco collegati in configurazione LAP (looked anti phase), cosi' hai due ingessi , A e B ( ovvero uno solo poiche' B in realta' e' A_negato)
poi vai a rompere le scatole al modulo pwm e come per magia duty cicle al 50% il motore sta fermo 0>duty< 50% gira da un lato , 50%<duty>100% gira in senzo oppoosto , variando il dutycicle poi puoi variare anche la velocita'.....

appena lo trovo ti posto anche lo schema....eccolo e c'e spiegato da dIO :

http://www.tmasi.com/robotica/pwmtut/pwmtut_2.htm

alla sezione 2.2 vedi come e' semplice e pensa che il 293 e' stereo......

ciao NICOLA
__________________
tanto prima o poi quello che voglio fare lo faccio !!!!

Ultima modifica di nlenzin; 08-01-2010 a 11:39 AM
Rispondi quotando
  #9  
Vecchio 08-01-2010, 11:44 AM
nlenzin nlenzin non è collegato
Roboter Attivo
 
Registrato dal: Nov 2007
Messaggi: 100
predefinito

cavolo lo schema l'ho visto solo ora......

col 84 dovresti creae una routine per generareil segnale PWM ....


ma col 16f628 hai il modulo PWM integrato con uscita sul pin RB3.....
__________________
tanto prima o poi quello che voglio fare lo faccio !!!!
Rispondi quotando
Rispondi

Segnalibri

Strumenti della discussione
Modalità di visualizzazione

Regole d'invio
Non puoi inserire discussioni
Non puoi inserire repliche
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è attivo
Le smilie sono attive
Il codice IMG è attivo
il codice HTML è disattivato

Salto del forum


Tutti gli orari sono GMT. Attualmente sono le 02:59 AM.


Powered by vBulletin versione 3.8.7
Copyright ©: 2000 - 2014, Jelsoft Enterprises Ltd.