cover.jpg

Samenvatting

In het kader van het afstuderen is een schakeling ontworpen, die analoge meetwaarden digitaal over een glasvezel verzendt. De schakeling is ontworpen volgens een van te voren bepaald concept. De ontwikkelde schakeling is beoordeeld op de prijs en bruikbaarheid. Omdat de schakeling niet aan de eisen, die werkelijk gebruik stelt, voldoet, zijn er alternatieven aangegeven.

1. Inleiding

In het afgelopen jaar is onderzocht, hoe met behulp van glas vezels spanningen gemeten kunnen worden. Het was de bedoeling, om glasvezelsystemen in convertors te gebruiken. Gedurende het afstudeerwerk heb ik een meetsysteem gebouwd.

Verder is er aandacht besteed aan een aantal randgebieden. De afstudeeropdracht ging uit van een electrisch metend systeem dat de informatie digitaal over de glasvezel zou verzenden. Vandaar redelijk veel tijd is besteed aan de A/D-conversie. in de appendices is een bepaald type A/D-convertor, de tracking, uitgebreid doorgelicht.

1.1. De opdracht

De opdracht was een onderzoek naar de transmissie van meetsignalen over een glasvezelverbinding door middel van deltamodulatie teneinde common-mode storing te elimineren en een volledige galvanische isolatie te bereiken.

In de originele opdracht was sprake van een systeem met 10 bits data, 1Mbaud zendfrequentie. Bovendien werd er uitgegaan van een digitale koppeling met vervolgschakelingen. De vervolgschakeling bestaat in werkelijkheid slechts uit een D/A-convertor.

Bovendien werd er een mogelijke realisatie voorgesteld. Die mogelijkheid bestond uit een tracking A/D-convertor, een glasvezel verbinding en een ontvanger. Een schakeling met een dergelijke opbouw is ontworpen en doorgemeten. Omdat het niet mogelijk is om op deze manier aan de specificaties te voldoen zijn een tweetal alternatieven beschreven.

1.2. Randgebieden

Er is ook aandacht besteed aan een aantal randgebieden. Zo is het optisch meten van de spanningen beschreven. Deze methode wordt op het ogenblik gebruikt bij de KEMA voor het meten in electrisch storende omgevingen.

Natuurlijk is de tracking A/D-convertor uitgebreid beschreven. Allerlei mogelijkheden, zoals de fixed stepsize en een tweetal continu variabele stepsize algoritmen staan beschreven in de appendices.

Ook is aandacht besteed aan een regelalgoritme voor de spanning op resonante condensatoren, die de nadelen van de gebouwde schakeling ondervangt. Deze regeling hebben we First Phase Predictor genoemd. in de appendices wordt een eerste aanzet gegeven tot die regeling.

1.3. Opbouw van het verslag

In het verslag zelf heb ik me zo veel mogelijk beperkt tot de afwegingen en principes van de schakeling. Vaak zijn uitgebreidere achtergrondinformatie en gedetailleerde beschrijvingen in de appendices opgenomen.

Achterliggende theorie, zoals de beschrijvingen van de verschillende soorten tracking A/D-convertors, en de randgebieden, zoals het optisch meten van spanningen, zijn in de appendices opgenomen.

Het verslag zelf begint met het ontwerp van een schakeling, zoals die gesuggereerd was in de afstudeeropdracht. Deze schakeling is doorgemeten en wordt geëvalueerd. Tenslotte worden een tweetal alternatieven gegeven, die een aantal nadelen moeten ondervangen.

2. Probleemstelling

2.1. Inleiding

Electronische convertors worden steeds vaker met complexe regelingen uitgevoerd. Deels omdat het functioneren van de convertor dit eist (zoals bij serie-resonante systemen), deels vanwege de toepassingen (zoals robot-armen).

Dergelijke complexe regelingen zijn relatief gevoelig voor grote storingen, zoals common mode spanningen. Zeker wanneer de regeling direct ingrijpt op het functioneren van de convertor, is het nodig om hier extra aandacht aan te besteden.

Het is ook mogelijk om de regeling galvanisch te scheiden van de werkelijke convertor. De gegevens, die voor de regeling nodig zijn, kunnen dan bijvoorbeeld over een glasvezel verzonden worden. Door dan het meetcircuit klein te houden, kunnen de storingen van de convertor grotendeels buiten de deur worden gehouden.

Ook moet de nodige aandacht besteed worden aan de nauwkeurigheid van de meting. Het meetcircuit wordt namelijk opgenomen in een teruggekoppeld systeem. Fouten in de terugkoppeling hebben een grote invloed op de performance van het systeem.

2.2. De eisen aan de schakeling

Bij het uitreiken van de afstudeeropdracht zijn een aantal eisen opgesteld, waaraan de ontworpen schakeling zou moeten voldoen. Een aantal eisen is bijgesteld om de bruikbaarheid van de schakeling te vergroten

De eerste eis is het meetbereik. De schakeling moet een meetcircuit vormen voor electrische spanningen (+ 800V). Dit komt overeen met de te verwachten spanning op een resonante condensator. Als een schakeling een kleiner meetbereik heeft, kan dit eenvoudig met een weerstandsdeler ondervangen worden.

De ingang en de uitgang moeten galvanisch gescheiden zijn door een glasvezel. De baudrate over de glasvezel moet minimaal 1Mbaud zijn. in de ontworpen schakeling is dat 3Mbaud, wat ook nog aan de lage kant is.

2.3. Nog enige opmerkingen

Het was de bedoeling om de schakeling zo goedkoop te maken, dat deze zonder bezwaar in de meeste omzetters geplaatst zou kunnen worden. Deze overweging is slechts gedeeltelijk meegenomen bij het ontwerp. in het hoofdstuk redesign is aangegeven hoe de kosten geminimaliseerd zouden kunnen worden.

3. Globaal ontwerp

3.1. Inleiding

In principe zijn er verschillende methodes van elektrisch meten. We zouden bijvoorbeeld kunnen proberen om in het lineaire gebied van de glasvezel-zender en -ontvanger te werken. Verder is een glasvezel helemaal niet nodig. Het is ook mogelijk om de signaaloverdracht via opto-couplers te laten lopen.

De keuze was echter al op voorhand gemaakt. We zullen ons dus beperken tot een systeem, dat de spanningen digitaal over een glasvezel verzendt.

3.2. De A/D-convertor

Omdat het signaal digitaal over de vezel verzonden wordt, is het nodig het analoge signaal (de spanning) om te zetten in een digitaal equivalent. Hiervoor gebruiken we een A/D-convertor.

Er zijn verschillende soorten A/D-convertors, waarvan we er een aantal zullen beschouwen[2}). Allereerst de successieve approximatie. Dit is zonder meer de meest gebruikte methode. De uiteindelijke representatie van het analoge signaal wordt iteratief bepaald door halvering van intervallen. Deze manier van omzetten heeft een aantal nadelen. De meeste A/D-convertors van deze soort zijn relatief traag. Bovendien komt bij ieder sample een flank van de helft van het meetbereik voor.

Als tweede zullen we de Flash A/D-convertor bekijken. Deze bestaat uit een groot aantal comparators (257 voor 8 bits). Het grote voordeel van deze A/D-convertor is de snelheid. Als sample rate kan 16MHz aan gehouden worden. Het nadeel is de beperkte uitbreidbaarheid. Voor een extra bit moet men rekenen op een verdubbeling van het aantal comparators.

De derde convertor die we bekijken is de Tracking A/D-convertor. in zijn eenvoudigste vorm bestaat hij uit een teller en een comparator. Als het analoge signaal groter is dan zijn representatie wordt 1 bij de representatie opgeteld, anders wordt er 1 van afgetrokken. ingewikkeldere versies kunnen op allerlei manieren hun stapgrootte veranderen. Aan dit type A/D-convertor is nogal wat aandacht besteed. Een uitgebreide behandeling staat in de appendices.

Natuurlijk zijn er nog andere manieren, met hun eigen voor en nadelen. We zullen hier nog de ramp en compare noemen, die geen D/A-convertor nodig heeft, en de dual slope, die een relatief grote precisie/prijs verhouding heeft. Zij zijn echter vanwege hun traagheid niet interessant.

3.3. Seriële verzending

Nadat het analoge signaal digitaal is gemaakt, moet het over de glasvezel verzonden worden. Vanwege de prijs van de glasvezelcomponenten zal dit serieel moeten gebeuren. Seriële data-overdracht heeft een aantal specifieke problemen.

De ontvanger moet weten wanneer de data begint. De gebruikelijke manier hiervoor is het toevoegen van start- en stopbits. De ontvanger "locked" dan op deze bits, en kan daardoor bepalen wat de werkelijke data is. Als de combinatie van de stop- en startbits voorkomt in de data, is het mogelijk dat de ontvanger daarop locked. Hoe meer start- en stopbits, hoe betrouwbaarder de overdracht.

Een andere functie van de start- en stopbits is de synchronisatie van de zender en ontvanger. Doordat beide in principe asynchroon gekoppeld zijn, kunnen er kleine verschillen in klokfrequentie optreden. Deze kunnen dan tijdens de start- en stopbits worden weggepoetst.

3.4. De ontvanger

Het laagspanningsgedeelte ontvangt nu het seriële signaal. De ontvanger moet dit weer omzetten in een analoog signaal. Dat gebeurt met behulp van ontvangstlogica en een D/A-convertor.

De ontvangstlogica is opgebouwd rond een schuifregister. Dit schuifregister schuift de serieel verzonden databits een voor een naar binnen. Een toestandsmachine in een EPLD bepaalt wanneer geschoven mag worden.

3.5. De voeding

Er moet ook enige aandacht besteed worden aan de voeding van het hoogspanningsdeel. Deze voeding moet namelijk galvanisch gescheiden worden van het laagspanningsdeel. Bovendien mogen de effecten van de common-mode spanningen aan de ingang niet doorwerken naar het laagspanningsdeel.

Hiervoor is een standaard oplossing gekozen. De voeding van het hoogspanningsdeel wordt gevoed via een trafo met een kleine capaciteit. Dit is een hoogfrequent trafo. De primaire zijde wordt gestuurd via twee FET’s, die op hun beurt weer gestuurd worden uit wat digitale logica. Doordat de trafo een behoorlijke luchtspleet heeft, is de symmetrie van de sturing niet echt belangrijk. 3.6.Globaal ontwerp

We kunnen nu een globaal ontwerp van de schakeling maken.

elektro-0009.jpg

De schakeling kunnen we in twee delen splitsen. Het eerste deel, voor de glasvezel, zullen we het hoogspanningsdeel noemen. Het tweede deel, na de vezel, noemen we laagspanningsdeel.

Het hoogspanningsdeel is onderverdeeld in de al eerder besproken blokken, de A/D-convertor en de seriële zender. Voor de A/D-convertor zullen we er een van het tracking type nemen.

De seriële zender bestaat uit een multiplexer en een glasvezelzender. De glasvezelzender en ontvanger zijn als setje gekocht, en zullen verder als black box beschouwd worden. De multiplexer zal ook een aantal start- en stopbits moeten toevoegen.

Het laagspanningsdeel bestaat uit een seriële ontvanger en een D/A-convertor. De seriële ontvanger zet het signaal van de glasvezel om in een parallel uit te lezen byte. De D/A-convertor tenslotte, zet dit digitale signaal weer om in een analoog signaal, dat toegevoerd kan worden aan een regeling.

In dit ontwerp is de voeding niet getekend. Het is duidelijk, dat de sturing ervan door het laagspanningsdeel verzorgd wordt. Stabilisatie van de spanning moet echter aan de hoogspanningskant gebeuren.

Hiermee besluiten we het globale ontwerp. in het volgende hoofdstuk zullen we de blokken nader bekijken.

4. Ontwerp van de schakeling

4.1. Inleiding

Nadat we een globaal ontwerp van de schakeling hebben gemaakt, kunnen we de onderdelen uitwerken. in dit hoofdstuk komen de verschillende onderdelen aan bod.

Allereerst zullen we de A/D-convertor behandelen. Dit is een Turbo-tracking A/D-convertor. Een preciese beschrijving van de algoritme staat in de appendices.

