LusoRobótica - Robótica em Português

Electrónica => Electrónica Geral => Tópico iniciado por: almamater em 13 de Janeiro de 2014, 01:18

Título: 74HC595 cálculos
Enviado por: almamater em 13 de Janeiro de 2014, 01:18
3 Perguntas para o que quero fazer com o 74HC595: Controlar um Led RGB, ligar e desligar: sirene ~180mA, placa com 2 relés (a controlar uma carga de 220v).

------------#LED:
Tendo em conta que cada pino do SR (74HC595) suporta até 30mA, para ligar 3 pinos ao led RGB estou a pensar em colocar uma resistência em cada pensando assim:

Red Vforward= 2.0v | Green Vforward= 3.2v | Blue Vforward= 3.2v

Cálculo: (5v-Vf)/R

Red= 150R  (20mA) | Green= 100R (18mA) | Blue= 100R  (18mA)

Está certo?

------------#Sirene:
Quanto à sirene, quero usar o transístor BC517 (Ic=500mA), mas os meus cálculos não me parecem correctos:
Ic=500mA
Hfe= ? 30000? (é o que está na datasheet..)
Vbe(sat)=1.5v
Carga= 180mA
Rb(Resitência da base)=?

Ib=0.18A/30000=0.000006A
Rb=(5-1.5)/0.000006A
Rb= 583333,33 Ohm ?! está certo?

