Vorige: Voedingen.   Omhoog: Voedingen.   Volgende: Labvoeding82 V1.
Inhoudsopgave   Index


LabVoeding.


Weeral een nieuwe voeding?

FrontColor.jpg Het betreft een oudere voeding, die enige revisie nodig had. Twee nadelen in het oude ontwerp dienden verbeterd te worden:

  1. De stroombegrenzing werkte niet naar behoren.
  2. Het was moeilijk de spanning precies te regelen.
Teneinde het eerste probleem op te lossen, werd een opamp aan het werk gezet i.p.v. een stel transistors. Meer uitleg hierover bij het hoofdstuk stroombegrenzing.

Het tweede probleem was te wijten aan de potmeter waarmee de gewenste spanning werd ingesteld. Zelfs bij gebruik van een meerslags-potmeter is de resolutie te klein om de spanning tot op 0.1Volt moeiteloos te regelen.
De potmeter werd bijgevolg vervangen door een stel toetsen, waarmee een spanningsregeling tot op 0.001Volt probleemloos kan verwezenlijkt worden. Daarnaast kan de voeding nu vanuit een PC bediend worden.

De spanning- en stroomuitlezing van de originele voeding werd ongewijzigd herbruikt. Ook de eindtransistoren met hun koeling, de trafo, de gelijkrichter en de afvlakcondensators konden dienst blijven doen.


De hoofdprint.

Werking.

LabVoeding.png


Het schema hierboven laat zien, dat dit een eenvoudige voeding is, met uitzondering van het kader “SpStuur”, waarover we het in een volgend hoofdstuk hebben.

C1 ... C3 zijn de buffer-elco's voor het vermogensgedeelte. De spanning hierover bedraagt ―in onbelaste toestand― zo'n 35Volt.
R1 zorgt er voor, dat IC1 een wat lagere spanning (27Volt) aangeboden krijgt. C4 vlakt die spanning nog verder af. IC1 en omringende componenten (C5, C6) leveren een strakke spanning van 15Volt voor IC2, die hier de hoofdrol vervult. IC2, een CA3160, zal steeds trachten de spanning op zijn inverterende ingang gelijk te maken aan die op zijn niet-inverterende ingang. Is de spanning op pin 2 lager dan op pin 3, dan wordt de uitgang hoger. Via de spanningsdeler R2/R3 krijgt T2 een hogere spanning aan zijn basis, waardoor hij meer stroom gaat leveren aan de eindtrap (T3 ... T6). Dit stel gaat op zijn beurt ook meer stroom1 leveren, waardoor de uitgangsspanning stijgt. Dit gaat zo lang door, tot de spanningsdeler-combinatie R17, R18, R19 en P1 er voor zorgt dat op pin 2 dezelfde spanning staat als op pin 3.

Spanningsdeler terugkoppeling.

SpStuur levert maximaal 5Volt; op de uitgangsbuffer staat dan 0xFFFF (65535). Hiermee moet een uitgangsspanning van iets meer dan 30Volt geregeld worden.
Als we een waarde van 60000 (0xEA60) laten overeenkomen met 30Volt, kunnen we de uitgangsspanning regelen in stapjes van 0.5mVolt. Om dit te bereiken, is het noodzakelijk dat de spanningsdeler in de terugkoppeling heel precies kan ingesteld worden. Laten we in het onderstaande R17 benoemen als RH, en R18, R19 en P1 als RL.

Even berekenen:
Als 65535 overeen komt met 5.000Volt, komt 60000 overeen met een stuurspanning van 4.577Volt. En we willen dat die 4.577Volt stuurspanning resulteert in een uitgangsspanning van 30.0Volt.
De verhouding tussen beide weerstanden van de spanningsdeler moet dus zijn: 4.577 / (30 - 4.577) = 4.577 / 25.423.
Als we voor RH een weerstand van 4700R kiezen, moet RL een weerstand van ((4700 * 4.777) / 25.423) = 846R bezitten.
Parser leert ons dat een parallelschakeling van 1000R en 5600R een weerstand van 848.48R (Afwijking = +0.29%) oplevert.
Dat is iets te veel, maar daar doen we ons voordeel mee door 5600R te vervangen door een serieschakeling van 4700R en (een instelpot) 1000R. Daarmee kunnen we RL variëren tussen 824R en 850R.