Vervolgens zullen we de seriële zender en ontvanger beschrijven. We zullen zien, op welke manier de zender en ontvanger een relatief hoge baudrate (1/2 klokfrequentie) haalt met behulp van z.g.n. dual klok-mode.

De D/A-conversie is het volgende onderdeel. Deze is relatief eenvoudig, omdat van standaard schema’s gebruik gemaakt kan worden.

Tenslotte komt de voeding aan bod. Alhoewel we gebruik gemaakt hebben van een bestaand schema, is het toch noodzakelijk om hier enige opmerkingen over te maken.

4.2. A/D-conversie

In het onderstaande figuur is het principe van de A/D-convertor afgebeeld:

elektro-0012.jpg

Dit type noemen we een dual stepsize, Turbo tracking-A/D-convertor, of ook wel gewoon Turbo. De turbo counter is een teller met twee stapgroottes, 1 en 4. Via de bovenste comparator wordt gekeken of de teller op moet tellen of moet aftrekken. Dit signaal noemen we up/down. Verder moet de turbo=-counter weten wanneer hij de stapgrootte 1 of 4 moet aannemen. Dit gebeurt met behulp van de onderste twee comparators.

De turbocounter heeft twee uitgangen, een voor de D/A-convertor en een voor de rest van de schakeling. Dit is nodig omdat het uitlezen van de samples met een andere frequentie kan gebeuren dan de teller nodig heeft om het signaal te volgen.

De turbocounter heeft nog een extra aantal ingangen gekregen, die extra functies kunnen uitvoeren. Hieronder staat een lijst van de ingangen en hun functies:

Ingangssignalen van de turbo-counter

i
Inhibit. Bepaalt of de teller mag tellen.
u
Up. Bepaalt of de teller omhoog of omlaag telt.
h
High. De teller is te hoog, dus grotere stappen.
l
Low. De teller is te laag, dus grotere stappen
ld
LoaD. Laad de uitgangsregisters.
m
Min. Zet de teller op z’n minimum stand (Ox00).
z
Zero. Zet de teller op de nul-stand (Ox80).
x
maX. Zet de teller op de maximum stand (Oxff).

De signalen m, z en x worden gebruikt voor het ijken van de schakeling.

De logica is geïntegreerd in een programmeerbaar device, EPLD genaamd(1). De EPLD voorkomt dat grote hoeveelheden losse TTL-IC’s gebruikt moeten worden. De listing van een aantal mogelijkheden staan in de appendices.

De turbocounter is aangesloten op een D/A-convertor. De D/A-convertor heeft een analoog uitgangssignaal, dat tussen de 0 en 2.5V ligt. Dit signaal wordt versterkt tot een signaal van +4.5V. Dit gebeurt met een eenvoudige opamp.

De offset en versterking van de opamp kunnen met behulp van potmeters worden bijgeregeld. Om deze juist in te kunnen stellen kan men gebruik maken van de m, z en x ingangen van de turbocounter.

De uitgang van de versterker wordt dan weer toegevoerd aan de drie comparators, waarvan de functie reeds beschreven is.

4.3. Seriële verzending

De uitgang van de turbo-counter waar de samples uit komen wordt verbonden met de seriële zender. Deze seriële zender bestaat uit een EPLD en een kant en klare glasvezel zender. De kant en klare glasvezel zender is voor ons niet interessant.

De zender-EPLD heeft een aantal functionele blokken. Het belangrijkste is de multiplexer. in ons geval hebben we een multiplexer met 11 ingangen. Acht ervan worden gebruikt door de data-bits. De overige worden in beslag genomen door de start en stop bits. in ons geval zijn dat 00 en 1.

Deze start- en stopbits worden voor twee dingen gebruikt. Om te beginnen geven ze aan waar de data begint. Het is duidelijk, dat de ontvanger deze informatie nodig heeft als er asynchroon gewerkt wordt. Bovendien geven de start- en stopbits de ontvanger de gelegenheid om zijn synchronisatie aan te passen. Hieronder wordt het toestandsdiagram van de ontvanger gegeven.

elektro-0014.jpg

De ontvanger werkt met twee clockmodes. De data voor de controller, de toestandsmachine van hierboven, wordt binnen gehaald op de negatieve flank en de databits op de positieve flank. De toestandsmachine zelf loopt op de positieve flank. De databits zijn dus altijd van een eerder tijdstip dan de controlesignalen.

De ontvanger wacht op het voorkomen van de 001-combinatie (q0). Deze combinatie is dus 6 klokpulsen lang. De toestandsmachine telt drie klokpulsen nullen (q0,q1; q1,q2; q2,q3;), en wacht dan tot het startbit komt (q3). Dat komt dan meestal na 1 klokpuls. Eventueel verschil in klokfrequentie tussen de zender en ontvanger wordt op deze plaats opgevangen.

Het startbit is weer twee klokpulsen lang (q3,q4; q4,ct;). Bovendien wordt tegelijk een externe teller opgestart, die tot 16 telt. Met het laagste bit van deze teller wordt bepaald op welk tijdstip de datalijn gesampled moet worden. Het een en ander is in onderstaand figuur nog eens weergegeven in relatie tot de klok van de ontvanger.

elektro-0015.jpg

In dit figuur zijn de volgende signalen getekend:

clk
de klok van de ontvanger,
dz
de data als uitgang van de zender; deze lijn is niet geklokt,
do
de data voor de ontvanger, geklokt op de positieve flank,
co
de control-signalen voor de ontvanger, geklokt op de negatieve flank.

De data wordt gesampled op 2n + 1/2 klokpuls later dan de detectie van het start-bit. Deze data wordt dan een schuifregister ingeschoven. Als alle bits ontvangen zijn, wordt de data in een tweede register geladen. Dit is gedaan om de digitale uitgang stabiel te houden.

Aan het eind van de keten vinden we nog een D/A-convertor. Deze verzorgt de analoge versie van het signaal.

4.4. De voeding

De voeding van het deel dat onderhevig is aan common-mode spanningen mag slechts een geringe capaciteit naar het laagspanningsdeel hebben. Dit om te voorkomen dat de effecten van die common-mode spanningen toch nog doordringen.

Hoogfrequent trafo’s hebben die lage capaciteit. De trafo, die in de schakeling zit, heeft bijvoorbeeld 15pF. Dit komt doordat er relatief weinig windingen nodig zijn, en de windingen betrekkelijk ver uit elkaar liggen (m.b.v. linnen-tape).

Voor toepassingen, die hogere eisen stellen aan de common-mode rejectie, moet men de windingen nog verder scheiden, of twee trafo’s achter elkaar plaatsen.

Voor de voeding hebben we een bestaand schema genomen. De voedingsspanning uit dit bestaande schema hebben we gehalveerd. Bovendien is er een iets grotere kern gebruikt voor de trafo.

We hebben nu het hele ontwerp besproken. Alle gedetailleerde informatie staat in de appendix. Daar zijn ook de schema’s te vinden.

5. Performance en evaluatie

5.1. Inleiding

We hebben het ontwerp van de schakeling besproken. Nu moeten we echter nog kijken, in hoeverre de schakeling in werkelijkheid aan de eisen voldoet. We zullen zien, dat de schakeling niet practisch toepasbaar is, en wel om de volgende redenen:

  • de schakeling maakt te veel fouten bij de verzending en ontvangst van de glasvezel-signalen,
  • de schakeling heeft een te grote vertragingstijd.

De glasvezel is echter wel bruikbaar in andere situaties. Men kan bijvoorbeeld overstappen op een andere regelalgoritme voor de condensatorspanning. Een voorbeeld van een dergelijke regeling (de First Phase Predictor) staat in de appendices.

Ook is het mogelijk om de convertor op lagere frequentie te laten lopen. Dit is echter niet de trend bij huidige convertors.

om een werkelijke evaluatie van de schakeling te kunnen geven was het nodig om hem te bouwen. De schakeling is gebouwd op twee euro-kaart gaatjesboorden, een voor het hoogspanningsdeel en een voor het laagspanningsdeel.

5.2. Meetinstrumenten

Bij het maken van de schakeling en voor het verrichten van metingen hebben we een groot scala aan meetapparatuur gebruikt. We zullen de gebruikte apparaten beschrijven, en bij sommige wat commentaar geven.

Allereerst de logicanalyzer. Dit was een 16-kanaals logicanalyzer van Gould. Minimum sample tijd was 10ns. De logicanalyzer werd gebruikt bij het debuggen van de schakeling. Zo’n apparaat is nodig om snel digitale schakelingen te kunnen onderzoeken. Het was dan ook een uitkomst, dat we hem van de vakgroep schakeltechniek mochten lenen. Als er meer digitaal gewerkt gaat worden, moet de aanschaf van een L.A. overwogen worden.

De sinus generator was een Wavetek VCG, model III.

We hebben drie digitale multimeters gebruikt, een Fluke 8010A digimeter voor het grovere werk en een Metravo 5D en een M2402 van BBC voor het fijnere werk. De meters van BBC hadden ook de mogelijkheid om wisselspanningscomponenten van gelijkspanningen te meten e.‚d..

De metingen zijn gedaan met twee scopes van Philips. Een langzame en een snelle. De langzame was een PM3233 met een tr (stijgtijd) van 35ns, en de snelle was een PM3265 met een tr van 2,3ns. Alle werkelijke metingen zijn gedaan met de PM3265, terwijl de PM3233 voornamelijk werd gebruikt voor controle op bepaalde signalen (is de ingang nog een sinus e.d.).

5.3. De metingen

De uitgang had een hoog ruisniveau. Dit was ongeveer 0.1V (op de 2.5V ), dus zo’n 4% (10LSB!). Deze ruis was voornamelijk het gevolg van bitfouten. Vooral de ontvanger bleek aanleiding te geven tot bitfouten. (Vergelijk 0.1V ruis bij een electrisch afgeschermde ontvanger met 1V ruis bij niet een afgeschermde ontvanger.)

Om de transmissie zo goed mogelijk te maken, werden de uit einden van de glasvezel gepolijst. De invloed van het polijsten was echter niet zo dramatisch als de afscherming.

Voor de opname van de grafieken werden de volgende schakelingen gebruikt:

elektro-0019.jpg

Er zijn twee turbo-counters gemaakt met verschillende tweede stapgroottes, 4 en 8. De meeste metingen zijn met tweede stapgrootte 4 gedaan. Tenzij anders vermeld is dit dan ook impliciet aangenomen.

Als eerste is gekeken hoe lineair de schakeling is voor gelijkspanning. Over een gebied van 9V zijn daarvoor meetpunten genomen.

Gelijkspanningsmeting
Ui
Uo
Ui
Uo
-4.5
0.11
0.5
1.39
-4.0
0.29
1.0
1.51
-3.5
0.44
1.5
1.64
-3.0
0.55
2,0
1.76
-2.5
0.67
2.5
1.95
-2.0
0.79
3.0
2.00
-1.5
0.91
3.5
2.13
-1.0
1.04
4.0
2.43
-0.5
1.15
4.5
2.45
0.0
1.26

Het verband tussen in- en uitgangsspanning is dus goed lineair, zoals in de grafiek te zien is.

elektro-0020.jpg

De toepassing was echter niet voor gelijkspanning, maar voor wisselspanningen. Daarom zijn er een aantal metingen gedaan om het wisselspanningsgedrag van de schakeling te bekijken.

Allereerst moeten we laten zien, hoe de wisselspanning aan de uitgang er uit ziet. Dit doen we met een "single shot" op de PM3265 en een Polaroid camera. De turbo-counter had bij deze foto een tweede stapgrootte van 8.

elektro-0021.jpg

Voorbeeld van een uitgangsspanning (Uj=2V; f=20kHz)

Het is te zien, dat het signaal uit losse samples bestaat doordat de sample frequentie niet hoog genoeg is. Verder zien we, dat er van tijd tot tijd bitfouten gemaakt worden. Tenslotte is de zendsample frequentie niet gelijk aan de teller-sample frequentie, zodat de onzekerheid omtrent het sample tijdstip even groot is als de teller-sampletijd. in het hoofdstuk over redesign is opgenomen hoe men van deze problemen af kan komen.

Voor de wisselspanningskarakteristiek vonden we de volgende tabel:

Wisselspanningsgedrag
Ui
Uo
Ui
Vo
0.6
o.17
2.0
0.49
0.8
0.21
2.2
0.53
1.0
0.25
2.4
0.58
1.2
0.30
2.6
0.62
1.4
0.34
2.8
0.70
1.6
0.33
3.0
0.73
1.8
0.44
3.2
0.78
elektro-0021.jpg

De spanningen zijn effectieve waarden en zijn aan de ingang symmetrisch rond 0V. Het zijn bovendien sinussen van 1kHz. De schakeling zal moeten werken rond de 20kHz. De gebruikte meters hebben echter ook een bovengrens in frequentie, en daarom is voor 1kHz gekozen.

Via de scoop is nog een frequentiemeting gedaan. ingang 2Vrms. De scoop geeft dan over het frequentie gebied van 1kHz tot 20kHz een spanning met 1.4Vpp. Opgemerkt moet worden, dat Uo bij 20kHz vrijwel een driehoek is. We kunnen dus stellen dat 20kHz de absolute bovengrens is. Deze meting is ook gedaan met als tweede stapgrootte 8. De uitgangsspanning bleef tot 37kHz vlak, waarbij de uitgangsspanning bij 35kHz grotendeels een driehoek was. De beoordeling, of de uitgangsspanning sinusvormig is, is moeilijk te doen bij deze frequenties. Daarom is de uitgang van de D/A-convertor uit het hoogspanningsdeel in de beoordeling meegenomen.

Tenslotte zijn er nog metingen gedaan om de looptijd van de schakeling te meten. Dit hebben we gedaan door, met behulp van Lissajous figuren, de phase draaiing te meten. Dit hebben we gedaan bij 5, 10, 15 en 20kHz. Bij de zelfde begin- en eindpunten werden de verticale openingen van de ellipsen gemeten in het midden van de x-as.

De verticale lengte van de ellips op de y-as was 5cm. De looptijd kan dus gevonden worden met

block/complete.in.1.svg

waarbij f de frequentie is waarbij gemeten wordt, t de looptijd en O de opening van de ellips.

Looptijden
f
O
Tloop
5kHz
1.0cm
6.4us
10kHz
2.5cm
8.3us
15kHz
3.5cm
8.2us
20kHz
4.0cm
7.4us

Bij de laatste waarde (20kHz) moet worden aangetekend, dat U0 dan geen sinus meer is, maar grotendeels driehoek.

5.4. Kosten

De kosten van de schakeling zijn enigzins uit de hand gelopen. Dit komt door de prijs van de EPLD’s. De verwachting, dat deze devices goedkoper zouden worden, is (nog) niet uitgekomen, integendeel, ze zijn zelfs duurder geworden.

Als richtprijs is een globale berekening te geven:

A/D-conversie
120,-
Seriële verzending
35,-
Glasvezel
300,-
Ontvangst en D/A-conversie
70,-
Totaal
525,-

Deze prijzen zijn erop gebaseerd, dat in het ontwerp wisbare EPLD’s gebruikt worden. Als niet-wisbare EPLD’s gebruikt worden, komt het totaal zo’n 50 gulden lager uit.

5.5. Evaluatie

Voor werkelijk gebruik zijn er een aantal eisen met betrekking tot lineariteit, looptijd, maximale frequentie en fout percentage. Met behulp van de metingen kunnen we zien in hoeverre de schakeling aan deze eisen voldoet.

Bij de berekeningen wordt uitgegaan van de kennis uit de appendices. Met name de inhoud van de appendix over de A/D-conversie zal in verschillende berekeningen opduiken.

5.5.1. Lineariteit

De schakeling is goed lineair. Dat was ook wel te verwachten, omdat de gebruikte D/A-convertors van het zelfde type zijn. De gelijkspanningsmeting geeft dit goed aan.

De meting van de effectieve waarden geeft enigzins aan, in hoeverre de schakeling kan volgen. Het is daar echter geen geldig criterium voor (zie appendix). Zij geven niet de lineariteit aan, ook al is het verband tussen in- en uitgangsspanning lineair. Dit heeft te maken met de manier waarop de schakeling gebruikt gaat worden. Als er slechts een universeelmeter of andere meter voor effectieve waarden op aangesloten wordt, is de schakeling ook nog goed lineair.

5.5.2. De looptijd

De gemeten looptijd is 8.3us. Dit is voor de meeste toepassingen te groot. De conventionele Vc-piek predictor introduceert zelf namelijk ook een looptijd. De twee looptijden samen zouden de werking van de convertor kunnen verstoren.

Waar komt deze looptijd vandaan? Deze looptijd is in twee delen te splitsen, te weten

  • de frequentie-afhankelijke en
  • de frequentie-onafhankelijke

Het frequentie-afhankelijke gedeelte is afkomstig van de turbo A/D-convertor. in de appendix over de tracking A/D-convertors is uitgelegd, hoe deze afhangt van de frequentie en het criterium om over te schakelen naar een grotere stap.

Juist het criterium voor de stapvergroting zorgt hier voor de extra vertragingstijd. Als extreem voorbeeld hebben we dit criterium rond de 60VU (Volt Units, zie de appendix voor de definitie) gelegd, terwijl de tweede stapgrootte 8 bleef. Op de opgaande flank van de sinus lieten we het criterium ongewijzigd, zodat het uitgangssignaal en het ingangssignaal op het zelfde punt beginnen. We krijgen dan het volgende beeld:

elektro-0025.jpg

In de figuur zien we een sinus als ingangssignaal. De A/D-convertor probeert de sinus te tracken met stapgrootte 1. Doordat het criterium te groot is afgesteld, wordt te laat overgeschakeld op de stapgrootte 8. Hierdoor krijgen we een verschuiving van de nuldoorgang, die te vertalen is in een looptijd.

Het frequentie onafhankelijke gedeelte zit voornamelijk in de zend- en ontvangstlogica. Deze heeft namelijk een aantal klokpulsen nodig om het gehele sample te ontvangen. Als we de weg van een sample volgen vinden we:

Digitale vertraging
omschrijving
klokpulsen
Laden uitgangsregisters A/D-convertor
1
Zenden van het sample
16
Flipflop aan de uitgang van de multiplexer
1
Synchronisatie van de ontvanger
1
Laden uitgangsregisters ontvanger
1
Totaal
20

Een klokpuls is 0.16us, dus de vertraging van de zender/ontvanger is rond de 3.3us.

De A/D-convertor heeft dus een vertragingstijd van rond de 5us. Theoretisch zou dat kleiner moeten zijn. Er moet echter bij de instelling van het criterium rekening gehouden worden met stabiliteit en ruis.

5.5.3. Maximale frequentie

De A/D-conversie heeft een maximale frequentie. Voor de maximale frequentie is in de appendices een formule gegeven. Deze was:

block/complete.in.2.svg

waarin block/complete.in.36.svg de tweede stapgrootte is. Deze tweede stapgrootte is bij de twee proef EPLD’s 4 resp. 8. Voor de stapgrootte van 4 vonden we een fmax van iets onder de 20kHz. Als we dit volgens de theorie uitwerken vinden we met een amplitude van 100VU:

block/complete.in.3.svg

waarbij block/complete.in.37.svg gegeven is in 1/kloktic. Omdat de A/D-conversie met de halve klokfrequentie gebeurt (1 kloktic = 2 klokpulsen), vinden we voor de lengte van een kloktic block/complete.in.38.svg

block/complete.in.4.svg

Voor de block/complete.in.39.svg in de SI-eenheden vinden we dan:

block/complete.in.5.svg

Hierbij is aangenomen dat de spanning practisch het volledige bereik (+100VU) beslaat. Het werkelijke bereik is 111 VU. De omzetting van Volt Units in Volt is op zich niet interessant.

Voor de turbo-counter met als tweede stapgrootte 8 geldt een zelfde berekening. We vinden hier:

block/complete.in.6.svg

De bruikbaarheid bij deze hogere frequentie’s is beperkt. De sample-rate aan de uitgang is namelijk 6.144MHz/22 = 280kHz. Bij 38kHz hebben we per periode van de sinus dus nog slechts zo’n 7 samples over. Het is dus te betwijfelen of op grond hiervan gebruik gemaakt kan worden van de conventionele regel-algoritmen.

5.5.4. Bruikbaarheid

De schakeling is als zodanig niet geschikt voor gebruik in de huidige convertors. De looptijd is te groot, en er worden te veel fouten gemaakt, wat te vertalen is in een hoge ruisspanning.

In de volgende hoofdstukken zullen we een aantal wijzigingen bespreken en hun effecten bekijken. Het gebruik van glasvezel is echter niet meer zo vanzelfsprekend als aan het begin van het afstuderen.

6. Redesign

6.1. Inleiding

In elk ontwerp worden keuzes gemaakt, die later slecht uitkomen. Een aantal moet direct gecorrigeerd worden om het functioneren van de schakeling niet in gevaar te brengen. Andere behoeven slechts te worden bijgesteld.

Uiteindelijk komen er dan bijstellingen op bijstellingen. Door andere keuzes in het begin te maken, waren deze bijstellingen niet nodig geweest.

In dit hoofdstuk worden de ontwerpkeuzes geëvalueerd. Voor een aantal zal een alternatief geboden worden. Ze zijn echter niet uitgevoerd.

6.2. Snelheid

De snelheid van de schakeling laat nogal te wensen over. Er zijn een aantal wijzigingen mogelijk die de snelheid verhogen. We zullen er drie bespreken.

6.2.1. A/D-conversie

De A/D-conversie introduceert een looptijd. Deze looptijd is inherent aan de algoritme van de A/D-convertor. Door de A/D-conversie op de gewone klok te laten lopen, kan deze looptijd gehalveerd worden. Er zijn dan echter andere comparators en een andere D/A-convertor nodig, die de snelheidsvergroting aankunnen. De deling van de klokfrequentie is namelijk nodig om de werking van de comparators met de D/A-convertor te verzekeren.

Het is logischer om een andere A/D-convertor te nemen. Als alternatief bestaat de flash-A/D-convertor. Populaire flash A/D's halen makkelijk een samplerate van 16MHz. Op het ogenblik kan de glasvezelzender dat nog niet verwerken. De samples introduceren dan geen echte looptijd. Bovendien is de positie van de samples dan altijd bekend.

Ook kan men een fixed stepsize tracking-A/D-convertor nemen. Deze heeft namelijk niet de vertragingstijd die inherent is aan een tweede stapgrootte. Hij kan dan op een hoge frequentie draaien. Als we snelle comparators en een snelle A/D-convertor gebruiken, is een klokfrequentie van 25MHz mogelijk, waardoor de maximaal te volgen frequentie rond de 40kHz komt te liggen.

6.2.2. De verzending

Ook de verzending is niet ideaal. Dit is grotendeels te danken aan de prijs van de glasvezels. Doordat deze zo hoog is, is het nodig om alle informatie asynchroon over een glasvezel te sturen.

Een manier om de duur van de verzending te verkleinen is de beperking van het aantal bits. Op het ogenblik hebben we een resolutie van 8 bits. We sturen 3 start/stopbits mee. Totaal dus elf bits, met een snelheid van 3Mbaud. Als we de resolutie terug brengen naar 6 bits reduceren we de transmissie tijd met zo’n 18%.

Het verlies van de twee bits lijkt dramatisch. Echter, de huidige klokfrequentie van een besturing is 2MHz. Als we de amplitude van de condensatorspanning 100VU stellen en de convertor frequentie op 20kHz vinden we dat op het grootste gedeelte van de resonante puls het verschil tussen twee samples groter is dan vier. Hieruit volgt, dat het verlies in precisie niet zo erg is als het lijkt. Bovendien is de ruis van de glasvezel al meer dan 4LSB.

Ook zouden we kunnen denken aan een synchroon startende klok voor de ontvanger. De klok wordt dan echter veel gecompliceerder. De snelheidswinst is een factor twee.

Als we echter opto-couplers gebruiken, kunnen het hoogspanningsdeel en het laagspanningsdeel gesynchroniseerd worden. We kunnen dan met de hele klokfrequentie zenden, in plaats van de halve. Bovendien zijn de start en stopbits dan niet meer nodig.

Maar als er toch opto-couplers gebruikt worden, kan er ook overgestapt worden naar parallel zenden. De snelheidsbeperking wordt dan de A/D-conversie en niet de transmissie.

