Automatisering van een kalibratie opstelling voor
laserinterferometers : een inleiding
Citation for published version (APA):
Muit, R. T. E. (1987). Automatisering van een kalibratie opstelling voor laserinterferometers : een inleiding. (TH Eindhoven. Afd. Werktuigbouwkunde, Vakgroep Produktietechnologie : WPB; Vol. WPA0449). Technische Universiteit Eindhoven.
Document status and date: Gepubliceerd: 01/01/1987
Document Version:
Uitgevers PDF, ook bekend als Version of Record
Please check the document version of this publication:
• A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website.
• The final author version and the galley proof are versions of the publication after peer review.
• The final published version features the final layout of the paper including the volume, issue and page numbers.
Link to publication
General rights
Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain
• You may freely distribute the URL identifying the publication in the public portal.
If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement:
www.tue.nl/taverne
Take down policy
If you believe that this document breaches copyright please contact us at:
openaccess@tue.nl
providing details and we will investigate your claim.
Onderzoeksopdracht:
Automatisering van
kalibratie opstelling laserinterrerometers, inleiding.
door R.T.E. Muit
een voor een
InhoudsopgBve. Hoof'dstuk 1 Hoof'dstuk 2 Hoof'dstuk 3 Hoof'dstuk ':I Hoof'dstuk 5 Hoof'dstuk 6 Hoof'dstuk 7 Hoofdstuk B titel paginanumme[" voorpaginB 1 inhoudsopgave 2 voo["woo["d opd["achtomsch["iJving 5 inleiding 6
Een situatie schets 9
De ADDA-12 kaa["t 11 ':1.1 Specificaties ':1.2 De installatie en we["king v.d. kaart ':1.2.1 De DA conversie ':1.2.2 De AD conversie ':1.3 De soft-wa["e,we["king en DEMO's v.d. kaa["t ':1.3.1 De DA convB["sie,voorbeeld ':1.3.2 De AD conve["sie.voo["beeld ':1.':1 Apparaten, gekoppeld aan de kaa["t
':1.':1.1 Het motorsturingskastJe ':1.':1.2 De tempe["atuu[" senso[" ':1.':1.3 De dauwpuntsmete[" ':1.':1.':1 De druk senso[" De IEEE-':IBB kBart 21 5.1 Specificaties 5.2 De installatie v.d. kaa["t 5.3 De soft-ware (DEMO)
5.':1 Appa["aten, gekoppeld aan de kaa["t 5.':1.1 De TUE-Iaser CHp 5501) 5.':1.2 De te beproeven lase[" De 1/0 kaa["t 31 6.1 Specificaties 6.2 De installatie v.d. kaart 6.3 De soft-wa["e,werking en DEMO's v.d. kaa["t
6.':1 Appa["aten, gekoppeld aan de kaa["t Een g["afische wee ["gave van de
opstelling Conclusies en aanbe-velingen. 2 38 39
2!tillnanummer.
Hoofdstuk 9 LiteratuurliJst. "fO
titel Y.!!!! de biJlag~ J;;!aginanummer
BiJlagen ADDA-12 kaart nr. 1 1
ADDA-12 kaart nr. 2 2 ADDA-12 kaart nr. 3 3 ADDA-12 kaart nr. "f "f IEEE-"f88 kaart nr. 1 5 IEEE-"f88 kaart nr. 2 6 IEEE-"f88 kaart nr. 3 7 IEEE-"f88 kaart nr. "f 8 IEEE-'i88 kaart nr. 5 9 liD kaart nr. 1 18 110 kaart nr. 2 19 110 kaart nr. 3 3"f liD kaart nr. "f 35 110 kaart nr. 5 36 tekeningen 38 computer uitvoer "f"f
UOORWOORO
De laatste jaren is er een enorme toename ontstaan, in
hst gsbruik van laser interferometers . Uooral in de
meet-techniek vinden er steeds meer toepassingen van laser
in-terferometrie plaats. Niet alleen lengtemeting maar ook
rechtheidsmeting en anderen komen hierbij aan bod.
Door die enorme toename, in het gebruik van
lsserinterferometers, dient men er ook zeker van te ziJn
dat msn sen »goeds" lassrinterferometer bezit. Een
laser-interferometer moet aan enkels voorwaarden voldoen wil
hiJ geschikt zijn v~~r het meten van vsrplaatsingen. 20
moet hlJ reproducesrbaar ziJn over lengten van dagen,
geen nulpuntsdrift hebben en sen goed detsctie- en
telsusteem bezitten.
Uoor het testen van commercieel
ferometers is er op de rUE,
geometrlsche meettechniek,
verkriJgbare
laserinter-in het laboratorium voor
een kalibratie opstelling
ontwikkeld.
In dit rapport zal beknopt worden vertelt hoe de
kalibratie in z'n werk gaat (meer hier over vindt U in
het WPA-rapport van Bert v.d. Pasch Cnr. 0319)) en
dasrnaast zal een aanzet worden beschreven voor de
Hoofdstuk ~
OpdrachtomschriJving
Titel: AUTOMATISERING UAN EEN KALIBRATIE OPSTELLING UOOR INTERFEROMETERS, EEN INLEIDING.
Deze opdracht is uitgevoerd in het kader van een
onderzoeksopdracht en hield in dat er een aanzet voor
Butomatisering van de vergelijkingsopstelling voor laser-interferometers gemaakt diende te worden.
De opdracht bestond uit twee deelopdrachten :
1: De meting dient geautomatiseerd te worden.
2: De gegevens moeten automatisch worden verwerkt.
Ad 1: De meetopstelling wordt voor kalibratie van
industriele lasersystemen gebruikt. De gehele
kalibratie duurt zeker een paar dagen en dat
betekent, dat er veel man-uren worden in gestoken.
Dien ten gevolge is de kalibratie priJs ook hoog.
Wanneer we de meting zouden kunnen automatiseren
dan boeken we een enorme tijdwinst en wordt de
kalibratie financieel aantrekkelijk. voor de TUE.
Met automatiseren van de meting wordt bedoeld het
binnenhalen van omgevings grootheden ten behoeve
van correcties, benodigd bij het berekenen van de
Juiste meetwaarden, het sturen van de meetwagen en
het binnen halen van laser-meetwaarden, door de
computer.
Ad 2: Onder gegevens verwerking wordt verstaan het
opslaan van de laser-meetwaarden en het rekenen
hiermee. Ook het verwerken van de binnen gehaalde
gegevens over de omgevings grootheden, zoals
temperatuur, luchtdruk en relatieve vochtigheid.
Deze grootheden worden in sen formule gestopt die
de zogenaamde 'Uelocity Of Light compensation'
genereerd. Het is de bedoeling dat de
'UOL'-correctiewaarden continu worden berekend en
verwerkt. Uan de verdere gegevens verwerking. die
van de laser meetwaarden, en de presentatie van het
geheel van resultaten zal aandacht kriJgen in de
van een afstudeerwerk waarbij dan tevens een
automatische brekingsindex meting geintegreerd
Heefdstuk
E.
Inla1dlngIn het ke~t zal de we~king van de laserinte~fe~emete~
k.llb~.tie opstelling, zoals die zich cp de rUE bevindt,
uitgelegd we~den.
Ean p~inclpe schets van de opstelling;
1.
2. 3.
If.
5.
Bevenaanzicht van de g~ondbalk met epgebeuwde opstelling.
Gl""ondbalk. 12. Instelschr-oef.
Pr-ismageleidingsbalk. 13. Laser-opspantafel.
Vier-kante geleidingsbalk. Pi. Isolatiekast.
Slede. 15. Laser-insteltafel.
Staalband. 16. Laser-meetsysteem 1 •
6. Wr-iJvingswielover-br-enging. 17. Laser-meetsysteem 2.
7. Omkeer-r-ol. 16. Oeelpr-isma + tr-lplespiagal.
8. GeliJkstr-oommotor. 19. Afbuigspiegel met
9. Motor-sturingskast. mechanisms.
10. Eindschakelaar. 20. rr-iplespiegel met
11. Inter-ferometeropspantafel.
Op de g~endb.lk (1) is de gehele opsteling epgebeuwd. De grendbalk zelf hBngt in ~ t~ekveran die t~illingen beven de 1 Hz niet meer- door laten.
Op de grendbBlk zijn 3 geleidingen aBngebracht die dienen
veer de ondersteuning van hat meatwagentJe. Het
meetwagentJe we~dt Bangedrevan doo~ aen 8 meter- lange
at.alb.nd. een wrljvlngswiel ova~b~anging en een
geliJkstroommoto~. De motor-stu~ingskast zorgt veer- de
6
Just.ge-heuder-.
voeding van de geliJkstroommotor. Waar de motorsturingskast z'n stuurspanning vandaan haalt is niet van belang. Dit kan hand- of computergestuurd ziJn.
Een kleine opspantafel, voor de spiegels, die in aIle
~ichtingen is te verplaatsen (ziJ het kleine
verplaatsingen) behoord ook tot de uitrusting van de
opstelling. Tevens is er een inrichting gebouwd om twee
lasersystemen op te stellen en uit te richten.
De ~efe~entielaser is een Hp 5501. Deze laser zit aan een
couplerkast 107~OA en een display 107B3A ve~bonden.
De communicatie van de laser met de omgeving gebeurt via
het IEEE-~88 bus systeem.
De geb~uikte compute~ die de IEEE-~BB interface kaart
bevat is een Apple lIe.
Om de omgevings grootheden te bepalen die nodig ziJn voor
de co~rectie, voor variatie in de brekingsindex van
lucht, wo~dt er een barometer, een kwiktherometer en een
vochtigheidsmeter (dauwpuntsmeting of meting m.b.v. droge en natte boll gebruikt.
De gehele opstelling bleek nogal wat knelpunten te
bevatten. Ais voo~naamste knelpunt we~d de Apple lIe naar
vo~en geschoven. I.v.m. de standaardisatie op p.c. gebied
en het feit dat de Apple veel te langzaam is, werd er
i.p.v. door te gaan met de Apple gekozen voor een ande~e
computer. Een ander knelpunt was de motorsturing. De
stuu~spanning die op de motorsturingskast moet komen,
komt van een spanningsbron af die handmatig wordt
bediend. Ook deze bediening zou via de p.c. moeten gaan.
Ais laatste knelpunt komt de soort laser naar voren die
bep~oefd moet worden. Er ziJn naast lasers met een
IEEE-~8B uitgang ook lasers met een BCD uitgang en deze moeten
dus via een aparte kaart worden uitgelezen.
Ook erg lastig is het continu noteren van de omgevings
g~ootheden. Uooral omdat deze waarnemingen met het oog
wo~den uitgelezen.
De lasers worden, net zoals de omgevings-sensoren, met
het oog uitgelezen. Dit leidt gemakkeliJk tot
afleesfou-ten, vooral als men bedenkt dat de uitgelezen waarden een lengte van S ciJfers hebben.
Uoo~al aan de aangestipte knelpunten is, in het verdere
ve~loop van de onderzoeksopdracht, aandacht besteed .
van de laserinterrerometer kalibratie opstelling.
Tevens wordt een beschouwing gehouden over de nieuwe
computer met zijn interrace kaarten voor communicatie met de meetopstelling.
In de hoordstukken ~. 5 en 6 worden de gebruikte
interrace kaarten behandeld. Tevens komt de apparatuur
die aan die kaarten is gekoppeld uitvoerig aan bod.
Het zevende hoordstuk wordt gebruikt om de opstelling
schematisch door te nemen.
Een conclusie. aanbevelingen en een computer-uitdraai van
aen meetuitvoering, komen ter sprake in het achtste
hoordstuk.
Het nagende hoordstuk bevat een literatuurlijst.
Hoofdstuk ~
Esn situatie schets
Zoals al gezegd in de inleiding was de Apple lIe als
computeL hst gLootste knelpunt. omdat de opstelling in de
toekomst helemaal geautomatiseeLd dient te wOLden weLd
BL besloten om een meeL geschikte computeL met voldoende
geheugenLuimte te kopen. De computeL zou dan weI IBM
compatible moeten ziJn en inteLface mogeliJkheden moeten tOBstaan.
Gekozen weLd eL VOOL een CiLP-XT-SqO die 8 inteLface
slots bevat. In dLie van die slots zit Leeds bij leveLing
al ssn kaaLt (pLinteL, monitoL, haLd-disk). Dit schept
ems
de mogeliJkheid VOOL nog 5 inteLfaces met deomge-ving •
Als pLogLammeeLtaal is gekozen VOOL TULbo-Pascal die
gangbaaL is in het laboLatoLium. Dus de soft-waLe
geleveLd bij de inteLfaces moet dan ook in TULbo-Pascal
wOLden geschLeven.
De aanzet tot de automatiseLing is gedaan m.b.v. 3
i nteLface kaaLten . Met deze kaaLten kan d'e computeL in
pLincipe communiceLen met aIle appaLaten die bij de
kalibLatie betLokken ziJn.
De volgende 3 kaaLten zijn nu biJ de computeL
beschik-baaL:
1) ADDA-12 kaaLt (DAC-out en ADC-in).
2) IEEE-q88 kaaLt.
3) lID kaaLt.
Ad 1: Met de ADDA inteLface kaaLt kan op de eeLste
plaats het wagentJe bestuuLd wOLden. De DAC geeft
esn analogs spanning af aan het motoLstuLings
kastJe, dat op ziJn beuLt de nodige eneLgie leveLt
om het motoLtJe te laten bewegen. op de tweede
plaats kunnen eL dooL de ADC ana loge spanningen
wOLden ingelezen. De appaLaten die hieLvooL in
aanmeLking komen ziJn de tempeLatuuLsmeteL en de
dauwpuntsmeteL (VOOL de Lelatieve vochtigheid).
Deze appaLaten geven naast een waaLde op het
dis-play ook Ben oveLeenkomstige analoge spanning af.
Ad 2: De IEEE-q88 inteLface kaaLt veLschaft ons de
mogeliJkheid om veLschillende appaLaten, met Ben
IEEE-q88 uitgang c.q. ingang,met de computeL te
laten communiceLen.
De appaLaten, die gekoppeld moeten wOLden, zijn 1)
rererentielaser, 3) de ceupler kast 107~OA waarin
aen taller an aen tweede IEEE-~BB interrace zitten
sn ~) eventueel de tweede laser n.l. als deze eek
san IEEE-~BB uitgang heert.
Is dit laatste niet het geval dan brengt dat ens
autematisch ep de laatste kaart in de cemputer (ad
3).
Ad 3: De I/O interrace kaart vol gens het TTL systeem kan
met apparaten cemmuniceren die een uitgang
c.q. 1ngang hebben velgen het TTL systeem. Ze
hebben de eudere lasers van Hewlett Packard i.p.v.
een IEEE uitgang een BCD uitgang velgens het TTL
systeem. Dit schept dus de megelijkheid em die BCD
uitgang aan de I/O kaart te keppelen In eerste
instantie werd cemmunicatie met de eudere
lasers veor onmegeliJk geheuden maar m.b.v. een ~B
liJnen 110 ziJn we er tech in geslaagd am de
cem-municatie (ziJ het summier) ep gang te brengen.
Zaken als Service Request deer de laser en het
m.b.v. de cemputer 'setten' van de laser zijn neg
nlet megeliJk. Maar dear neg een I/O kaart in de
computer te installeren is dit laatste zeker weI
te deen.
Hoofdstuk ~
De ADDA-12 kaart.
De naam zegt in dit geval al veel: AD staat voor analoog digitaal conversie, DA staat voor digitaal analoog con-versie en de 12 slaat op het aantal bits dat de kaart kan verwerken n.l. een twaalf bits conversie.
~.1 Specifikaties. DA AD Adres Gewicht Grootte Energie verbruik 12 bits, 1 kanaal.
output van 0 tot +9 Volt of van -9 tot +9 Volt (met Jumper te 'setten').
conversie tiJd 500 nanoSec. non-linearity 0.2% .
12 bits, 16 kanalen.
input van 0 tot +9 Volt (LET OP: aIleen voor positieve spanningen).
m.b.v. succesieve approximatie. conversie tiJd 60 microSec. S27B-S27F 'setten'). 170 gram. of S2FB-S2FF (met jumper te 230 • 100 millimeter. 2.2 Watt.
~.2 Oe installatie en werking van de kaart.
Uoor dat de kaart in gebruik wordt genomen dienen aIle jumpers goed geinstalleerd te zijn. Het kaart adres wordt met jumper 1 'geset' en de polariteit wordt met jumper 2
tgeset', (2ie bijlage ADDA-12 kaart nr.l bIz.l).
Met de instelpotmeter kan de range, waarin gewerkt wordt, ingesteld worden. De maximale range is van 0 tot +9 Volt biJ unipolair en van -9 tot +9 Volt bij bipolair.
~.2.1 De DA·conversie.
De ADDA kaart bevat twee DAC-1221-LCN ic's die elk 8 bits tegeliJk kunnen verwerken. De kaart is ontworpen voor een 12 bits conversie. dien ten gevolge zal 1 ic 8 bits voor ziJn rekening nemen en de andere de overige ~ bits.
Het maximale (decimale) getal dat ingegeven kan worden is 2A
12-1 - ~095 (de nul telt ook mee).
Eerst worden de laagste 8 bits geconverteerd (-255 max) en dan de hoogste ~ bits.
Het decimale getal, dat dus ingegeven moet worden voor de conversie. ligt in de range 0 .. ~095. Is de kaart op unipolair ingeschakeld dan komt de 0 overeen met 0 Volt en komt de ~095 overeen met +9 Volt (arhankelijk van de
instelpotmeter). Is de kaart daarentegen op bipolair
ingesteld dan komt de 0 overeen met -9 Volt en de ~095 met +9 Volt (ook arhankelijk van de instelpotmeter). Het
verband tussen het ingegeven decimale getal en de
uitgegeven spanning is lineair.
Nog 3 belangriJke opmerkingen t.a.v. de DA conversie. 1: BiJ het opstarten van de computer geert de DA een
spanning ar van 0 or -9 Volt Carh. van resp
unipolair or bipolair). Dit kan lastig ziJn biJ het opstarten (wagentje kan bij -9 Volt op hoI slaan).
2: BiJ de instelling op bipolair was er nog het
probleem dat de uitgegeven spanning -9 Volt werd,
zo gauw er een getal werd aangeboden dat een
negatieve spanning zou genereren. Dus een decimaal getal in de range 0 .. 20~7.
Dit probleem deed zich niet voor biJ positieve
spanningen. Door het decimale getal m.b.v een loop nog eens aan te bieden werd het probleem omzeild. Nu gar de DA weI de goede negatieve spanning uit. Er is tot op heden nog geen betere oplossing voor dit probleem gevonden.
3: BiJ de instelling op bipolair bleek het nulpunt
niet precies met het decimale getal 20~7 overeen te komen maar met 2073. Dit hoert geen prob~eem op te leveren wanneer men er rekening mee houdt, want de lineariteit komt niet in het gedrang.
~.2.2 De AD conversie.
De AD conversie gebeurt m.b.v. een succesieve
approximatie (snel en nauwkeurig). D.w.z. dat de
ingege-yen analoge spanning wordt vergeleken met een ingebouwde DA, die zijn spanning steeds met 1 bit verhoogd te
begin-nen bij het Most Significant Bit (M.S.B.). Deze twee
spanningen worden continu met elkaar vergeleken door een
comparator. Wanneer de spanningen aan elkaar geliJk ziJn
dan wordt de inhoud van de DA op de AD gezet. Op deze
manier wordt de analoge spanning omgezet in een digitale
waarde.
Voor de AD conversie begint moeten we een van de zestien ingangs- signalen selecteren en vervolgens dient het AD
register gewist te worden. Is dit gebeurt dan gaat de AD
conversie in twee stappen van elk 6 bits. Meer hierover
v1ndt U in het hoofdstuk ~.3.2 'De AD conversie. een
voorbeeld'.
~.3 De soft-ware, werking en DEMO's van de ADDA-12
kaart.
Om de ADDA-12 interface kaart m.b.v. een programma aan te
sturen moeten er eerst enige belangrijke zaken worden
vermeld.
De kaart bevat B poor ten die elk vanuit het programma
kunnen worden aangesproken. In eerste instantie moet het
kaart adres worden ingesteld (m.b.v. jumper) en dit adres
wordt de basis genoemd. De overige 7 poorten kunnen dan
worden aangesproken door bij deze basis het poortnummer
op te tellen. Hoe dit precies in z'n werk gaat vindt U in
de hoofdstukken ~.3.1 en ~.3.2. Nu wordt volstaan met het
vermelden wat er gaat gebeuren wanneer men deze poor ten
aanspreekt.
Port - 632 (of 760); het kaart adres (de basis).
Port+O - Selecteer een van de 16 AD kanalen.
Port+l - Lees de laagste B bits van de AD.
Port+2 - Lees de hoogste ~ bits van de An.
Port+3 - Wis het AD register.
Port+~ - Start de succesieve approximatie voor de hoogste
6 bits d.m.v. een loop (7*).
Port+S - Start de succesieve approximatie voor de laagste 6 bits d.m.v. een loop (7*).
Port+6 - De laagste B bits worden door de DA op de
uitgang gezet.
Port+7 - De laagste ~ bits worden door de DA op de
~.3.1 De DA conversie. een voorbeeld.
De 12 bits conversie blijkt nlet in een keer te kunnen
gaan. Om van een digitale waarde tot een analoge
uitgan-gsspanning te komen moet de digitale waarde eerst wat
bewerkingen ondergaan. Ket getal wordt eerst in de
bi-naire code gezet. Uan deze bibi-naire code worden eerst de B
laagste bits en geconverteerd en vervolgens de ~ hoogste.
Stel dat het te converteren decimale getal X is. Dan is
X-low :- X mod 256 (deel X door 256 en kiJk wat de
restwaarde is) en is X-high :- X div 256 (hoevaak past
256 in de waarde X). Uan X-low (de laagste B bits) wordt
de bijpassende spanning berekent en door aanspreken van
Port+6 op de analoge uitgang gezet. Dit zelrde gebeurt
met X-high ziJ het dat dit de ~ hoogste bits voorsteld en
dat ze door aanspreken van Port+7 op de analoge uitgang
komt te staan.
Nu zal een DEMO voor de DA volgen. Uoor de duideliJkheid
is er veel tekst aan het programma toegevoegd.
Program DEMO {van d~ DA-conversie)
{ Dit programma bevat een aantal procedures die gebruikt
kunnen worden met de PC ADDA-12 interrace.
De kaart beschikt over 1 DA converter:
-12 bits, 0-9 Volt Cinstelbaar met
instelpotmeter)
-settling time 500 nSec
-nonlinearity 0.2%
De DA converter kan zowel uni- als bipolair gebruikt
worden. Ket adres van de interrace is 527B CLPT2:) or
S2FB (COM2:). Controleer de Jumpers op de interrace en
vermiJd (adres)conrlicten met andere kaarten.)
CONST ADbase - 527Bj {-derault- LPT2:. optional
52F8- COM2: )
Procedure DAout( DA 1.. Integer2...i...
{ Zet de waarde DA in het DA Dutputregister
DA is een integer O .. ~095 }
UAR
d Integer;
BEGIN
d:- (DA DIU 256) AND 15; POLtCADbase+7J:- dj
POLtCADbase+6J:- DA MOD 256; END;
{ HigheL ~ bits}
{LoweL 8 bits}
(Het integeL DA wOLdt dooL 256 gedeeld en het aantal maal
dat dit gaat men met 15 (2~3+2~2+2A1+2AO-15) veLgeliJken
om te kiJken welke van de ~ hoogste bits ook
daadweLke-liJk hoog ('aan') is. Dit getal komt op POLt+7 te staan.
De Lest van het getal DA (dus DA mod 256) komt op POLt+6
te staan.}
Begin {Einde van de DEMO}
{HieL kunt U het hoofdpLogLamma SchLiJven, dat de
bovenstaande pLoceduLe DAout kan aanLoepen.} end.
~.3.2 De AD conveLsie, een vooLbeeld.
Ook deze 12 bits conversie kan niet in een keeL gebeuren.
Nu wOLdt eL echter gebLuik gemaakt van twee loop's die
elk 6 bits VOOL hun Lekening nemen.
De ene loop neemt de laagste 6 bits en de andeLe loop
neemt de hoogste 6 bits. De loop voor de laagste 6 bits
start biJ het aanspLeken van Port+~. De loop voor de
hoogste 6 bits staLt biJ het aanspLeken van Port+5. Het
Lesultaat van de AD conveLsie komt op POLt+l (8 laagste
bits) en op POLt+2 (~ hoogste bits).
Ook hieL is een DEMO gemaakt:
PLogram DEMO {van de AD-conveLsie}
(Dit pLogLamma bevat een aantal proceduLes die gebruikt
kunnen wOLden met de PC ADDA-12 inteLface.
De kaaLt heeft 1 AD conveLter:
-12 bits, 0-9
instelpotmeteL)
-conversie tiJd 60
-aIleen geschikt
spanningen
Volt (instelbaaL met
micLoSec
VOOL meten van postieve
Met de 16 kanalen naaL 1 kanaal analoge multiplexeL kan 1
van de 16 analoge ingangssignalen geselecteeLd worden
Het adres van de interface is $278 (LPT2:) of S2F8 (COM2:). }
CONST ADbase - $278; {-default- LPT2:, optional
S2F8- COM2: J
Procedure SelectChan( Chan ~ Integer);
(Selecteer inputkanaal-nummer Chan voor de AID converter.
Chan 1s een integer 0 .. 15 ) BEGIN
Port[ADbaseJ:- Chan AND 15; END;
{Wis AD register, start conversie, lees resultaat} VAR d, i : Integer; BEGIN d:- Port[ADbase+3J; FOR i:- 1 TO 7 DO d:- Port[ADbase+~J; FOR i:- 1 TO 7 DO d:- PortEADbase+5Jj
ADResult:- (Port[ADbase+2J AND 15) • 256; AD_Result:- AD_Result + PortEADbase+1Jj END;
{Clear AD reg)
{Convert )
{Read result }
{Het AD register wordt gewist door het aanspreken van de
Port+3. Vervolgens wordt de aange1egde spanning
vergeleken met de spanning van een ingebouwde DA
conver-ter. Deze DA converter verhoogd zijn spanning (beginnend
biJ nul) steeds met een bit (beginnend biJ de M.S.B).
Is een tussenresu1taat van b.v. bit1 + bit2 a1 te groot
dan wordt bit2 overges1agen en kijkt men of bit1 + bit3
niet te groot is. Is dit resultaat niet te groot dan
kiJkt men or bit~ er ook nog in past enz. enz. Op deze
manier worden aIle 12 bits afgescand totdat men een
spanning heert verkregen die gelijk is aan de aangelegde
spanning (althans binnen de nauwkeurighe1d van die 12
bits converter). Deze conversie (successieve
approxima-tie) gaat erg snell De conversie geschiedt dus in twee
loops van elk 6 bits. Door het aanspreken van Port+~
start de conversie voor de
hoogste 6 bits. Uoor de laagste 6 bits moet men Port+5
aanspreken. De resultaten van de conversie komen op de
poor ten 1 en 2 te staan (laagste 8 bits op poort 1 en de
hoogste q bits op poort 2). De totale waarde van de DA
converter is dan (Port+2 and 15)-256 + Port+l.)
Function ADin( Chan: In~eger): INTEGER;
(Kies kanaalnummer Chan
resultaatl UAR ADtemp : Integer; BEGIN SelectChan( Chan); ConvartAD( ADtemp); ADin:- ADtemp; END;
Begin (einde van de DEMO)
start AD conversie. lees
(Hier kunt U het hoofdprogramma schrijven. U kunt de
volgend procedures aanroepen: SelectChan ConvertAD
en de volgend functie ADin)
end.
q,q De appBraten die aan de ADDA-12 kaart zijn gekoppeld.
Om de ADDA-12 kBBrt toegBnkelijker te maken voor
BppBrBten is er een paneeltje gemaakt dat op een rijden-de lS-inch kast bevestigd kan worrijden-den (zie bijlage ADDA-12
kaBrt nr.2 blz.2). Op dit paneeltje zitten de analoge
uitgang CBNC plug) en 16 (0 .. 15) analoge ingangen.
Het is nu mogelijk d.m.v. een paar stekkers meteen op de
ADDA-l2 kBart te zitten. Ook is een kabel met pluggen,
nedig veor de verbinding van de ADDA-12 kaart met hat
paneeltJe, gemaakt. Het geheel bliJkt prima te
functione-ren (zie biJlage ADDA-12 kaart nr.3 blz.3).
Aan de ADDA-12 kaart ziJn nu achter een volgens het
metorsturingskastJe, de tamperatuur sensor en de
dauw-puntsmeter gekoppeld.
q.q.l Het motorsturingskastje.
Dit kBstJe dient em het vermogen te leveren dat de motor
motorstur1ngskastJe is speciaal ontworpen voor deze
opstel11ng en is afgeregeld op de massa's die het in
beweging moet zetten. De stuurspanning voor het
motorsturingskastJe wordt hier geleverd uit de DA
converter.
De aangeboden spanning moet in de range -5 tot +5 Uolt
liggen. 20niet dan bestaat er de kans dat de electronica
in het kastje wordt beschadigd.De sturing van het wagen-tje gebeurt dus in feite vanuit de computer. Er wordt Ben decimaal getal ingegeven dat overeen komt met Ben
bepaal-de spanning. Deze spanning wordt door de DA gegenereerd
en op het motorsturingskastje gezet. Het
motorsturings-kastje weet dan hoeveel energie hij aan het motortje moet leveren.
Nu de computer aan de opstelling is gekoppeld is het erg
eenvoudig om de aanloop en stop procedure zo te laten
verlopen dat dit geen nadelige gevolgen (schokkend aanlo-pen b.v.) heeft voor de constructie en natuurlijk voor de meting.
Ais eerste oplossing is gekozen voor Ben scheve sinus
vormige aanloop- en stopprocedure. Deze heeft als
voor-deel dat hij geen sprongen in de versnelling vertoond. Er
kunnen dien ten gevolge ook geen sprongen in de
versnel-lings krachten optreden. De bank, waarin het geheel is
opgehangen, gaat dan ook niet staan te trillen (dit deed
hij weI bij Ben plotselinge aanloop en stop van het
wagentje) en de meting kan ideaal verlopen.
Een klein nadeel is weI dat de gekozen aanloop- en
stop-procedure een constant aantal millimeters in beslag
ne-men. Wanneer men dus over Ben lengte van 3000 mm. wil
meten en de aanloop- en stopprocedure nemen in totaal 100
mm. in beslag dan kan men het traject in ten hoogste 30
stappen verdelen. Momenteel is dit aantal nog maar 15
stappen. Een eventuele uitbreiding is mogelijk maar niet
noodzakelijk. Tijdens het afstuderen zal er naar Ben
betere oplossing worden gezocht.
De scheve sinus, gebruikt bij de aanloop- en
stopproce-dure, wordt door de computer berekend.
Tevens zijn in de formule enkele grootheden verwerkt die
betrekking hebben op de kaart (de range O .. ~095 en de bij
behorende spanning) en op het motorsturingskastje (de
range -5 .. +5 Uolt).
~.~.2 De temperatuur sensor.
De gebrulkte temperatuur
Electronics Inc. Calirornia
liJkheid om 5 sensoren uit
laar). Deze sensOr en zitten
van zo'n 5 meter lengte.
sensor is van Newport
arkomstig. En heert"de moge-te lezen Ckeuze via schake-elk aan teleroondraad kabels
De temperatuur sensor geert een spanning uit die recht
evenredig is met de temperatuur (zie biJlage ADDA-12
kaart nr.~ blz.~). Een groot probleem hierbij is dat de
uitgangs spanning van de temperatuur sensor in de buurt
ligt van de 0.5 Volt. En op een schaal van 0 .. +9 Volt is
dit maar 1/18 deel van de volle schaal. De gevoeligheid
is dus erg slecht en dit is natuurliJk niet bevordeliJk Voor de nauwkeurigheid.
Een oplossing zou kunnen ziJn dat m.b.v. operationele
versterkers de spanning wordt versterkt. De realisatie
hiervan heert nog niet plaats gevonden.
De analoge uitgang bIijkt echter weI nauwkeurig te werken getuige de grariek.
~.~.3 De dauwpuntsmeter.
De dauwpuntsmeter (eigenliJk dauwpuntshygrometer) is door
het John
B.
Pierce Foundation Laboratory ontwikkeld. Enheaft ook Ben analoge uitgang die dus geschikt moet zijn
om aan de computer te koppelen. Met deze spanning is de
relatieve vochtigheid te bepalen.
Het koppelen van de dauwpuntsmeter aan de computer is
makkelijker gezegd dan gedaan. Er kwamen n.l. drie
pro-blemen boven water die niet zomaar op te lossen zijn. Ten
eerste liggen de spanningen in de buurt van honderdsten
van Volts, ten tweede kunnen de spanningen negatief zijn. lets wat de ADDA-12 kaart niet"pikt. Dit negatier ziJn is
te omzeilen door de stekker om te wisselen (geoorloord,
omdat de zaak electrisch zwevend is opgehangen).
Het derde probleem is dat de uitgegeven spanning nog
moet worden omgezet in een bepaalde relatieve
vochtig-heid. Dit gebeurt namenliJk m.b.v. een grariek en een
~.~.~ De druk sensor.
De druk sensor is een ander verhaal. Het is nog maar de
vraag of deze sensoren wel de gewenste resolutie halen.
We weten hier nog niet genoeg vanaf en dit zal later in
het afstudeerwerk worden onderzocht.
Hoordstuk ~
De IEEE-~88 kaart.
5.1 5peciricaties.
Adres In te stellen met een dip-switch.
Grootte 120 • 100 millimeters.
Gewicht - 150 gram.
5.2 De installatie van de kaart. 5peciricaties van het IEEE systeem.
-GeliJktiJd1ge data transport van een bron naar meerdere lu1steraars (de bron is in ons geval de computer).
-Een megabyte per seconde is de maximale data transport
rate. Er wordt dan gebruik gemaakt van 8 dataliJnen en 8 bus managamentliJnen.
-Er kunnan 15 apparaten met elkaar in verbinding staan.
Dit kan zowel 1n serie als in ster conriguratie. ook
mengvormen van deze twee ziJn mogeliJk.
-De interrace commando's en runcties ziJn
gestandaardi-saerd.
Op de IEEE-~88 kaart kunnen dus 15 apparaten worden
aangesloten. De computer moet natuurlijk BI die apparaten
uit elkaar houden en doet dit door hun ~e selecteren
m.b.v. een soort label. Dit label is in de vorm van een
instelbaar ad res (dip-switches) gerealiseerd. Er kan een
adras gekozen worden uit de range O .. 30.
Op de kaart
moeten in de
programma goed
nr.1 blz.S).
zitten 2 dip-switches en 2 Jumpers. deze
volgende stand stean willen ze in het
runctioneren Czie bijlage IEEE-~88 kaart
schakelaar 51: orr orr on on on on on orr schakelaer 52: orr on orr on orr orr orr orr
Jumper J3 +--+++
++++++
C -- betekent dat er een
verbinding zit tusssn de
Jumper J~ +1+1++ +:+1++
5.3 De gebruikte sort-ware.
richting. Het + teken
steld een pootJe voor.)
( betekent dat er een
verbinding zit tussen de
pootJes in verticale
richting.Het + teken
steld een pootje voor.)
Het is de bedoeling dat de computer met de apparaten gaat
communiceren. In het programma staan procedures die
spe-ciaal voor de IEEE-~BB ziJn ontworpen. Een klein probleem
gar nog het reit dat de gebruiksaanwijzing is bedoeld
voor programma's in basic en dat het programma in Turbo
Pascal is geschreven. Hiervoor zijn echter de
stuurprogramma's omgezet van Basic naar Turbo-Pascal. De beschikbare procedures ziJn de volgende:
-initialize -transmit -receive -send -spoIl -ppoll -device -enter -transmitA -receiveA -DMA Het te het Een
aanroepen van deze procedures kan aIleen als voren ziJn gedeclareerd en op de schiJr staan programma draait.
voorbeeld hoe zo'n procedure in Turbo.Pascal
aangeroepen:
ze van
waarop wordt
Procedure InitializeC Var Addr, Level
External 'T~BB Init'j
Integer);
De variabelen moeten van te voren in een declaratie blok
staan. Wanneer er procedures worden gebruikt waarin een
string voorkomt dan moet er gebruik worden gemaakt van
een zogenaamde 'string descriptor' (sdecs).
Het doel van de procedures: -initialize -transmit -receive -send -spoIl -ppoll -device -enter -transmitA -receiveA -DMA
Initialisatie van de interface kaart.
Het verzenden van commando's en/of data
over de bus.
Deze procedure zorgt dat data wordt
ontvangen door het apparaat dat hierom
vraagt. Tevens wordt er de status van het apparaat en de lengte van de data-string op de bus gezet.
Het verzenden van data over de bus.
HierbiJ wordt de interface automatisch
als talker geset en wordt tevens iemand
als listener aangewezen.
Deze procedure voert een seriel~ poll uit
op het uitgekozen apparaat en geeft
automatisch een status byte weer dat de
toestand van het apparaat beschriJft.
Deze procedure voert een parallelle poll
uit en zet de status van het apparaat dat hierop heeft gereageerd op de bus.
Met deze procedure kunt u
apparaten installeren op
default printer drivers.
verscheidende zogenaamde
De computer wordt als listener
aangewezen en een ander apparaat wordt
als talker aangewezen. De computer
ontvangt dan data van de talker.
Er wordt nu net zolang data op de
bus gezet tot een bepaald aantal
overgezonden bytes is bereikt.
Er wordt nu net zolang data
totdat een bepaald aantal
bereikt.
ontvangen bytes is
Dit is een procedure die data met een
zeer hoge snelheid transporteerd.
Ook kunnen er commando's op de bus worden gezet.
BiJvoorbeeld: UNT, dit betekent'dat aIle apparaten die
De volgende commando's kunt U de de bus zetten: -data -listen -talk -cmd -dcl -end -get -gtl -irc -110 -mla -mta -ppc -ppd -ppu -ren -sdc -spd -spe -tct -unl -unt
Let weI: apparaten die de gestandaardiseerde commando's
n1et kennen (or enkele nlet kennen) reageren daar dan ook niet op.
De sort-ware geleverd bij de kaart biedt vele
mogeliJkheden, teveel om hier op te noemen. Verwezen
wordt er dan ook naar de literatuurlijst, waar het boekje
terug te vinden is waarin alles van de sort-ware staat.
WeI zal nu een kleine DEMO met veel tekst volgen.
Program DEMO; {van de IEEE-~88 !nterrace)
Const IBMaddr-21j laseraddr-7j
systemcontroller-Oj {Constanten declaratie}
~ sdesc-Record len:Bytej addr:lntegeri End;
Commando-StringC80Jj {Typen declaratie) Var Addrl,Levell,Statusl:lntegerj Fdesc:sdesc; r:commandoj (Variabelen declaratie)
PROCEDURE initializeevar addr,level:integer)j
external 'r~8BINlr'i
PROCEDURE sendCvar address:integerj var data:sdescj var status:integer)j
external 'T~88SEND'i
{De procedures initialize en send ziJn IEEE-procedures
die in het programma kunnen worden opgeroepen. 2e moeten
van te voren worden gedeclareerd.}
Procedure in i t i. Begin Addrl:-IBMaddrj leveI1:-Systemcontroller; InitializeCaddr1,levell) End;
Clnitialisatie van de kaart}
Procedure Stuur-iets-over-dE!.::J~.!::H?".i. ..
Begin f: - '123Lf56'; fdesc.len:-LengthCf); fdesc.addr:-ors(f) + 1; Addrl:-laseraddrj Send(addrl,fdesc,status1) end;
(We willen de volgende string over de bus zenden:
'123Lf56'. Dit gaat niet zomaar we moeten eerst gebruik
maken van een zogenaamde stringdescriptor. Deze doet iets
met de lengte van de string en iets met het adres waar
hiJ naar toe moet. Met de aanroep van de procedure Send
wordt de string '123Lf56, over de bus gezonden.) Begin CHoordprogramma}
Init;
Stuur-iets-over-de-bus; End.
5.Lf De apparaten die aan de IEEE-LfBB kaart worden
gekoppeld.
5.Lf.l De rUE-laser CHp 5501).
De laser die vast op de opstelling staat is een Hewlett
Packard laser van het type 5501. Deze lasers hebben een
verbinding met een computer via een zogenaamde
couplerkast Ctypenr. l07LfOA).
In deze couplerkast kunnen 10 interrace kaarten worden
gestopt. Momenteel zitten er hier maar twee kaarten in
n.l. een counterkaart (deze telt de pulsen die van de
leserinterrerometer arkomen) en een IEEE-LfB8 kaart (deze
zorgt dat de IEEE-Lf88 kaart in de computer met de laser
ken communiceren). Het adres van de couplerkast wordt op
ru
D1 10740A Coupl.,
z
·
.
t eM &1"-0'lAo .. A. a. '. I~ At A • • At .I, leOOt A, ... A) A. 't Ie:_
0 0 •
•
•
...
• ••
• •·
•·
0•
• • ••
• • !•
••
• •·
·
• ••
••
•
•
•• •
0 • • 0 0·
I G , I•
•
•
0•
• ••
•
I • • I-·
•
• • •,
• •
•• •
•
0,
, ••
; I ,•
0•
•
•
•
t•
•..
0 I • •·
I I • 0 •,
•
•
• I•
,
••
•
•
•
•
• •• ,
•
•
•
• I ••
•
•
•
,,
I·
•
I I•
• ••
•
• t 0•
• 0•
, I • 0•
~•
••
•
t I ••
0,
I•
·
·
• 0·
·
MOO!!..
,,- I·
• I 0·
•
UP IeADDRESS SWITCHES HP-18 CONNECTOR
andere kaarten in de couplerkast krijgen een onder-adres toegewezen via een stel dip-switches. Echter bestaat dit adres uit een teken (in ons geval een keuze uit de
hoofd-letters A,B,C,X,Y.2,M,O,P en V, zie bijlage IEEE-~B8
kaart nr.2 blz.S).
Telpulsen die door de laser worden waargenomen komen in aerste instantie op de counter kaart terecht. De counter
kaart telt continu de pulsen die binnen komen. Deze
pulsen worden nlet meteen door de computer geregistreerd, daar gaat nog weI het een en ander aan vooraf. Ten eerste moeten de pulsen die in de tel registers zitten op de output buffer worden gezet en vervolgens worden ze op de Backplane Bus gezet.
NatuurliJk willen we meer handelingen met de counter
kaart kunnen uitvoeren (b.v. de tellers op nul zetten en het fouten byte wissen). Er kunnen dus ook fouten worden
gereglstreerd, hierbiJ kunt u denken aan bundel
onderbreking of een overflow op de teller. Dit alles is mogeliJk met de counter kaart.
Een overzicht van de instructies die u aan de counter
kaart kunt geven vindt u achterin bij de biJlagen (zie
blJlage IEEE-~BB kaart nr.3 blz.7). Een klein probleem
dat de vorige computer had was dat hij de service request
van de laser niet kon verwerken. Wanneer er dus een
bundel wordt onderbroken dan willen we dit graag weten,
we kunnen dan de meting voortijdig afbreken en opnieuw
beginnen. Dit laatste hebben we voorelkaar gekregen door naar de status van de laser te kiJken. De laser geeft n.l. Ben status byte uit waaruit men kan opmaken hoe de laser er biJ staat. Wordt er een fout gededecteerd dan wordt meteen een errOr signaal uitgegeven door de laser an waten wiJ dat er iets niet goad is gegaan. Wat er niet goed is gegaan dat valt uit het status byte af te lezen. Hoa dit alles in z'n werk gaat kunt u in de biJlagen lazen (zie bijlage IEEE-~8B kaart nr.~ blz.8).
Naast de laser hangt er ook nog een display aan het
IEEE-~8B systeem. Het display moet weI apart worden aan
geroepen, met z'n instelbaar adres, maar het behoort toch aan het laser meetsysteem toe.
5.~.2 De te beproeven laser
De te beproeven laser komt doorgaans van Hewlett Packard af en kan een laser ziJn met e~n IEEE-~BB systeem of een laser met een BCD uitgang. Over dit laatste voIgt straks 1n hoofdstuk S meer.
Nu wil ik het even over het IEEE-~88 systeem hebben, het Hp 5528 A systeem. 20als gezegd heeft deze dus ook een
IEEE-~88 uitgang en is dus uitstekend geschikt voor onze
opstelling. Dit laserinterferometer systeem is veel
uit-gebreider dan het referentie systeem. U kunt biJvoorbeeld aen correctie ingeven voor de toestand van de lucht. U berekent dan de zogenaamde UDL-correctie en typt die dan op het display in. U kunt ook overgaan op een
automati-sche correctie. Een temperatuur sensor en een
automati-sche compensator zorgen dan dat de UDL-correctie waarde
door het display zelf wordt berekend en gebruikt biJ de
metingen. Ook is er een arstandsbediening biJ deze
laserlnterrerometer. U kunt hiermee het display resetten
1n de beglnstand en U kunt hiermee samples nemen. Tevens
is de routenregistratie van deze laserinterererometer
uitgebreid en verschart dit ons de mogeliJkheid om op een Juiste manier in te grijpen wanneer er iets mis zou gaan. Meer over dit systeem vindt U in de bijlagen (zie biJlage
IEEE-~88 nr.5 blz.S).
20als al gezegd geeft deze laser ook een status uit dat weer geeft hoe hij er voor staat. Meer over de mogelijke
routen vindt u achterin bij de biJlagen (zie bijlage
IEEE-~88 nr.5 blz.S). Ook de IEEE-~88 en de aanstuur
commando's die u naar de laser kunt sturen vindt u
achterin biJ die biJlagen. Deze
IEEE
lasers worden net zoals aIle apparaten die bus zitten van te voren gekenmerkt met een nummer.
op de adres
Wanneer er andere lasers, dan de tot nu toe behandelde lasers, aan het systeem worden gekoppeld dan moet van te
voren bestudeerd worden hoe de laser moet worden
aan-gestuurd. Dit is voornamenlijk het geval wanneer de laser nlet van het merk Hewlett Packard is. Er is ook nog de mogelijkheid dat de lasers geen IEEE-systeem hebben maar
een andere uitgang. Dan is het noodzaaklijk dat dit
systeem wordt bestudeerd en dat men hiervoor een oplos-sing zoekt. Dit laatste komt voor biJ de oudere Hp laser systemen (Hp 5526), deze hebben n.l. een uitgang die aen
andere soort communicatie met de computer vergt. Deze
~:-... ...
• l
~. ~.
ij.
-
if .
... I • ~.•...
(;~·w·w·w·ij- !CIa., . (. -(;
-w;v •
w
0 • • Model f).'i:.?IA 30Hoofdstuk §.
De 110 kaart.
6.1 Specificaties.
Adres Het kaart ad res is in te stellen op de range
SlBO tot SlBF of op de range SIFO tot SIFF.
Dit gebeurt m.b.v. een Jumper.
Gewicht .... 150 gram.
Grootte 200 • 100 millimeter.
6.2 De installatie van de kaart.
Specificaties van het 110 systeem.
-~B programmeerbare I/O lijnen
-3 onafhankeliJke 16 bits tellers.
-16 leds 110 display.
Voor dat de kaart in gebruik wordt genomen dienen aIle
Jumpers in de goede stand te worden gezet. Er is een
dip-switch schakelaar op de kaart aanwezig. Deze schakelaar
bevat 3 Jumpers (swl, sw2 en sw3) en 1 dip-switch (sw~ en
sws). Het 6-de pinnetJe op de schakelaar is niet
aangesioten.
Met swl-on wordt de interne klok geselcteerd en dit is
dan tevens counterO.
swl-off betekent dat de interne klok door een
externe klok wordt vervangen.
Met sw2-on wordt de interne klok geselecteerd en dit is
dan tevens counterl.
sw2-off betekent dat de interene klok door een
externe klok wordt vervangen.
Met sw3-on wordt de interne klok geselecteerd en dit is
dan tevens counter2.
sw3-off betekent dat de interene klok door een
externe klok wordt vervangen.
BiJ
awl en sw2 is de interne klok frequentie 1190000 Hz.BiJ sw3 is de klok frequentie 2386333Hz. Met de
In dit onderzoek is geen gebruik gemaakt v.d. 82S3 ic
edit is de ic met de programmeerbare interval
timer/counter) Uoor meer inrormatie verwijs ik U dus
naar de literatuurlijst. Een overzicht v.d. kaart vindt U
in de bijlagen (zie bijlage 1/0 kaart nr.l bIz. 18).
Op de kaart zitten twee 82SS ic's die elk uit drie
rallelle poorten van elk 8 bits bestaan. In totaal
er dUB ~8 I/O liJnen beschikbaar. Tevens zit er een
1c OPt een programmeerbare interval timer/counter.
uitgang is ook nog voorzien van een led indikatie.
geheel is TTL compatible.
S.3 De soft-ware, werking en DEMO's van de 1/0 kaart.
pa-ziJn 8253 Elke Het
Uoor dat we de I/O kaart m.b.v een programma gaan aanstu-ren moeten we eerst enige belangriJke zaken op een rijtje zetten.
De kaart wordt via het programma aangeroepen d.m.v. een
adres. Dit adres is van te voren ingesteld. Stel dat we
het op SlBO hebben in gesteld. Dan staat in de volgende
tabel de betekenis van de andere adres peorten. Wanneer U
de kaart op SlFO hebt ingesteld dan is de betekenis van
SlFO tIm SlFF hetzelrde als dat van SlBO tim SlBB.
SIBO PORT la READ WRITE BUFFER
SIBl PORT Ib READ WRITE BUFFER
SIB2 PORT lc READ WRITE BUFFER
SIB3 PORT 1 CONTROL REGISTER (82SS)
SIB~ PORT 2a READ WRITE BUFFER
SIBS PORT 2b READ WRITE BUFFER
SIBS PORT 2c READ WRITE BUFFER
SIB7 PORT 2 CONTROL REGISTER (8255)
S1B8 COUNTERO READ WRITE BUFFER
SIB9 COUNTER1 READ WRITE BUFFER
SIBA COUNTER2 READ WRITE BUFFER
SIBB COUNTER CHIP 8253 CONTROL REGISTER
Het op de I/O lijnen staande signaal kan doer de kaart
gelezen worden deor enkele van deze peerten aan te
spreken.
Dp de kaart zitten dus twee 8255 ic's die elk weer ziJn
enderverdeeld in drie 8-bits peerten (peort A," B, C).
Peort A : 8-bits data eutput latch/buffer. 8-bits data input latch.
Paart B
Paart
e
idem Ban Poort A
B-bits data output latch/buffer.
B-bits data input buffer (geen latch).
De poort
e
kan nog worden onderverdeeld in twee poor tenvan elk q bits. Elke q-bits poort kan dan in samenwerking
met de poorten A en B zorgen voor control signalen op de
output en status signalen op de input.
Door het geheel in een bepaalde mode te zetten kunnen we
kiezen wat de preciese werking van de 82SS ic zal zijn.
Mode 0
Mode 1
Mode 2
AIle lijnen worden I/O liJnen, er ziJn dus 2q
I/O liJnen per 82SS ic beschikbaar.
De lijnen van de poorten A en B worden I/O
lijnen (16 in totaal) en de lijnen van poort
e
worden control liJnen of I/O liJnen.
De lijnen van poort B worden I/O liJnen en de
lijnen van poort A worden zogenaamde
bi-directional liJnen. Drie liJnen van poort
e
worden I/O liJnen en de overige 5 liJnen worden control liJnen.
In dit onderzoeks werk is aIleen gebruik gemaakt van de
mode O.
• Twee B-bits poor ten (A,B) en twee ~-bits poorten
ee).
• Elke poort kan input of output ziJn. • De outputs ziJn 'gelatched'.
• De inputs zijn niet 'gelatched'.
• 16 verschillend input/output configuraties zijn
moge-liJk.
Het zogenaamde latchen van de output wil zeggen dat deze
op ziJn tijd hoog ohmig kan worden, zodat de ene ic de
andere niet kan beschadigen.
Met m.b.v. het programma kunt U de ic zetten in de mode
die U zelf wilt hebben. U doet dit door een bepaald
control woord naar het control register te sturen (zie
tabel bIz. 31).Dit control woord bestaat uit B bits, 07
tIm DO. 07
06 en OS
Mode set flag, I-active.
Mode selectie poort A: DO-mode 0 OI-mode 1
lx-mode 2 ex: niet van belang)
DLJ: Poort A : i-input O-output
D3 Poort C (upper) : i-input
O-output
D2 Mode selectie poort 8: O-mode 0
i-mode 1
Dl Poort 8 : i-input
"O-output
DO Poort C (lower) : i-input
O-output
Dit zogenaamde control woord kunt U in zowel binaire als
hexadecimale vorm naar het ic sturen. Meer hier ever
vindt U in de nu volgende DEMO (zie tevens bijlage I/O
kaart nr.2 blz.19).
PROGRAM PARALLELKAART __ DEMO;
{ Dit demonstratie programma laat zien hoe de 8255 ic ep
de parallelkaart geprogrammerd kan worden. Dit em de
programmeermogelijkheden van de chip duidelijk te maken.
In de handleiding staat beschreven wat aIle mogelijkheden
zijn. Uoor een optimaal gebruik van de chip is het
noodzakelijk dit programma goed te bestuderen. }
CoNST PortiA - $180; --'-'-'--Port18 PortlC PortlR Port2A Port28 Port2C Port2R - $181; - $182; - $183; - $18LJ:; - $185; - $186; - $187; CounterO - $188; Counter1 - $189; Counter2 - $18A; CounterR - $188;
{hier stuurt U het control weord naar toe}
{hier stuurt U het contrel weerd naar toe}
{hier stuurt U het contrel weerd van de counter naar toe}
UAR Teller,Uertragingstijd INTEGER;
CHAR; 8YTE; BOOLEAN; Ch Waardel,Waarde2,Waarde3,WaardeLJ: Test 8EGIN PoRTW[Port1RJ:-$88;PoRTW[Port2RJ:-$88;
programmeerbare PIA (Peripheral InterFace Application) 1
&
2 zijn output en poorten B zijn input. Poorten C ziJnook input. Het patroon in het control-register is
070605 .. 0100 - 10001011 - 8B Hex.}
Uertragingstijd:-100;
{ tijd tussen elke stap van het looplicht. } REPEAT PORTW[PortlAJ:-l~6j PORTW[Port2AJ:-073j delayCUertragingstijd); PORTW[Port1AJ:-073i PORTW[Port2AJ:-036; delayCUertragingstijd)j PDRTW[PortlAJ;-036j PDRTW[Port2AJ:-l~6; delayCUertragingstijd); UNTIL KeyPressedj
{ In de output registers van de beide A poorten wordt
telkens een ander patroon geschreven en dan even gewacht
zodat de LEOjes "lopen". Oe waarde 1~6. 073 en 036 geven
dat patroon aan de ledjes.} CLRSCRj
GOTDXY(20,5);WRITE('Oemonstratie programma PIA 8255
INPUT');
GOTOXYC20.6)jWRITEC'MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM-MMMMM');
GDTDXYC10.12);WRITEC'Oe ingelezenwaarde op de eerste B
poort is ; ');
GDTDXYCIO,13);WRITEC'Oe ingelezenwaarde op de eerste C
poort is : ');
GOTOXY(10 , 15);WRITEC'Oe ingelezenwaarde op de tweede
B
poort is : ');
GOTOXY(10.16)jWRITEC'De ingelezenwaarde op de tweede C
poort is : ' ) j
GOTOXYC~5,2~);WRITE('Oruk op M voor nieuwe meting.');
GOTOXYC~5.25);WRITEC'Druk op 5 om te stoppen. I ) ; REPEAT Waardel:-PORTW[PortlBJ; Waarde2:-PDRTW[PortlCJ; Waarde3:-PORTW[Port2BJi Waarde~:-PORTW[Port2CJ;
{Oe poorten IB,2B , IC en 2C worden gelezen en waarde1 tIm
waarde~ genoemd.}
GOTOXYC55 , 12);WRITECWaardel:3); GDTDXY(55 , 13);WRITECWaarde2:3); . GOTOXYC55 , 15);WRITECWaarde3:3);
{De waa~de1 tim waa~deq kemen ep het beeld sche~m te staan ep de plaatsen 55,12 tIm 55,16.}
REPEAT
READ(KBD,CH)j {KBD - keybea~d}
UNTIL (Ch-'S') OR (Ch-'s') OR (Ch-'M') OR (Ch-'m');
UNTIL (Ch-'S') OR (Ch-'s');
END.{Einde van de DEMO}
6.q Appa~aten die aan de 110 kaart hangen.
In ons geval is er maar een apparaat aan de kaart
ver-bonden, n.l. een Hp 5526 lase~ die i.p.v. een IEEE
uit-gang een BCD uituit-gang heeft. Deze uitgang is velgens het
TTL systeem. Op de (p~inter) uitgang van de lase~ komt de
waarde van het display in BCD code te staan.Een schema
v.d. p~inte~-uitgang staat in de biJlagen (zie biJlage
1/0 kaart nr.3 blz.3Q).
Dit geheel is in te lezen m.b.v. de 110 kaart. BiJ de
ee~ste B255 ic kemen ep de A-peert de eenheden en de
tientallen te staan. Op de B-peert kemen de hende~d- en
duizendtallen en op de C-peert kemen de tien- en henderd-duizendtallen.
Op de 2-de B255 ic komen op de A-peert de miljoen- en
tienmilJoentallen te staan. De henderdmiljeentallen kemen op de B-peort van deze ic.
De uitgang is een BCD uitgang dus we hebben Q bits die
maximaal negen kunnen vormen wanneer we biJ de eenheden
kiJken.
Het ee~ste bit stelt 1 veer.
Het tweede bit stelt 2 veer.
Het de~de bit stelt q v~~r.
Het vierde bit stelt 8 veer.
Willen we 7 vo~men dan ziJn de ee~ste 3 bits heeg en is
het vie~de bit laag. U vindt in de biJlagen de cennecter
schema's van de kaa~t, laserinterfe~emete~ uitgang en
de ve~bindingskabel (zie biJlage 110 kaa~t nr.q en 5
bIz .35 en 36),
Momenteel wordt er allen neg maar geb~uik gemaakt van het
uitlezen van de Hp 5526 lase~. 2aken als de
laserinterfe-~omete~ set ten en de feutenregistratie waa~nemen kemen
neg nlet aan bed maar zeuden eventueel in de teekemst weI
geb~uikt kunnen gaan werden.
~!!,>O!!lA
Hoofdstuk 7
Een grafische weergave van de epstelling.
Om de epstelling iets dUideliJker te beschriJven is er
een grafische weergave van het geheel gemaakt. Aan bed
kemen aIle interface kaarten en hun apparaten. De
teke-ningen staan in de biJlagen (zie biJlage tekeningen
blz.38).
Op de linker kant van de tekening staat het riJdende
19-inch rek met daarin aIle apperatuur (behalve de lasers).
Rechts onder ep de tekeningen ziet U de gebruikte
com-puter met interface kaarten en helemaal bovenaan staat de cpstelling met de lasers en spiegels getekend.
Geheel rechts staat informatie, die biJ de piJltJes in de tekening hoort.
Achter een volgens komen aan bod: de motorsturing, de
temperatuur inlezing, de dauwpuntsmeter, de Hp 5501
la-ser, de te beproeven laser 1 en de te beproeven laser 2.
Hoofdstuk ~
Conclusies en aanbevelingen.
Deze aanzet voo~ een automatise~ing van de lase~ve~ge
liJkings meetopstelling heeft uitgewezen dat het mogelijk
is met de Ci~p Xt 6~0 compute~ met de inte~faces ADDA-12,
IEEE-~88 en de I/O FPC-02~, de hier gewenste
automatise~ing in te voeren.
Enkele opme~kingen:
1 De nauwkeurigheid van de ADDA-12 kaa~t is onvoldoende
voo~ tempe~atuur metingen. Een oplossing moet nog
gezocht wo~den.
2 De IEEE-~BB kaa~t werkt, volgens de verwachting, erg
goed
3 De I/O kaart werkt ook naa~ behoren.
Aanbevelingen:
1 Uerde~ gaan met de automatisering.
2 MogeliJk refractometer ook inkoppelen (I/O kaart).
3 Temperatuur meting en de druk en C02 meting, verder
ontwikkelen.
~ Programma's verder uitwerken voor voledige software
matige sturing en rapportage.
Een eerste resultaat van de uitvoer ziet U in de bijlagen
(zie biJlage computer uitvoer blz.~~).
En1ge toelichting biJ de uitvoer.
aetest werd er een laserinterferometer met een BCD
uit-gang tegen de ~efe~entie laserinterfe~ometer van de TUE.
Er werden 15 verplaatsingen gemaakt van elk biJna 200 mm. WanneErhet wagentje stil stond werd er een sample genomen van beide lasermeetsystemen.
Het geheel werd twee maal uitgevoerdj een keer werd er
bewogen naar de laser toe en een keer werd er bewogen van de laser af.
Tevens is er een automatisch een grafiek gemaakt van het
Hoofdstuk ~
Literatuurlijst.
De gebruikte boeken, handleidingen en naslagwerken in
deze opdracht zijn de volgende.
1) WPA-rapport nr. 0318 van Bert v.d. Pasch.
2) IEEE-~88 manuel, PC-~88 programming and reference
manuel van het Capital Equipment Corporation (C.E.C). 3) 5501 A Service manuel Laser Measurment System.
~) 5528 A Service manuel Laser Measurment System.
5) 5526 A Service manuel Laser Measurment System. 6) PC ADDA-12 Card FPC-OIO User's Manuel.
7) 8255 I/O Card FPC-02~ User's Manuel.
8) Intel, Component Data Catalog (1881).
8) Absolute meetnauwkeurigheid van technische laser inter-fBrometers van P.H.J Schellekens.
instel potMeter
n
JUMper
PI
:--JUMper
P2.
[ g
Deze
JUMper
Zit
er op (Ioipoto.lr)
~
Adres op $278 tot $27F (632 tot 639)
Dit
is de COMponent-ZiJde
1
ADDA ko.o.rt
a < III i N....
n :r rt < !lJ :3 c.. III A !lJ !II i rt.
... "i
D tl tl D I .-t·J A !II !II i rtI~
1-Het verbindlngs po.neel
tJe
tU5sen
ADDA-12
ko.o.rt
en de
QPPQrQten
"o
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
r -" " " Rood·
.
" " •.
0.
. .
• .:De
cncloge Ingcngen
0. o ZnM(~ 0..
•· ·
.
•.
• •.
..
".:.
·
·
o
Ancloge
· ·
..
de
co..--puter
..
Plug
nccr
Ultgang
·
...
:I:i
III rt' < III.,
0-...
l> :l 0 0- 0...
. l> :l I dl J-III f-J '0 III :tt: :l III II III II.,
.... ,...
,...
....
I~
"
• IN,
.
~ a.....
m :T m rt' "C !II :::J m m ... r+...
m
4It--Jt"Il-J
t
~ JI ;.dt ....::L
ADDA-12 kaart ~ i
•• 'IT
de temperatuur met de analoge uitgang van de sensor. 'j otIlIr
".,~t;
L.
I i i I 1 i,
~(P,I-I
i
!
J : ~ " I f" i' i 1 i I, I!
I I I 'I ! ! ~I
I¢'L,
1-I, , i" I L " I - " . "1'I
IIO'!,
~
I~
I--I 1.:3 W'gr :;
!-.J ~r{f~
I.. ..8
~..
a
o ::r I., <:> ... .9 II> 0'§
...
o \ t-~ I -t ) o..8
:r fi o J. :r,.
o
'I
I I () r N I ::r ~ :..§l
~ '" ...0-Bijlage IEEE-488 kaart nr. 1
Overzicht v.d. IEEE-488 kaart
U ziet nu een schematische weergave van de IEEE-488
kaart. Op deze kaart is duidelijkde plaats van de twee dip-switches en de twee jumpers te zien.
OJ
~--,
....
~
Q...'0'
• •D'
•§
...,
- Col')N
r.---I
~8
L9 ;
t £a
I.,.
.,.
.,.
.p~
c
'i
OJ"'!
-c~
OR
c. ..
e:
o
u
OJ
"
t.n
+>
-~
~
fj
...
'i
~ Ig
(")'...---.
'- I. QI~+
.
·1· -1,1
:::s-,
8 L 9 ; ..£
a
I.,. .,.
.,.
.,.
.,.
.,.
-
-+>
~d
d
:::t.
ex>
00
v
I
W
W
W
...
Een pl.ae:.tje:
zitten. DE:'
Model 10745A Compone;)( LocalOr
10760A COlJtlO"