De stroombegrenzing.

Bij een voeding die probleemloos 10Ampere kan leveren, is een instelbare stroombegrenzing onontbeerlijk.
Dit is de taak van het gedeelte rond IC4. Dit geheel beschikt over een eigen voeding, waarvan de massa verbonden is met de plus-pool van de buffer-elco's die de spanningsregeling afvlakken.
De loper van P2 is verbonden met de inverterende ingang van opamp IC4. Hiermee wordt de maximum stroom bepaald. R28, D3 en D4 leggen de “bovenzijde” van P2 vast op 1.2Volt. Zo kan de spanning op pin2 geregeld worden tussen 0Volt en 1.2Volt. Laten we aannemen dat de loper van P2 in het midden staat. Op pin2 van IC4 staat dan een spanning van 0.6Volt.
R30, D5 en D6 zorgen er voor, dat de niet-inverterende ingang van IC4 1.2Volt hoger ligt dan de positieve voedingsrail van de spanningsregeling, echter na serieweerstand R24. Zolang er geen stroom door deze weerstanden loopt, staat er op pin3 bijgevolg een spanning van 1.2Volt. De uitgang van IC4 is nu hoog, en T7 zal sperren.
Zodra er stroom door R24 gaat vloeien, ontstaat er over deze weerstand een spanningsval. Hierdoor zakt ook de spanning op pin3 van de opamp. Zodra die spanning lager wordt dan deze op pin2, maakt IC4 zijn uitgang laag, en komt T7 in geleiding. Via R20 en R21 wordt ook T1 opengestuurd, die op zijn beurt de ingestelde spanning naar beneden trekt.
Een lagere spanning betekent ook minder stroom en minder spanningsval over R24; en een hogere spanning op pin3 - tot alles in evenwicht is.
Met schakelaars S1 en S2 kunnen hogere stroombereiken gekozen worden.

Een mooie eigenschap van een opamp als de CA3140 is het feit dat hij overweg kan met ingangsspanningen die iets lager zijn dan de negatieve voedingsrail. Hierdoor zal IC4 ook zijn werk doen, als de loper van P2 helemaal “naar beneden” gedraais is.

De print-layout.

LabVoeding_overzicht.png

De nummers op de printkies komen overeen met de nummers in de gele cirkels, zoals die op het schema terug te vinden zijn.

SpStuur - de stuurprint.

Een volbestukte printplaat van 8 op 10 cm om een potmeter te vervangen; 't is me wat!
Maar we krijgen daar heel wat gebruiksgemak voor terug:

  1. Bij het inschakelen van de voeding wordt de spanning steeds op 0Volt ingesteld, ongeacht wat de ingestelde spanning was bij het uitschakelen.
  2. De spanning kan --naar keuze-- in stapjes van 1mVolt, 500mVolt of 5Volt verhoogd of verlaagd worden.
  3. De gewenste spanning kan ook met de PC (via een RS232-lijn) ingesteld worden. Ook met een resolutie van 1mVolt, uiteraard.
  4. Als de stroombegrenzing ingrijpt, kunnen we zowel de ingestelde als de werkelijke spanning aflezen.
  5. Bovendien kunnen we het gedrag van de stuurprint wijzigen, zonder de hele voeding te ontmantelen. Meer zelfs: we hoeven de voeding niet eens uit te schakelen!

Opzet.

Er bestaan meerdere manieren om een digitaal getal te vertalen naar een analoge spanning. Men kan een D/A-converter inschakelen; men kan pulsbreedte-modulatie overwegen; en dan is er nog de R2R-ladder.
Er werd gekozen voor de laatste oplossing. Er kleven weliswaar enkele bezwaren aan:

  1. De voedingsspanning van de IC's die de R2R-ladder aandrijven moet stabiel en onveranderlijk zijn. Anders komt de uitgangsspanning niet meer overeen met de ingestelde spanning.
  2. De weerstanden moeten zo nauwkeurig mogelijk zijn. Dat kan deels opgelost worden door weerstanden uit één en dezelfde serie te benutten.
  3. Op het schema van de hoofdprint is te zien dat de stuurspanning gebufferd wordt door een elko, C6. Deze dient absoluut lekvrij te zijn! Is dat niet het geval, dan zal hij een spanningsdeler vormen met de R2R-ladder en zal de uitgangsspanning lager zijn dan hetgeen ingesteld is.
    Voor C6 is dan ook een 50V-exemplaar ingezet, dat enkele dagen lang opgeladen werd tot 48V.