Als het scheidend vermogen voor common-mode spanningen van opto-couplers te laag wordt geacht, kan men denken aan zelf geconstrueerde glasvezel zenders en ontvangers.

Ook kan men denken aan een half-parallel systeem. Zo kan de klok van het laagspanningsdeel naar het hoogspanningsdeel gevoerd worden. Via twee vezels (een voor de oneven bits, een voor de even) kan dan de data verstuurd worden.

7. Alternatief zonder vezel

7.1. Inleiding

Er is reeds gezegd, dat de glasvezel niet meer zo vanzelf spreekt, als in het begin van het afstuderen. Daarom zal ik een ontwerp presenteren zonder glasvezel.

Het in dit hoofdstuk beschreven ontwerp maakt gebruik van een flash-A/D-convertor met zes bits resolutie. De flash-A/D-convertor haalt een frequentie van 16MS/s. De samples worden parallel over zes opto-couplers verzonden. Een zevende opto-coupler zorgt voor de klok van de flash-A/D.

De prijs van dit systeem is lager dan die van het ontwikkelde systeem. De resolutie is echter ook twee bits lager. Eventueel kunnen een grotere A/D-convertor (tot 8 bits) en extra opto-couplers gebruikt worden. De tijd resolutie is een factor 30 hoger.

7.2. Ontwerp

Op de volgende bladzijde staat een globaal ontwerp van een parallel-zendend systeem. Het voedingsgedeelte is niet getekend, omdat er hiervoor toch weer het zelfde schema uit de kast kan worden getrokken.

Er is weer het onderscheid te maken tussen het hoogspanningsdeel en het laagspanningsdeel. Het hoogspanningsdeel bestaat weer uit een A/D-convertor en een zender. De zender bestaat hier uit een aantal opto-couplers met hun sturing.

Voor de A/D-convertor hebben we een flash-type gekozen, omdat deze niet de, aan de turbo inherente, looptijd heeft. Bovendien hebben we slechts zes bits resolutie. Een flash met zes bits resolutie is niet alleen veel goedkoper, maar heeft ook twee opto-couplers met sturing minder nodig, in vergelijking met een acht bits versie.

De ontvanger bestaat uit de ontvangstzijde van de opto-couplers. De ontvanger bepaalt ook, wanneer er samples genomen moeten worden. Hiervoor is een aparte opto-coupler opgenomen. Al met al ziet de schakeling er simpel uit.

elektro-0030.jpg

Natuurlijk moeten voor werkelijke toepassing aan de in- en uitgang opamps geplaatst worden om de juiste spanningsverhoudingen te krijgen. De fabrikant van de A/D- en D/A-convertors geeft in zijn databoek aan hoe dit moet gebeuren.

7.3. Prijs

We hebben nu een systeem, dat weliswaar twee bits minder precies is, maar wel een factor 30 sneller. Hoe zit het nu met de prijs?

Voor een flash A/D-convertor van zes bits betalen we zo’n £105,-. De opto-couplers (3kV d.c., 1kV/us, 10Mbaud) kosten rond de acht gulden. Met een D/A-convertor erachter komen we uit rond de £180,-.

Het blijkt dus, dat een parallelle opzet goedkoper is dan een seriële.Het prijsverschil is gedeeltelijk te danken aan de verminderde precisie en voor een ander deel aan het ontbreken van zend- en ontvangstlogica.

Componentenlijst van het parallelle systeem

Item
Quantity
Reference
Part
cem-code
1
1
ic2
D/A
los bestellen
2
1
ic1
ZN440
los bestellen
3
1
ic3
7400
01.709.1000
4
1
r1
390
02.110.3339
5
2
r2,r3
470
02.110.3347
6
1
c1
390pF
03.111.0339
7
1
c2
100uF
03.215.9310
8
7
o1,o2,o3,o4,o5,o6,o7
6N135
01.372.4350
9
1
x
6.144MHz
03.910.0614

8. Alternatief met vezel

8.1. Inleiding

Alhoewel de glasvezel niet meer zo vanzelfsprekend is, behoeven we hem nog niet weg te gooien. Er zijn namelijk een aantal verbeteringen mogelijk, die de snelheid ongeveer verdrievoudigen en het grootste gedeelte van de looptijd wegnemen.

Overigens kan het raadzaam zijn om wat meer aandacht aan de vezel transmissie zelf te besteden. Het is namelijk best mogelijk, dat met losse componenten voor een zelfde prijs een betere performance gehaald kan worden, zij het dan misschien over kortere afstanden.

8.2. Ontwerp

In dit hoofdstuk bespreken we een ontwerp van een serieel zendend systeem. Het stuurt 6 databits / sample over de glasvezel, en 3 start/stopbits. De data komt uit een flash-A/D-convertor.

De schakeling lijkt veel op de gebouwde schakeling. De tracking A/D-convertor is vervangen door een flash. De flash heeft geen go of load nodig, maar wel een sample- opdracht. De uitgangsregisters kunnen dus ook vervallen.

De zender-multiplexer hoeft in plaats van acht slechts zes databits te verzenden. Hierdoor kunnen vier toestanden verdwijnen.

De klokfrequentie wordt 18.4MHz. De EP310 kan dit namelijk wel aan (in tegenstelling tot de EP1210). Hierdoor kunnen we met 9.2Mbaud over de glasvezel zenden. Dit levert ons 9.2 /(6 databits +3 start/stopbits) = 1 MSample/sec. op, tegen nu 3.07/11 =280kS/sec. We zitten dan ruim een factor drie hoger.

De ontvanger kan in wezen het zelfde blijven. Het tellen ven de databits gebeurde al extern. Alleen de interactie tussen de teller en receiver EPLD moet veranderen. De EPLD kan niet meer wachten op RCO. in plaats daarvan zal hij reageren op de stand elf. Na afloop moet hij de teller resetten.

elektro-0033.jpg

8.3. Kosten

Wat gaat zo’n glasvezelsysteem kosten? De kosten wijzigen nauwelijks ten opzichte van het gebouwde systeem. De prijs van de zes-bits flash-AD-convertor is ongeveer gelijk aan de acht bits turbo. Het grootste gedeelte van de schakeling blijft ongewijzigd, althans qua onderdelen. Als richtprijs kan dus weer fl.525,- worden aangehouden.

Mocht de glasvezel vervangen worden door een opto-coupler, dan daalt de prijs tot zo’n fl.250,-.

Componentenlijst voor het tweede alternatief

Item
Quantity
Reference
Part
cem-code
1
1
ic10
ZN428
los bestellen
2
1
ic1
ZN440
los bestellen
3
2
ic4A, ic4B
7474
01.710.0074
4
1
ic3
74LS00
01.710.2000
5
3
ic6,ic8,ic9
74LS163 01.710.2163
6
1
ic7
74LS322
01.510.2322
7
2
ic2,ic5
EP310
01.727.2112
8
2
r1,r2
470
02.110.3347
9
1
c1
470pF
03.111.0347
10
1
x1
18.432MHz
03.910.1843

9. Conclusie

Het werken met glasvezels is niet de simpele oplossing die het in het begin leek. de gebruikte glasvezel is duur en relatief gevoelig voor storingen.

De oplossing, zoals die aan het begin gesuggereerd werd, voldoet helemaal niet. Het gebruik van tracking A/D-convertors introduceert te veel vertragingstijd om nog toegepast te kunnen worden op dit gebied. Hoewel ik nogal wat tijd besteed heb aan de tracking A/D-convertors, moet ik hun gebruik toch afraden.

Het is mogelijk om de huidige schakeling in combinatie met de, in de appendix beschreven, First Phase Predictor te gebruiken. Ik heb in de appendix echter alleen een aanzet willen geven tot de ontwikkeling ervan.

Voor gebruik in de huidige omstandigheden is het eerste alternatief, parallelle transmissie, misschien het aantrekkelijkst. De eenvoudige opzet maakt het mogelijk om het geheel compact te bouwen (b.v. op een eurokaart). De gevoeligheid voor common-mode spanningen is echter nogal afhankelijk van het gebruikte type opto-coupler.

Mocht er behoefte zijn aan ongevoeligere schakelingen (voor common-mode), dan kan het tweede alternatief gekozen worden. Er moet dan wel aandacht besteed worden aan de glasvezel. Het gekochte setje van Hirschmann is te gevoelig voor invloeden van buitenaf. Bovendien is het duur. Eventueel kan gedacht worden aan een eigen constructie voor de glasvezeltransmissie.

De vraag dient zich dan aan, waarom de PTT, bijvoorbeeld, wel glasvezels gebruikt. Daar wordt gewerkt met echt glas, terwijl wij vanwege de prijs met plastic werken. Tussen de centrales wordt de communicatie met custom IC’s geregeld. Met duurdere vezels en ECL is dan een hogere baudrate te halen.

Voor datalijnen naar een eindgebruiker komt de baudrate niet boven de 144kBaud (gegevens: 5ESS-PRX centrale van APT). Er wordt gebruik gemaakt van fout-corrigerende codes. De reconstructie van spraak is niet zo fase-gevoelig als onze meetsignalen, waardoor volstaan kan worden met een lagere samplerate.

A. Optisch meten

A.1. Inleiding

Men kan niet schrijven over het meten met glasvezels zonder het optisch meten te beschouwen. Optisch meten wordt gebruikt in omgevingen die aanleiding geven tot veel storing (zoals het nagloeien van vermogensschakelaars). Het is echter niet de bedoeling hier te diep op in te gaan, omdat dit slechts zijdelings te maken heeft met het werkelijke afstudeer project.

De belangrijkste referentie’s van het optisch meten van spanningen kan men vinden bij de KEMA.

A.2. Principe

Een aantal optisch isotrope materialen wordt onder invloed van een elektrisch veld anisotroop. Een voorbeeld hiervan is bismutgermanaat block/complete.in.40.svg Als een dergelijk kristal tussen twee polaroid filters wordt geplaatst, blijkt dat er een verband is tussen het elektrisch veld, in de onderstaande tekening opgewekt door een condensator, en de lichtsterkte aan de uitgang.

elektro-0037.jpg

De gemeten lichtsterkte aan de uitgang is echter niet lineair. Het blijkt dat de lichtsterkte evenredig is met (1-cos a), waarbij a evenredig is met het elektrisch veld. Als er echter twee sensoren gebruikt worden, een in de richting output ellips ( block/complete.in.41.svg in mV) en een er loodrecht op ( block/complete.in.42.svg in mV), dan blijkt

block/complete.in.7.svg

waarbij k varieert tussen de 0.03 en de 0.2 cm/kV en block/complete.in.43.svg en block/complete.in.44.svg de uitgang van de licht-gevoelige sensoren zijn op een willekeurige schaal.

Voor de cellen, zoals de KEMA die gebruikt gelden de volgende gegevens:

Range
670V
Noise level
0.1V, 1kHz bandwidth
10V, 10MHZ bandwidth

Helaas zijn er nog een aantal andere problemen, die voortkomen uit het gebruik ven de kristallen. Als belangrijkste zijn er het piëzo-electrische effect en de elektrische oscillatie. Beide blijken grotendeels te verdwijnen, als het kristal op een bepaalde manier wordt geslepen.

A.3. Conclusie

Het optisch meten van spanningen is goed mogelijk. Men moet dan gebruik maken van speciale apparatuur, die echter niet zo duur hoeft te zijn (b.v. een LED als lichtbron). Sensoren van dit type zijn helaas nog niet kant en klaar in de handel.

Het probleem is echter het slijpen van kristallen. De kristallen moeten zo geslepen worden dat de licht bron en de uitgangsvezels makkelijk aan te koppelen zijn (zonder te veel verlies).

De sensoren zijn nog niet te koop. Een prijsindicatie is daarom moeilijk te geven.

B. Tracking A/D-convertors

B.1. Inleiding

Tijdens het ontwerp van de schakeling werden een aantal A/D-convertors genoemd. Tijdens het afstuderen is nogal wat aandacht besteed aan een bepaald type, namelijk de tracking A/D-convertor. in deze appendix zullen we een aantal tracking A/D-convertors behandelen. Ook zullen we onze keuze, de Turbo, toelichten.

Bovendien zullen we een aantal simulaties van de algoritmen laten zien. Tenslotte zullen we de problemen met de bouw van een Fixed step aanstippen en een aantal meetgegevens presenteren.