------------#Placa:
Quanto à placa de relés é uma coisa deste tipo (https://www.google.pt/search?q=New+5V+2+Channel+Relay+Module+For+Arduino&client=firefox-a&hs=OJb&rls=org.mozilla:en-US:official&source=lnms&tbm=isch&sa=X&ei=ptDPUo7YDKjT7Abg14FQ&ved=0CAkQ_AUoAQ&biw=1280&bih=836) e com estas specs:

5V 2-Channel Relay interface board, and each one needs 15-20mA Driver Current
Equiped with high-current relay, AC250V 10A ; DC30V 10A
Standard interface that can be controlled directly by microcontroller (Arduino , 8051, AVR, PIC, DSP, ARM, ARM, MSP430, TTL logic)   
Indication LED’s for Relay output status


Quando é referido que a placa consome até 20mA, e querendo eu usar 2 pinos do SR para controlar os 2 relés através dos 2 pinos de Input da placa, tenho de colocar um transístor em cada um dos pinos do SR? (ou os 20mA são fornecidos pela fonte principal nos pinos Vcc?)

Em caso afirmativo, para uso do transístor, usaria o 2N3904 (Ic= 200mA) e fazendo os mesmos cálculos:

Ic= 200mA
Hfe=100
Vbe(sat)=0.65v
Carga=20mA
Rb(Resitência da base)=?

Ib= Ic(total da minha carga)/Hfe
Ib= 0.02A/100= 0.0002A

Rb=(5v-Vbe(sat))/Ib
Rb=(5-0.65v)/0.0002A= 21750 Ohm => 22k
-----------------------------------------------------

Podem dar a vossa opinião p.f.

 
Título: Re: 74HC595 cálculos
Enviado por: jm_araujo em 13 de Janeiro de 2014, 11:19
Não andas longe.
O hfe que estás a usar para as contas é o da zona linear de amplificação do transistor, zona que não te interessa porque queres usar o transistor em saturação (como interruptor) e não como amplificador.
Para garantir uma saturação "forte", convém mandar mais corrente para a base, para garantir que o transistor fica o mais condutor possível e minimizar as perdas por dissipação.
Nesse caso podes esquecer o hfe, e na datasheet do transistor junto ao VCEsat tens uma indicação de que com correntes IC e IB foi obtida essa saturação.
Nesse caso tens de garantir a no mínimo a corrente na base IBsat, fazes as contas como no led. A queda VBEsat também está na datasheet para fazeres as contas.
No caso do BC517, tens IBsat=0,1mA  e VBEsat=1.5V
O que dá nas contas:
R= (Vcc-VBEsat)/IBsat=(5V-1,5V)/0,1mA=3,5V/0,1mA=35kohm
Esse é o valor máximo da tua resistência. Na prática como queres uma saturação boa, e sabendo que os ICs lógicos não dão os 5V certos à saída (vê o VOH), qualquer valor entre 1kohm e 10kohm serve. A base aguenta com mais corrente desde que não ultrapasses o IBmax, que no caso do BC517 são 100mA.

Edit: Cuidado com o VCEsat dos darlingtons... a dissipação térmica é medonha e é fácil de fritar sem boa dissipação.

Edit2: E cuidado com o 74HC595. Apesar do IO dos pinos ser 35ma (na datasheet que abri), o ICmax do integrado é 70mA. Quer dizer que a soma da corrente de todas as saídas não pode passar os 70mA.
É muito fácil ser-se apanhado por esta "armadilha", acontece o mesmo também em alguns micro-controladores.
Título: Re: 74HC595 cálculos
Enviado por: almamater em 13 de Janeiro de 2014, 14:22
Obrigado pela resposta.

Pois, 70mA no máximo, vou assim alterar as resistências no Led RGB para uns 470R, já deve dar, tenho é de ver se 3mA são suficientes para acender o Led minimamente (5v-3.2)/470= 0.003A.

Quanto ao BC517, com a resistência de 35K existe um consumo de 0.1mA do 74HC595 correcto? Tb tinha pensado numa resistência de 1K e devo usar uma, neste caso com 1K o consumo não deve ser muito superior: I=3.5vx1000Ohm=3.5mA certo?

Título: Re: 74HC595 cálculos
Enviado por: dio123 em 13 de Janeiro de 2014, 14:56
não seria mais simples usares mosfets. Pode puxar mais corrente que não vai interferir com o 595.

Título: Re: 74HC595 cálculos
Enviado por: almamater em 15 de Janeiro de 2014, 01:38
Para ver se estou a pensar bem..
Para prevenir, e mesmo se no futuro quiser colocar mais alguma coisa, queria também usar transístores para controlar a placa de relés (sabendo que pode ir até aos 20mA). Usando o 2N3904 (http://www.fairchildsemi.com/ds/2N/2N3904.pdf)
 
Ibsat=Ic/Hfe
Ibsat=20mA/100= 0.2mA (fica por segurança uns 0.6mA)

Rb=(Vcc-Vbesat)/Ibsat
Rb=(4.7-0.65)/0.6=  6.75K
Posso assim colocar uma resistência de 1k a 10k ?   

Desta forma, tendo o Led, o BC517 e 2x 2N3904 a corrente necessária do 74HC595 será inferior a 20mA no total.
Título: Re: 74HC595 cálculos
Enviado por: jm_araujo em 15 de Janeiro de 2014, 11:09
Ibsat=Ic/Hfe
Ibsat=20mA/100= 0.2mA (fica por segurança uns 0.6mA)

Quando estás em saturação não podes usar o hfe da zona linear. Com a aproximação da saturação, o ganho começa a diminuir.
Vê na datasheet para a situação de saturação qual é a corrente da base, é a melhor referência:
Título: Re: 74HC595 cálculos
Enviado por: almamater em 15 de Janeiro de 2014, 13:51
Ah então será o hfe mais baixo, faz sentido. O valor mais baixo é de 30.

Ibsat=20mA/30= 0.6mA

Com uma resistência de 3 ou 4K devo conseguir saturar a base.. e com um consumo de ~0.6mA do SR.  ::)
Título: Re: 74HC595 cálculos
Enviado por: jm_araujo em 15 de Janeiro de 2014, 14:07
Não viste o anexo... Para boa saturação no 2n3904, aponta mais para um hfe de 10...
Título: Re: 74HC595 cálculos
Enviado por: almamater em 15 de Janeiro de 2014, 16:33
sorry, por acaso não vi não..

Ibsat=20mA/10= 2mA
Rb(4.7v-0.65v)/2= 2.025
Título: Re: 74HC595 cálculos
Enviado por: almamater em 18 de Janeiro de 2014, 00:53
Porreiro, testei ligar um relé da placa com o esquema do 2N3904 e uma resistência de 2.4K e funciona bem, medi ~1.37mA  :D entre a fonte e a resistência.
Título: Re: 74HC595 cálculos
Enviado por: almamater em 18 de Janeiro de 2014, 18:59
Estava a testar o BC517 mas não está a funcionar  :(    :(

Com a minha carga de 180mA não dá, testei então com um simples Led alto brilho verm. mas tb não..:

VCC: 5V (~4.7v)

Colector: (-) do LED
Base: Resistência de 10K, 1K ou 47K (testei com todas)
Emissor: (-)

LED(+): 5V através de 220R

O led não acende, testei com outro BC517 mas tb é a mesma coisa.. que raio estou a fazer mal?

O Led esta bom pq se o ligar à Base do BC517 ou diretamente no (-) ele acende. 

Título: Re: 74HC595 cálculos
Enviado por: almamater em 19 de Janeiro de 2014, 11:17
Humm o esquema que usei agora para testar foi este:
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimagizer.imageshack.us%2Fv2%2F320x240q90%2F28%2Fel7h.png&hash=f0adc0d040869b2b600f32bcb2c72e9e2774512e) (https://imageshack.com/i/0sel7hp)

e não funcionou.

Este BC517 comprei-o no Ebay, fui então buscar um que em tempos comprei na Dimofel e funcionou.

Reparo assim que o colector e o emissor dos do Ebay estão trocados  ::) em vez de ser CBE são EBC.

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimagizer.imageshack.us%2Fv2%2F320x240q90%2F404%2Fbry5.png&hash=2d041c2687a8bdf4c91b422992bf0aabd08b0917) (https://imageshack.com/i/b8bry5p)

Virei assim o BC517 do ebay ao contrário e agora já deu.. grr.
Título: Re: 74HC595 cálculos
Enviado por: dropes em 19 de Janeiro de 2014, 12:24
Não és o 1º a encontrar os pinos ao contrário nos transistors bipolares, o pior é quando se passa noutros semicondutores como nos triacs.

A Dimofel já fechou, não entendo o motivo... os preços eram acessíveis e tinham um ótimo site, estou a brincar mas os empregados ERAM muito prestáveis e simpáticos, tirando o segurança.
Título: Re: 74HC595 cálculos
Enviado por: jm_araujo em 19 de Janeiro de 2014, 21:15
Os da Dimofel não conheci, mas na Supertécnica (o "ramo" do Porto da Dimofel), os empregados eram... como hei-de explicar... ainda "melhores" que os preços e o site.
Das vezes que lá fui lembrava-me rapidamente porque é que nunca lá punha os pés.
Título: Re: 74HC595 cálculos
Enviado por: almamater em 22 de Janeiro de 2014, 15:10
Para que os outputs do 74HC595 não fiquem todos ligados quando se inicia o circuito, e pelo que vi do pino OE, posso fazer isto?

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimagizer.imageshack.us%2Fv2%2F800x600q90%2F132%2Fhwf8.png&hash=b11343a83a9af5191da802a4aa93a6fb26f400eb) (https://imageshack.com/i/3ohwf8p)

Desta forma será que ao ligar o circuito os pinos do SR estão todos desligados e apenas qdo o Arduino acordar, e colocar o Pino Digital em Low, eles são ligados ?
Título: Re: 74HC595 cálculos
Enviado por: jm_araujo em 22 de Janeiro de 2014, 15:48
Sim, podes.
Título: Re: 74HC595 cálculos
Enviado por: Njay em 22 de Janeiro de 2014, 16:42
Com o /OE a high (como tens com esse pull-up e enquanto o arduino não meter um LOW) é como se o 595 não estivesse no circuito (que não é o mesmo que ter os outputs LOW).
Título: Re: 74HC595 cálculos
Enviado por: almamater em 22 de Janeiro de 2014, 16:53
A maior parte dos meus Outputs funcionam com os pinos em High, apenas 1 é que ativa o dispositivo quando está em Low. Neste momento qdo ligo o circuito fica tudo maluco a ligar e desligar, desta forma vou ver se resolve, mais logo já faço o teste com a pull-up

Título: Re: 74HC595 cálculos
Enviado por: Njay em 22 de Janeiro de 2014, 18:17
O 595 tb tem um reset (/MR) que podes usar para manter os dados a 0. Eles só aparecem cá fora se /OE estiver activo (a 0).
Título: Re: 74HC595 cálculos
Enviado por: almamater em 22 de Janeiro de 2014, 23:33
Humm liguei o pino OE e a resistência pull-up, neste momento ao iniciar já só faz uma vez o ligar dos pinos, a minha pergunta é, neste momento tenho isto tudo ligado ao Arduino e parece que o SR ainda faz isto pq o Arduino no arranque deve fazer um 'reset' tb aos seus pinos e por breves instantes deve ficar Low-High-Low ?! e provoca ainda a situação. No futuro quero apenas usar um Atmega328 (alone), será que tb se vai verificar isto?

(é que se deixar apenas o OE ligado aos 5v com a resistência de 10k e não ligando ao Arduino ele não faz nada no arranque, apenas qdo o ligo tb ao arduibo é que ainda faz 1 vez no arranque).
Título: Re: 74HC595 cálculos
Enviado por: senso em 23 de Janeiro de 2014, 01:01
Tens o OE ligado a que pino?
Assim que fazes reset os pinos do atmega viram todos a entradas, não fazem nada.
Título: Re: 74HC595 cálculos
Enviado por: almamater em 23 de Janeiro de 2014, 10:08
Tens o OE ligado a que pino?
Assim que fazes reset os pinos do atmega viram todos a entradas, não fazem nada.

Estava no RX mas tb já testei ligar no 9, pelo que percebi os pinos ficam todos como inputs e por algum motivo ainda faz 1 vez tb o ligar os pinos do SR e desligar. Se calhar tenho de controlar o pino OE e /MR ao mesmo tempo..
Título: Re: 74HC595 cálculos
Enviado por: jm_araujo em 23 de Janeiro de 2014, 11:00
Deve ser o bootloader do Arduino a fazer das dele com os pinos.
Título: Re: 74HC595 cálculos
Enviado por: almamater em 23 de Janeiro de 2014, 11:08
Pois deve ser, bem mesmo que fique assim não há grande problema, faz apenas uma vez e é rápido.
Título: Re: 74HC595 cálculos
Enviado por: almamater em 05 de Fevereiro de 2014, 01:56
Aparentemente tudo está a funcionar, no entanto reparei hoje numa situação, 2 Outputs estão ligados a uma placa com 2 relés (como indicado nos posts anteriores):

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FuAxH2hx.png&hash=ecb01868eefdaf7ea103c6a085fd9841b1384ed6) (http://imgur.com/uAxH2hx)

Tenho tudo montando em breadboards e hoje reparo que, com os outputs OFF, os relés por vezes ligam e desligam muito rapidamente ou por vezes nem ligam mas os leds da placa acendem ligeiramente (recebem corrente), isto acontece se passar com os dedos em cima dos transístores ou em alguns fios.., reparei tb que aconteceu isto qdo tirei um potenciómetro e voltei a metê-lo no circuito..   

Isto acontece devido a ruídos das breadboards, da resistência da base do transístor ou de algo diferente?  Queria ter a certeza que depois de soltar tudo numa pcb a coisa ficasse bem..

P.S.: Tenho um condensador 0.1uF junto do fio Vcc do 74HC595.
Título: Re: 74HC595 cálculos
Enviado por: Njay em 05 de Fevereiro de 2014, 02:18
Experimenta uma resistência de 33K-100K da base do transistor para o emissor (GND).
Quando desactivas o OE, o chip mete os pinos "no ar", e portanto os transistores deixam de ser "driven" e ficam com um comportamento indefinido, qualquer "ruído" fá-los ligar um pouco, têm muito ganho.