De resolutie is echter quasi onbeperkt, voorzover de afwijkingen t.g.v. bovengenoemde bezwaren niet zwaarder wegen dan het LSB2 van de sturing.
Maar de praktijk wijst uit, dat het allemaal best meevalt; hoe dan ook, hier kan geen potmeter tegenop, noch wat gebruiksgemak, noch wat nauwkeurigheid betreft!

SpStuur.png

Centraal in het schema hierboven bevindt zich het kloppend hart van deze print, een microcontroller van Atmel: een AT90S4433. Tussen de uC en de R2R-ladder bevinden zich 4 buffers. Buffer 1 en buffer 2 worden elk om beurt geladen met een 8-bits getal(bit 0 ... 7 en bit 8 ... 15). Eens dat gebeurt is, wordt de inhoud van deze buffers in 1 mep doorgegeven aan buffers 3 en 4, die op hun beurt de R2R-ladder aansturen.
Zo wordt vermeden dat een verhoging met 1 bit (b.v. van 01111111 11111111 naar 10000000 00000000) rare spanningssprongen gaat veroorzaken, wat zeker het geval zou zijn, moesten we de R2R-ladder rechtstreeks met buffers 1 en 2 verbinden.

Wat vinden we verder op de print?
Het groepje componenten rond IC1 en T1 zorgt voor een gestabiliseerde voedingsspanning en een nette reset bij het opstarten.
Vlak daarnaast vinden we de connector, waarmee de uC geprogrammeerd kan worden. Deze connector wordt hiertoe verbonden met de printer-poort van de PC, die het programmeren voor zijn rekening neemt.
Linksonder zien we een tweede connector. Deze laat toe, de voeding via een seriële lijn te besturen vanuit de PC. Tussen deze connector en de uC merken we een MAX232 (IC2). Dit IC produceert de positieve en negatieve spanningen die nodig zijn om dat over een seriële lijn te verzenden en te ontvangen.
Tenslotte is er nog een LCD-module met het geheel verbonden. Hierop toont de uC de ingestelde spanning. Deze kan (sterk) afwijken van de spanning die de ingebouwde voltmeter aanduidt. Zulks zal namelijk het geval zijn, als de stroombegrenzing ingrijpt.

Bediening.

Toetsen.

SpToetsen_Fig.png

Zoals het schema hierboven laat zien, misbruiken we een A/D-ingang van de AT90S4433 om een toetsenbordje uit te lezen. R101 vormt samen met 1 van de weerstanden R102 ... R107 een spanningsdeler, zodra er een toets wordt ingedrukt. De spanning hierover wordt doorgegeven aan PC5 van de AT90S4433. De software gaat de spanning op deze pin regelmatig uitlezen. Het resultaat van een meting ligt tussen 0 en 1023; het betreft immers een 10-bits A/D-omzetter. Is de spanning lager dan pakweg 950, dan is er zeker een toets ingedrukt. Welke dat is, valt af te lezen uit de gemeten spanning.

De toetsen zijn opgesteld in twee kolommen met elk 3 toetsen. De linker kolom dient om de ingestelde spanning te verlagen, terwijl men met de rechter kolom de spanning kan verhogen.
Dat gaat in stapjes van 1mVolt (bovenste rij), 0.5Volt (midden) of 5Volt (onder). Blijft men een toets indrukken, dan gaat de software de gewenste actie herhalen met tussenpozen, die alsmaar korter worden. Het ritme wordt hierbij hoorbaar gemaakt met behulp van een luidsprekertje, dat via een een eenvoudig klasse-C trapje door PD3 gestuurd wordt. Dat is vooral handig met de 1mVolt-toetsen; 100 maal drukken teneinde de spanning 100mVolt op te krikken is ook niet ideaal...

De PC als spanningsregelaar.

Bedienen vanuit de PC is ook eenvoudig.