In deze appendix worden geen SI-eenheden gebruikt. Dat zou namelijk onhandig rekenen zijn. in plaats daarvan gebruiken we de eenheden bit en klokpuls.

De gegevens in de literatuur zijn tamelijk beperkt. Tracking A/D-convertors worden weinig toegepast, omdat vaak multiplexers voor de A/D-convertor worden geplaatst. Dit is niet goed mogelijk bij tracking A/D-convertors, omdat deze uitgaan van een continue signaal.

B.2. Het principe

Voordat we beginnen met berekeningen en simulatie resultaten, zullen we eerst het principe van de tracking A/D-convertor uit- leggen.

elektro-0039.jpg

In zijn meest eenvoudige vorm bestaat de tracking A/D-convertor uit een teller, een D/A-convertor en een comparator. De com- parator vergelijkt de ingang met de digitale representatie, in bepaalt dan of de teller omhoog of omlaag moet tellen. Alle andere versies zijn hiervan afgeleid.

Er zijn een aantal verbeteringen aan te brengen. Allereerst kunnen we de teller ook de keuze geven niet te tellen. Als de spanning op de ingang namelijk minder dan een bit verschilt, gaat het hierboven beschreven ontwerp heen- en weer tellen. Hieraan is verder geen aandacht besteed.

Ook kunnen we op een aantal manieren de stapgrootte van de teller beinvloeden. De hierboven beschreven versie noemen we in goed nederlands fixed stepsize. We kunnen echter ook twee stapgroottes nemen. Als de ingang dan ver van de representatie verwijderd is, kan er met grote stappen heen gelopen worden. Dit noemen we een dual stepsize, door mij tot Turbo gedoopt.

Tenslotte kan er voor de stapgrootte een apart register genomen worden. Dit kan b.v. een teller of een schuifregister zijn. We noemen de A/D-convertors dan counting step respectievelijk shifting step.

B.3. Mathematische achtergronden

B.3.1. Definities

Het is altijd prettig om met vastgestelde termen te werken. Daarom zullen we nu de termen die we gebruiken definieren.

Afstand
Onder afstand tussen twee signalen verstaan we het verschil in waarde, die de gedigitaliseerde signalen zouden hebben. Omdat we als eenheid de VU (= 1Bit spanningsverschil) gebruiken, is dit altijd een integer.
c
De waarde van het uitgangssignaal van de A/D-convertor.
Ingeleide beslissing
Het besluit (b.v. om op te tellen of af te trekken) moet eerder (meestal 1/2 klokpuls) eerder genomen worden dan de handeling kan geschieden. Zie ook momentane beslissing.
Inhaal effect
Het effect wat ontstaat als de uitgang van een Turbo meer dan een referentie verschilt van de spanningswaarde.
Momentane beslissing
Beslissing (om op te tellen of af te trekken) komt op het moment waarop de handeling zal moeten geschieden.
S
Stapgrootte. Bij sommige algoritmen is deze variabel.
U
De te meten spanning.
Volgen
Onder volgen verstaan we het houden van een afstand die kleiner is dan de maximale stapgrootte die de A/D-convertor op dat ogenblik kan maken.
VU
Volt Unit, het spanningsverschil dat overeen komt met een bit.

B.3.2. De fixed step

Voor het maximaal te volgen signaal geldt:

block/complete.in.8.svg

Hoe komen we nu aan deze formule? Allereerst is de maximale stap 1. Door nu te stellen dat er op het moment van de klokpuls pas beslist wordt, of er opgeteld of afgetrokken moet worden, komen we dus tot het vorige resultaat. Het is echter zo, dat de sigalen naar de besturing gesynchroniseerd moeten worden. Dit gebeurt met een tegengestelde klok. De werkelijke beslissing om op te tellen of af te trekken valt dus een halve klokpuls eerder. De feitelijk toelaatbare helling wordt hierdoor niet kleiner, maar de gesommeerde absolute fout wel.

We kunnen voor de fixed-stepsize ook proberen een lineair model op te stellen. Dit is alleen mogelijk, omdat er geen vreemde sprongen in de stapgrootte aanwezig zijn. We zullen zo’n model ook opstellen voor de counting-step. Voor de turbo en de shifting step is dat echter onmogelijk.

elektro-0041.jpg

De geldigheid van dit model is echter zeer beperkt. Het dient alleen ter bepaling van de gedachten. Wel kan men zien, dat de fixed-stepsize altijd stabiel is.

Wat is de maximale frequentie voor een fixed-stepsize? Als we de schakeling uitvoeren met TTL-tellers, is hiermee een klokfrequen- tie van 25MHz te halen. We vinden dan dt=40ns. We nemen aan dat het ingangssignaal block/complete.in.45.svg is. We vinden dan dat W=0.01 (maximaal). De maximale frequentie wordt dat 1.6mHz. Dit is 1/klok- puls. Voor de maximale frequentie in SI-eenheden vinden we 40kHz.

B.3.3. De Turbo

Omdat geen lineair model van de Turbo te maken is, zullen we eerst de algoritme van de turbo bepalen:

for(EVERY CLOCKCYCLE) {
	if (abs(c-U) > 4)
		S=7;
	else
		S=1;

	if (c>U)

		C-=S;
	else
	
		C += S;
}

De Turbo lijkt op de fixed step, maar de maximale stapgrootte is beduidend groter (hier 7), zodat geldt:

block/complete.in.10.svg

Belangrijk om te weten is, dat de fout bij bepaalde afgeleiden groter is dan bij andere. Laten we b.v. aannemen dat dU/dt=1.01. Dan slaat de turbo pas na een groot aantal stappen aan. De mathematische formule voor het verband tussen dU/dt en n (het aantal stappen voordat de turbo aanslaat) is:

block/complete.in.11.svg

mits block/complete.in.46.svg

Deze formule is eenvoudig te verifieren door de effecten te tekenen. De 4 is de afstand waarbij de turbo aanslaat. in ons voorbeeld vinden we dus n=400. Voor de gesommeerde fout vinden we dan:

block/complete.in.12.svg

Deze formule geeft de oppervlakte aan van de driehoek die gevormd wordt door het signaal, de lijn U=t (maximale helling zonder turbo) en de turbo-sprong.

elektro-0043.jpg

n de figuur zien we twee driehoeken. Een gevormd door de ingangsspanning, de lijn t=n en de tijd as, de ander gevormd door de teller waarde (C), de lijn t=n en de tijd as. Het verschil tussen deze driehoeken is de fout.

Deze formule is alleen geldig als dU/dt constant is, en geeft slechts de fout weer over de tijd t=0 tot t=n. Als dU/dt niet constant is, wordt de berekening beduidend lastiger, en zullen we onze toevlucht moeten nemen tot computer simulaties (dat is dus ook gebeurd).

De fout bij sinussen is deels te vertalen in een looptijd. Doordat het een tijdje duurt voordat de turbo aanslaat, zullen de nuldoorgangen in tijd verschoven worden. De looptijd is afhankelijk van de grootte van de turbo-sprong, het criterium waarop de turbo aanslaat en de grootte van de afgeleide van block/complete.in.47.svg In de volgende figuur zien we een sinus, en de representatie ervan. Om het effect van de looptijd te illustreren is het criterium om de tweede stapgrootte te kiezen iets vergroot. De sinus op de ingang was rond de 100 VU bij een frequentie van rond de 5MHz.

elektro-0044.jpg

Voor bepaling van de looptijd doen we de volgende aannames:

  • de looptijd is constant,
  • de looptijd wordt alleen veroorzaakt door de later startende turbo-sprong,
  • block/complete.in.48.svg is bij benadering sinusvormig.

We berekenen de looptijd op de neergaande flank. Als ingangssignaal kiezen we block/complete.in.49.svg De turbo slaat aan als

block/complete.in.13.svg

Criterium is de waarde waarbij de turbo aanslaat. We noemen dit criterium block/complete.in.50.svg Voordat de turbo aanslaat geldt block/complete.in.51.svg We vinden dan de volgende formule:

block/complete.in.14.svg

Stellen we bijvoorbeeld dat W=0.04, A=100 en block/complete.in.52.svg dan vinden we voor de looptijd t= 3.2. Omdat de schakeling synchroon is, wordt dit t=4. (W=0.04 is te vergelijken met een sinus van 20kHz en een klok van 3MHz.) Vaak zal het criterium echter groter moeten worden afgesteld dan de tweede stapgrootte.

B.3.4. De counting step

In plaats van een vaste tweede stapgrootte kunnen we er ook een teller zetten. De algoritme van de counting step is dan:

for (EVERY CLOCKCYCLE) {
	if ( c-u > s )
		s++;
	else
		s--;
	c -= s;
}

Doordat de teller van de stapgrootte ook negatief kan worden, is het niet nodig om te kijken of opgeteld of afgetrokken moet worden. Dit bespaart weer een comparator.

Van de counting-step kunnen we weer een lineair model maken, met de zelfde restricties als bij de fixed-stepsize. Ook hier volgt weer uit het lineaire model dat de counting step in principe stabiel is (voor zover het lineaire model geldig is).

elektro-0045.jpg

De counting step en de shifting step zijn van een hogere orde dan de fixed stepsize en de turbo. Dit is het eenvoudigst te laten zien bij de counting step.

We zien, dat door de stapgrootte in een teller te zetten, dat

block/complete.in.16.svg

Bij de fixed en turbo zagen we al, dat dS/dt de maximale afgeleide van de spanning is. We vinden dus voor de maximaal te volgen spanning:

block/complete.in.17.svg

We zien hier ook, dat het begrip "volgen" voor de counting step niet meer gerelateerd is aan de optredende fout.

B.3.5. De shifting step

De shifting step heeft een schuifregister waarmee de stapgrootte bepaald wordt. De stapgrootte kan op die manier verdubbeld of gehalveerd worden. De algoritme is als volgt:

for (EVERY CLOCKCYCLE) {
	if (abs(c-u) > 25)
		s *= 2;
	else
		s /= 2;
	
	if (c > u )
		c -= s;
	else
		c += s;
}

De shifting step kan instabiel worden. Het criterium voor het verdubbelen van de stap is van grote invloed op de stabiliteit (echter ook op de snelheid...). De instabiliteit kan beperkt worden door de stapgrootte te begrenzen.

Bovendien is gebleken, dat het foutsignaal in de meeste gevallen van de zelfde orde grootte is als die van de turbo. Het blijkt echter zeer lastig om een analytische uitdrukking te vinden.

B.4. Ervaringen met de bouw van een proefmodel

Om te zien of de simulaties en de opgesteld theorie kloppen hebben we een tracking A/D- convertor gebouwd. Hiermee hebben we een aantal problemen gevonden en opgelost. Bij het bouwen wilden we eerst gebruikmaken van snelle comparators (4Mhz). Deze bleken snel te oscilleren. Mede vanwege de status van de schakeling (proef) werd er besloten op veel lagere frequentie te werken.

Vanaf het begin aan werd de schakeling in een vastgestelde volgorde samengesteld, en stap voor stap door gemeten. De volgorde was:

  • c-registers;
  • D/A-convertor;
  • comparators
  • koppeling van de comparator aan het c-register.
elektro-0047.jpg

Omdat we in dit proefmodel slechts werkten met spanningswaardes zoals die uit de D/A-convertor kwamen, verdwenen de 4VU’s die voor de vergelijking nodig waren in de ruis weg. Bovendien bleken de gebruikte comparators enige hysterese te hebben.

Bij de proefopstelling maten we de ingangsspanning van de A/D- omzetter en de uitgangsspanning van de D/A-omzetter. Deze uit- gangsspanning is namelijk een analoge maat voor de inhoud van het c-register. Beide werden zichtbaar gemaakt op de oscilloscoop.

Bij de meting werden de volgende apparaten gebruikt:

  • Philips pulsgenerator PM5712
  • Sinus generator Wavetek VCG Model III
  • Philips scoop PM3233
  • digitale multimeter Fluke 8010A
  • Analoge multimeter Unigor

Het ingangssignaal van de A/D werd ingesteld op 2V(piek-piek)+1V DC. Dit werd voor elke meting gedaan. De klok werd ingesteld op 100kHz en vervolgens opgeregeld. Zodra de nuldoorgangen op de scoop zichtbaar verschilden was de maximale frequentie bereikt. De meting werd drie maal herhaald. Als maximaal te meten frequentie vonden we 160Hz, 155Hz en 150Hz.

