Sida 1 av 2

Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 18:27:59
av JimmyAndersson
Enkel förklaring: 5V ska styra en LED-panel som vill ha 6V.

Mer utförlig förklaring:
Jag håller på att ersätta elektroniken i några LED-paneler. Allt är klart förutom själva drivningen.
Varje slinga i LED-panelerna är kopplad såhär: "Anslutning jag kommer åt"----110ohm----LED1---LED2---GND.

Det finns flera likadana kedjor som ska styras individuellt och som alla har gemensam GND.
Jag kan inte bryta dessa GND. Alltså kan jag inte använda en vanlig transistorswitch.
"Anslutningen jag kommer åt" ska kopplas till 6V för att ge rätt ljus.
En PIC-krets ska styra drivningen, därför kan jag inte använda 6V "hela vägen".
Relän går inte heller, eftersom LED-panelerna ska styras med PWM. :)

Jag har totalt hjärnsläpp på hur man löser det (utan FET) på enklast sätt.


Det jag testat hittills:

Jag kopplade därför upp en spänningsföljare bestående av en BC547 på labplattan.
+5V (direkt, bara som test) till Basen. Kollektor till +6V. Emitter till en sådan LED-slinga som jag beskrev i förra stycket.
110 ohm borde ge 40mA till LED-slingan, men jag tyckte de lös lite för svagt så jag mätte: 12mA. Hm...
Dessutom får jag ett hemskt högfrekvent rippel på nästan 0,8V över LED-slingan.

Spänningsföljare brukar ha "förbrukaren" på kollektor-sidan och motståndet på emitter-sidan.
Kan det var därför det blir fel? Men ripplet då? Jag lyckas inte zooma tillräckligt på mitt 10MHz-oscilloskop för att kunna se vågformen..


Rev därför den kopplingen och blandade in en BC557:

Kod: Markera allt

                       +6V
                         o
                         |
              +----------+
              |          |
              R2        _|_
              |        / E |
              +---R3---B   | BC557
             _|_       \_C_|
            / C |        |
 IN o--R1---B    |        +-------o UT
            \_E_|
              |  BC547
              |
              o
             GND
edit: Korrigerade placeringen av R2.

Inte så illa, men den blir förskräckligt känslig. Ett finger på någon sida av R3 och den fungerar som touch-knapp. :)
Jag är lite dålig på att räkna på PNP-transistorer (främst när det gäller bas-strömmen),
men jag har inte fått det att fungera utan att vara så enormt känsligt.

En annan tanke jag haft är att enbart använda en BC557:
PIC-krets-utgång till motstånd och vidare till basen. Emitter till 6V och Kollektor till LED-slingan.
Men då går väl dessa 6V "igenom" PIC-kretsen när dess utgång är låg, så det blir inte heller bra.


Det känns som att det går att lösa det här enkelt,
men i det här fallet är det just orden "lösa enkelt" som gör att jag fastnar.
Inverterad prestationsångerst eller nåt.. :D

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 18:47:20
av sugarman64
Skulle tro att en UDN2981 eller likanande skulle kunna användas. Den har varit uppe som förslag i minst en annan tråd de senaste dagarna. Jag använser den själv som drivning till segmenten på den positiva sidan av mina stora displayer. Du får ju dessutom ett antal "linjer" i en enda kapsel.

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 19:07:21
av prototypen
Ja det är inte så lätt alla gånger.

Mata hela klabbet med 7 V, sätt en negativ regulator 7905 som driver PIC processorn.

Motstånd från processorn till basen på 557, emittern till plus, kollektorn till LED.

Enkelt om man kan släppa att GND=minus.

Protte

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 19:27:42
av JimmyAndersson
Det var en snygg lösning! :D

Tyvärr glömde jag skriva att jag har 6V som max-spänning.
Det blir för lite att jobba med för 7905. Jag har LDO-regulatorer, men tyvärr ingen som kan ersätta 7905.


"Enkelt om man kan släppa att GND=minus."

Det har jag däremot inga problem med. :)


Sugarman64:
De är tyvärr slut här. Jag har tydligen ökat omsättningen på komponenter den senaste tiden.. :)

Såg blockschemat för UDN2981 och kom att tänka på 74HC08. De klarar 6V.
Men i databladet står det tyvärr: "Output source or sink Current: ±25mA" under "Maximum ratings".
Jag behöver 40mA. Äsch...

edit: Darlington-nånting kanske. Ska testa.

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 19:42:08
av prototypen
Är 6 volten reglerad så 2 st 1N400X för att bränna bort en volt.
Tittade hos ELFA men 79- 3,3 volt verkar inte finnas, kanske finns hos någon annan.
En 7905 matad med 6 volt ger 4 men aldrig mer än 5 volt till processorn och den går väl att köra på 3,3 volt.

UDN2981 funkar det också bara man inte behöver betala själv.

Protte

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 19:43:02
av Swech
Kan du inte bara ta ett gäng optokopplare då?

Swech

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 19:54:10
av prototypen
Här behövs ingen galvanisk isolation, bara ett nivåskift och lite mera ström än vad processorn ger.

Protte

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 20:18:51
av Marta
Flytta R2 i Ditt schema till att sitta mellan emitter och bas på BC557 så kommer det med mycket stor sannolikhet att fungera. Sätt t.ex. 4k7 överallt. Skall det till lite mera ström till lysidoderna så ta en kraftigare trissa än BC557 och välj ett mindre R3. Det är viktigt att trissan bottnar väl för att inte tappa spänning eller bli för varm.