Nadat de gewenste seriële poort op gepaste wijze is ingesteld (ttydevinit /dev/ttySnn), kan de PC met SpStuur communiceren.
De belangrijkste opdrachten zijn: u=-, u=+ en u=nn3. u=- en u=+ verlagen/verhogen de ingestelde spanning met 1 mVolt. Met u=nn wordt meteen de gewenste spanning ingesteld. Dat kan in mVolt (b.v. u=5100) of in Volt (b.v u=5.100 of u=5,1); als de software een komma (een punt mag ook) in het cijfer merkt, gaat hij er van uit dat de gebruiker een spanning in Volt heeft opgegeven.

Enkel voor het instellen van de gewenste stroombegrenzing is de gebruiker verplicht om alsnog aan een potmeterknop te draaien...

Revisie 2008.

Na 4 jaar trouwe dienst verdient de LabVoeding wel een opknapbeurt.

Wat meest in het oog springt is het frontpaneel. Het eentonig zilver-grijs werd vervangen door een kleurige uitvoering. Wat daarbij meteen opvalt is de noodstop. Loopt er iets mis (rook die uit een component verdwijnt), dan volstaat een druk op die knop om de uitgangsspanning onmiddelijk naar 0Volt terug te brengen.
De knop bedient een relais met 4 contacten. Eén contact sluit de referentiespanning (de uitgang van de R2R-ladder) kort met GND. Een tweede contact geeft de ATmega8 een interrupt; deze reageert hierop door de referentiespanning naar 0Volt terug te schroeven (anders stijgt de uitgangsspanning opnieuw na het loslaten van de noodstop). De overige twee contacten belasten de uitgang met een weerstand van 1R, zodat ook de uitgangs-elko snel ontladen wordt.

Hetgeen van buitenaf niet zichtbaar is: de AT90S4433 heeft plaats moeten ruimen voor een ATmega8. De reden hiervoor was het feit dat een ATmega8 op een klok van 14745600Hz kan draaien, wat een snellere en betrouwbare RS232-communicatie mogelijk maakt.
Uiteraard is ook de firmware aangepast.



De print-layout van SpStuur.

De component-opstelling op SpStuur.

SpStuur_overzicht.png



De bovenzijde van SpStuur.

SpStuur_boven.png



De onderzijde. van SpStuur

SpStuur_onder.png



De software voor de AT90S4433.

Die vindt u hier.

De prestaties.

DS1.png

DS2.png

Ondanks de eenvoud van het ontwerp, zijn de prestaties bevredigend. Bij normaal gebruik bedraagt de rimpel niet meer dan 10mVolt, zoals hierboven te zien is.

Enkel als de stroombegrenzing ingrijpt, werd het minder fraai; de scoop toonde oscillaties die tot meer dan 100mV opliepen.
Dit werd verholpen door parallel aan C6 (origineel 100nF) een elko te plaatsen van 100uF. Oscillaties komen niet meer voor; enkel een rimpel die duidelijk afkomstig is van de “ruwe” voedingsspanning. Die rimpel blijft nu op 60mVolt steken (zie hieronder). Dat kan wellicht nog verbeterd worden...

DS3.png

Opmerkingen.

De voeding kan zowel 30V leveren als 10A. Maar niet beiden tegelijk; daar is de trafo nu eenmaal te klein voor.

De vermogenstorren zijn flink overgedimensioneerd. 6 eindtorren gebruiken, waar in pricipe 1 tor het werk kan doen, lijkt gekkenwerk. Maar ik wou de voeding absoluut foolproof maken. En dat is me tot nu toe aardig gelukt.

S1 en S2 zijn automatische zekeringen (respectievelijk 4A en 10A). En zowel Tr1 als Tr2 zijn beveiligd met een passende zekering, die niet in het schema terug te vinden is.

Beide opamps zijn plaatselijk ontkoppeld met een 100nF-C, die niet in het schema terug te vinden is.



Voetnoot

...stroom 1
zowel T2 als T3 ... T6 zijn als stroombron geschakeld
...LSB 2
Least Significant Bit; minst belangrijke bit
...u=nn 3
Wie alle opdrachten wil weten, drukt gewoon '?' in.



Vorige: Voedingen.   Omhoog: Voedingen.   Volgende: Labvoeding82 V1.
Inhoudsopgave   Index

Pros Robaer - 2014