Volgens de theorie wordt dit block/complete.in.53.svg of block/complete.in.54.svg

We weten dat:

block/complete.in.19.svg

Met een klok van 100kHz is dt = 10 us, dus

block/complete.in.20.svg

Met een sinus met een amplitude van 1 V vinden we:

block/complete.in.21.svg

Het blijkt, dat de meetresultaten redelijk overeenstemmen met de theorie. Hierbij moeten we wel opmerken dat tijdens het meten de signalen op het oog zijn beoordeeld.

B.5. De simulatie

Om de convertor-algoritmen op hun merites te beoordelen, is een BBC-BASIC programma geschreven, dat de convertors simuleert. Het programma reset de convertor en laat hem dan over twee periodes van een sinus met een amplitude van 100 lopen. De gevonden fouten staan in de tabel hieronder.

De kolom STEPS geeft het aantal stappen aan, dat de convertor doet in de twee periodes van de sinus. SUM is de gesommeerde absolute fout op de sample tijdstippen, gemiddeld over het aantal stappen. MAX is de maximale afstand tot het signaal. Bij de foutberekening is geen rekening gehouden met fasedraaiing.

Resultaten van de simulatie.

STEPS
FIXED
TURBO
SHIFT
COUNT
SUM
MAX
SUM
MAX
SUM
MAX
SUM
MAX
10
98.02
94.11
58.42
88.11
60.15
95.11
82.62
95.11
20
50.17
57.78
11.30
51.78
20.57
58.78
24.94
58.78
30
25.50
39.67
3.73
33.67
19.78
40.67
10.24
40.67
40
11.68
29.90
1.84
23.90
6.81
30.90
5.68
30.90
50
6.20
23.87
1.21
17.87
3.89
24.87
3.46
24.87
60
3.77
19.79
0.83
13.79
8.77
20.79
1.92
20.79
70
2.54
16.86
0.76
10.86
8.48
17.86
1.92
17.86
80
1.85
14.64
0.62
8.64
8.25
15.64
1.70
15.64
90
1.43
12.92
0.58
6.92
2.42
13.92
1.73
13.92
100
1.17
11.53
0.56
5.53
0.91
12.53
1.03
12.53
110
0.99
10.40
3.54
4.40
1.31
11.40
1.09
11.40
120
0.88
9.45
0.55
3.45
4.16
10.45
1.67
10.45
130
0.79
8.65
0.53
2.65
4.13
9.65
0.71
9.65
140
0.73
7.96
0.51
1.96
4.11
8.96
1.41
8.96
150
0.68
7.37
0.51
1.37
4.09
8.37
1.39
8.37
160
0.65
6.85
0.51
0.85
4.07
7.85
0.69
7.85
170
0.62
6.39
0.50
0.61
4.06
7.61
0.67
7.39
180
0.60
5.98
0.50
0.98
1.08
6.98
0.73
6.98
Loe
0.58
5.61
0.50
0.61
1.07
6.61
0.71
6.61
200
0.57
5.28
0.50
0.72
1.06
6.28
0.70
6,28
210
0.56
4.98
0.50
1.02
0.57
5.98
0.55
5.98
220
0,55
4.71
0.51
1.29
0.56
5.71
0.55
5.71
230
0.54
4.46
0.51
1.54
0.55
5.46
0.55
5.46
240
0.54
4.23
0.51
1.77
0.55
5.23
0.55
5.23

Ter orientatie: de gebruikte A/D-convertor heeft een klok van 3MHz. De ingangsspanning is 20kHz, wat ons rond de 25 stappen per periode, dus 50 per dubbele periode oplevert.

Het blijkt dus, dat de turbo niet alleen veel eenvoudiger qua opzet is, maar ook betere resultaten geeft dan de shift en de count.

Verder kan men in de tabel een piek in de fout zien rond de 110 stappen per dubbele sinus. Deze piek is het gevolg van het net niet/net wel vergroten van de stap, als dit net wel/net niet moet.

B.6. Listing van het simulatie-programma


 10 MODE3
 20 PRINT "STEPS FIXED TURBO SHIFT" COUNT"
 21 PRINT " SUM MAX SUM MAX MAX SUM MAX"
 30 FOR STP$=10 TO 1000 STEP1O
 31 @%=&303
 32 PRINT ,STP%;
 40 @%=&020208
 50 PROCSIN
 6O FOR I%=0 TO STP%
 70 U=100*SIN(4*PI/STP%)
 8O PROCADFIX
 9O SUMMAX=SUMMAX+ABS(C%-U)
 10O IF ERMAX<ABS(C%-U) THEN ERMAX=ABS(C%-U)
 11O NEXT
 120 PRINT, SUMMAX/STP%, ERMAX;
 130 PROCSIN
 140 FOR I%=0 TO STP%
 150 U=100*SIN(4*PI/STP%)
 160 PROCADTURBO
 17O SUMMAX=SUMMAX+ABS(C%-U)
 180 IF ERMAX<ABS (C%-U) THEN ERMAX=ABS (C%-U)
 190 NEXT
 200 PRINT,SUMMAX/STP%, ERMAX;
 210 PROCSIN
 220 FORI%=0 TO STP%
 230 U=100*SIN(4*PI/STP%)
 24O PROCADSHIFT
 250 SUMMAX=SUMMAX+ABS (C%-U)
 260 IFERMAX<ABS (C%-U) THEN ERMAX=ABS (C%-U)
 27O NEXT
 280 PRINT, SUMMAX/STP%,ERMAX;
 290 PROCSIN
 300 FORI%=0 TO STP%
 310 U=100*SIN(4*PI/STP%)
 320 PROCADCNT
 330 SUMMAX=SUMMAX+ABS (C%-U)
 340 IF ERMAX<ABS (C%-U) THEN ERMAX=ABS (C%-U)
 350 NEXT
 360 PRINT, SUMMAX/STP%, ERMAX;
 37O PRINT
 380 NEXT
 390 END
 40O DEFPROCADFIX
 41O IF U>C% THEN C%=C%+1 ELSE C%=C%-1
 420 ENDPROC
 430 DEFPROCADTURBO
 440 IFU>C%+4 THEN C3%=C%+7: ENDPROC
 450 IFU>C% THEN C%=C%+1:ENDPROC
 460 IFU<C%-2 THEN C%=C%-7 : ENDPROC
 470 C%=C%-1: ENDPROC
 480 DEFPROCADSHIFT
 490 LOCAL SN%
 5OO IF ABS(C%-U)>S% THEN SN%=2*S% ELSESN%=S%/2
 51O IF SN3<1 THEN SN%=1
 520 IF SN%>256 THEN SN%=256
 530 IF C%<U THEN C%=C%+S% ELSE C$=C%-S%
 540 S%=SN%
 550 ENDPROC
 560 DEFPROCADCNT
 570 LOCAL SN%
 580 IF C%+S%<U THEN SN%=1+8% ELSE SN%=S%-1
 590 IF SN%>256 THEN SN%=256
 6OO IFC%<U AND S%%>0 THEN C%=C%+S%
 61O IFC%>U AND S%<0 THENC3=C%+S5%
 620 8%=SN%
 630 OENDPROC
 640 DEFPROCSIN
 650 C%=0
 660 S%=0
 670 ERMAX=0
 680 SUMMAX=0
 690 ENDPROC

C. Ontwerp hoogspanningsdeel

C.1. Schema’s

elektro-0052.jpg

elektro-0053.jpg

elektro-0054.jpg

elektro-0055.jpg

elektro-0056.jpg

elektro-0057.jpg

C.2. Inleiding

Op de vorige bladzijde staat het ontwerp van de A/D-convertor en de zender. Daar de meeste overwegingen al eerder beschreven staan, zullen we ons hier beperken tot het uitleggen van de realisatie.

C.3. Meetsysteem (hoogspanningsdeel)

In de eerste figuur is het globale ontwerp opgenomen. Het ontwerp is op een andere manier uitgesplitst dan in het verslag. Het hierboven getekende schema sluit meer aan bij de realisatie van het ontwerp.

Als we de weg van het ingangssignaal volgen, komen we eerst bij de comparators. Deze zijn een onderdeel van de A/D-convertor. De camparators verzorgen de stuursignalen (u/d, tool, tooh) voor de turbo-counter, door de ingangswaarde te vergelijken met de uitgang van de D/A-convertor.

Deze signalen sturen de Turbo-counter, die in het blok ‘Digital logic’ zit. In dit blok zit ook de zenderlogica. De zenderlogica verzorgt een signaal ‘out’ dat de glasvezelzender stuurt. Aan de glasvezelzender zullen we weinig aandacht besteden, omdat deze als kant en klaar setje is gekocht.

De uitgang van de Turbo-counter (b0-b7) zijn weer de ingang van de D/A-convertor. De D/A-convertor maakt hier dan weer een signaal c van, dat vergeleken wordt met de ingangswaarde.

Tenslotte is als los blok de power supply getekend. Deze verzorgt de voeding van de afzonderlijke delen.

C.4. Digitale logica

De digitale logica bestaat uit drie delen. Allereerst zien we, dat de ingangssignalen gesynchroniseerd worden. Dit gebeurd met behulp van een register (ic21) dat op de inverse klok geladen wordt. De uitgangen worden toegevoerd aan de Turbo-counter (ic22). Functioneel bestaat de Turbo-counter uit drie blokken, een counter low-nibble, een high-nibble en een uitgangsregister. In de onderstaande figuur staat het blokdiagram.

elektro-0059.jpg

Het laagste nibble telt met twee stapgroottes. in eerste in- stantie zijn dat 1 en 4 (bO en b2). Het is echter eenvoudig om andere stapgroottes te kiezen (als voorbeeld: 1 en 8, zie EPLD- listings) .

Als extra ingangen zien we min, max en zero. Deze zetten het byte in de tellers op de gewenste stand (Ox00, Oxff en 0x80). De ingangen zijn nodig voor het afregelen van de D/A-conversie.