Re: Transistortrubbel om drivning av LED-panel.

Postat: 2 mars 2010, 20:54:30
av JimmyAndersson
Marta:
Aha, nu förstår jag. Tack! :tumupp:

Prototypen:
6V till 5V är inga problem. Det var mest själva nivåskiftningen som jag inte fick till.
Din senaste lösning (eller rättare sagt modifieringen av den förra) fungerar.
Egentligen hade jag ju samma tanke sist i första inlägget, men testade aldrig den.

Tack för hjälpen! :tumupp: :tumupp:

Swech:
Jag testade med optokopplare tidigare, men de flesta klarar bara att ge 20mA.
(40-50mA om man skrämmer upp dem till "Maximum ratings", men då får jag kanske byta snart igen. :) )
Annars gillar jag optokopplare för liknande lösningar.

Re: Transistortrubbel om drivning av LED-panel. *Löst*

Postat: 2 mars 2010, 22:16:57
av jesse
Darlingtontransistor gör ingen nytta i den här situationen - det enda den åstadkommer är ett spänningsfall på ca 1.5 volt vilket gör att dina 6 volt kommer ner till 4.5 ... så du inte behöver fundera vidare på det.

Re: Transistortrubbel om drivning av LED-panel. *Löst*

Postat: 2 mars 2010, 22:24:16
av JimmyAndersson
Insåg det. :oops:
Dumma PN-dopning. :D

Re: Transistortrubbel om drivning av LED-panel. *Löst*

Postat: 5 mars 2010, 17:04:36
av JimmyAndersson
Jag får dra upp den här tråden igen...

Sist så testade jag lösningen med dubbla transistorer (schemat i första inlägget) och varianten med bara en transistor,
dvs motstånd till basen på en BC557, emitter till 6V och kollektor till LED-slingan.

Båda varianterna fungerade, men eftersom den sistnämnda innehöll minst antal komponenter så valde jag den.
När kretskort och programmering var klart så upptäckte jag att det var 6V ut hela tiden.
Kopplade då upp en BC557 på labbplattan igen och upptäckte då att transistorn leder,
oavsett om man ansluter basmotståndet till +5V eller GND. (Oansluten så leder inte transistorn.)
Trodde det var fel på transistor, så jag provade två andra. Samma resultat.
De 6st som sitter på kretskortet uppför sig likadant.

Fel på 9st nya transistorer? Nja.. Det är nog så att kopplingen helt enkelt inte fungerar. Jobbigt.
Schemat i första inlägget fungerar som det ska.

Det blir förskräckligt trångt att försöka få plats med BC547 också, även om jag får göra så ifall jag inte har något val.
Men helst vill jag förstås ha en enklare modifiering om det är möjligt.


Så frågorna är alltså:
1) Varför leder transistorn oavsett om basmotståndet är anslutet till +5V eller GND?
2) Går det att lösa utan en extra transistor?

Re: Transistortrubbel om drivning av LED-panel. *Löst*

Postat: 5 mars 2010, 18:51:48
av MadModder
1. Därför att potentialen mellan bas och emitter måste vara noll eller mycket nära noll för att transistorn ska vara helt stängd.
Du får ju tänka precis tvärtom med en PNP. Switchar du GND med en NPN, så jordar du för att stänga. Vad gör man då med en PNP? ;)
Har du 6V in, och ger 5V på basen, så har du 1V skillnad där, så transistorn öppnar.

2. Det går att få till med bara en BC557, om du sätter en pullup från +6V till basen (typ 10k), och sen mellan PICen och basen sätter du två dioder och ett motstånd (typ 1k). Då blir det 6V när PICen ger ut 5V, och drygt 1V när PICen ger ut 0V. Det borde funka, och är hyffsat lätt att modda dit på kretskorten. Även om det inte blir jättesnyggt... :D


Sen en annan sak: spänningsföljarkoppling ger aldrig ut högre spänning än det går in på basen. Det är därför det heter spänningsföljare.

Re: Transistortrubbel om drivning av LED-panel. *Löst*

Postat: 5 mars 2010, 20:28:16
av JimmyAndersson
Det ligger nog något i det ja. :)

Din lösning fungerar utmärkt på labplattan. Testade lite olika dioder, men 1N4148 passade bäst. Lyckligtvis var de minst (fysiskt) också.

Tyvärr behövde jag 3st dioder för att inte få mer än 5V (från basen) till PIC-kretsen när den ger ut 0V.
Visst har jag tänkt rätt där?

Det verkar inte bli allt för jobbigt att fixa detta på kretskortet.
Funderar lite på att baka in diod-raderna i krympslang och använda dem som sladdar från PIC-kretsen. :D
(Transistorerna (6st) sitter ganska tätt, så det blir risk för kortis om jag löder dem direkt på kretskortet.)
Det blir knöligt om man måste felsöka, men det lär jag aldrig behöva. :wacko:


Tack för hjälpen! :tumupp: :tumupp:

Re: Transistortrubbel om drivning av LED-panel. *Löst*

Postat: 5 mars 2010, 21:28:28
av prototypen
Men Jimmy, med en transistor MÅSTE processorns Vcc vara ansluten till +6 V. Processorns GND får du ansluta via ett par 1N4007 till minus.

Det kommer att fungera klockrent. Nu sitter jag på en hotellreceptionsdator så jag kan inte rita men gör ett Eagle schema så jag får se hur du har kopplat.

Protte