Sida 1 av 1
Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 18:30:06
av Maze
Ska driva en optokopplare från en uC och behöver ha en PNP trissa mellan för att få rätt nivåer på andra sidan. Problemet är att jag får väldigt asymmetriska kurvformer på andra sidan. Har kommit fram till att det är trissan som inte hinner stänga tillräckligt snabbt. Har kopplat emitter till matningen och kollektorn till optokopplaren. Mellan uC och bas har jag en basresistor och sen mellan emitter och bas ytterligare en resistor.
Trissan är en BC807-40 med 8mA genom kollektorn och 3mA basström. Minsta bittiden är 4us. Gissar på att jag bottnar trissan för hårt vilket gör att den stänger långsamt. Undrar därför hur man bör tänka här? Ofta står det i de flesta exemplen att trissan minst ska bottna och sen ska man lägga på lite extra marginal i basström. Men om man har snabba flanker bör man kanske lägga sig precis så att trissan bottnar?
Provade att koppla upp det hela i LTSpice och hoppade till en början över emitter till bas resistorn. Vid låga värden på basresistorn så fick jag snabba stigtider men långsamma falltider. Gissar på att trissan bottnar för hårt. Vid höga värden på basresistorn fick jag långsamma stig och falltider vilket tyder på att det är svårare att stänga än att öppna trissan genom samma basresistans. Satte sen tillbaks emitter till bas resistorn och började testa med olika värden för att få snabbare falltider och lyckades få det lite bättre.
Min fråga är då om de är vanligt att man behöver justera stig och falltider individuellt i dessa fall? Och gör man det då helst med hjälp av relationen mellan emitter till basresistorn och basresistorn? Eller har jag helt enkelt valt en alltför långsam trissa?
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 18:43:58
av Icecap
Det brukar vara optokopplaren som är trög! Ska man ha snabba signaler igenom en optokopplar ska man antingen ha en speciell eller trilla lite på kopplingen och styrströmmen. Du bottnar sannolikt optokopplaren för hårt helt enkelt.
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 19:12:52
av blueint
Om man lägger tillrätta dom nivåer som den bipolära transistorn ska jobba mot kanske det löser problemet?
I synnerhet att den ska ligga nära gränserna så att överslag sker snabbt. En form av bistabil DC-offset.
En lösning borde vara två parallellkopplade seriekopplingar av schottydiod + resistans för att begränsa strömmen asymetriskt?
I princip att man trimmar mellan vilka strömlägen som den bipolära transistorn ska jobba. Då bipolära transistorer är strömstyrda.
Kod: Markera allt
GPIO --|>----[XX]-- PNP-bas
--[XX]----<|--
Alternativt att man fixerar spänningen med två zenerdioder.
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 19:24:21
av prototypen
Transistorn hänger med i typ 100 MHz medan optokopplare ligger runt 1 MHz så det är nog så som IceCap skriver, man får labba runt optokopplaren.
Men varför en transistor för att driva 8 mA? Det brukar väl vara bra tryck i uC utgångar.
Om du ändå envisas med en transistor, sätt den som emitterföljare, kommer aldrig att bottna.
Kommer du åt basen på fototransistorn så kan ett motstånd därifrån till fototransistorns emitter snabba på falltiden.
Sedan finns det snabba optokopplare, t.ex. HCPL 2400 m.fl.
Protte
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 19:48:08
av Maze
Behöver PNP kopplingen eftersom optokopplaren inverterar signalen. Optokopplaren är av snabbare typ med logikutgång HCLP 0661. Har mätt med skåpet på ett par ställen och det är mellan uC sidan av basresistorn och basen det är stor fördröjning vid frånslag dvs när basen ska upp till 3,3V igen. Tycker också det inte borde vara något problem att få igenom denna hastighet av data i en vanlig trissa men det kanske börjar bli viktigt att välja rätt arbetspunkt för att få rätt stig och falltider. Får fördröjningar upp mot 1us från att flanken på uC stiger till att basen går upp till 3,3V.
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 20:41:14
av Icecap
*tungt suck* Än en tråd där vital information undanhåll vilket ger en massa onödiga inlägg.
Problemet är alltså inte att du har en optokopplare, det är att du har en digital utgång som ska inverteras och din lösning med PNP-transistor är dålig.
Ta en TC7S04F istället! (73-298-97)
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 22:45:16
av prototypen
Men det beror ju bara hur man kopplar lysdioden, endera mot Vcc eller GND, behövs inte inverteras med transistor.
Protte
Dessutom har jag lärt mig att det går fort och enkelt att invertera i mjukvara.
Re: Dimensionera PNP switch för snabba signaler?
Postat: 12 januari 2011, 22:52:14
av jesse
Har aldrig hört talas om HCLP 0661, däremot
HCPL-0661
Men jag antar att protte löste hela problemet åt dig.
Re: Dimensionera PNP switch för snabba signaler?
Postat: 13 januari 2011, 08:48:46
av prototypen
Jag har en koppling för snabba optokopplare, zenerdioden och 0,1 uF ordnar till en spänning som tillsammans med de båda 1KΩ motstånden reverserar spänningen över lysdioden och även dränerar bort lite läckström när lysdioder ska slockna.
Detta var nog behövligt då det drevs med en öppen kollektor. Jag har inte konstruerat så jag VET inte.
Protte
Re: Dimensionera PNP switch för snabba signaler?
Postat: 13 januari 2011, 11:40:54
av Icecap
Men snälla... det är inte optokopplaren som är problemet! Den har en transistorutgång med emittern internt kopplat till GND. Alltså behövs bara ett pull-up motstånd och ovannämda inverter för att få signalen att passa i en UART.
Men då kommer min undran: VARFÖR invertera på mottagarsidan? Varför inte på sändarsidan?
Som jag förstår det är det typ UART-till-UART med optisk isolering som gäller och då är det väl bara att låta sändar-LED'n ligga mellan GND och UART-TX eller VDD och UART-TX, beroende på vilken polaritet man vill ha ut. KISS!
Re: Dimensionera PNP switch för snabba signaler?
Postat: 13 januari 2011, 19:15:30
av jesse
>Varför inte på sändarsidan?
Men det är väl det han har gjort?
Ska driva en optokopplare från en uC och behöver ha en PNP trissa mellan för att få rätt nivåer på andra sidan.
Sedan kan det finnas en mycket god anledning att vara noga med om signalen är inverterad eller inte i själva optokopplaren/lysdioden: Man kanske inte vill slösa ström och låta lysdioden lysa (bränna ut sig) kontinuerligt om man bara sänder data en gång i timmen... Då ser man till att "space" (etta) från UART betyder släckt diod och "mark" (nolla) betyder ljus. Därför brukar man koppla lysdioden mellan VCC och UART-utgången (via ett motstånd).
Re: Dimensionera PNP switch för snabba signaler?
Postat: 14 januari 2011, 10:57:06
av Icecap
En LED bränns inte ut av att vara på! Eller - jo, den har runt 50k ljustimmar vilket är 5,7 år och då menas vid max. strömmen. Sänka den från 4mA till 3mA och den håller livet ut. Argumentet förkastas!
Och TS har helt klart inte satt LED'n på rätt ställe när han behöver invertera signalen!
Om man tar den OC och kopplar LED anod till VDD och signalen via strömbegränsarmotståndet till katoden kommer utgångssignalen att vara icke-inverterat.
Kopplar man istället LED katod till GND och signalen via strömbegränsarmotståndet till anoden blir utgångssignalen inverterat.
Så enkelt är det.
EDIT: klantade mig med anod/katod på ett punkt.
Re: Dimensionera PNP switch för snabba signaler?
Postat: 14 januari 2011, 11:25:46
av prototypen
Visst ska det vara anod IceCap.
<<Om man tar den OC och kopplar LED katod till VDD och signalen via strömbegränsarmotståndet kommer utgångssignalen att vara icke-inverterat.>>
Eller var det någon annan koppling du tänkte på?
P
Re: Dimensionera PNP switch för snabba signaler?
Postat: 14 januari 2011, 11:30:33
av Icecap
Dang! You got me! Mutterfunker! *AAAAaaaaahhhhhhh....*
OK då, var kinkig
Fixar i originaltexten...