SCHMITT TRIGGER

Ik kan me voorstellen dat de lezer zijn wenkbrauwen fronst, een Schmitt trigger met transistoren? Die maak je toch met een OpAmp of met daarvoor speciale ontwikkelde IC's.

Soms heb je toch het probleem dat je over een lage voedingsspanning beschikt, zoals mij overkomen is. Ik moest een Schmitt maken met een voedingsspanning van slechts 2.4 Volt. In eerste instantie heb ik dit geprobeerd te realiseren met een OpAmp, de CA3130, het werkte wel, maar toch niet geheel en al betrouwbaar. Vandaar dat ik mijn toevlucht heb gezocht in de oude, vertrouwde transistor.
Het vervelende hierbij is dat je nogal wat moet rekenen. Natuurlijk heb ik eerst geprobeerd op Internet iets te vinden, maar daar gaan ze blijkbaar wel met hun tijd mee, ik vond honderden artikelen, maar allen met OpAmp's en IC's.
Misschien hoef ik ook nooit meer zo'n ding uit te rekenen, maar wie weet dacht ik, laat ik er maar een programma voor schrijven en op mijn website plaatsen, wellicht tobt een ander ook met dit probleem.
Allereerst een korte beschrijving van de Schmitt Trigger geven, ook wel, vanwege het feit dat de schakeling een gezamenlijke emitterweerstand heeft een emitter gekoppelde bistabiele genoemd.
De opbouw is aangegeven in onderstaande schakeling.

Heel in het kort even de werking. Wanneer er geen spanning is aangesloten op de ingang van transistor Tr1 zal de transistor Tr2 geleiden.
Over de weerstand R5 ontstaat dan een spanningsval afhankelijk van de collectorstroom van Tr2. Over R4 staat een spanning die bepaalt wordt door zijn waarde en de stroom er door heen, in dit geval de emitterstroom van Tr2. Het zal duidelijk zijn dat er eerst dan wat verandert wanneer de ingangsspanning op Tr1 hoger wordt dan deze spanning. Transistor Tr1 gaat enigszins geleiden, hierdoor zakt zijn collectorspanning en dus ook de spanning op de basis van Tr2. Tengevolge hiervan dreigt de spanning over R4 kleiner te worden, maar dit gebeurt niet omdat de spanning tussen basis van Tr1 en die over R4 groter zou worden. Dit uit zich in het nog meer in geleiding raken van Tr1 en er ontstaat een soort lawine-effect, in zeer korte tijd wordt Tr2 dichtgestuurd en raakt Tr1 volledig in geleiding. Hierdoor stijgt de uitgangsspanning naar de voedingsspanning. De ingangsspanning waarbij dit gebeurt noemen we Vh. Vergroten van de spanning verandert niets aan de uitgangstoestand.

Gaat men de spanning op de ingang van Tr1 nu verlagen dan zal de collectorstroom van Tr1 afnemen en de collectorspanning doen stijgen. Hierdoor stijgt eveneens de basisspanning van Tr2. Op een bepaald moment wordt deze zo groot dat Tr2 weer in geleiding raakt. Ook nu gebeurt het omschakelen zeer snel en wordt de toestand bereikt waarmee we begonnen. De ingangsspanning waarbij dit gebeurt noemen we Vl. Verder dalen van de ingangsspanning heeft wederom geen enkel effect op de uitgangsspanning.
Het verschil tussen Vh en Vl wordt hysterese of backlash genoemd. Door juiste keuze van de weerstandswaarden kan deze over een groot gebied gevarieerd worden. Wanneer men met schakelsnelheden groter dan 1 kHz te doen krijgt is het vaak nodig een kleine condensator (100 - 500 pF) over de weerstand R2 aan te brengen. Hierdoor gaat de schakeling nog wat sneller om. Voor lage schakelfrequenties is deze echter niet nodig.

Zoals gesteld heb ik een programma geschreven om de weerstandswaarden bij bepaalde gegevens te berekenen, daarvoor moet men de volgende gegevens invoeren:

Voedingsspanning (Vb), de spanning waarbij Tr1 geleidend moet worden (Vh), de spanning waarbij Tr1 uit geleiding moet komen (Vl), de gewenste spanningsval over R5 en de collectorstroom van Tr2. Vult men deze in dan worden de waarden van de getekende weerstanden uitgerekend.
Natuurlijk is deze berekening niet exact, er wordt b.v. geen rekening gehouden met temperatuurinvloeden. De stroom door de tak R1, R2 en R3 wordt in het programma 10 maal groter genomen dan de berekende basisstroom van Tr2 in geleiding om het effect van variaties in de stroomversterking van de transistor te minimaliseren.

Je kunt hier het programma downloaden schmitt.exe

Het is een DOS programma, evenals het hieronder vermelde programma vervang.exe

Hoe nauwkeurig zijn de berekeningen echter. Ik heb een configuratie berekend en met de gevonden weerstandswaarden een schakeling opgebouwd en gemeten.
Ingevoerd heb ik Vb = 12V, Vh = 5V, Vl = 2V, Vo = 5V, Ic2 = 10mA en Hfe = 100

Daaruit resulteerden de volgende weerstandswaarden:

R1 = 2960 Ohm, R2 = 3740 Ohm, R3 = 5889 Ohm, R4 = 455 Ohm en R5 = 500 Ohm

Dit zijn niet alle standaardweerstanden en om de gevonden waarden zo goed als mogelijk te benaderen heb ik de mogelijkheden hiervan onderzocht door het draaien van dit programma vervang.exe

Hierin geef je de gewenste weerstandswaarde in op en de gewenste tolerantie en dan krijg je een lijstje te zien met mogelijkheden via serie- cq parallelschakeling.

De resultaten waren:

Vb = 11.98 V, Vh = 4.99 V, Vl = 1.97 V, Vo = 5.01 V en Ic2 = 10.02 mA

Zoals je ziet zijn de afwijkingen t.o.v. de gewenste waarden minimaal en bespaart dit een hoop ge-experimenteer met allerlei weerstandswaarden.