Invertera signal från Open Collector

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
puch
Inlägg: 60
Blev medlem: 31 maj 2014, 18:09:42
Ort: Umeå

Invertera signal från Open Collector

Inlägg av puch »

Jag varnar känsliga läsare för en text full av okunskap och mixade språk. Jag vet inte alls vad jag håller på med men testar mig fram. Jag hoppas att någon kan hjälpa mig med mitt problem

Jag har ett kretskort med en digital utgång (open collector, max sink current 100mA).

Jag vill att utgången ska styra en motor (Max 100mA) och att den ska bryta på positiva sidan.

Om jag använder en PNP-transistor på utgången är signalen inverterad mot vad jag önskar och jag har därmed använt en NPN-transistor(BC847) och en PNP-transistor(BC807) i följd för att lösa detta. Jag har efter lite snabba beräkningar bedömt att jag behöver ett motstånd omkring 70kOhm till BC847 och ett på 1k till BC807.

Pullupmotstånd har jag därefter slängt in på känsla och fått kretsen att funka men förmodligen är detta en jättedålig design. Jag har använt två stycken "pullups" och det första motståndet (100k på bilden) direkt efter utgången är den som känns väldigt fel. Ska detta motstånd verkligen behövas? Anledningen att jag la dit det är att kretsen inte fungerade utan det (motorn gick konstant) men kanske gjorde jag något annat galet som ledde till detta problem. En ren höftning var det i alla fall.

Jag vill att min krets ska vara så strömsnål som möjligt då den går på batteri.

Jag har använt mig av en enkel simulator (Circuit sim) för att försöka förstå vad som händer när jag kopplar friskt. Jag har bifogat två bilder där den ena visar kretsen vid låg signal och den andra vid hög signal.

Mina frågor:
1. Är kretsen helt förkastlig och borde jag byta tillvägagångsätt?
2. Behövs det ”första” pullupmotståndet (märkt 100k) eller är det helt fel?
3. Om detta motstånd behövs: ungefär hur stort motstånd är rimligt för att minska strömmen som sänks i utgången vid låg signal?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47220
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Invertera signal från Open Collector

Inlägg av TomasL »

Varför inte lägga motorn mellan OC och + det är ju det vanligaste sättet?
Nerre
Inlägg: 27304
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Invertera signal från Open Collector

Inlägg av Nerre »

Kretsen i sig är rätt ok.

Med reservation för att det är ett tag sen jag byggde sånt där:

Om L/H är en open collector-utgång så behövs 100k-motståndet ja. L/Hkan ju då bara kopplas till jord eller vara öppen, d.v.s. H existerar egentligen inte. För att förstå tankesättet kan du rita om den till en en strömbrytare mot jord.

Då ser du att utan 100k-motståndet kan du inte få nån ström in på basen på NPN-transistorn.

Storleken på motståndet ska vara så att transistorn öppnar ordentligt (d.v.s. så strömmen in på basen blir tillräckligt hög). Därför tror jag att 68k-motståndet borde bort.

Du måste nog veta transistorns hFE (DC-förstärkning) för att räkna ut det.

12k pullup behövs nog för att PNP-transistorn ska stänga ordentligt, basmotståndet på PNP behövs för att hålla strömmen på en vettig nivå.

Om vi räknar baklänges så borde det bli så här:

Din last drar 100 mA. Det innebär att basströmmen på PNP-transistorn måste vara minst 100mA delat med dess hFE. Om vi drar till med hFE på 200 så måste alltså bassströmmen vara minst 0,5 mA.

Med 5 V matning borde basmotståndet alltså vara runt 10 kohm. Vi räknar med 10 kohm, men jag skulle nog sätta lite lägre för att få garanterad ström.

(Jag har nu räknat med en kollektor-emitterspänning på 0 V, normalt ligger den på 0,2-0,3 V, men vi ska ändå ha marginaler så det gör inget.)

Pullupen på NPN-transistorns kollektor borde kunna vara rätt stor, den behöver bara kompensera för läckströmmarna. Jag tror 100k funkar.

Nu kommer då alltså NPN-transistorn att ha 100k parallellt med 10k till 5 V (ok, inte helt sant då PNP-transistorns bas-emitter sitter på ena grenen, men det kan vi bortse från för tillfället). Det blir ungefär 9 kohm.

Strömmen genom NPN-transistorns kollektor blir då ungefär 5 V genom 9 kohm = 0,56 mA.

Om även NPN-transistorn har en hFE på 200 så betyder det att basströmmen måste vara minst 2,8 uA.

Med 5 V matning betyder det att pullup där kan vara 1,78 Mohm. Jag skulle släga dit 470 kohm (standardvärde). Då kommer transistorn garanterat att bottna.


Nån som har fräschare minne än mig får rätta eventuella tankevurpor:)
puch
Inlägg: 60
Blev medlem: 31 maj 2014, 18:09:42
Ort: Umeå

Re: Invertera signal från Open Collector

Inlägg av puch »

TomasL skrev:Varför inte lägga motorn mellan OC och + det är ju det vanligaste sättet?
Motorn i sig innehåller en microprocessor och om man skulle stänga av motorn via GND skulle den negativa strömmen från elektromagneten kunna skada processorn om jag förstår saken rätt.

Nerre:

Tack så mycket för den grundliga genomgången. Väldigt informativt!
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Invertera signal från Open Collector

Inlägg av sodjan »

Så "motorn" är inte enbart en "motor".
Kanske enklast att du talar om vad det är.
Fabrikat, typnummer o.s.v.
puch
Inlägg: 60
Blev medlem: 31 maj 2014, 18:09:42
Ort: Umeå

Re: Invertera signal från Open Collector

Inlägg av puch »

Motorn är inte bara en motor men enkelhet och tydlighet är ibland en lämplig väg att (försöka) välja :wink: .

Det handlar om en microgaspump (Xavitech P200).
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Invertera signal från Open Collector

Inlägg av sodjan »

Aha, alltså "P200 Micropump Orange Edition" eller "P200 Micropump" som finns här:
http://www.xavitech.com/overview/micropumps-xavitech/ ?

"P200 Micropump" har ett document "Electronic interface" som säkert
kan vara till hjälp för den som vill titta på det...
http://www.xavitech.com/wp-content/uplo ... 160223.pdf
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Invertera signal från Open Collector

Inlägg av lillahuset »

Jag håller med Nerre om att kretsen verkar OK även om jag har några invändningar. Strömförbrukningen när motorn är på kan väl inte vara så jätteviktig eftersom motorn drar 100mA, däremot när motorn är avstängd. Antar jag.

Om vi börjar från utgången som Nerre gjorde.
12k pullup till PNP-transistorn är nog OK men jag skulle välja ett mindre motstånd och sätta det direkt på PNP-transistorns bas. Då kommer det aldrig att ligga mer än 0,7V över det. Säg 2,2k, då blir det 0,3mA vid drift. Fungerar säkert med 12k också.

Basmotståndet till PNP-transistorn tycker jag du har valt bra. hFE för BC807 är min 100. Vill du att den ska bottna ordentligt ska du nog inte räkna med mer än 20. Om man tittar på NXPs kurvor för bottning anger dom Ic/Ib=10. Men då är du nere på Vce under 0,1V typiskt. Välj 1k som du har gjort. Då får du en basström på ca 4mA som kanske är lite i underkant men det blir nog bra.

NPN-transistorn behöver inte bottna så där är basmotståndet ganska okritiskt. hFE för BC847 är min 110, räkna med 50. Du vill ha en kollektorström på ca 5mA och behöver alltså en basström på 0,1mA. Välj pullup på 47k eller så. Bidrar med 0,1mA kontinuerligt. Det kanske vore bättre med en transistor med högre hFE. Basmotståndet kan du skippa. Utgången kan, eftersom det är öppen kollektor, inte mata någon ström till transistorn.
puch
Inlägg: 60
Blev medlem: 31 maj 2014, 18:09:42
Ort: Umeå

Re: Invertera signal från Open Collector

Inlägg av puch »

Sodjan:
En äldre variant av den pumpen är det det handlar om. Samma specs verkar det som. Tack för att du letade upp länkarna.

Lillahuset:

Tackar! Du har helt rätt att det är förbrukningen när pumpen är av som är det relevanta då pumpen används en väldigt liten tid i förhållande till standby-tid.

Har funderat hur man ska hantera det givna hFE-värdet. Är dina använda ß-värden (20 och 50) bara en försiktig marginal eller är det någon känd faktor som påverkar förstärkningen negativt?
Ska kolla på en annan transistor.
Nerre
Inlägg: 27304
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Invertera signal från Open Collector

Inlägg av Nerre »

Det handlar väl främst om att ha marginal. Transistorer har en specad "minsta hFE", men det betyder ju att en del exemplar kan ligga just på den minsta. Och övriga komponenter har toleranser, ditt 100 kohm pullup har normalt en tolerans på +/- 10% så det är mer troligt att det är 95 eller 105 kohm än att det är 100.
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Invertera signal från Open Collector

Inlägg av lillahuset »

Dessutom är hFE beroende av både temperatur och Ic. Högre hFE än man räknat med har jag nog aldrig sett att det har varit ett problem. Lägre än man har räknat med är nästan alltid ett problem.

En kollega jag hade för många år sedan använde "alltid" pi som faktor. För hFE, för projekttid, för kostnad...
Användarvisningsbild
MadModder
Co Admin
Inlägg: 31641
Blev medlem: 6 september 2003, 13:32:07
Ort: MadLand (Enköping)
Kontakt:

Re: Invertera signal från Open Collector

Inlägg av MadModder »

Vem kör med 10%-motstånd idag? Gräver man inte i skrotlådan från 1960 så är det högst troligt en guldrand och därmed 5%. Jag har kört med 2% i bra många år...
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Invertera signal från Open Collector

Inlägg av lillahuset »

Om du är intresserad tror jag att jag har några 20% 0,5W kolmassamotstånd liggande. :)
Nerre
Inlägg: 27304
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Invertera signal från Open Collector

Inlägg av Nerre »

lillahuset skrev: En kollega jag hade för många år sedan använde "alltid" pi som faktor. För hFE, för projekttid, för kostnad...
Han var nog pappa till en av mina bekanta då (för hans pappa körde också alltid med pi).
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: Invertera signal från Open Collector

Inlägg av lillahuset »

Det stämmer förvånansvärt ofta. :D
Skriv svar