Het high-nibble is een gewone teller, met weer de extra set en preset ingangen. De EPLD geeft parallel een waarde af (Alida aan de D/A-convertor aangeboden wordt.

De zenderlogica (ic23) verwacht gedurende het zenden een stabiel byte op de ingang. Dit wordt bereikt door de uitgangsregisters door de zenderlogica te laten besturen.

De zenderlogica bestaat uit een teller en een multiplexer. De teller geeft aan welke ingang de multiplexer moet gebruiken. De multiplexer heeft, behalve de databits, ook de start- en stopbits als ingang. Hieronder is het blokdiagram weergegeven.

elektro-0060.jpg

Zowel de Turbo-counter als de zenderlogica zijn geïntegreerd in EPLD’s. De listings kunnen in de betreffende appendix gevonden worden.

C.5. D/A-conversie

De D/A-conversie bestaat uit een D/A-convertor (ic31) en een opamp (ic32). De D/A-convertor is een ZN428E. Dit ic verzorgt zijn eigen referentiespanning.

De opamp schaalt de uitgang van de D/A-convertor naar + 4.5 V. Dit is de maximale spanning die de comparators aankunnen. De nul-waarde kan worden bijgesteld met potmeter p32. Deze nulwaarde kan worden afgeregeld door de Turbo-counter de nulwaarde te geven (de ingang z hoog maken). :

Vervolgens kan de amplitude van het signaal ingesteld worden met p31. Weer kan de Turbo-counter hiervoor het juiste signaal leveren. De ingang x moet dan hoog gemaakt worden. De uitgang c kan dan tot 4.5 V geregeld worden.

C.6. Comparators

De comparators verzorgen de control-signalen voor de Turbo-counter. Het op/neer signaal wordt verkregen door het ingangssignaal te vergelijken met de uitgang van de D/A-conversie (e) .

Voor de te hoog (tooh) en te laag (tool) signalen is het nodig om een offset te geven aan c. Hiervoor wordt een optelschakeling gebruikt. De criteria kunnen worden ingesteld met behulp van de potmeters p11 en p12.

C.7. Power supply en klok

Het vermogen, dat het hoogspanningsdeel vergt, wordt geleverd via een trafo. Deze wordt door het laagspanningsdeel gestuurd met een relatief hoge frequentie. Vandaar dat we snelle diodes en kleine condensatoren gebruiken. De stabilisatie wordt verzorgd door ic1 en ic2

De klok wordt verzorgd door ic3. Ic3 wordt gebruikt als kristal- oscilator. Met behulp van de twee overige poorten (3c en 3d) wordt de uitgang gebufferd en geïnverteerd.

Meet systeem (hoogspanningsdeel)

Item
Quantity
Reference
Part
cem-code
1
3
IC11, IC12, IC13
LM360
01.608.7602
2
1
IC1
LM7805
01.675.7805
3
1
IC2
LM7905
01.675.7905
4
1
IC32
TL074
01.605.0742
5
1
IC31
ZN428E
los bestellen
6
1
IC3
7400
O1.709.1000
7
1
IC21
74LS163
01.727.2112
8
1
IC23
EP310
Los bestellen
9
1
IC22
EP1210
Los bestellen
10
1
R31
390
02.110.3339
11
2
R1,R2
470
02.110.3347
12
8
R11, R12, R13, R14, R15, R16 ,R17, R18
3k9 02.110.3439
13
4
R21, R22, R23, R32
4k7
02.110.3447
14
3
R34, P11, P12
10K
02,110.3510
15
1
R33
15K
02.110.3515
16
1
P31
10K pot
02.410.5510
17
1
P32
5K pot
02.,410.5450
18
1
C5
470pF
03.111.0347
19
2
C3, C4
10OnF
03.148.4610
20
2
C1, C2
1uF
03.250.6110
21
1
C31
100uF
03.215.9310
22
1
X1
6.144MHz
03.910.0614
23
4
D1,D2,D3,D4
BYV28100
01.423.2810
24
1
Hirschmann glasvezelzender

D. Ontwerp laagspanningsdeel

D.1. Schema’s

elektro-0063.jpg

elektro-0064.jpg

elektro-0065.jpg

elektro-0066.jpg

elektro-0067.jpg

elektro-0068.jpg

D.2. Het laagspanningsdeel

Het laagspanningsdeel bestaat uit twee gescheiden delen. Het ene deel ontvangt de signalen van het hoogspanningsdeel, het andere verzorgt de voeding van het hoogspanningsdeel.

De ontvanger bestaat uit een glasvezelontvanger, die deel uitmaakt van een kant en klaar setje. De data uit de glasvezelontvanger wordt toegevoerd aan de receiver logica. Deze zet het seriële signaal om in een parallel signaal.

De D/A-conversie zet dit digitale signaal om in een analoog signaal. Er wordt tevens gezorgd, dat de uitgang op de juiste schaal is.

De powersupply voor het hoogspanningsdeel bestaat uit een kleine invertor. Het is het zelfde schema als gebruikt wordt in de pulstrappen.

D.3. Klok en voeding

De electronica van de ontvanger heeft een gestabiliseerde voeding nodig van 5V. De omvormer voor de voeding van het hoogspanningsdeel heeft echter meer spanning nodig. We laten de invertor dan ook lopen op een niet extra gestabiliseerde voeding, terwijl we voor de ontvanger een aparte stabilisatie hebben aangebracht (ic10 en ic12).

De klok is weer een kristaloscilator met buffers.

D.4. De ontvanger logica

Het principe van de ontvanger is reeds in het verslag beschreven.

Het binnenkomende datasignaal wordt op de twee klokken gesynchroniseerd (ic20). De negatief geklokte data gaat naar de receiver EPLD (ic21). De positief geklokte gaat naar het schuif- register (ic23).

De receiver laat het aantal databits door een externe teller (ic22) tellen. Als een ander aantal databits gebruikt wordt, kan deze teller door een andere teller vervangen worden. De eindstand wordt bepaald met de RCO, de geldigheid van de data wordt afgeleid van het laagste bit.

Als alle databits geladen zijn, worden de uitgangsregisters (ic24 en ic25) geladen. Deze zorgen voor een stabiele uitgang om de D/A-convertor aan te sturen.

D.5. De D/A-conversie

De D/A-conversie verschilt nauwelijks van die in het hoogspanningsdeel. Het ijken kan weer gebeuren met behulp van de zero, max en min ingangen van de turbo=counter in het hoogspanningsdeel.

D.6. De voeding van hoogspanningsdeel

Voor de voeding van het hoogspanningsdeel is een standaard schema gebruikt. De voeding is in wezen de zelfde als in de pulstrappen.

De gebruikt trafo heeft een nog redelijk veel capaciteit (15pF). Als dit te veel blijkt te zijn, is het mogelijk om de windingen verder uit elkaar te leggen, of twee trafo’s in serie te zetten.

D.7. Onderdelen

Item
Quantity
Reference
Part
1
1
ic10
LM7805
2
1
ic12
LM7905
3
1
IC32
TLO74
4
1
IC31
ZN428E
5
1
IC41
4013
6
1
IC40
4049
7
1
ic11
7400
8
1
IC20
7475
9
3
IC22,IC24,IC25
74LS163
10
1
IC23
74LS322
11
1
IC21
EP310
12
2
R42,R43
100
13
1
R31
390
14
2
R10,R11
470
1S
1
R32
4K7
16
1
R33
10K
17
2
R41,R40
12K
18
1
R34
27K
19
1
P31
10K pot
20
1
P32
5K pot
21
2
C42,C43
150pF
22
3
C11,C40,C41
470pF
23
3
C10,C12,C31
100uF
24
1
X10
6.144MHz
25
2
Q40,Q41
IRFD113
26
1
L1
L
27
2
U1,U2
10V

E. EPLD-listings

E.1. Inleiding

EPLD’s zijn programmeerbare logische devices van de firma ALTERA. Het systeem om deze devices te kunnen programmeren is van de zelfde firma.

De software die de firma levert is zeer gebruikers onvriendelijk. De bijgeleverde ’shell’ vreet geheugen, zodat het pakket minimaal 640k nodig heeft.

Vaak moet uren gezocht worden naar een fout, die met behulp van een goede parser snel te vinden zou zijn. Als voorbeeld noemen we

de foutmelding "Node missing source". Vaak blijkt het software pakket "missing ;'" te bedoelen. Dat kost de eerste keer dus wat tijd.

De software kan ook niet wat de fabrikant beweert. De state- machine entry, bijvoorbeeld, kan alleen eenvoudige machines aan. Zodra het zo moeilijk wordt dat zo’n ontwerp tool handig zou zijn, laat hij het afweten, zodat alles alsnog met de hand uit- gewerkt moet worden.

Na de desillusie die de statemachine entry te weeg bracht, hebben we afgezien van het simulatie pakket. Als dit in dezelfde stijl geschreven is als de rest van de software, kunnen we het zelf be- ter op een regenachtige middag doen.

E.2. De turbo-counter

Er zijn drie soorten turbo-counter ontworpen, elk met hun specifieke voor en nadelen. De eerste hebben we 'no stop" genoemd. Het is een teller met de stapgroottes 1 en 4. Er zit geen stop op, zodat hij van Oxff naar Ox00O doortelt. Deze teller is vooral handig bij het testen van de schakeling. Hij produceert namelijk een zaagtand, die het mogelijk maakt de analoge elektronica te bekijken.


turbo.jpg

De tweede turbo counter is er een met stop en de stapgroottes 1 en vier. Het is de bedoeling dat deze nauwkeurig is. In tegen- stelling tot de vorige is het ook de bedoeling dat hij in bedrijf gebruikt kan worden. Er worden tijdens het zenden en ontvanger echter zoveel fouten gemaakt, dat dit niet nuttig is. De metingen in het hoofdstuk over performance zijn met deze EPLD gedaan.

turbocnt1.jpg

turbocnt2.jpg

Om de snelheid te verhogen is er een EPLD gemaakt met een grotere tweede stapgrootte, namelijk 8. Met voor de rest de zelfde schakeling kan dan een ongeveer dubbele frequentie gevolgd worden, uiteraard met inlevering van precisie.

turbocnta1.jpg

turbocnta2.jpg

E.3. De multiplexer

De multiplexer bestaat uit een teller en een multiplexer. Beide zijn in een EPLD gepropt. De multiplexer geeft aan de turbo- counter aan wanneer hij een nieuw sample verwacht. Bovendien ver- zorgt hij een go-signaal, dat de turbo-counter in staat stelt om met een lagere klok te werken dan de systeemklok.

mux.jpg

E.4. De ontvanger

Tenslotte is het grootste gedeelte van de ontvangerbesturing ook in een EPLD gezet.

elektro-0084.jpg

F. De First Phase Predictor

F.1. Inleiding

Gedurende het afstuderen zijn er nogal wat twijfels gerezen over de practische toepassing van de meetschakeling. De schakeling zou te traag zijn voor de toepassing in huidige peak voltage predictor. Dat is hij ook.

Er zijn echter regel algoritmen te vinden, die niet de continue spanningsoverdracht nodig hebben. in deze appendix willen we een van die regelprincipes aanstippen. We hebben hem First Phase Predictor genoemd, omdat hij slechts de duur van de eerste fase uitrekent.

Het is echter geen kant en klare oplossing. Ik wil hier alleen het principe aangeven, om te laten zien, dat zelfs een trage glasvezel verbinding (orde van 10*resonantie frequentie) bruikbaar zou zijn.

F.2. Grondgedachte

Wij zullen in deze appendix een conventionele serie-resonante convertor als model nemen. Dit betekent, dat de zelf-inductie geconcentreerd is in één spoel. Aan ontwikkelingen als het resoneren op commutatie spoelen is geen aandacht besteed.

Een resonante convertor werkt met bij benadering sinus-vormige spanningen en stromen. De resonantiefrequentie is binnen bepaalde tijdsintervallen de maximale frequentie van die (co)sinussen. Volledigheidshalve moeten we vermelden, dat het overstappen tussen de intervallen wel aanleiding geeft tot hogere harmonischen.

Wij zijn echter alleen geïnteresseerd in het tijdsinterval dat we eerste fase zullen noemen. in de door ons beschouwde convertor is dat de diode-fase. We nemen aan, dat we die naar eigen behoefte kunnen opstarten.

Volgens de informatie theorie is het nemen van 2 samples per periode voldoende om een sinus-vormige spanning te kunnen reconstrueren (Shannon). De twee samples bezitten voldoende informatie, om de frequentie, de amplitude en de fase te berekenen.

Doordat we de diode-fase zelf opstarten, is de fase van de sinus al bekend. Ook de frequentie is bij benadering bekend. Tenslotte zijn we niet geïnteresseerd in de hele sinus, maar in maximaal een halve periode.

Het is daarom aannemelijk, dat we met een sample per halve periode toe kunnen. Dat kan ook. uit de, aan het begin van de resonante puls genomen, samples van de spanningen kunnen we de tijdsduur van de diode fase berekenen. We kunnen dan die tijdsduur aftellen en daarna overschakelen.

F.3. Berekening

Voordat we de berekening van de tijdsduur van de diode fase presenteren, zullen we eerst een aantal termen definieren en ons model van de resonante convertor bepalen.

Om met het laatste te beginnen: we beschouwen alleen de resonantie kring. We stellen dat de inductie en de capaciteit in de kring constant zijn, en bovendien de ohmse weerstand in de kring nul is. Onze kring sluiten we aan op twee spanningen, block/complete.in.55.svg en block/complete.in.56.svg Onze condensatorspanning noemen we block/complete.in.57.svg De waarde aan het begin van de resonante puls noemen we block/complete.in.58.svg waarde aan het eind van de puls noemen we block/complete.in.59.svg Het een en ander is nogmaals geresumeerd in onderstaand figuur.

elektro-0086.jpg

We zullen ons bij de berekeningen beperken tot de opgaande puls. We weten uit de theorie van de resonante convertor, dat in de diode fase geldt:

block/complete.in.22.svg
block/complete.in.23.svg

en in de thyristor fase:

block/complete.in.24.svg
block/complete.in.25.svg

waarbij block/complete.in.60.svg en block/complete.in.61.svg de duur van de diode fase, respectievelijk de thyristor fase is. Op het moment van overschakelen block/complete.in.62.svg geldt:

block/complete.in.26.svg
block/complete.in.27.svg

Als we naar de stroom-vergelijkingen kijken, zien we, dat voor alle mogelijke block/complete.in.63.svg en block/complete.in.64.svg hun sinussen groter dan nul zijn. We vinden dus:

block/complete.in.28.svg

zolang block/complete.in.65.svg

Iets dergelijks geldt ook voor de spanningen. De voorwaarden zijn hier echter iets gecompliceerder. We kunnen echter stellen, dat, zolang block/complete.in.66.svg we de spanningsvergelijking kunnen kwadrateren. We vinden dan, na enig rekenwerk:

block/complete.in.29.svg
block/complete.in.30.svg

Door optelling kunnen we dan block/complete.in.67.svg vinden. We vinden dan:

block/complete.in.31.svg

In principe is dus de duur van de eerste fase vastgesteld. We kunnen dan block/complete.in.68.svg met behulp van een teller aftellen.

Men zou nu, met behulp van reeks-ontwikkelingen kunnen proberen een eenvoudigere versie voor block/complete.in.69.svg te vinden. De formule kan niet direct in een EPROM gezet worden, omdat de eprom dan te groot wordt.

F.4. Variatie in td

Omdat de digitale logica in vele gevallen synchroon is, is het noodzakelijk te kijken naar het effect van variatie van block/complete.in.70.svg . We voeren hiervoor een analyse uit op de formule voor block/complete.in.71.svg

Voordat we hiermee beginnen, voeren we echter een aantal variabelen in die het schrijfwerk beperken. We stellen:

  • block/complete.in.72.svg
  • block/complete.in.73.svg
  • block/complete.in.74.svg

Al deze variabelen zijn in principe bekend.

We nemen nu aan, dat het overschakelen niet op tijdstip block/complete.in.75.svg maar op tijdstip block/complete.in.76.svg gebeurt. De eindwaarde van de condensator spanning wordt dan block/complete.in.77.svg Verder nemen we aan dat block/complete.in.78.svg klein is (practisch: de kloktrequentie van de regeling is veel groter dan de resonante frequentie).

Als we deze waarden invullen vinden we:

block/complete.in.32.svg

Na enig rekenwerk volgt dan:

block/complete.in.33.svg

Hierin uit is de block/complete.in.79.svg te elimineren. We krijgen dan:

block/complete.in.34.svg

Oftewel:

block/complete.in.35.svg

Een getallen voorbeeld:

Als we stellen:
dan vinden we:
en is:
block/complete.in.80.svg
block/complete.in.81.svg
block/complete.in.82.svg
block/complete.in.83.svg
block/complete.in.84.svg
block/complete.in.85.svg
block/complete.in.86.svg
block/complete.in.87.svg
block/complete.in.88.svg
block/complete.in.89.svg
block/complete.in.90.svg

F.5. Conclusie

Het is wel degelijk mogelijk om met behulp van één sample-tijdstip de spanning op de condensator te regelen. De afgeleide formule is echter te ingewikkeld om direct digitaal uit te rekenen. Er zal dus naar een benadering gezocht moeten worden.

De afgeleide formule heeft slechts een beperkte geldigheid. Er wordt uitgegaan van een convertor, die de diode fase voor de thyristor fase heeft. Bovendien is alle zelfinductie geconcentreerd. Er moet wel nagegaan worden in hoeverre dit model overeenkomt met een eventueel te bouwen convertor.

Er moet opgemerkt worden, dat de convertor niet meer bij te regelen is, als er kortsluiting op de uitgang komt. De huidige predictor nemen de problemen, die optreden tijdens de diodefase wel mee.

Men kan ook de stuurspanning van de resonante kring continu tussen verschillende spanningen schakelen. We hebben dan niet meer te maken met twee fases per resonante puls, maar desnoods met oneindig veel. De selectie van de spanningen kan dan de condensatorspanning binnen bepaalde grenzen houden, waarmee de noodzaak van een predictor vervalt.

G. Computer gebruik

G.1. Inleiding

Gedurende mijn aanwezigheid bij de vakgroep is er het een en ander aan computer apparatuur gekocht. Omdat in het begin er geen enkel beleid was met betrekking tot het gebruik ervan, heb ik ge- meend mij hier mee te moeten bemoeien. De grootste bemoeienissen van mij waren met een Tulip MS-Dos computer.

In deze appendix zal ik de directory structuur en de inrichting van een aantal programma’s uitleggen. Dit om te voorkomen dat niemand na mijn afstuderen meer weet wat er waar en waarom.

Smartwork, Wordmark Composer, Aplus, UNIX, MS-Dos, Orcad en Tulip zijn trademarks.

Login is een programma van K.H.C. van Houten (public domain).

De Quick editor is een ASCII-editor

Rogue, PC-Nethack en Blast zijn public domain programma’s.

HDlock is een bij de hardcard geleverd programma.

G.2. Directory structuur

De directory structuur is afgeleid van het UNIX operating system. Een aantal namen is hier ook van afkomstig (bin‚etc,tmp). De computer kent een drietal pakket-directories, die direct onder de root hangen. Ditszd jn:

  • smart, voor smartwork,
  • wmc, voor wordmark composer, en
  • aplus, voor altera werk.

De programma’s van altera zijn geïnstalleerd, ondanks dat er te weinig vermogen uit de voeding van de computer komt.

De overige directories hebben de volgende betekenis:

dos
Hierin staan alle MS-DOS programma’s, zoals link, exe2bin en dergelijke.
etc
Administratie.
sys
System files en drivers. Onder sys staan de MS-DOS drivers, zoals ansi.sys. Onder \sys\orcad staan de printer- en screen drivers van orcad.
bin
Binaries. uitvoerbare programma’s. De subdirectories zijn de verschillende pakketten.
lib
Libraries. Alle libraries staan hieronder. Op het ogenblik zijn dit orcad en turbo-c libraries.
usr
Onder usr staan de users. Bovendien staan er een aantal tools en programma’s voor users en wat spelletjes. Elke user heeft recht op een eigen directory hier. Zodra een user weg is, kan zijn directory worden opgeruimd.
tmp
Alle tijdelijke "junk". Alles wat in tmp staat is vogelvrij.

G.3. Login

De Tulip is een multi-user computer (er werken meerdere mensen op). Het is daarom nodig, dat niet iedereen alles maar overal neerzet. Iedereen heeft daarom een eigen directory.

Het login-programma zet de gebruiker direct in zijn directory. Maar het doet meer. Het checkt ook, of het de gebruiker kent. Overigens maakt login geen aanspraak op enige veiligheid.

Wat doet login precies? Eerst leest het z’n configuratie file. Daarin staat waar de file met de logins en hun home directory staat, en de prompt. Bij ons is dat \etc resp. Welcome to MS-dos on the VE-Tulip. Vervolgens wacht het tot een gebruiker zich meld. Zodra de gebruiker zijn naam heeft ingetypt, zet login een paar Dos-variabelen, gaat naar de home directory van de user, en voert daar login.bat uit.

Login.bat is een file dat de user zelf moet schrijven. In mijn login.bat roep ik ced aan. Hier kan men ook programma’s als smartkey en sidekick instaleren.

Met behulp van logout wordt login weer opgestart. De laatste user moet inloggen onder "down". in de login.bat van deze user staat de shut-down procedure (nu: HDLOCK).

Login en logout houden de residente stack schoon met behulp van MARK en RELEASE. Het is niet de bedoeling dat gebruikers gedwongen worden om bepaalde programma’s op de stack te hebben. Men moet dus nooit sidekick e.d. in de autoexec zetten. Laat dit over aan de gebruiker en zijn login.bat.

Als speciale gebruiker kennen we '"new'. Deze kan gebruikt worden

om nieuwe gebruikers te installeren. De procedure is dan als volgt:

q logins
edit het file met de logins.
In het rijtje voegt men nu de loginnaam van de gebruiker toe, en zijn home-directory, op de zelfde manier als de anderen. Vervolgens saved men de file (f2).
md <naam van de homedirectory>
b.v.: md \usr\pietje
Daarna uitloggen met logout.

Een gebruiker verwijderen gaat via de zelfde gebruiker. Nu echter wordt de regel met de gebruiker verwijderd (ctrl-Y). De troep kan men weghalen met rm -r <homedirectory> U krijgt dan de vraag: Are you sure you want recursive remove?, waar u y op antwoord.

G.4. Orcad

De tulip heeft geen muis. Daarom is orcad uitgerust met een aantal macro’s. Het is daardoor mogelijk snel acties te ondernemen, die anders veel cursor werk vergen.

Verder heb ik me enigsinds beziggehouden met het programma partlist. Dit is instaat om complete bestellijsten af te leveren, inclusief CEM-code. Hiervoor moet de CEM-code in het file CEM.COD staan. De componentenlijsten in dit verslag zijn ook afkomstig van partlist.

Een partlist kan gemaakt worden met parts.bat. De mogelijkheden zijn:

parts sheetname
voor uitvoer naar het scherm
parts sheetname file
voor uitvoer naar het file
parts sheetname prn
voor uitvoer naar de printer.

Als in de uitvoer van partlist <<WARNING>> part not in include file voorkomt, dan moet deze toegevoegd worden aan het file CEM.COD. Dit kan met de quick-editor. Om een beetje orde in het file te houden moet de volgende volgorde gebruikt, worden:

  • analoge IC’s
  • CMOS, 40-serie
  • TTL, in volgorde bij hun familie
  • andere digitale IC’s
  • R‚ gevolgd door instelbaar
  • C, idem
  • leds, optocouplers en displays

Nog een slot opmerking over het gebruik van partlist. Kijk voor het tekenen van de schema’s CEM.COD door, zodat je de juiste benaming van de componenten gebruikt (dus 150pF in plaats van 150p of 150Pf).

G.5. Spelletjes

Waarom spelletjes op een computer, die toch voor serieus werk bedoeld is? We gaan er van uit dat steeds meer studenten en medewerkers zelf in het bezit komen van een MS-dos computer. Zij kunnen dan zonder gewetenswroeging een drietal spelen meenemen. Zo kunnen ze thuis ook wat serieus doen.

Op de Tulip staan een drietal spelletjes, die vrijelijk gecopieerd mogen worden. Het zijn:

  • rogue
  • PC-nethack
  • Blasten

Rogue en Nethack zijn Dragons & Dungeons-achtige spelletjes. Nethack is vele malen gecompliceerder dan rogue. Bij nethack kun je kiezen uit verschillende karakters, je hebt een hondje enzovoorts.

Blasten is een arcade-game. Het is een spel dat afgeleid is van Meteors. Leuk, maar veel meer dan schieten is het niet.

De files die bij rogue en blasten horen staan in de desbetref- fende directories. Bij nethack hoort ook het TERMCAP-file uit de directory \etc. (opm.: voor 2floppy systemen moet er een ramdrive C aangemaakt worden met in C:\etc het termcap-file.) Lees voordat je PC-nethack meeneemt ook de helpfiles even door.

H. Litteratuur

[1] Altera corporation: The logical alternative. Altera corporation, 1985

(Everything You Always Wanted To Know About EPLDs And Were Afraid To Ask.)

[2] Ferranti: databoek.

(Ferranti geeft in zijn databoek een uitleg over de verschillende A/D-conversie algoritmes.)

[3] J.B.Klaassens: Electronic energy conversion with a switched series-resonant network operating at high frequency. Dutch efficiency bureau, 1986

(Het standaard werk dat iedereen op de vakgroep moet lezen. Een uitvoerige beschrijving van serie resonante convertors.)

[4] Henk Huisman: Een serie-resonante DC-meerlijnenkonvertor. Afstudeerverslag Nr. VE 84 A 96, 1984

(Beschrijving van een serieresonante convertor, zoals gebruikt in de berekeningen van de FPP.)

[5] Henk Huisman: interne memo’s over Piek voltage predictie.

[6] JH.J.M.Hulshof ‚ W.R.Rutgers, A.H.v.d.wey: Optical voltage sensor: applications in electric power systems. KEMA, 1987

(Een beschrijving van optische spanningssensoren)

[7] JW.R.Rutgers, H.J.M.Hulshof, I.J.Laurensse, A.H.v.d.Wey: Optical sensors for de measurement of electrical current and voltage. KEMA Scientific & Technical Reports, 1987

(Een beschrijving van optische sensoren.)