TAflORATOEJtjM
sm
MECHANIC.:,‘4g HOGECç.
10597 21195 31792 10742 21484 32226 10887 21773 32660 11031 22063 33094 11176 22352 33527 11320 22641 33961 11465 22930 34394 11609 23219 34828 11754 23507 35261 11898 23796 35695 12043 24085 36128 12187 24374 36561 12331 24663 36994 12476 24951 37427 12620 25240 37860 12764 25528 38293 12908 25917 38725 13053 26105 39158 13197 26394 39590 13341 26682 40023 13485 26970 40455 13629 27258 40888 13773 27547 41320 13917 27835 41752 14061 28123 42184 14205 28411 42616 14349 28699 43048 14493 28986 43480 14637 29274 43911 14781 29562 44343 14925 29850 44774 15069 30137 45206H IN ES
17222 34443 51665 17365 34730 52094 17508 35016 52524 17651 35302 52954 17794 35589 53383 17937 35875 53812 18081 36161 54242 18224 36447 54671 18367 36733 55100 18509 37019 55529 18652 37305 55957 UITGAVE VAN DE COMMISSIE REKENMACHINESVAN DE TECHNISCHE HOGESCHOOL DELFT 1960
Prof. dr. ir. C.J. D. M. Verhagen
REKENMACHINES
IN
DELFT
%iQ OEGE?St J T!CI4NI3O HOUitgave van de Commissie Rekenmachines >> van de Technische Hogeschool te Deift, 1960
vn
La&.. TG fpI iecfljca
Prof.Mkepg2.jj
Dit boekje is uitgegeven door de ,,Commissie Rekenmachines” van de Technische Hogeschool te Deift:
Prof. dr. ir. C.
J.
D. M. VERHAGEN (voorzitter) Prof. dr. ir. L. KOSTENProf. ir. W.BAARDA
Prof. dr. ir. A. D. DE PATER
Prof. dr. ir. R. M. M. OBERMAN Prof. ir. H. KRAMERS
Dr. ir. W. F. DE JONG
Prof. ir. H. E.JAEGER
Dr. H. A. BAKELS
Jr.
J.
C.JoosTEN (secretaris)Het werd geschreven door Prof. dr. ir. C.
J.
D. M. VERHAGEN.Medewerking verleenden:
a. Redactiecommissie Prof. ir. W. BAARDA
Prof. dr. ir. A. D.DE PATER
Jr.
J.
C.JOOSTEN (secretaris) b. Werkcommissie Rekenmachines Jr. D. H. WOLBERS (voorzitter) Jr. L. DEKKER Jr. C. H. EVERSDIJK Jr.J.
C.JoosTEN (secretaris) c. Jr. F. A. W. VAN DEN BURGJr. 0. H. GERLACH Prof. dr. ir. L. KOSTEN
Prof. ir. H. R. VAN NAUTA LEMKE
Prof. dr. ir. R. M. M. OBERMAN
Dr. M. REISEL Jr. P. VAN STAVEREN
Jr. B. P. TH. VELTMAN
Het werd persklaar gemaakt door Ir.J. C.JOOSTEN. H. C.VAN DER H0EK verzorgde de lay-out en de correctie.
INHOUD
I. Inleiding
1. Doel van deze uitgave 7
2. Digitale en analoge rekenmachines 7
a. Digitale rekenmachines 7
b. Analoge rekenmachines 8
3. Nomenclatnur 8
II. Digitale rekenmachines
A. TFIEORIE 10
1. Inleiding 10
2. Basiselementen van digitale rekenmaehines 11
a. Geheugenelementen 11
b. Logische elementen 14
3. Enige speciale toepassingen 17
4. Elektronisehe digitale rekenmachines 18 a. Algemene ophouw van de machine 18 b. Het weergeven van getallen en opdrachten 19 c. Het uitvoeren van opdrachten 22
d. Eenvoudig programmeren 24
B. DaZEBRA 29
Ill. Analoge rekennxach.ines
A. THEORIE 34
1. Inleiding 34
2. Enige speciale analoge rekenelementen 35
a. Optellen en aftrekken 35
b. Vermenigvuldigen en delen 36
c. Differentieren en integreren 37 d. Het oplossen van differentiaalvergelijkingen 39 3. Basiselementen van elektronische analoge rekenmachines 41 a. Tekenomkeren en van een coefficient voorzien 41
b. Optellen 43
c. Integreren 44
d. Optellen en integreren 45
e. Differentiëren 45
f. Eerste orde differentiaalvergelijking 45 4. Het gebruik van elektronische analoge rekenmachines voor het oplossen van
differentiaalvergelijkingen 46
a. Eerste orde differentiaalvergelijking 46 b. Tweede orde differentiaalvergelijking 48 c. Niet-lineaire vergelijkingen 49
B. ANALOGE REKENMAcHINES AAN DET.H 51
1. Afdeling der Werktuigbouwkunde 51
a. Laboratorium voor Verbrandingsmotoren 51 b. Laboratorium voor \7oertuigtechniek 52 c. Laboratorium voor Regeltechniek 53
2. Afdeling der Elektrotechniek 54
3. Afdeling der Technische Natuurkunde 55
Werkgroep Instrumentatie 55
IV. Voor- en nadelen van digitale en analoge rekenmachines 1. Inleiding 2. Nauwkeurigheid 3. Sneiheid 4. Geheugen 5. Flexibiliteit 6. Uitbreidingsmogelijkheden 7. Koppeling met technische systemen 8. Probleem-typen
9. Onderhoud en betrouwbaarheid . . . . 10. Het leren gebruiken van rekenmachines 11. Kosten V. Perspectieven 1. Inleiding 2. Technische ontwikkelingen a. Digitale rekenmachines b. Analoge rekenmachines
e. Werk aan de Technische Hogeschool in Delft 3. Het gebruik van rekeninachines
a. Het oplossen van mathematische problemen
b. Het gebruik van informatieverwerkende systemen in de techniek e. Plannen voor de Technische Hogesehool in Deift
4. Slotwoord VI. Literatuur 72 60 60 61 62 62 62 63 63 64 64 64 66 66 66 67 67 69 69 70 71 71 5
L
INLEIDING
1. Dod van deze uitgave
Er zijn maar weinig ingenieurs die van rekenen houden. De interesse gaat veel meer uit naar het bedenken van nieuwe mogelijkheden en constructies, het opstellen van mm of meer volledige mathematische beschrijvingen, het interpreteren van meetresultaten, het ontwerpen van nieuwe experimenten e.d. Vaak echter zijn langdurige berekeningen niet
te vermijden. Dan kunnen rekenmachines het leven van ingenieurs zeer
veraangenamen.
Om op het juiste ogenblik en voor het juiste probleem de huip van rekenmachines in te kunnen roepen, moet men iets weten omtrent hun mogelijkheden en beperkingen. Deze orienterende publikatie voor docen ten, stafleden en studenten beschrijft op beknopte en elementaire wijze
de werking van enige rekenmachines, en geeft een overzicht van de
machines waarover de Technische Hogeschool te Deift besehikt. Het is
geen handleiding, geen leerboek of collegedictaat, maar een terrein
verkenning waardoor men een idee kan krijgen van wat er te koop is
en wat de T.H. reeds verworven of vervaardigd heeft. 2. Digitale en analoge rekenmachines
Het is noodzakelijk van het begin af aan onderscheid te maken tussen digitale en analoge rekenmachines.
a. Digitale rekenmac/tines
In digitale machines (digitaal komt van het Latijnse woord digitus —
vinger) worden de mathematische grootheden voorgesteld met behuip
van fysische elementen die zich slechts in zeer bepaalde toestanden kunnen bevinden. Werkt men in een tientallig stelsel, dan stellen bijv.
10 standen van een telschijfje de cijfers 0 t/m 9 voor. In een tweetallig stelsel, waarin alleen de cijfers 0 en 1 voorkomen, kan men volstaan
met elementen die zich slechts in twee toestanden kunnen bevinden,
bijv. op-af (relais), aan-uit (schakelcontact), hoog-laag (spanning van
elektronische trekker of flip-flop). De ene toestand stelt de ,,1” voor,
de andere de ,,0”. Tussengelegen toestanden hebben geen betekenis,
kunnen in veel gevallen niet eens blijvend bestaan of worden als zij in
de buurt van de bedoelde toestanden liggen daarmee vereenzelvigd. Bij transistor-flip-flops wordt bijv. de ,,0” door 0 volt en de ,,1” door +6
volt voorgesteld. Is door onvolkomen stabilisatie van de voedingsspan fling of door temperatuurinvloeden op de onderdelen, de spanning niet +6 volt maar +5,5 volt, dan heeft deze +5,5 volt ook de betekenis van ,,l’’.
Door geschikte beInvloeding, bijv. een mechanische of elektrische stoot (puls), springen de elementen van de ene toestand in de andere, daarbij berekeningen uitvoerend. Deze beInvloedingen worden bestuurd door een zg. programma. Bepaling van de toestand van elk der elementen geeft aan, welke cijfers worden voorgesteld.
Voorbeelden van digitale rekenmachines zijn: teiramen, kasregisters, telmachines, tafelrekenmachines, boekhoudmachines, elektronische digi tale rekenmachines. Hoofdstuk II geeft een uiteenzetting van laatst genoemde apparaten.
b. Analoge rekeninachines
Analoge machines maken voor het voorstellen van mathematische groot heden gebruik van fysische grootheden, zoals hoekstanden, niveaus, ver plaatsingen, drukken, elektrische spanningen, die alle waarden tussen een zeker minimum en maximum kunnen aannemen. Men noemt deze grootheden ,,analoge grootheden”. Een elektrische spanning kan bijv. een mathematische grootheid x voorstellen. De grootte van deze spanning is een maat voor de grootte van x. De in analoge rekenmachines ge bruikte grootheden kunnen in principe continu veranderen. Elke waarde heeft betekenis. Als de grootheden als functie van de tijd veranderen, is het de bedoeling dat zij op elk moment de variabelen in een verge lijking nabootsen. Meting van deze grootheden met behulp van wijzers, vlotters of voltmeters, verschaft nu inlichtingen over het mathematische stelsel.
Voorbeelden van analoge rekenmachines zijn: rekenlinealen, plani meters, integratiemotortj es, elektronische analoge rekenmachines. Hoofd stuk III beschrijft de werking van laatstgenoemde machines.
In hoofdstuk IV wordt een globale vergelijking tussen digitale en analoge machines gemaakt.
3. Nomcnclatuur
In dit boekje wordt het woord rekenmachine consequent gebruikt; al maakt het de tekst wat eentonig, toch is dit niet een voldoende reden om nu en dan over ,,computer” te spreken. Wij achten de term ,,reken
Het gebruik van het woord ,,analoog” in plaats van ,,continu” en van
de uitdrukking ,,analoge rekenmachine” in plaats van ,,rekenmachine
met continu variabele grootheden” is te betreuren. Men kan echter, in verband met het internationale karakter van deze termen, moeilijk andere invoeren. Sommigen spreken liever van ,,analogon of analogie rekenmachines” omdat deze machines het analogon zijn, een analogie vormen van de wiskundige beschrijving. Digitale machines zijn echter evenzeer (zij het met andere hulpmiddelen) een analogon van de wis kundige beschrijving, zodat zij om deze reden ook analogie machines kunnen heten!
Wij hopen dat de verwarring niet groter wordt door de opmerking dat volgens een stelling uit de informatietheorie een continu variabele groot
heid kan worden voorgesteld door de reeks waarden die deze grootheid
op regelmatig op elkaar volgende tijdstippen heeft, als aan bepaalde
voorwaarden is voldaan. Deze waarden vormen een reeks (digitale) getallen. Die reeks getallen stemt dus overeen met, is een analogon van,
de continu variabele grootheid!
Men doet goed bij het woord ,,analoog” niet te denken aan de oor spronkelijke betekenis ,,overeenstemmend”, maar het te identificeren met ,,continu variabel”. De ervaring leert dat men hier heel snel aan went.
Een consequentie van genoemde stelling ut de informatietheorie is dat men van analoge grootheden digitale kan maken en omgekeerd, zonder informatieverlies. Men gebruikt biertoe analoog-digitaal omzetters dan
wel digitaal-analoog omzetters. Deze maken het o.a. mogelijk analoge
rekenmachines te koppelen met digitale en omgekeerd. Ook kan men met analoog-digitaal omzetters technische processen (die veelal door analoge grootheden worden gekarakteriseerd) rechtstreeks met digitale machines verbinden. In hoofdstuk V wordt hierop teruggekomen. Het woord ,,simulator” wordt ook wel gebruikt in verband met analoge rekenmachines. Zij simuleren namelijk een wiskundige vergelijking. Na het voorgaande zal het duidelijk zijn dat digitale machines dit echter evenzeer kunnen en om deze reden ook simulatoren kunnen heten! Men kan soms ook een fysisch of technisch systeem nabootsen zonder
de mathematische formulering met alle rand- en beginvoorwaarden te
kennen. Modellen van waterloopkundige aard, windtunnelmodellen en elektrolytische troggen kunnen als voorbeelden worden genoemd. Wij achten het wenselijk dit soort systeem niet met de naam ,,rekenmachine” aan te duiden maar hiervoor het woord ,,simulator” te reserveren. Zij
worden in dit boekje niet besproken.
II.
DIGITALE REKENMACHINES
A. THEORIE
1. Inleiding
Volgens hoofdstuk I zijn digitale machines opgebouwd uit fysische elementen die zich slechts in zeer bepaalde toestanden kunnen bevinden. Het eenvoudigste is slechts twee toestanden te onderscheiden. Hiermee kunnen dus maar twee cijfers worden voorgesteld, zodat een tweetallig of binair stelsel moet worden gebruikt. In plaats van de cijfers 0 t/m 9 uit het tientallige stelsel heeft men nu de cijfers 0 en 1.
In plaats van decimalen spreekt men van binalen. Het aantal binalen dat nodig is om een getal voor te stellen, wordt het aantal ,,bits” genoemd (binary digits).
In het tweetallige stelsel zijn de elementaire bewerkingen zeer eenvoudig. Vermenigvuldigen is bepaald door:
OxO = 0
Oxi =0
1 xO = 0
lxi = 1
Optellen gebeurt volgens de regels:
0+0 = 0 0+1=1
1+0 = 1
1 ±1 = 0 met overdracht 1 naar de volgende binaal. Enkele getallen in het tweetallige stelsel, tezamen met hun decimale notatie, worden als voorbeeld gegeven.
hinaire decimale binaire decimale getallen getallen getallen getallen
0 0 1010 10 1 1 1011 11 10 2 1100 12 11 3 1101 13 100 4 1110 14 101 5 1111 15 110 6 10000 16 111 7 1000 8 1111111 127 1001 9 10000000 128
Evenals bijv. het decimale getal 12 betekent: 1. 10’-+-2. 100, betekent
het overeenkomstige binaire getal 1100: 1 23-r- 1 .22+0.21+0.20. In het tweetallige stelsel zijn zowel de fysische elementen als de elemen taire bewerkingen eenvoudig.
Een nadeel van het tweetallige stelsel is dat de getallen vele binalen bevatten, gemiddeld ruim driemaal zoveel als het aantal decimalen. Ook volgt hieruit dat bewerkingen in binaire getallen, bijv. vermenig vuldigen, een zeer groot aantal elementaire bewerkingen nodig maken. Een punt van overweging vormt het contact van de machine met de buitenwereld. Mensen gebruiken bij voorkeur het decimale stelsel. Er moet dus bij het toevoeren van gegevens aan de machine een ,,vertaling” plaats hebben van decimaal naar binair en bij het afleveren van gegevens van binair naar decimaal. Dit kan door de machine zeif worden ver zorgd, hoewel het enige tijd kost.
Dc voordelen wegen meestal op tegen de nadelen, zodat vele weten
schappelijke machines in het tweetallige stelsel werken. In het vervoig
zal alleen hierover worden gesproken. Administratieve machines ge
bruiken vaak het tientallige stelsel.
Binnen het kader van deze publikatie kan natuurlijk slechts een zeer summier overzicht worden gegeven van de bouw en werking van de machines. Paragraaf 2 beschrijft enige basiselementen. In paragraaf 3 worden enige speciale toepassingen besproken. De rekenmachines zeif komen in paragraaf 4 aan de orde.
2. Basiselementen van digitale rekenmachines
Digitale rekenmachines zijn opgebouwd uit een groot aanta basis elementen, die binaire gegevens (dus 0 of 1) kunnen ontvangen, deze bewaren of combineren, en weer afgeven. Voor het gebruik van reken machines behoeft men de bouw en werking van deze elementen niet
te kennen. Als technicus wil men echter toch wel graag jets weten van de systemen waar men mee werkt.
a. Geheugenelementen
Een geheugenelement moet kunnen ,,onthouden” dat een bepaald ge
geven is aangeboden aan dit element, ook nadat het gegeven zeif weer
verdwenen is. Er bestaan vele typen geheugenelementen. In reken machines is een belangrijk dccl van de geheugenplaatsen van magneti
sche aard. Men maakt gebruik van de eigenschap dat allerlei stoffen te magnetiseren zijn door het aanbrengen. van een magnetisch veld,
bijv. opgewekt door een elektrische stroom, en dat zij gemagnetiseerd blijven, ook nadat de stroom is weggevallen (remanent magnetisme). Dit magnetisch materiaal kan in fijnverdeelde toestand op een drager zijn aangebracht, op soortgelijke wijze als dit bij een dicteermachine geval is. Figuur 11-1 geeft een beeld van een trom
melgeheugen. Een met
grote sneiheid (20
a
300omwentelingen per Se
conde) ronddraaiende ci under is op het ronde
opperviak bedekt met
het magnetiseerbare ma teriaal. Een stroompuls (voorsteilende een ,,I”)
door een der geteken
de kopjes magnetiseert
plaatselijk het opperviak onder het kopje. Dc mag netisatie blijft op deze plaats aanwezig als de trommel verder draait. Als na één omwenteling het gemagnetiseerde plekje weer het kopje passeert, wordt hierin een spanning geInduceerd die dus aangeeft dat er op genoemde plaats een ,,1” in het geheugen zat. Indien op een bepaalde plaats geen gemagneti seerd plekje zit, betekent dit een ,,0”. Een binair getal, bestaande uitvele enen en nullen, kan zo door een kopje in het spoor dat het kopje passeert, worden geschreven en onthouden. Voor een getal wordt op de omtrek van zulk een trommel een zekere ruimte gereserveerd, bijv. 1/32 deel van de omtrek. Er kunnen dan 32 getallen op één spoor. Meestal zijn vele kopjes (bijv. enige honderden) naast elkaar aangebracht, zodat op de omtrek van de cilinder een groot aantal getallen kan worden bewaard. De gegevens op de omtrek van de cilinder zijn niet op elk ogenblik te raadplegen. Men moet wachten tot het desbetreffende plekje het lees kopje passeert.
Met behuip van ringetjes van magnetisch materiaal met rechthoekige hysteresislus kan men een geheugenelement maken, dat wel elk moment te raadplegen valt. Een stroompuls in de getekende richting door draad I van het ringetje van figuur 11—2 brengt dit even in punt A van de B—H kromme (figuur 11—3). Na het wegvallen van de stroom blijft het ringetj e gemagnetiseerd in punt B.
of bandopnemer voor geluidsregistratie het
/
_—__•4. 4,
/
,
Fig. 11—2. Ringetje van magnetisch
materiaal met twee stroomdraden. Fig. 11—3. Hysteresislus.
Deze toestand van het ringetje stelt bijv. een ,,1” voor. Een stroompuls
in de tegenovergestelde negatieve richting brengt het via C naar D, d.w.z. naartoestand,,O”. Omte wetenin welke toestandhetringetjezich bevindt, moet men een leespuls door een draad sturen, bijv. een vol doend sterke negatieve stroom door draad 1. Bevindt het kerntje zich in toestand B, dan zal het door deze stroom omklappen naar C, waarbij het een inductiestoot geeft op draad 2. Dit is de indicatie dat er een ,,1”
was onthouden. Bevindt het kerntje zich in D, dan heeft een negatieve
stroom slechts tot gevoig dat de hysteresislus in de richting C wordt doorlopen, waarbij echter vrijwel geen inductiestoot ontstaat. Door het
lezen wordt de informatie vernietigd. Een speciale voorziening maakt
dat deze hersteld wordt. Het voordeel van ringetjes boven magneet trommels is de snelle bereikbaarheid van de informatie; per bit zijn ze echter veel duurder.
Er bestaan ook geheugens van niet-magnetische aard. Dit zijn schake lingen opgebouwd uit bijv. elektronenbuizen of transistoren. Zij worden ,,triggers”, ,,flip-flops”, ,,trekkerschakelingen”, ,,kiepschakelingen” enz. genoemd. Zij hebben twee stabiele toestanden. Door kortstondig een spanning op een ingang van de trigger aan te brengen, kan deze van
de ene in de andere stabiele toestand gebracht worden, waardoor hij dus onthoudt dat deze spanningspuls is opgetreden. Door een volgende puls (soms op dezelfde ingang, soms op een andere) valt de trigger weer
terug in de eerste toestand. Dc trigger geeft zeif aan de uitgang aan in
welke toestand hij zich bevindt. Wanneer daar een hoog spannings
niveau blijkt, dan kan dit als,,1” worden beschouwd; een laag spannings
niveau stelt dan een ,,O” voor.
Op de bouw van deze triggers en op de bijzonderheden van hun werking kan hier niet worden ingegaan. Het is gelukkig mogelijk er mee te werken, zonder dat men van deze bouw op de hoogte is.
Men kan een trigger die door pulsen op één ingang zowel van ,,O” naar ,,1”, als van ,,l” naar ,,O” kan omslaan, als een ,,tweedeler” beschou wen. Stel dat in de begintoestand de uitgang van de trigger een ,,O” voor stelt. Na een eerste puls is de trigger in toestand ,,1”, een tweede puls herstelt de begintoestand ,,O”, enz. Het is zonder veel moeite mogelijk, bij het terugvallen naar de begintoestand de trigger zeif een puls te Ia-ten produceren, die naar een tweede trigger gevoerd kan worden. Als deze aanvankelijk ook in de toestand ,,O” was, zal deze dus door ge noemde puls naar toestand ,,1” gaan. Door een vierde puls op de cerste trigger zal deze opnieuw naar de nultoestand gaan. De puls die nu wordt afgegeven aan de tweede, laat deze tweede weer naar de toestand ,,O” gaan. Als hierbij een puls wordt gemaakt voor een derde trigger, zal die de derde trigger van .,,O” naar ,,1” laten gaan, enz. Het is duidelijk dat op deze wijze een teller in het tweetallige stelsel is gemaakt. b. Logische elementen
Naast de geheugenelementen zijn er ook elementen nodig, die een aantal gegevens kunnen combineren. Dit gebeurt met zogenaamde Iogische schakelingen. Zij heten zo omdat men daarmee logische bewerkingen kan uitvoeren. Van de verschillende soorten
A B elemdnten en uitvoeringsvormen zal hier slechts
een klein aantal worden besproken, en wel die
Fig. 11—4. Gelijkrichter. welke gelijkrichtertjes bevatten. Dit zijn onder
delen, bestaande uit halfgeleiders die (enigszins geIdealiseerd) de eigenschap hebben de elek trische stroom slechts in één richting door te A 1
laten. Zij worden symbolisch afgebeeld volgens figuur 11—4. Als de elektrische spanning in punt A hoger is dan die in punt B, gaat er stroom
B 2 c vloeien, waarbij de weerstand van de gelijkrich
ter zeer klein is. Als A echter een lagere span ning heeft, vloeit er geen stroom; de gelijkrich ter heeft flu een zeer grote weerstand; het spanningsverschil tussen A en B blijft over de gelijkrichter aanwezig.
De schakeling van figuur 11—5 kan nu gemak
Fig. 11—5. Principeschake
kunnen ingangssignalen in de vorm van elektrische spanningen worden toegevoerd, die laag (0 volt) of hoog (6 volt) zijn, al naar gelang zij ,,0” of ,,1” voorstellen. Het gemeenschappelijke punt van de twee gelijk richters is met een weerstand verbonden aan aarde (0 volt). Ms A =
6 volt is en B = 0 volt, zal gelijkrichter 1 stroom doorlaten. De weer stand van de gelijkrichter is klein, zodat er haast geen spanningsval over ontstaat. De spanning van punt C zal dus ook ongeveer 6 volt zijn.
Dc toestand van punt C is dus als hoog, of als ,,1” te kwalificeren.
Gelijkrichter 2 heeft links 0 volt, rechts 6 volt en geleidt dus niet, maar ondervindt een spanningssprong van 6 volt. De potentiaal van B wordt niet door die van C beinvloed.
Een soortgelijke situatie ontstaat als B 6 volt is en A 0 volt. Ook nu is
C dus 6 volt of ,,1”.
Ms zowel A als B 6 volt zijn, geleiden beide gelijkrichters en is C weer
,,1”. Als echter A en B beide 0 volt zijn, zal ook punt C 0 volt zijn en
een ,,0” voorstellen. Men kan dus zeggen dat C ,,l” is, als
of
A, Of B Of beide ,,1” zijn. Men noemt zulk een schakeling dan ook wel een,,of”-poort. Tabel I beschrijft het gedrag van de schakeling nog eens
op korte wijze. Tabel I
Fig. 11—6. Symbool van een ,,of”-poort.
Het symbool van zulk een ,,of” -poort wordt weergegeven door figuur 11—6. De schakeling van figuur 11—7 toont een ,,en”-poort. Als
A 6 volt is en B is 6 volt, zal C ook 6 volt zijn. Als echter A 0 volt is, zal gelijkrichter 1 open gaan en maken dat C ook 0 volt is. Hetzelfde treedt op met B op 0 volt en met
A en B op 0 volt. De uitgang C is dus al
leen ,,l” als en A en B ,,1” zijn. Daarom
is dit een ,,en”-poort. Tabel II geeft weer een korte samenvatting van het gedrag van deze schakeling; figuur 11—8 geeft het sym bool voor deze ,,en”-poort.
A B C 00 0 1 1 0 1 1 Fig. 11—7. Principeschakeling van een ,,en”-poort.
Tabel II
94
1 0 0 Fig. 11—8. Symbool van een ,,en”-poort.
De naam ,,poort” kan als volgt worden toegelicht. Als B ,,0” is, wordt de informatie in A niet doorgegeven naar C; de poort is gesloten. Als B
,,l” is, heeft C dezelfde toestand als A; de poort is open.
Het is ook mogelijk bewerkingen als ,,tenzij”, ,,indien” enz. te instrumen teren. Ook de negatie dient nog te worden genoemd. Dc negatie van A wordt symbolisch door A’ of voorgesteld. Als A gelijk is aan ,,1” is dus A’ ,,0” en omgekeerd.
Door combinatie van deze eenheden kan men ook ingewikkelde bewer kingen uitvoeren.
De schakeling van figuur 11—9 moge als voorbeeld dienen.
De eerste ,,en”-poort laat een 1 door als A 1 en B’ = 1 (dus B 0); de tweede als A’ 1 (dus A = 0) en B = 1. Dc ,,of”-poort laat in elk van de genoemde gevallen een 1 door. De werking wordt dus zoals in tabel III is weergegeven.
Tabel III
A 1 en
Fig. 11—9. Principeschakeling van een opteller.
Vergelijking met blz. 10 laat zien dat de relatie tussen A, B en C dezelfde is als die bij het optellen moet bestaan. De getekende schakeling is dus een deel van een optelschakeling. Dc overdracht naar de volgende binaal is eveneens gemakkelijk, daar als A en B 1 zijn, er een overdracht moet plaats hebben. Een ,,en”-poort met A en B als ingang verzorgt dus de overdracht naar de volgende binaal. Ook de eventuele overdracht van een vorige binaal is met extra elementen te verwerkelijken.
3. Enige speciale toepassingen
De in paragraaf 2 genoemde basiselementen zijn tot universele elek tronische rekenmachines te combineren. Ze zijn echter ook te gebruiken voor meer gespecialiseerde toepassingen, waarbij het karakter van ,,reken machine” niet zo duidelijk is.
Zo kan men beveiligingen steeds vertalen in een taal die de logische
elementen kunnen verwerken, bijv.: indien het niveau in tank A onder
een bepaalde waarde daalt, of de temperatuur ter plaatse B te hoog
wordt, of de stroomsnelheid bij C niet tussen de gegeven grenzen ligt, moet er alarm worden gemaakt, tenzij kraan D of E geopend is. Een ander voorbeeld: Een sein mag slechts op veilig staan indien de wissel een bepaalde stand heeft, de spoorwegbomen gesloten zijn en tevens het blok vrij is.
Met de basiselementen zijn ook allerlei technische handelingen te be sturen. Na een beginsignaal wordt een systeeth in werking gesteld indien
alles veilig is. Dit blijft in werking ook nadat het beginsignaal verdwenen is. Als er een zekere toestand bereikt is, ontstaat een nieuwe situatie,
die een volgende werking doet beginnen als de omstandigheden het weer toelaten. Anders wordt gestopt, alarm gegeven enz.
Men kan voor dit soort toepassingen de diverse logische elementen — eventueel met geheugenelementen aangevuld — bijv. in getransistori
seerde vorm kopen en met betrekkelijk weinig moeite en kosten aan
brengen.
Het analyseren van signalen die uit meetinstrumenten komen, kan soms
ook met vrucht door middel van dit soort digitale technieken gebeuren.
In plaats van een meetresultaat te registreren en achteraf te bewerken, laat men de meetinstrumenten hun signalen rechtstreeks leveren aan een analyseertoestel. Eenvoudig is het bepalen, of het signaal positief of negatief is en te tellen, hoe dikwijls een overgang plaats heeft. Men kan
ook het passeren van een zeker niveau vaststellen. Dit is uit te breiden
tot vele niveaus. Niet alleen snijdingen met één niveau maar ook met meer niveaus zijn te tellen. Verschillende van deze soort analysatoren zijn in Deift gebouwd.
Een bijzonder type analyseerapparaat komt in verschillende leesmachines voor. Een letter wordt door een fijne lichtstraal afgetast. Een fotocel vangt het gereflecteerde licht op. Athankelijk van de vorm van de letter ontstaat er een bepaald patroon in de door de fotocel geleverde spanning. Dit patroon kan met behulp van logische elementen worden geanaly seerd en als een bepaalde letter worden herkend.
Een grote moeilijkheid bij al dergelijke toepassingen is het volledig beschrijven van wat er moet gebeuren of van wat er geanalyseerd moet worden. De bouw van de automatische digitale apparatuur kan in de meeste gevallen met voldoende tijd en geld wel gerealiseerd worden. 4. Elektronische digitale rekenmachines
a. Algemene opbouw van de machine
Figuur 11—10 geeft een blokschema van de organen van een elektronische digitale rekenmachine.
rek€argn
H
nvoerarg .. geheuge1 utvoerorgn
bestrgsorgdan
I
Fig. 11—10. Blokschema van een elektronische digitale rekenmachine.
Het invoerorgaan is geschikt om digitale informatie bijv. vastgelegd in de vorm van ponsband, ponskaarten of magneetband te lezen en om te zetten in elektrische pulsen. Bestaat het geheugen ut een magneet trommel, dan kunnen deze pulsen op hun beurt de kopjes op de trommel bekrachtigen. Het besturingsorgaan zorgt ervoor dat op het juiste ogen blik ,,en”-poorten worden geopend, zodat de informatie op de gewenste plaatsen op de trommel komt. Soms gaan de gegevens niet direct van de invoer naar het geheugen maar passeren het rekenorgaan.
Het geheugen kan behalve de trommel ook nog bijv. een kerntjesgeheu gen bevatten. De bij bewerkingen ontstane resultaten die in het geheugen
zijn opgeborgen, kunnen — weer onder leiding van het besturings
orgaan — naar het uitvoerorgaan worden gevoerd, waar zij geponst
worden of met schrijfmachines in leesbare vorm worden gebracht. Bij rekenmachines voor het sturen van technische systemen, bijv. cen
chemische fabriek of een raket, is de ingang verbonden met meetinstru menten en de uitgang wordt omgezet in signalen die kieppen of roeren bedienen.
Het besturingsorgaan en het rekenorgaan bestaan meestal uit een aantal triggers en logische elementen. Zij kunnen zodoende binaire grootheden onthouden en er bewerkingen mee uitvoeren. Vele rekenmachines heb ben in het rekenorgaan alleen optellers, bijv. van het type dat in para graaf 2 werd aangeduid. Alle berekeningen moeten nu dus tot optellingen worden teruggebracht. Sommige grote machines kunnen onmiddellijk binaire getallen vermenigvuldigen.
Het besturingsorgaan zorgt ervoor dat de juiste getallen op het juiste ogenblik vanuit het geheugen naar het rekenorgaan vertrekken en dat de resultaten weer terugkomen in het geheugen. Het zorgt er ook voor dat hetzelf vanuit het geheugen de juiste opdrachten voor volgende bewerkingen ontvangt. De gehele reeks opdrachten wordt programma genoemd. Dit programma is bij het begin van de berekening ut cen ponsband in het geheugen overgebracht. Het ontwerpen en maken van
deze ponsband heet programmeren. Ook de getallen, nodig voor een
berekening, worden met behuip van de ponsband aan het geheugen toegevoerd. Een deel van het geheugen kan geblokkeerd zijn, en vaste altijd aanwezige informatie bevatten, bijv. ten behoeve van het invoer programma.
b. Het weergeven van getallen en opdrachten
Getallen worden, zoals boven uiteengezet, weergegeven door reeksen nullen en enen. Zij worden met behuip van extra nullen aangevuld tot
ze een standaardlengte hebben gekregen. Het is gebruikelijk zulk een reeks met een standaardlengte een woord te noemen. Een woord kan bijv. uit 33 bits bestaan. Een van deze bits, bijv. de eerste, dient om het
teken van het getal aan te geven. Als de eerste bit een 1 is, is het getal
bijv. positief; een 0 duidt op een negatief getal.
De komma geeft bij berekeningen vaak aanleiding tot moeilijkheden. Ook bij het werken met tafeirekenmachines is dit geen onbekend ver
schijnsel. Bij vermenigvuldigen ontstaan in eerste instantie getallen die veel ,,Ianger” zijn dan de oorspronkelijke. Men moet dan bits weglaten,
d.w.z. afronden om ze weer als normale woorden op de daarvoor be stemde plaatsen in het geheugen te kunnen opbergen. Soms bevat de ,,kop” van de uitkomst de interessante gegevens, soms de ,,staart”. Een voorbeeld uit het decimale stelsel zal dit duidelijk maken. Vermenig vuldigt men 4000 met 3000, dan staan in de uitkomst 12000000, de
significante cijfers aan de kop. In het geval van 0,0004x0,0003 = 0,00000012 is de staart belangrijk. Door afronden, dus weglaten van de laatste cijfers, zou er flu geen informatie meer overschieten.
Om dit soort moeilijkheden te ontlopen, kan men schaalfactoren in voeren, d.w.z. men vermenigvuldigt of deelt getallen met machten van tien.
Vaak werkt men met een zg. drijvende komma (floating point). In het decimale stelsel komt het werken met een drijvende komma hierop neer dat men elk getal schrijft als a• 108, waarbij a groter is of gelijk aan 0,1 (10—’) en kleiner dan 1 (10°). De twee genoemde vermenigvuldi
gingen worden flu respectievelijk: 0,4. 104x0,3. l0 0,12.108
en 0,4. 10><0,3. 103 0,12.106. Zoals men ziet zijn de belangrijke cijfers flu op dezelfde plaats terecht gekomen. Als er tijdens de bewerking een getal zou ontstaan kleiner dan 0,1, dan moet dit worden terug gebracht in de standaardvorm.
De grootheid a heet de mantisse, b de exponent van een getal.
In het binaire stelsel krijgt a een waarde groter of gelijk aan 2—’ en kleiner dan 20. In het woord dat een getal weergeeft, zijn flu een vast
aantal plaatsen gereserveerd voor a (bijv. 23), ook voor b (bijv. 8) en tevens is er een plaats voor het teken van b. Een getal +267 ziet er als volgt ut:
267 is binair geschreven 100001011
In standaardvorm a• 28 wordt het 0,100001011 2 het getal is nu
110000100110000101100000000000000
8b-p1aatsen 23 a-plaatsen
J
tekenbit b tekenbitIn de meeste machines wordt het werken met een drijvende komma door middel van het programma verzorgd. In enige zeer nieuwe machines is het rekenorgaan zo uitgevoerd dat dit direct met een drijvende komma kan werken.
De wijze waarop opdrachten worden geschreven, lijkt zeer sterk op de wijze waarop getallen worden aangeduid. Op het oog is er geen verschil tussen woorden die getallen voorstellen en woorden die opdrachten be tekenen; beide zijn reeksen van bijv. 33 bits bestaande uit enen en nullen. Dit heeft een gevoig, waarvan de betekenis in dit stadium van het betoog nog slechts te vermoeden valt. Men kan nl. met opdrachten
ook bewerkingen uitvoeren, men kan dus opdrachten door de machine
zeif laten veranderen! Dit is een bron van mogelijkheden in verband met het programmeren.
Een opdracht kan bijv. inhouden het bevel, twee getallen u en v op te tellen tot w. Hiertoe moet de volgende informatie in de opdracht aan
wezig zijn:
1. Er moet opgeteld worden.
2. Het getal uis te vinden op cen gegeven plaats in het geheugen. 3. Idem voor v.
4. Na afloop van de optelling moet w naar ecu gegeven plaats in het geheugen.
5. Tevens is nodig, dat de machine weet, wat er vervolgens moet gaan
gebeuren, d.w.z. er moet worden aangegeven, waar in het geheugen de volgende opdracht te vinden is.
De plaats in het geheugen noemt men vaak ,,adres”. In het boven staande blijkt dat er in één ,,opdracht” in wezen vier adressen moeten zijn. Een adres zegt dat het desbetreffende woord zich bevindt op cen bepaalde plaats in het geheugen. Het is door ecu of meer getallen gekarakteriseerd; 58 of liever 111010 kan dus een adres zijn. Bij elke machine worden in de beschikbare woordlengte bepaalde plaatsen aangewezen voor de bits van de diverse adressen en voor de bits die in een of andere code de aard van de bewerking, bijv. optellen, karak teriseren.
Het is mogelijk het aantal adressen door de volgende wijze van werken te beperken. Men laat na ecu bewerking het resultaat steeds in het rekenorgaan staan (in de zg. accumulator), zodat in het bovenstaande voorbeeld van u+v = w, voor w geen adres nodig is. Er is opgemerkt dat allerlei bewerkingen tot herhaald optellen worden teruggebracht. Een volgende optelling w±x =y kan dus uitgaan van de in de accumu lator staande w en heeft alleen het adres van x nodig.j blijft weer in de
accumulator, etc. Als men tevens afspreekt de opdrachten in een zekere volgorde te gebruiken en men deze opdrachten ordelijk in bet geheugen opbergt, dan behoeft ook bet adres van de volgende opdracht niet te worden gegeven. Men kan nu met één adres, dat van x, volstaan. Men spieekt dan van een ,,één-adres-machine”. Er bestaan ook machines met twee en drie adressen.
Als bij een één-adres-machine een woord uit de accumulator naar het
geheugen moet, bijv. bij het einde van een serie optellingen, dan is hiervoor echter een aparte opdracht nodig.
c. Het uitvoeren van opdrachten
Bij elke opdracht zijn twee fasen te onderscheiden:
1. de opdracht moet vanuit het geheugen naar het besturingsorgaan worden gebracht;
2. de opdracht moet worden uitgevoerd.
Ter toelichting wordt flu als voorbeeld het volgende dee! van een be rekening besproken.
Na de 9de opdracht is een getal u in de accumulator van het reken orgaan blijven staan.
Opdracht 10 luidt: tel getal v van plaats 58 op bij getal u uit de accumu lator, kort aangeduid met [10; A 58]; (A is symbool voor optellen = ,,Additie”).
Opdracht 11 luidt: breng de inhoud van de accumulator w naar plaats 69 in het geheugen [11; T 69]; (de T nemen wij hier als symbool voor ,,Terug naar geheugen”; elke machine heeft zijn eigen symboliek). Stel dat opdracht 10 al in het besturings orgaan aanwezig is. De uitvoeringsfase van deze opdracht bestaat uit (zie figuur IT—li) het zenden van het getal op plaats 58 van het geheugen (door het openzetten van een poort) naar het rekenorgaan, terwiji dit re kenorgaan de opdracht krijgt het binnenko mend getal op te tellen bij het reeds aanwe zige. De afspraak is dat de opdrachten in volgorde worden afgewerkt, zodat na op dracht 10, opdracht 11 komt. In het be sturingsorgaan wordt er flu voor gezorgd, dat het nummer dat de opdracht aangeeft, met 1 wordt vermeerderd. De 10 springt dus over in 11. Dit alles gebeurt tij dens de tweede fase van opdracht 10. Nu begint de eerste fase van opdracht 11, d.w.z. opdracht 11 wordt ut het geheugen overgebracht naar het be sturingsorgaan (zie figuur 11—12). Het getal 11 in het besturingsorgaan bepaalt hierbij welk woord uit het geheugen (bijv. op plaats 11 staande) naar het besturingsorgaan moet. De tweede fase van de 1 ide opdracht kan flu ingaan. Het besturings orgaan zorgt ervoor dat de inhoud van de accumulator op een bepaalde plaats in het geheugen wordt opgeborgen (figuur 11—13).
rekenorgaan u
F-i
_____________ A geheugenI
r1
10, A58 besturingsorgaan 11Fig. 11—i 1. Schematische aan duiding voor het optellen van een getal uit het geheugen bij het getal in de accumulator.
rekerorgcsn
Ir
gheugen gehegn j
besturin9sorgoan besturingsorgaan
j
Fig. 11—12. Schematische aan- Fig. 11—13. Schematische aan duiding voor het overbrengen duiding voor het overbrengen van een opdracht uit het geheu- van een getal uit de accumu gen naar het besturingsorgaan. lator naar het geheugen.
Het nummer van de opdracht wordt weer met 1 verhoogd tot 12. In het hier besproken voorbeeld worden de opdrachten na elkaar af gewerkt. Men noemt dit wel een seriewerking (sequential). Bij enige hele grote machines en speciale machines (bijv. digital differential analysers) kunnen ook opdrachten gelijktijdig (concurrent) worden uit gevoerd.
Het in strikte volgorde afwerken van de opdrachten zou de indruk kunnen geven van een grote starheid. Er zijn echter allerlei middelen
deze te doorbreken. Het is bijv. mogelijk een sprong te maken in de
opdrachten (jump), dus om een aantal opdrachten over te slaan of om reeds gebruikte opdrachten opnieuw te voorschijn te halen. Stel dat na opdracht 11 naar opdracht 20 moet worden gesprongen. Na opdracht 11
was in het besproken voorbeeld automatisch het adres van opdracht 12
te voorschijn gekomen. Als nu in opdracht 12 vermeld is dat naar op dracht 20 moet worden overgegaan, dan wordt tijdens de uitvoerings
fase van opdracht 12 het getal 12 in het besturingsorgaan omgezet in
getal 20. De flu volgende fase zal dan de bij 20 behorende opdracht uit het geheugen halen eriz.
Door terugspringefl kan men lussen in het programma maken. Dit
tekent natuurlijk een bekorting van het totale programma, daar be paalde delen meer keren worden gebruikt. Het is hierbij ook mogelijk elke keer dat een bepaald deel van het programma wordt gebruiktzekere modificaties aan te brengen, d.w.z. de opdrachten ondergaan verande
ringen. Zoals het nummer van de opdracht automatisch met 1 werd
vermeerderd, kan men ook bijv. het nummer van het adres met I ver meerderen. Elke volgende keer dat een zelfde opdracht wordt gebruikt, wordt dan uit een volgend adres een getal gehaald.
Een belangrijke opdracht is de zg. voorwaardelijke opdracht. Deze kan bijv. luiden: spring naar opdracht m als in de accumulator een getal
groter dan 0 is en spring naar opdracht nindien dit niet zo is. De tekenbit
van het getal in de accumulator bepaalt nu, bijv. door het openen van cen poort, of het nummer van de opdracht in het besturingsorgaanin m of in n wordt veranderd.
De machine krijgt aldus een zekere mate van beslissingsmogelijkheid over de voortgang van een berekening. Bij benaderingen bijv. behoeft men niet gedetailleerd het aantal trappen voor te schrijven; de machine
voert een benaderingsprocedure zo lang door tot aan een bepaalde
voorwaarde is voldaan en gaat dan pas verder met andere bewerkingen. Dit kan worden toegelicht met de manier waarop de wortel uit een getal wordt bepaald. De wiskundige gang van zaken is als volgt.
Gevraagd wordt x = /a te bepalen. Kies een zekere waarde x0 als
benadering van x. Bereken a/x0. Als x0te groot was, dan zal a/x0 te klein zijn. Kies een nieuwe waarde voor x, ni. x1, die de gemiddelde waarde is van x0 en a/x0, dus x1 = ‘/2(x0+a/x0). Dit is cen betere benadering dan x0. Bepaal weer aix1 en middel x1 en a/x1. Zet dit proces voort tot
dat het resultaat van een volgende benadering minder dan een aan
gegeven bedrag zi afwijkt van de vorige, dus ga door tot x—x+1—A 0.
In figuur 11—14 worden niet de individuele opdrachten beschreven, bijv. van de deelbewerking, maar er wordt slechts het zg. ,,strOom diagram” gegeven dat de procedure van de berekening aangeeft. d. Eenvoudig programmeren
Het lijkt niet onwaarschijnlijk dat het voorgaande de indruk heeft ge geven van gecompliceerdheid. Inderdaad is het maken van programma’s bestaande uit zeer vele instructies, een moeizaam werk waarbij grote conscientieusheid wordt vereist. Naast de volgorde en inhoud van de
opdrachten moet er nog op vele andere zaken worden gelet. Op de
Fig. 11—14. Stroomdiagram voor worteltrekken. de wortel
begin opnieuw
schrij ding werd reeds gewezen. ‘Nil men bij een machine met een trom melgeheugen snel werken, dan zal men er tevens voor moeten zorgen dat de plaatsen op de trommel zo worden bezet dat men niet te lang bijv. bijna een hele omwenteling moet wachten alvorens het gezochte woord onder het kopje is gekomen. Men moet dus trachten, het pro gramma zo samen te stellen dat zoveel mogelijk de benodigde opdrach ten en getallen juist voor de kopjes verschijnen op het moment dat ze nodig zijn. flit wordt wel aangegeven door de benaming ,,optimaal programmeren”. Soms is het gebruik van extra geheugens, bijv. van snelle magneetkerngeheugens die tijdelijk als buffer dienst doen, wense lijk. Ook grootheden die tijdens de berekening veel worden gebruikt en veel veranderingen ondergaan, kan men hierin opslaan.
Van programmadelen die regelmatig voorkomen, zoals worteltrekken, het berekenen van logaritmische of gortiometrische functies en dergelijke heeft men zg. subprogramma’s, die in een programmabibliotheek wor den opgenomen. Deze kunnen in het hoofdprogramma worden opge nomen hetgeen het programmeerwerk beperkt.
Toch blijven de programmeringsproblemen volgens de tot nu behandelde methode een ernstige belemmering vormen voor het gebruik van de rekenmachine. Vooral voor wetenschappelijk rekenwerk is dit het geval.
flit heeft vaak een éénmalig karakter, d.w.z. nadat een programma voor
een bepaald probleem klaar is, wordt het slechts één keer gebruikt om de gevraagde uitkomst te berekenen of ten hoogste een paar maal voor enige waarden van een parameter. Het programmeerwerk zal dan zeer zwaar wegen ten opzichte van de werkelijke rekentijd van de machine. Daar moderne rekenmachines kostbaar zijn, worden ze meestal ergens centraal opgesteld in een rekencentrum, waaraan dus problemen van allerlei aard worden voorgelegd. Aan dit centrum zijn natuurlijk per sonen verbonden die volledig op de hoogte zijn van alle mogelijkheden en moeilijkheden van het programmeren. Men zou echter zeer veel van deze personen nodig hebben als ze alle programma’s voor de machine volledig en gedetailleerd moesten maken. Men kan proberen de leveran ciers van problemen op te leiden in de techniek van programmeren. Een werkgroep die regelmatig problemen van een zeker type heeft, moet dit zeker worden aangeraden. Bij incidentele opdrachtgevers, zoals bij wetenschappelijk werk vaak voorkomt, is het echter nauwelijks te ver wachten dat men zich nauwkeurig op de hoogte wil stellen van het programmeren.
Men heeft dan ook al sinds enige jaren gepoogd de vraag te beant woorden: hoe kan men op eenvoudige wijze een ingewikkelde en moei
lijke rekenmachine gebruiken? Op deze wijze geformuleerd ligt het
antwoord voor de hand, ni. maak een eenvoudige kunstmatige taal of
code, die zo veel mogelijk aansluit bij reeds bestaande begrippen uit
wiskunde en techniek en verder toch zo veel mogelijkheden biedt dat praktisch alle problemen met behuip van deze eenvoudige taal kunnen worden opgelost. Het vertalen vanuit deze kunstmatige taal naar de echte code van de machine moet dan door de machine zelf gebeuren. Het hiervoor benodigde ,,vertaalprogramma” wordt wel verschrikkelijk ingewikkeld en dus zeer kostbaar wat programmeerwerk betreft, maar de kosten hiervan worden later volledig vergoed, doordat dit vertaal programma steeds weer gebruikt kan worden en dan steeds een hoeveel heid werk bespaart. Een dergelijke kunstmatige code worth meestal aangegeven met de naam ,,autocode”. Er bestaan vele van deze
auto-codes, want de meeste fabrikanten van rekenmachines hebben hun cigen
autocode ontwikkeld. Deze autocodes wijken onderling vrij sterk af, niet alleen wat betreft de vorm maar vaak ook in de gebruiksmogelijk heden. Zij worden aangeduid door namen als SOAP (Symbolic Optimal Assembly Program), FORTRAN (Formula Translator) enz. Men is druk doende een coördinatie tot stand te brengen en een universele
code te maken. Voor wetenschappelijk werk wordt dit ALGOL (Algo
rithmic Language), voor administratief werk COBOL (Commerce
Business Oriented Language).
Men onderscheidt bij de praktische uitvoering van autocodes twee sys temen. Bij het eerste vindt de oplossing plaats in twee fasen. Tijdens de
eerste fase wordt het programma, geschreven in autocode, omgezet in de echte code voor de machine. In de tweede fase wordt de werkelijke
berekening uitgevoerd in de echte code. Deze twee fasen zijn volkomen van elkaar gescheiden in de tijd. Het vertaalprogramma van de eerste
fase wordt meestal aangegeven met de naam ,,compiler” of ,,translator”. Bij het tweede systeem zijn de twee fasen gecombineerd. ledere opdracht
in autocode wordt ontleed en direct uitgevoerd. Het programma dat stap voor stap de autocode interpreteert, heet ,,interpretatief program-ma”.
Het nut van autocodes is direct duidelijk: enerzijds kan men daarmee het aantal vaste programmeurs, behorende bij de staf van het centrum, beperken doordat iedere programmeur nu in kortere tijd een bepaald probleem voor de machine kan voorbereiden; anderzijds wordt het door de eenvoud van programmering weer mogelijk een groot aantal buitenstaanders zeif hun probleem voor de machine te laten voorbe reiden. Het aantal vergissingen bij het programmeren wordt ook kleiner.
Men kan het voorgaande ook op de volgende wijze beschrijven. Het werken met cen rekenmachine is zo sterk geautomatiseerd dat onder normale omstandigheden een leek ermee kan werken. Een vergelijking met het gebruik van een auto of een televisietoestel dringt zich hierbij op. Dat echter voor bijzondere problemen die aan de grens der mogelijk heden liggen, wel een gedetailleerde kennis nodig is, evenals bij storingen, spreekt natuurlijk vanzelf. Ook is het mogelijk rekentijd te sparen als men de problemen in een vorm brengt die aangepast is aan de machinale bewerking. Vooral blijft cen grote wiskundige kennis en kennis van numerieke analyse nodig om efficiënte stroomdiagrammen te vervaar digen, die later door middel van autocode geprogrammeerd worden. In hoofdstuk V wordt hierop nog nader ingegaan.
Resumerende mag worden gezegd, dat het eenvoudig programmeren van rekenmachines vele nieuwe mogelijkheden schept en dat het de rekenmachines toegankelijk maakt voor een breed technisch en weten schappelijk publiek.
Men mag uit het bovenstaande niet de conclusie trekken dat er op programmeergebied geen ontwikkelingen meer mogelijk zijn. Er wordt de laatste tijd hard gewerkt aan het maken van stroomschema’s en programma’s voor allerlei speciale problemen die soms niet van direct mathematische aard zijn. Een korte opsomming moge enige indruk geven van het brede veld van interessante onderwerpen, die ook voor technische toepassingen hier en daar van belang kunnen worden. — Het vertalen van proza.
— Het maken van uittreksels ut publikaties.
— Het classificeren en terugvinden van publikaties.
— Het vaststellen van medische diagnoses uitgaande van bepaalde symp tomen.
— Het bewijzen van wiskundige stellingen.
— Het gebruiken van Monte Carlo methoden; statistische benaderings procedures in plaats van systematische methoden.
— Het nabootsen van wat bij mensen soms ,,leren” wordt genoemd,
d.w.z. vroegere gunstige en ongunstige ervaringen op bet juiste moment gebruiken bij een beslissing. Vaak wordt dit nagegaan in verband met het spelen van spelletjes. Soms wordt een zekere strategie geprogrammeerd, soms alleen de spelregels en dan moet de strategie door ervaring zeif worden gevonden.
Hoe interessant al deze problemen ook zijn, toch zal in de meeste ge vallen het nut van rekenmachines gelegen zijn in het oplossen van mathematische problemen.
B. DE ZEBRA
Zebra (zie foto’s blz. 30) is de naam van de enige elektronische digitale rekenmachine, die thans bij het Instituut voor Toegepaste Wiskunde, T.H. Deift in gebruik is. Deze Zebra, een afkorting voor ,,zeer eenvoudige binaire rekenautomaat” is oorspronkelijk theoretisch ontworpen door Dr. ir. W. L. van der Poel van het Dr. Neher Laboratorium der P.T.T.
en later verder technisch ontwikkeld door de Engelse firma S.T.C.
(Standard Telephone and Cables). Van dit type machine zijn in Neder land thans een achttal in gebruik. Bovendien zijn een aantal Zebra’s geInstalleerd in Engeland en incidenteel zijn er nog enige verspreid
over cen aantal landen, zoals Duitsland, Zwitserland en Zuid-Afrika.
In totaal ongeveer twintig exemplaren. Een vermelding van dit aantal
is van belang, omdat de Zebra in de eerste plaats ontworpen en gemaakt is voor wetenschappelijk werk. Dit laatste houdt in, dat de machine
gebruikt wordt voor een grote variëteit van problemen. Hoewel in het algemeen voor een nieuw probleem ook een nieuw programma gemaakt moet worden, kan toch vaak dit werk zeer beperkt worden door voor onderdelen van het speciale programma gebruik te maken van reeds bestaande programma’s. Door een goed contact tussen de verschillende gebruikers van hetzelfde type machine, wordt het arsenaal van bestaande programma’s sterk vergroot. Bovendien is de uitwisseling van ervaring
zowel op programmatisch als op technisch gebied, wat betreft het onder
houd, van groot belang. Voor een bepaalde eigenaar van een machine stijgt dus de waarde van deze machine naarmate meer machines van hetzelfde type bij soortgelijke instellingen werkzaam zijn. Wat deze kant van de zaak betreft, kan de keuze van de Zebra door de T.H. zeker
als gunstig worden gekarakteriseerd.
Wil men de orde van grootte van de Zebra in enige woorden uitdrukken,
dan moet men vaststellen dat dit aanvankefljk een ,,middelgrote reken machine” was. De sterke ontwikkeling van deze machines gedurende
de laatste jaren heeft deze kwalificatie enigszins verschoven naar ,,klein
tot middelgroot”. Een betere indruk verkrijgt men wanneer men de
gegevens van de Zebra wat nader beziet. In de eerste plaats is de Zebra een binaire machine, waarbij één getal bestaat uit 32 tweetallige cijfers (bits) plus 1 binair cijfer om het teken aan te geven.
In het decimale systeem komt dit overeen met een nauwkeurigheid van ongeveer tien decimale cijfers plus teken.
Zoals boven reeds is aangegeven, vereist een binaire machine bij in en uitvoer van gegevens een omzetting van decimaal naar binair en 29
Overzicht van de opstelling van de Zebra.
omgekeerd. Voor het belangrijkste toepassingsgebied van de Zebra, ni. wetenschappelijk rekenwerk, vormt dit echter geen bezwaar, aangezierl
bij dit werk in het algemeen de in- en uitvoer klein zijn, vergeleken met
het echte rekenwerk. Het ,,zeer eenvoudige”, verborgen in de naam Zebra, komt o.a. tot iliting bij een bespreking van het rekenkundig orgaan. In principe is daar slechts de mogelijkheid tot optellen en af trekken. Dc Zebra is bovendien uitgevoerd als serie-machine, d.w.z. tijdens een optelling worden de verschillende binaire cijfers na elkaar in de tijd behandeld, waarbij steeds van dezelfde elektronische appara tuur gebruik wordt gemaakt. Deze is dus eenvoudig. Dit alles gaat dan echter toch nog zo snel dat een optelling van twee getallen, elk van
33 bits slechts 312 s duurt.
In het rekenorgaan ontbreekt een vermenigvuldiger en een deler. Verrnenigvuldiging en deling moeten dus worden teruggebracht tot de elementaire bewerkingen van optellen en aftrekken. Een vermenigvul diging vergt daardoor een tijd van 10 ms en een deling 20 ms.
Het geheugen wordt gevormd door een magnetische trommel met een capaciteit van 8192 woorden. Aangezien deze 8192 woorden verdeeld
zijn over 256 sporen ieder van 32 woorden, en de trommel draait met cen sneiheid van 100 omw/s, kan ieder woord slechts éénmaal in iedere 10 ms worden afgelezen of opnieuw geschreven. De gemiddelde wacht
tijd van een woord is een halve omwenteling of 5 ms. Om wachten te voorkomen zijn nog enkele zg. snelle geheugens aangebracht en we’
twaalfstuks die in iedere woordtijd kunnen worden afgelezen of gewijzigd. Een woordtijd is hier l’32 van 10 ms, dus 312 s. De bedoeling is deze
snelle geheugens speciaal te gebruiken voor grootheden die tijdens de
berekening veel veranderingen ondergaan om op die wijze lange wacht tijden te voorkomen. Op deze manier worth het optimaal programmeren
nog redelijk uitvoerbaar. Bij nadere bestudering van de Zebra-code,
meestal genoemd normale code, blijkt dat deze normale code een aantal complicaties bevat die in het voorgaande nog niet zijn gebleken. Een complicatie bij het gebruik van de normale code is ook dat de Zebra alleen maar werkt met een ,,vaste komma”. Deze moeilijkheden zijn na enige training wel te overwinnen. Toch blijft het aantal mensen dat
de normale code van de Zebra kan gebruiken, zeer beperkt.
De Zebra biedt echter ook mogelijkheden voor eenvoudig program
meren. Er bestaat een soort autocode bekend onder de naam ,,eenvoudige code” (simple code). De beantwoording van de vraag in hoeverre men
de eenvoudige code nog mag beschouwen als een autocode, is slechts affiankelijk van de definitie van autocode. Het is daarom goed een kort 31
overzicht te geven van de mogelijkheden van de eenvoudige code. Dc eenvoudige code is te beschouwen als de code van cen fictieve ma chine. Deze machine is dan zeer eenvoudig met een beperkt aantal opdrachten en zeer grote gebruiksmogelijkheden. Alle rekenkundige be werkingen vinden plaats met een drijvende komma. Speciale voorzienin gen zijn getroffen om bepaalde programma-onderdelen te kunnen genereren en tellingen te kunnen bijhouden. Verschillende speciale wis kundige bewerkingen (zoals worteltrekking, berekening van logaritmen, goniometrische en hyperbolische functies) zijn direct met één opdracht te programmeren. Door de speciale tellingsfaciliteiten zijn vooral matrix berekeningen betrekkelijk eenvoudig uit te voeren. De sneiheid waarmee deze berekeningen dan worden uitgevoerd, is redelijk. Zo duurt het inverteren van een lOx 10 matrix twee minuten en een 30
x
30 matrix één uur.Voor praktisch gebruik zijn reeds een groot aantal standaardprogram ma’s beschikbaar, zoals voor verschillende soorten matrixberekeningen en voor het oplossen van differentiaalvergelijkingen volgens een aantal methoden, waaronder die van Mime, Moulton, Runge—Kutta.
Voor een redelijk aantal praktische problemen wordt het programmeer werk dus beperkt tot het vormen van een verbindende tekst tussen be staande programma’s.
Tot slot de vraag: hoe moeilijk of gcmakkelijk is het leren van deze eenvoudige code? Dc beantwoording hiervan hangt enigszins er van af in hoeverre men reeds vertrouwd is met een rekenmachine in het alge meen. Deze tijd kan voor alle gevallen echter worden uitgedrukt in een aantal uren en zeker niet in een aantal dagen of nog ruimere tijdeen heden.
Voor de studenten worden regelmatig programmeer-cursussen in de
eenvoudige code gehouden van een tijdsduur van 5
a
6 middagen.Gedurende deze cursus worden dan uiteengezet: het principiele gebruik van een clektronische rekenmachine, de eenvoudige code zeif en een aantal uitgcwerkte voorbeelden. Daarna heeft men gelegenheid, al of niet verplicht, athankelijk van zijn studierichting, zelfgemaakte program-ma’s te testen op de machine en persoonlijke ervaring op te doen bij het gebruik van een dergelijk apparaat. De machine zeif wordt voor dit dod nog betrekkelijk weinig gebruikt. Gedurende het afgelopen jaar 1939 was dit slechts 3
%
van de tijd.De machine wordt in hoofdzaak gebruikt als rekentechnisch hulpmiddel van alle afdelingen van de T.H. Ten behoeve van dit werk is behalve de leiding van het Instituut voor Toegepaste Wiskunde nog een staf
van ongeveer tien programmeurs aanwezig. Bij het samenstellen van programma’s wordt voor meer dan 90
%
van het werk gebruik gemaakt van de eenvoudige code. Bovendien zijn er ook nog een aantal personen elders binnen de T.H. werkzaam, die zelfprogramma’s in de eenvoudige code samenstellen ten behoeve van hun eigen problemen.In een uitzonderlijk geval werken zelfs buitenstaanders met de nor-male code.
Om de personen buiten de wiskundige afdeling meer vertrouwd te maken met de machine, worden ook regelmatig speciale cursussen in de een voudige code georganiseerd. Deze cursussen vinden plaats op verzoek van de betrokkenen. Deelneming voor een groep wordt meestal beperkt tot 6
a
7 man.De duur van zo’n cursus is 3
a
4 middagen, elk van ongeveer 2 uur, dus totaal ongeveer 6a
8 uur. Door de beperkte deelneming wordtbereikt dat de cursus zo veel mogelijk aansluit aan de individuele be
hoefte. Op bovenbeschreven wijze wordt getracht de beschikbare reken
tijd op de Zebra zo goed mogelijk te gebruiken en de machine zo alge meen mogelijk nuttig te maken voor alle afdelingen der T.H. Deift. Inlichtingen geeft ir. D. H. Wolbers, Instituut voor Toegepaste Wis kunde, Julianalaan 134, Delft, toestel 527 b.g.g. 539.
0’)
III. ANALOGE REKENMACHINES
A. THEORIE
1. Inleiding
Volgens hoofdstuk I maken analoge rekenmachines gebruik van continu variabele grootheden zoals hoeken, niveaus, elektrische spanningen die zich gedragen als de variabelen in een vergelijking. Wiskundige bewer kingen worden uitgevoerd met behuip van manipulaties die te beschrijven zijn met deze wiskundige bewerkingen. Een optelling kar bijv. worden nagebootst met de wet van Kirch hoff, die zegt (zie figuur 111—1):
‘2 i3 i1—7-Z.
Alle andere wetten die een optelling bevatten,
Fig. 111—1. Optellen volgens
de wet van Kirchhoff. zijn eveneens te gebruiken. Hierdoor zijn er velerlei analoge rekenelementen.
Deze elementen kunnen ook onmiddellijk zijn gekoppeld aan meet instrumenten, regelsystemen of andere technische installaties. De kop peling geeft over het algemeen weinig moeilijkheden; minder dan de
koppeling met digitale systemen waarbij een analoog-digitaal omzetter nodig is.
De elektronische analoge rekenmachines die gebruik maken van reken versterkers, hebben een betrekkelijk universeel karakter; dat wit zeggen men kan er o.a. mee optellen, integreren, differentiaalvergelijkingen op lossen. Daarnaast zijn er talrijke meer gespecialiseerde elementen, die al teen maar kunnen optellen of vermenigvuldigen of integreren of een spe ciaal type differentiaalvergelijking oplossen. Deze kunnen afzonderlijk worden gebruikt of in combinatie met de meer universele rekenelementen. Een volledig overzicht van alle typen rekenelementen en hun gebruik zou te veel ruimte in beslag nemen. Daarom volstaat paragraaf 2 met de behandeling van slechts enige speciale rekenelementen. In paragraaf 3 komt het meer universele element met de rekenversterker aan de beurt. Paragraaf 4 behandelt tenslotte iets over het gebruik van analoge reken machines.
Het zal blijken dat in dit hoofdstuk het accent veel meer valt op de fysische bouw van de elementen dan dit in hoofdstuk II bi] de digitale machines het geval was. Dáár vroeg juist de organisatie van de machine en het programmeren de meeste aandacht. Dit komt doordat digitale machines gebruikt kunnen worden zonder dat de gebruiker veel van 34
I
de fysische werking van de circuits weet. Voor een goed resultaat met
analoge rekenmachines is echter — in het huidige stadium van ontwik keling — enig inzicht in de bouw wenselijk.
2. Enige speciale analoge rekenelementen a. Optellen en qftrekken
In regelcircuits komt vaak een aftrekking voor. Men moet hier namelijk het verschil bepalen tussen de gewenste waarde van een grootheid en
de feitelijke waarde. Als beide waarden in de vorm van mechanische
verplaatsingen gegeven zijn, kan het stangenmechanisme van figuur 111—2 voor de aftrekking zorgen. De punten
A t/m F zijn scharnierpunten. A blijft
op zijn plaats. De eindpunten van de -
I_________
horizontale stangen zijn zo gelagerd datzij slechts horizontale bewegingen kun
nen uitvoeren. x,j en
z
stellen de grootten van deze bewegingen voor. xFDBz liggen in één viak, ECA in een even wijdig viak hierachter. De constructie
is zo, dat de verbindingsstang DC tus sen de vlakken steeds loodrecht op deze
vlakken staat. Als x naar rechts gaat, draait BF om D, zodat
z
naar links beweegt. Als y naar rechts gaat, draait____________
EA om A, zodat C naar rechts gaat. De constructie is zo dat punt D met C
meebeweegt, zodat dus BF om F draait.
z
gaat dus naar rechts. Het zal duidelijk zijn dat
z
= j—x. In pneumatische regelaars komt dit soort mecha nisme vaak voor.
Optellen met behuip van elektrische grootheden kan gebeuren volgens het circuit van figuur 111—3. De twee op
te tellen spanningen zijn V1 en
het zal blijken dat V0 het resultaat
van de opteiling weergeeft. R1, R2 en
R3 zijn weerstanden waarvoor de wet
van Ohm geldt: V = iR. Fig. 111—3. Optellen met weerstanden
B
C D
E F
Fig. 111—2. Aftrekken met een stan genmechanisme. R1 V0 p2 v= a 35
Er volgt flu: 13 = 11+12 V0 V1—V0 V2—V0 R1 14 ‘V1 V2\ 1
vo=
—+--I. R1 R21 I I I Voor R3 <<R1 en14
<<R2 zijn —en — te verwaarlozen ten opzichte
van dus
Vo = R + Wanneer bovendien
14
volgt Vo=z---(Vi+V2)
De spanning V0 blijkt dus inderdaad samen te hangen met de som van de spanningen V1 en V2. Een voorwaarde voor deze berekening is dat de weerstand
14
heel klein is. Het gevolg hiervan is dat spanning V0 eveneens klein is, hetgeen voor een verder gebruik hinderlijk is. Het versterken van deze spanning is veelal nodig.b. Vermenigvuldigen en delen
Een oud en welbekend mechanisch systeem om te vermenigvuldigen is de rekenlineaal, waarbij de vermenigvuldiging wordt teruggebracht tot het optellen van lengten.
Er bestaan vele elektrische en elektro-mechanische vermenigvuldigers en delers. Een brug van Wheatstone die automatisch in evenwicht wordt gehouden door het veranderen van R4 (zie figuur 111—4) zorgt ervoor dat
R2R3 14=
R1
Ook met een eenvoudige potentiometer kan men vermenigvuldigingen uitvoeren (zie figuur 111—5). De spanning V0 is een deel van de spanning
V1 die aan de weerstand R wordt toegevoerd. Als deze fractie x bedraagt,
dan is dus V0 = x V1. Door middel van een servomechanisme kan men de fractie x evenredig maken met een tweede spanning V2, zodat dus volgt dat V0 = C V1 V2.
Fig. 111—4. Vermenigvuldigen en delen Fig. 111—5. Vermenigvuldigen met met een brug van Wheatstone. een potentiometer.
Er bestaan ook zuiver elektronische vermenigvuldigers en delers, die
zeer snel kunnen werken.
c. Differentieren en integreren
Een tachometer kan men als een instrument beschouwen dat de differen tiaal van een hoekstand produceert. Een integratiemotortje geeft een hoeksnelheid evenredig met de aangelegde spanning, dus
dt =
Als de hoekstand van de motor-as is ten tijde t 0, volgt voor de
hoekstand q ten tijde t =
= C /Vdt +
0
De hoekstand is eventueel met behuip van tellers te bepalen.
Andere voorbeelden van integrerende systemen zijn: kilowatt-urert meters, water- en gasmeters en kilometertellers. Een elektrisch systeem dat onder zekere voorwaarden integreert, is gegeven in figuur 111—6.
Dc stroom
v1—vo
=
R
door weerstand R is gelijk aan de laadstroom i2 van condensator C, dus
gelijk aan de verandering dO van de lading Qvan de condensator per
tijdseenheid dt, dus.
Daar voor een condensator
Q,
= CV0 geldt en C constant is, is dusdQ CT0
dt dt
V1—V0 . dV0 dV0
R z2Cd of RCã_+ V0= V1
Indien men ervoor zorgt dat V0 steeds zeer klein is in vergelijking met V1, gaat de vergelijking over in RC_0 = V1, waarna volgt
V0=fV1dt+ V00 (1)
waarbij V00 de spanning op de condensator is op het tijdstip t 0. Het resultaat is, evenals bij het optelnetwerk, een spanning V0, die zeer klein is, hetgeen dus weer in verband
R met volgende bewerkingen lastig is.
I D Tevens zal een belasting van de
span-1
— fling V0 door een volgend deel van de
schakeling hinderlijk kunnen terug
I c werken op de spanning V0.
De eis dat V0 zeer klein is ten opzich
te van kan men als volgt (een beet
v
je slordig) nader toelichten. Stel dat V1 een stationnaire sinusvormige spanning
Fig. 111—6. Integreren met een
RC-netwerk. is V1 = Vim sin cot. Voor het geval
dat V00 = 0 volgt voor V0 — na invul len van V1 in (1) — en integreren
imax
coscot (2)
wRC
Dit geldt dus slechts als V0 zeer klein is ten opzichte van V1. Wil V0 klein zijn ten opzichte van V1, dan moet volgens (2) dus wRC groot zijn. Men kan ook zeggen: de schakeling van figuur 111—6 werkt slechts voor coRC>> 1 behoorlijk als integrator.
In plaats van een elektrische weerstand en capaciteit kan ook bijv. cen pneumatische weerstand en een volume worden gebruikt. Een moeilijk heid hierbij is echter dat de pneumatische grootheden niet zo goed constant zijn als de elektrische.
I:
d. Het oplossen van diferentiaalvergehjkingenAls in Iiguur 111—6 V0 niet zeer klein is ten opzichte van V1, is het ver
band tussen V0 en V1 gegeven door de vergelijking
RC+ V0=r V1
V0 en V1 hangen dus volgens een eerste orde differentiaalvergelij king
samen. De spanning V0 is de oplossing van deze vergelijking. Als V0 belast wordt door een volgend rekenelement, ontstaan er weer terug werkingen.
Met meer ingewikkelde netwerken kan men ook meer ingewikkelde differentiaalvergelijkingen oplossen.
Voor het oplossen van partiele differentiaalvergelijkingen die door differentievergelijkingen kunnen worden benaderd, kan men soms ge bruik maken van een weerstandsnetwerk, zoals in figuur 111—7 is aan
gegeven.
Van de vergelijking
2Jj
(3)
wordt de oplossing Ii gevraagd in een gebied G, begrensd door een kromme L. Op de kromme L is bekend. Het gebied G wordt in een aantal vierkantjes verdeeld (figuur 111—8) met afmetingen h. Als bij
Fig. 111—7. Weerstandsnetwerk.
knooppunt P0 de waarde 0 hoort, dan is voor de waarde 01 in P1 en 03
in P3 volgens Taylor te schrijven:
/aO\ h2/a20 01=00+hi—)
+—-—-1
+... \aX0 2 ax2;0 ao\ h2 2Ø \aX/0 2 ax 0 en evenzo voor 02 en 04. P3 P0 P FOptellen van de vier uitdrukkingen geeft:
v+ A A A V2 /a20 a20) 01+02+03+04 = 400+h2I_ +_ + \aX2 2
Bij verwaarlozing van hogere differentiaalquotienten ontstaat dus:
(a20 a2o’
—01+02-4-03+04—400 (4
,a2 y2 1o— /2
Voor het knooppunt V0 in figuur 111—9 geldt dat de som van de stromen nul moet zijn. Er komen vier stromen van V1, V2, V3en V4, die samen gelijk zijn aan
V1—V0 V2—V0 V3—V0 V4—V0 — V1+V2+V3±V4—4V0 R + R + R — R 40
/
N
P4)
/
)
VFig. 111—8. Hulpfiguur voor het aflei den van een differentievergelijking.
Fig. 111—9. Detail van een weer standsnetwerk.
Deze vergelij king heeft dezelfde gedaante als het rechter lid van ver
gelij king (4). De spanningen in de knooppunten kunnen dus de waarden
van 0 in deze vergelijking vertolken. Nu moet volgens (3) het
linker-en dus ook het rechter lid van (4) gelijk zijn aanf(00). In elk knooppunt
moet dus nog een stroom worden geInjecteerd ter grootte van
—f(0°).
Als tevens aan de randen van het netwerk op plaatsen overeenkomend
met kromme L de randvoorwaarden in de vorm van spanningen worden aangebracht, is dit svsteem een representatie van vergelijking (3). In paragraaf III. B. 3. wordt een uitvoering van deze opzet beschreven.
3. Basiselementen van elektronische a.naloge rekenmachines Een ,,universele” elektronische analoge rekenmachine bestaat uit een aantal basiselementen die elementaire bewerkingen, als tekenomkeren, met een constante vermenigvuldigen, op
tellen, integreren enz., kunnen uitvoeren. Het hart van elk element is een zg. reken-versterker, een gelijkspanningsversterker °
van goede kwaliteit. Deze versterker wordt in diagrammen veelal voorgesteld door
een driehoek. Zie figuur 111—10. In het Fig. 111—10. Aanduiding voor een rekenversterker.
ideale geval heeft zij de volgende elgen
schappen:
a. De uitgangsspanning V0 = —A V5, waarbij A positief is en heel erg groot. In de praktijk heeft A een grootte van l0
a ios.
b. De stroom die de versterker ingaat bij V5 is uitermate klein.
c. Een belasting van de uitgang van de versterker heeft een verwaar loosbaar kleine invloed op V0. Dc spanning V0 kan dus aan een andere rekeneenheid worden toegevoerd zonder dat V0 hiervan een invloed ondergaat.
d. Er treedt geen drift op; d.w.z. als V5 0 volt is, is V0 eveneens 0 volt
en dit blijft zo, onafhankelijk van de tijd.
e. Al deze goede eigenschappen gelden voor alle frequenties die van
belang zijn.
Met zorg geconstrueerde versterkers die met overleg worden gebruikt, voldoen redelijk aan deze voorwaarden.
Voor berekeningen worden deze rekenversterkers in een circuit opge nomen.
a. Tekenomkeren en van een coefficient voorzien
In figuur Ill—li is een zeer eenvoudig circuit getekend. De ingangs