Computers en Philips
Huub de Beer
Amsterdam, 26 februari 2008
1 Inleiding
2 Het Natuurkundig Laboratorium
2.1 Philips’ Experimentele Tweetallige Electronische Rekenmachine
Nadat Rinia, een van de directeuren van het NatLab, terugkwam van een studiereis naar Amerika gaf hij in maart 1951 Nijenhuis de opdracht om iets aan computers te gaan doen.1 Het onderzoek naar rekenmachines was bedoeld om kennis en ervaring op te doen voor de productie van componenten voor rekenmachines.2 Het verbeteren van componenten en het productieproces van componenten was belangrijk voor Philips omdat Philips een grote leverancier was van componenten. Philips leverde ook aan verschillende computerfabrikanten, waaronder IBM.3
Vanaf oktober 1951 werkte H. Heijn met Nijenhuis samen en langzaam breidde de computeronderzoeksgroep zich verder uit. De eerste jaren beperkte het onderzoek zich naar eenvoudige schakelingen, zoals tellers en andere onderdelen voor een rekenmachine.4 Vanaf 1953 bouwde de groep aan een volledige rekenmachine waarmee ook rekenwerk voor het NatLab uitgevoerd zou kunnen worden. De bouw van deze computer stond in het teken van onderzoek en heette niet voor niets Philips’ Experimentele Tweetallige Electronische Rekenmachine (PETER). In 1956 bestempelde de computeronderzoeksgroep de PETER als klaar en tot in 1959 gebruikten verschillende gebruikers van het NatLab de computer naar tevredenheid.5
De PETER was opgebouwd met zes soorten eenvoudig plugbare eenheden, zoals de flip-flop, de kathode-volger, de schuifeenheid, een diode-eenheid en twee eenheden om poorten mee te maken. De logische schakelingen bestonden uit aaneen gesoldeerde Germanium dioden. Hierdoor ontstond een grote warmteontwikkeling die de werking van de PETER negatief beïnvloedde.
Die onbetrouwbaarheid leidde ertoe dat op de vraag of de PETER beschikbaar was voor een berekening regelmatig het antwoord volgde: ‘Reken er maar niet op’.6 Door een koelinstallatie te installeren loste de computeronderzoeksgroep dit probleem grotendeels op. Een andere bron van problemen, onbetrouwbare soldeerpunten, kon opgespoord worden door hard op de rekken van de PETER te slaan. De zwakke plekken braken en konden vervolgens worden vervangen of gerepareerd.7
De PETER was een binaire machine met een parallel rekenorgaan en een seriële besturing. Woorden bestonden uit 20 bits maar op de geheugentrommel waren 24 bits per woord beschikbaar. Het trommelgeheugen kon 1024 woorden bevatten verdeeld over 64 sporen van 16 woorden. Met behulp van de vier extra bits per woord op de trommel had de PETER voldoende tijd om het lezen van het volgende woord voor te bereiden. Op de geheugentrommel zat ook de klokpuls-generator in de vorm van een gegraveerde aluminium schijf.
De computeronderzoeksgroep experimenteerde ook met een klein maar zeer snel trommelgeheugen om te proberen de toegangstijd van het geheugen te verkleinen. Dit experiment mislukte. Een klein deel van PETERs geheugen bestond uit een plugbord, het zogenaamde kunsthoofd, waarin nog eens 32 extra woorden ingesteld konden worden. Dit kunsthoofd werd veel gebruikt bij het testen van de machine, het inlezen van het invoerprogramma en het invoeren van gegevens. Later voegde de computeronderzoeksgroep ook nog een klein kerngeheugen van 32 woorden toe aan de PETER. Het gebruik van dit kerngeheugen versnelde de PETER ongeveer zestien keer.8
0/n | Spring naar n indien t\(_{\textrm{A}}\) = 0 |
8/n | Spring naar n indien t\(_{\textrm{A}}\) = 1 |
1/n | (n) \(\rightarrow\) S |
9/n | (S) \(\rightarrow\) n; (S) \(\rightarrow\) S |
2/n | (SA) schuift n plaatsen naar rechts n \(\leq\) 31 |
10/n | (SA) schuift n plaatsen naar links n \(\leq\) 31 |
3/n | (A) \(+\) (n) \(\rightarrow\) A |
11/n | (A) \(-\) (n) \(\rightarrow\) A |
4/n | Collationeer (A) met (n); (A\(_{\textrm{k}}\))(M\(_{\textrm{k}}\)) \(\rightarrow\) A\(_{\textrm{k}}\) |
12/n | Nog ongebruikt |
5/n | (A) \(\rightarrow\) n; $+$0 \(\rightarrow\) A |
13/n | (A) \(\rightarrow\) n, (A) \(\rightarrow\) A |
6/n | Lees een tetrade van de band. Indien geen “vijfde gat” aanwezig is wordt de volgende opdracht van n gehaald. |
14/.. | Type |
7/n | (A) \(\times\) (n) \(\rightarrow\) AS |
15/n | (AS) \(:\) (n) \(\rightarrow\) S rest in A |
De PETER interpreteerde getallen als breuken tussen \(-1\) en \(1\), met de komma direct na het tekenbit. Negatieve getallen werden met het een-complementsysteem gerepresenteerd.9 Een instructie bestond uit een adresgedeelte van 10 bits, een opdracht van vier bits, een bit dat aangaf of de PETER van de trommel of van het kunsthoofd las en een bit om de machine te stoppen. De vier overgebleven bits in het woord maakten geen deel uit van een instructie. Het adresgedeelte was verdeeld in twee stukken van respectievelijk vier bits om het spoor op de trommel aan te geven en zes bits om het woord in dat spoor aan te duiden. Er waren in totaal 15 opdrachten. Opdracht 12 was niet in gebruik (zie de tabel hierboven).
Een microbesturing voerde in zes stappen de besturing van de PETER uit. Allereerst laadde de besturing met behulp van het adres van de volgende instructie dat zich in register D bevond de instructie zelf in register C. Hierna wisselde de besturing de inhoud van beide registers om waarna de besturing de opdracht van de instructie bepaalde. De inhoud van het adres dat gespecificeerd was in het adresgedeelte van de instructie stuurde de besturing vervolgens naar het rekenorgaan om daarop de opdracht uit te voeren. Hierna haalde de besturing het adres van de volgende instructie vanuit register C en schreef dat, verhoogd met een, in register D. Nadat de besturing het signaal van het rekenorgaan ontving dat de opdracht uitgevoerd was, begon deze cyclus overnieuw.
In het rekenorgaan was een 21-bits accumulator A en twee 20-bits registers M en S. Het eenentwintigste bit in A was het zogenaamde overflowbit voor gebruik bij vermenigvuldigingen. De PETER gebruikte het S-register voornamelijk voor schuifoperaties en het rekenen met dubbele lengte getallen. De inhouden van M en A konden parallel opgeteld worden. Het rekenorgaan kon schuiven, optellen, inverteren, vermenigvuldigen en delen. De opdrachten bestonden uit een aantal zogenaamde microhandelingen die door een microbesturing in het rekenorgaan werden uitgevoerd. Door deze microbesturing werkte de PETER langzamer dan mogelijk zou zijn als elke opdracht apart in de hardware was uitgevoerd.
De invoer geschiedde met een Ferranti vijfgats ponsbandlezer. De eerste vier kanalen las de PETER in in de vier laatste bits van A. Het vijfde gebruikte de besturing. Ook de uitvoer verliep via de vier laatste bits van A. Deze vier bits vormden een code van een karakter dat een typemachine vervolgend uit kon typen. Verder konden deze vier bits ook worden uitgeponst. Naast deze primitieve communicatieopdrachten was er ook een invoerprogramma beschikbaar dat gebaseerd was op de invoerprogramma’s voor PTERA en ARRA.10
De PETER werd op het NatLab gebruikt voor allerhande berekeningen, bijvoorbeeld voor aanpassingen van het magnetisch veld van de cyclotron die door Philips werd ontwikkeld en geproduceerd. Verder werden er kristallografische berekeningen en schakelfuncties mee berekend.11
Het programmeren van de PETER kon in een korte cursus van nog geen twintig minuten worden uitgelegd omdat er volgens A.J.W. Duijvesteijn gewoonweg niets meer te vertellen was over de PETER. Niettemin kreeg de cursist ook nog een handleiding van zestien pagina’s: dat moest voldoende zijn om te kunnen programmeren.12
2.2 PASCAL, STEVIN en P3
In 1956 besloot de computeronderzoeksgroep om een definitieve versie van de PETER te gaan bouwen. H.J. Heyn en J.C. Selman begonnen aan de ontwikkeling van deze computer.13 Al snel werd duidelijk dat deze nieuwe machine weinig meer weghad van de PETER; het werd een totaal andere rekenmachine.14 In 1957 werkte er een groep van zeven man aan de PASCAL daarbij door vele anderen ondersteund.15 PASCAL stond voor Philips Akelig Snelle Calculator omdat de machine bij oplevering een van de snelste computers in de wereld was. Later hernoemde Klinkhamer de Engelse naam Philips Automatic Sequence Calculator.16
Ondertussen onderzocht ook de adminstratie de mogelijkheden van rekenmachines en de conclusie van dat onderzoek was dat er in 1956 en 1957 nog geen geschikte apparatuur op de markt was om de administratie van Philips te kunnen automatiseren. Daarop besloot Philips een tweede versie van de PASCAL te laten bouwen voor administratief werk17: de STEVIN, het Snel Tel- En Vermenigvuldig-Instrument. De STEVIN verschilde van de PASCAL door het grotere aantal randapparaten voor in- en uitvoer dat voor administratieve automatisering nodig was. De PASCAL werd gereserveerd voor wetenschappelijke berekeningen.18
De PASCALHeijn en Selman19 bestond uit een hoofdeenheid, een trommelgeheugeneenheid en een bedieningstafel. De bedieningslessenaar had schakelaars voor het starten en stoppen van de machine, voor het vertraagd laten werken van de machine en indicatielampjes die de inhoud van de verschillende registers weergaven of de inhoud van een willekeurig adres.
Verder was er een meter die aangaf welk percentage van de tijd de PASCAL werkelijk rekende. De rest van de tijd ging op aan transporten en aan in- en uitvoer. Tenslotte waren er nog een aantal drukknoppen om het startadres op te geven. Op de lessenaar stonden een ponsbandlezer en een typemachine. De bandponser was in een la geplaatst.
Omdat tijdens het ontwerp van de PASCAL nog geen hogesnelheid transistors beschikbaar waren, gebruikte de computeronderzoeksgroep radiobuizen voor een aantal onderdelen van rekenkundige elementen. De computer bestond uit 1200 buizen en 8000 transistors. Het geheel was opgebouwd uit plugbare eenheden zodat het rekenkundige orgaan eenvoudig geordend en onderhouden kon worden. Een ronddraaiend magnetisch tandwiel genereerde een klokpuls die het tempo van de PASCAL bepaalde.
Het rekenorgaan van de PASCAL bevatte vier registers: de accumulator A, het schuifregister S, het SOM-register en het geheugenregister M. In het SOM register was altijd de som van A en S aanwezig. Via het M-register transporteerde de PASCAL alle woorden van het rekenorgaan naar het geheugen en omgekeerd. Dit geheugentransport verliep parallel. Ook de opteller was parallel uitgevoerd waardoor zowel het geheugentransport als het optellen sneller verliepen, overigens tegen de prijs van een grotere complexiteit van de schakelingen.
Door met blokken van zeven cijfers tegelijk op te tellen in plaats van elk cijfer apart te beschouwen realiseerden de computeronderzoeksgroep een extra snelheidswinst. Elk blok van zeven cijfers had ook een eigen carry die berekend werd uit de inkomende carry van het naastgelegen blok en de berekening in het blok zelf. Deze carries heetten “fast carries’ en waren een van de bijzonderheden van de PASCAL.
Aftrekken was zoals gebruikelijk optellen met het complement van het getal dat afgetrokken moest worden. De PASCAL vermenigvuldigde en deelde door respectievelijk herhaald op te tellen of herhaald af te trekken. Bij deze operaties maakte de computer gebruik van schuiven. De woordlengte van de PASCAL was 44 bits, waarvan 2 bits zogenaamde pariteitsbits waren voor interne controle. De computers waren ook nog met andere controlemechanismen uitgerust.
32 | \((A)+(n) \rightarrow A\) |
33 | \((A)-(n) \rightarrow A\) |
34 | \((S)+(n) \rightarrow S\) |
35 | \((S)-(n) \rightarrow S\) |
36 | \((S)\times(n) \rightarrow A, S\) |
37 | \((A,S)\div(n) \rightarrow S\) |
De PASCAL kon met zowel een vaste komma als met een drijvende komma rekenen. Een vaste komma getal bestond uit een tekenbit en 41 cijferbits. Een drijvende komma getal werd voorgesteld door een een breuk van 34 bits, inclusief een tekenbit en een exponent van 8 bits, ook met tekenbit.
38 | \((A)+(n) \rightarrow A\) |
39 | \((A)-(n) \rightarrow A\) |
40 | \((S)\times(n) \rightarrow A\) |
41 | \((A)\div(n) \rightarrow S\) |
Het geheugen was opgebouwd uit verschillende typen geheugens. Snel geheugen was namelijk te duur om op grote schaal toe te passen. Het geheugen van de PASCAL bestond uit een snel werkgeheugen van mageneetkerntjes dat direct met het rekenorgaan verbonden was. Dit geheugen was 2016 woorden groot. Verder was er een langzaam maar groot trommelgeheugen van 16384 woorden en tenslotte nog een aantal magneetbandeenheden waar ongeveer \(10^6\) woorden op kwijt konden.
Het transport van gegevens tussen de verschillende geheugens ging met blokken van 128 woorden. Door bij te houden welke woorden al geschreven waren was het mogelijk om het schrijven en het lezen van een blok niet op het eerste woord van een blok te laten beginnen, maar bij het eerste het beste woord dat onder de schrijf- en leeskop van de geheugentrommel zat. Om vergelijkbare manier verliep het transport van en naar de magnetische band.
50 | (n) \(\rightarrow\) A |
51 | (n) \(\rightarrow\) S |
56 | (A) \(\rightarrow\) n |
57 | -(A) \(\rightarrow\) n |
58 | (S) \(\rightarrow\) n |
59 | -(S) \(\rightarrow\) n |
60 | (n) \(+\) (A) \(\rightarrow\) n |
61 | (n) \(-\) (A) \(\rightarrow\) n |
63 | Link-I |
Naast deze grotere geheugens waren er ook twee kleine geheugens voor speciale doeleinden. De registers en andere geheugenelementen in rekenorgaan en besturing vormden ook een onderdeel van het geheugen. Een ervan was het zogenaamde indicatorwoord waarin een aantal karakteristieken of condities van de toestand van de machine kon worden gerepresenteerd. Deze condities, zoals het resultaat van een vergelijking, de overflow, de stand van de trommel, de toestand van de in- en uitvoer, en dergelijke, konden door een programma onderzocht worden en gebruikt in sprongopdrachten.20
Verder was er op de bedieningstafel nog een aantal geheugenelementen aanwezig: een schakelaargeheugen van een woord en een stekergeheugen, het zogenaamde kunsthoofd, van zestien woorden. Een woord van deze zestien was uitgevoerd op de lessenaar in de vorm van 42 drukknoppen. De andere vijftien zaten in de lessenaar onder een schuifblad.21 Tenslotte was er nog een modificatiegeheugen van acht halve woorden waarmee instructies bij uitvoering gemodificeerd konden worden.
In de besturing bevonden zich twee registers: C en de opdrachtteller OT. Daarnaast waren er drie verschillende tellers: BT, RT en ST van respectievelijk 4, 3, en 6 bits. BT was de besturingsteller waarmee de besturing bijhield met welke fase de besturing bezig was. De besturing bestond uit vier groepen van drie fasen: het ophalen van een instructiepaar en het opzetten van de modificatie; het uitvoeren van de modificatie en het terugschrijven van de instructie; het ophalen van de eerste operand en uitvoeren van de operatie; het ophalen van de tweede operand en uitvoeren ervan. Mocht bij het uitvoeren van een opdracht niet alle stappen uitgevoerd worden, dan hield de besturing dat bij in RT. Als een stap meerdere malen herhaald diende te worden, dan gebruikte de besturing de teller ST , bijvoorbeeld bij vermenigvuldigen.
42 | Shift (A) to the right |
43 | Shift (A) to the left |
44 | Shift (S) to the right |
45 | Shift (S) to the left |
46 | Shift (A,S) to the right |
47 | Shift (A,S) to the left |
48 | Logical AND, bit by bit |
49 | Compare (A) and (n), and store the possible results \(>, =, <\) |
52 | STOP |
53 | Logical OR, bit by bit |
In een woord paste twee instructies van 21 bits. Met 11 bits werd het adres gespecificeerd waardoor 2048 adressen aangewezen konden worden. De opdracht werd met zes bits aangegeven. De PASCAL kende 57 verschillende opdrachten en de link-II faciliteit maakte nog eens 30 extra geïnterpreteerde instructies mogelijk. De programmeur kon zelf kiezen welke functionaliteit hij via deze faciliteit beschikbaar stelde voor gebruik in zijn programma’s.
Daarnaast waren er drie modificatiebits en tenslotte een adresinterpretatiebit waarmee de programmeur kon aangegeven of de PASCAL het adresgedeelte als een adres of als een getal moest interpreteren. Bijvoorbeeld het aantal te verschuiven plaatsen in een shiftinstructie. Soms had dit adresinterpretatiebit ook een andere betekenis:
- Bij instructies die naar het geheugen schreven kon dit bit niet 1 zijn.
- Bij de tel instructie, die normaal gesproken een skipopdracht was.
- Bij een 1 was het een sprong naar de opdracht volgend op de volgende opdracht.
- Bij de repetitieinstructie was iets vergelijkbaars aan de hand.
Voor instructies 0 tot en met 29 bekende een 0 voor het adresinterpretatiebit dat het de gewone instructie was. Was dat bit 1, dan was het een zogenaamde Link-II instructie. In het geheugen werden 30 woorden gebruikt om een lijst met subroutines te bewaren door op de eerste positie in het woord een sprong naar de subroutine te geven en aan het einde van de subroutine een sprong naar de tweede positie van dat woord. Het adres van de volgende opdracht na de subroutine aanroep werd dan in de tweede positie geplaatst: Het adres dat in de aanroep meegegeven werd in het woord voor het woord van de subroutine in de lijst.
0 | Jump, absolute |
1 | |
2 | Jump, if \((A) > 0\) |
3 | |
4 | Jump, if \((A) < 0\) |
5 | |
6 | Jump, if \((S) > 0\) |
7 | |
8 | Jump, if \((S) < 0\) |
9 | |
10 | Jump, if last comparison gave \(>\) |
11 | |
12 | Jump, if last comparison gave \(=\) |
13 | |
14 | Jump, if last comparison gave \(<\) |
15 | |
16 | Jump, if overflo indication |
17 | Reset overflow indication |
Doordat er een werkgeheugen was van magnetische kerntjes, werd elk woord dat uit dat geheugen werd gelezen ook meteen vernietigd. Dit woord moest dus sowieso in het geheugen worden teruggeschreven. Door middel van de modificatiebits kon aangegeven worden dat zo’n woord gemodificeerd met de inhoud van een der modificatiegeheugens teruggeschreven moest worden in plaats van het oorspronkelijke woord. Er waren twee vormen van adresmodificatie.
De even modificatieregisters waren indexregisters en de oneven modificatieregisters de incrementregisters. Bij het gebruik van een indexregister werd de originele instructie weer in het geheugen geschreven en bij incrementregisters werd de gemodificeerde instructie naar het geheugen geschreven. De eerste vorm van adresmodificatie was bruikbaar bij subroutines en de tweede worm bij telroutines.
Spronginstructie waren dubbel uitgevoerd omdat er in een woord twee instructies pasten (zie bovenstaande tabellen). Zowel invoer als de uitvoer werden met het opdrachtnummer 20 aangeroepen. Het adresgedeelte werd geïnterpreteerd als een code die de verschillende in- en uitvoeracties bepaalden (zie bovenstaande tabellen).
Zoals eerder gezegd kon de PASCAL zowel met getallen met vaste komma als met getallen met drijvende komma rekenen. Voor beide typen getallen waren aparte opdrachten beschikbaar (zie bovenstaande tabellen) Naast rekenkundige operaties konden ook verschillende logische operaties uitgevoerd worden (zie bovenstaande tabellen). Verder waren er nog verplaatsingsinstructies waarmee blokken geheugen van het ene geheugen naar het andere geheugen verplaatst konden worden (zie bovenstaande tabellen). Tenslotte was er de Link-I instructie waarmee subroutines aangeroepen konden worden.
20 | Ouput instruction |
22 | Transfer Cores\(\rightarrow\)Drum |
23 | Transfer Drum\(\rightarrow\)Cores |
24 | Input instruction |
26 | Transfer Cores\(\rightarrow\)Tape |
27 | Transfer Tape\(\rightarrow\)Cores |
28 | Interchange A and S |
29 | Skip |
30 | Count instruction |
31 | Repeat instruction |
De invoer van de PASCAL bestond uit een ponsbandlezer, een ponskaartlezer die zowel Bull-kaarten als IBM-kaarten kon lezen en een magnetische bandeenheid, waarvan er maximaal 16 aan de PASCAL konden worden aangesloten. De uitvoer verliep via een bandponser, een elektronische schrijfmachine, een Bull tabulator met een kaartponser, een regeldrukker en een magnetische bandeenheid. De STEVIN had geen bandponser en regeldrukker als uitvoer, maar kon wel gebruik maken van een Anelex hogesnelheid printer.22 Deze printer werd niet direct aangesloten aan de STEVIN maar kon via een magneetband worden aangestuurd.
‘De schrijfmachine heeft in vergelijking met de andere uitvoerorganen een zeer geringe snelheid. Hij wordt daarom in hoofdzaak gebruikt om in het programma verwerkte aanwijzingen te geven aan het bedieningspersoneel (dat van het rekenvraagstuk niet op de hoogte behoeft te zijn). Dit kan b.v. de aanwijzing zijn dat een nieuwe rol magnetisch band moet worden aangebracht in één van de magnetische bandapparaten van het geheugen.’23
Voor de ponskaartlezer werd een snelle sorteermachine gebruikt die volledig gebufferd aan de STEVIN was aangesloten. Ook andere kaartlezers waren gebufferd met snel kerngeheugen waardoor het mogelijk was dat de computer tijdens het lezen van ponskaarten gewoon door kon werken.24 De machines waren niet uitgerust met een interrupt mechanisme.
Beide machines werden nadat ze in het NatLab waren gebouwd in 1960 in het Philips Rekencentrum geplaatst waar ze, tegelijkertijd met het nieuwe gebouw, op 21 maart 1961 officieel in gebruik werden genomen. Het Rekencentrum en het gebruik van de PASCAL en STEVIN worden in een volgende paragraaf besproken. In 1963 verhuisde de PASCAL naar Philips Computer Industrie in Apeldoorn.25
In 1962 vroeg Philips PIT N.C de Troye om de van de PASCAL een volledig getransistoriseerde versie te maken. De Troye noemde die kopie voorlopig de P3. PIT bouwde vervolgens de P3 die daarna in het NatLab werd getest. Nadat de computer was goedgekeurd verscheepte Philips het naar het onderzoekslaboratorium van Philips in Brussel, het Manufacture Belge de Lampes Electriques (MBLE). Een andere naam kreeg de P3 nooit.26
3 De automatisering bij Philips
Er waren verschillende redenen om over te gaan tot automatisering, bovenal was er een grote toename in administratieve taken. Philips als geheel groeide, maar ook de complexiteit van de onderneming nam toe.27 Vanaf 1950 nam het aantal ponskaarten dat Philips verwerkte met ongeveer 20% per jaar toe. Vooral die objecten die van “verslaggevende, statistische en historische betekenis” waren, werden gemechaniseerd, bijvoorbeeld de loonadministratie. Wat betreft productieplanning en -voorbereiding was nog niets gemechaniseerd. Juist op dat gebied, de goederenbeweging, zou automatisering een grote invloed kunnen hebben.28
Daarnaast werd steeds meer waarde gehecht aan verschillende administratieve gegevens. Gebaseerd op de beschikbare gegevens kon het bestuur van philips terugkoppelen op de gang van zaken in het bedrijf. Voor een doelmatige terugkoppeling waren twee zaken van belang: snelheid en specifieke gerichtheid. Door de vergroting van de snelheid waarmee gegevens verwerkt werden, kon de leiding sneller en meer gericht ingrijpen.29
Voor een deel loste Philips deze problemen op door de mechanisering van delen van de administratie. Philips was in grote mate een uniform bedrijf. Een facet van die uniformiteit was de codering van allerhande objecten in het bedrijf zoals goederen, producten en materialen.@Meeuwis1960a Die mechanisering in zichzelf betekende ook dat Philips de administratie systematische aanpakte en plande. Hierdoor werden de mogelijkheden en de noodzaak van verdere integratie van verschillende administratieve processen duidelijk.30 Dat nam niet weg dat de in gebruik zijnde codering voor de mechanisatie ongeschikt was voor automatische verwerking van gegevens.31
Met behulp van elektronische apparatuur zou Philips veel meer gegevens efficiënter kunnen verwerken. Omdat Philips verwachte dat de hoeveelheid te verwerken gegevens sterk zou blijven toenemen, boden deze elektronische hulpmiddelen uitkomst. Tel daarbij een groeiend personeelstekort en automatisering was in deze atmosfeer een logische volgende stap. Om automatisering te laten slagen was het belangrijk dat iedereen die er mee te maken kreeg dat steunde. Het belangrijkste was wel de steun van de leiding van het bedrijf. Automatische informatieverwerking had dus niet enkel betrekking op de administratie maar op het gehele bedrijf.32
Het grootste deel van het werk van de omschakeling naar automatisering deed het personeel van de afdeling Administratieve Organisatie. Zij bestudeerden en analyseerden de organisatie en ontwierpen daarop het plan voor de automatisering dat ze daarop verder uitwerkten. Deze uitwerking bestond uit het maken van behandelingsschemas, formulieren en tijdschema’s, maar ook het programmeren en testen van de apparatuur en het schrijven van een handleiding.
Naast deze administratieve organisatoren moesten ook alle andere betrokkenen meewerken om een goede analyse en automatiestap te kunnen maken. Hierom werd de automatie door middel van werkgroepen uitgevoerd. Een management-commissie volgde weer die werkgroepen. Naast deze werkzaamheden deed de commissie ook onderzoek naar automatiseringsapparatuur en gaf voorlichting. Het was belangrijk om deze administratieve organisatoren goed te scholen.
Wat betreft de gebruiker van de gegevens van automatisering was het belangrijk deze per stap in het automatieproces betrokken en geïnteresseerd te houden.
We hebben kunnen vaststellen, dat de belangstelling geleid moet worden. Gevaarlijk, neen funest zijn de verhalen over automatie, waarbij men de zegeningen van automatie probeert te illustreren met het opsommen van elektronische snelheden en verder de concrete organisatie-problematiek buiten beschouwing laat.
De “druk op de knop” mythe moet worden gecorrigeerd met de verwijzing naar de lange en moeilijke weg welke moet worden afgelegd om automatie tot werkelijkheid te brengen. Het mystieke van automatie moet worden weggenomen door het geven van inzicht in hetgeen wezenlijk plaats vindt, waardoor het zelfstandig denken over de mogelijkheden van het nieuwe en over het gebruik-maken ervan wordt bevorderd.33
Automatisering moest betrouwbaar zijn: als de apparatuur uitviel dan mocht dat geen probleem opleveren voor de productie. Veel problemen met de apparatuur konden worden ondervangen door duplicering van de apparatuur. Een dergelijke duplicering was echter kostbaar, zeker in de beginperiode wanneer de apparatuur niet ten volle benut zou kunnen worden, laat staan het dubbele aantal apparatuur.
Philips koos voor duplicering door van de wetenschappelijke machine PASCAL die in aanbouw was op het NatLab een tweede versie te maken voor administratieve toepassingen. Ze zouden elkaar bij problemen kunnen vervangen. Overigens was de keuze voor de zelfgebouwde PASCAL en STEVIN niet eenvoudig: er kwam nogal wat bij kijken, bijvoorbeeld de basisprogrammering.34
4 Het Rekencentrum en de toepassing van computers
4.1 Het Rekencentrum
Philips besloot in 1958 tot de oprichting van het Rekencentrum omdat de bestaande Ponskaartencentrale te klein was geworden en kampte met een personeelstekort. Een personeelstekort in de administratie was in de jaren ’50 juist ook waarom de administratie steeds meer gemechaniseerd werd en de Ponskaartencentrale groeide. Verder konden steeds meer gegevens worden verwerkt door de ontwikkeling van de administratiemachines. Om deze problemen het hoofd te kunnen bieden startte Philips met de voorbereiding van de automatisering.
Tijdens deze voorbereiding maakten de experts van de administratie een studie van beschikbare elektronische administratiemachines. Omdat er nog geen redelijk geprijsde geschikte machines op de markt waren, besloot Philips het NatLab een kopie van de PASCAL te laten bouwen voor administratieve werkzaamheden: de STEVIN. De PASCAL kon dan als het backup-systeem voor de STEVIN fungeren.
In 1958 huurde Philips ook twee IBM 650 computers die IBM in 1959 installeerde. Al deze computers en het grootste deel van de ponskaartenmachines plaatste Philips in het Rekencentrum om zo alle reken- en gegevensverwerkingsactiviteiten te centraliseren. Ook de analoge computer PACE die voor gebruik door het NatLab was aangekocht, werd in het Rekencentrum geplaatst. Eind 1960 waren er in totaal zo’n 127 machines in het Rekencentrum:
Type | Apparaat | aantal |
---|---|---|
analoge computers | PACE | 1 |
digitale computers | IBM 650 | 2 |
PASCAL en STEVIN | 2 | |
hulpmachines | tape-to-card converter | 3 |
Creed ponsmachine\(^0\) | 1 | |
Creed controleponsmachine\(^0\) | 1 | |
Flexowriter\(^0\) | 1 | |
ponskaartenmachines | ponsmachines | 30 |
controleponsmachines | 20 | |
tabelleermachines | 20 | |
sorteermachines | 18 | |
reproduceermachines | 11 | |
collators | 9 | |
vertolkers | 5 | |
Bull GAMMA 3 | 2 | |
IBM 604 | 1 | |
totaal | 127 |
Door deze centralisatie van apparatuur hoopte Philips de apparatuur bet/zou ouer te benutten en ze beter te kunnen onderhouden. Het zou ook eenvoudiger zijn om een verregaande integratie tussen de verschillende apparaten te bewerkstelligen. Tenslotte zouden door het Rekencentrum meer mogelijkheden ontstaan om personeel te werven en op te leiden.35
Het grootste nadeel van de centralisatie waren wachttijden bij de verschillende machines. Het sprak dan ook vanzelf dat ‘dat om snelle levertijden te realiseren, plegendienst niet zal mogen worden geschuwd bij deze kostbare apparatuur.’36
Ook de aan- en afvoer van gegevens vormde een probleem. Per jaar werden ongeveer 30000000 ponskaarten verwerkt; per dag werden tienduizenden ponskaarten het Rekencentrum binnengebracht en geproduceerd. Dit logistieke probleem lostte het Rekencentrum voor een deel op door het gebruik van een bestelwagen in Eindhoven met twee man personeel en men verwachtte dat in de toekomst datatransmissie uitkomst zou bieden.37
Afdeling | personeel | RC | H | O | Totaal |
---|---|---|---|---|---|
Productieafdeling | ponsters | 42 | 4 | 35 | 81 |
ponskaartenmachines | 63 | 5 | 68 | ||
elektronische apparatuur | 8 | 8 | |||
subtotaal | 113 | 9 | 35 | 157 | |
Hulpafdelingen | algemeen | 5 | 5 | ||
planning en transport | 10 | 10 | |||
werkvoorbereiding en machine programmering | 11 | 1 | 12 | ||
controleafdeling | 11 | 11 | |||
technische dienst | 8 | 8 | |||
administratie | 10 | 10 | |||
public relations | 1 | 1 | |||
opleiding en training | 2 | 1 | 3 | ||
subtotaal | 58 | 2 | 59 | ||
Diversen | programmaonderzoek STEVIN/PASCAL | 7 | 7 | ||
wetenschappelijke programmeurs | 14 | 25\(^1\) | 39 | ||
mathematici | 4 | 4 | |||
contactpersonen wetenschappelijk werk 17\(^1\) | 17 | ||||
systeemprogrammeurs | 20 | 20 | |||
organisatoren | 16 | 16 | |||
subtotaal | 25 | 78 | 103 | ||
Totaal | 196 | 10 | 113 | 319 |
Een deel van de werknemers van het Rekencentrum waren elders, buiten het Rekencentrum ondergebracht. Zo waren de administratief organisatoren en systeemprogrammeurs onderdeel van de afdeling Administratieve Organisatie en hielden ze zich voornamelijk bezig met automatisering. Daarnaast waren er een aantal wiskundigen en wetenschappelijke programmeurs van het NatLab, die overigens wel een plaats in het Rekencentrum hadden.
Het personeel dat nodig was voor de verschillende ponskaartenmachines was vele malen groter dan dat voor elektronische machines (zie tabel hierboven). Dat kon eenvoudig verklaard worden door het even zo grote verschil in het aantal computers en het aantal ponskaartmachines. In maart 1960 waren 8 personeelsleden die voor de electronische apparatuur zorgden. Vier personen hiervan onderhielden en bedienden de twee IBM 650 machines, de rest was nog in opleiding voor de bediening van de PASCAL en de STEVIN.
Het Rekencentrum had verder ook allerhande personeelsleden die zorgden voor de dagelijkse gang van zaken op het Rekencentrum. Zij behoorden tot de zogenaamde hulpafdelingen, zoals planning, werkvoorbereiding en programmering, controle, administratie, opleiding en training.
Er waren twaalf machineprogrammeurs en werkvoorbereiders. Verder 39 wetenschappelijke programmeurs waarvan 25 ook andere werkzaamheden binnen Philips verrichtten. Er waren 20 systeemprogrammeurs en tenslotte waren er 7 personeelsleden bezig met het maken van software voor PASCAL en STEVIN. Voor al deze programmeurs gold dat ze niet zelf de machines mochten bedienen.
T.a.v. het bedienen van de elektronische apparatuur zijn wij er vanaf het begin vanuit gegaan, dat de systeemprogrammeur niet aan de machine komt. Deze wordt uitsluitend door de daartoe opgeleide en aangestelde operateurs bediend. (…) De programmeur is wel aanwezig tijdens de test van zijn programma om eventuele aanwijzingen te geven; (…) alleen de operateur aan de machine:
- De programmeur is gedwongen veel exacter te werken, daar hij eventuele slordigheden niet gauw nog zelf kan verbeteren.
- De programmeur schrijft de programma’s eenvoudiger, omdat de machine-bediende ze moet kunnen begrijpen.
- Programmeurs mishandelen de apparatuur en veroorzaken teveel verlies aan machinetijd.38
Het programmeren van de computer verliep grofweg in vier stappen. Allereerst werd het probleem duidelijk afgebakend waarna het geanalyseerd kon worden. De uitkomst van zo’n analyse was een blokschema dat vervolgens uitgewerkt werd in een programma. Het programmeren in machinecode was moeilijk maar het automatisch programmeren kon dan uitkomst bieden: dat
geeft ons echter de mogelijkheid de machine “schijnbaar” eenvoudiger en beter te maken. De machine blijft zelf ongewijzigd, maar met behulp van een listig programma doet zij zich aan de programmeur eenvoudiger voor.39
Voor het programmeren van de IBM 650 was het Symbolisch Optimaal Assembleer Programma (SOAP) beschikbaar. De programmeur kon hiermee zijn programma symbolisch adresseren, de SOAP-vertaler plaatste dan het programma op de meest geschikt plaats in het geheugen. Door het gebruik van SOAP werd een programma 2 tot 3 keer sneller dan een niet ge-optimaliseerd handgeschreven programma. Optimalisatie was echter wel een issue bij administratieve programma’s die keer op keer gebruikt werden. In die gevallen konden met de hand ge-optimaliseerde programma’s vele malen efficienter zijn dan SOAP programma’s.
Daarnaast was er ook het BELL-systeem voor de IBM 650 beschikbaar om met drijvende komma getallen te kunnen rekenen. BELL was een interpretatief programma. De programmeur schreef zijn programma met pseudo-instructies die daarop door het interpretatief programma uitgevoerd werden; kosten: een grote vertraging. Dit systeem werd enkel voor wetenschappelijke problemen gebruikt waarbij snelheid van programmeren belangrijker was dan de snelheid van het uitvoeren van het programma.
Tenslotte was het FORTRANSIT compiler beschikbaar: een FORTRAN compiler voor de IBM 650. Verder was IBM ook bezig met de ontwikkeling van de Commercial Translator (COMTRAN), een soort FORTRAN voor administratieve toepassingen.
Voor de PASCAL en de STEVIN waren nog weinig automatisch programmeersystemen beschikbaar. Naast een invoerprogramma en een standaard programmabibliotheek voor administratieve problemen was er een met FORTRANSIT vergelijkbare compiler ontwikkeld. Verder waren er plannen om een ALGOL systeem te ontwikkelen.40
Door de uitbreiding van de gegevensverwerking groeide ook de behoefte aan geschoold personeel. Bestaande opleidingen op het gebied van ponskaartenapparatuur en elektronische apparatuur werden door de producenten van deze apparatuur gegeven. De cursussen waren veel te technisch van aard en er werd geen rekening gehouden met de omgeving waarin de apparaten werkten. Bij Philips werd daarom besloten om zelf cursussen te geven voor de verschillende opleidingsbehoeften. Hierbij werd ook ervaring opgedaan in het maken van cursussen.
Zo was er een introductiecursus over ponskaartensystemen en over de organisatie van het rekencentrum. Daarnaast waren er programmeurscursussen voor de IBM 650, een voor machine- en systeemprogrammeurs en een voor wetenschappelijke doeleinden. De cursus voor machine- en systeemprogrammeurs bestond uit vier onderdelen: de IBM 650 en het programmeren in machinecode; de IBM 533 en schakeltechniek; het programmeren van de IBM 650 in SOAP; en tenslotte nog een praktijkvoorlichting.
Naast opleidingen voor personeelsleden die direct met de machines en automatisering in aanraking kwamen, werd er ook voorlichting gegeven aan verschillende mensen die indirect bij de automatisering betrokken waren. Deze voorlichting bestond uit een boekje van ongeveer 100 pagina’s. Voor herscholing, nieuws, voorlichting, enzovoorts, was er een onregelmatig verschijnend periodiek in het leven geroepen: het Rekencentrum-bulletin. Dit periodiek vormde op den duur een volledige handleiding.41
4.2 Administratieve gegevensverwerking
Naast een aantal verregaande mechanisatieprojecten, zoals de mechanisatie van de materiaalplanning van de hoofdindustriegroep Telecommunicatie P.T.I. in Hilversum en de technische voorcalculatie werden ook enkele toepassingen op het gebied van de administratieve gegevensverwerking bij Philips uitgevoerd. In deze paragraaf worden twee van deze toepassingen besproken: de geïntegreerde orderbehandeling en de loonberekening. Beide op de IBM 650.
4.2.1 Geïntegreerde orderbehandeling en facturering
De IBM 650/RAMAC werd ingezet bij de geïntegreerde orderbehandeling en facturering. Voorheen werd de voorfacturering mechanisch verwerkt om de snelheid van orderverwerking te vergroten. Vertegenwoordigers hoefden dan namelijk geen gedetailleerde formulieren in te vullen, maar konden gebruik maken van een eenvoudig boekje. Alle orders kwamen op een centraal punt binnen, de orderafdeling, waar orders werden afgehandeld. Er was een kaartenbestand met voorgeponste kaarten voor afnemers en variabele gegevens werden geponst door ponstypistes en daarna gecontroleerd door controle ponstypistes. Van binnenkomst van een orderbriefje tot het afleverdocument duurde ongeveer drie uur.
Er werd besloten om middelgrote informatieverwerkende machines aan te schaffen om eenvoudiger veranderingen in prijzen en rabatten aan te kunnen brengen. Dergelijke veranderingen in het voorgeponste bestand doorvoeren kostte veel te veel tijd en was bovendien erg foutgevoelig. Het bestaande systeem was erg statisch terwijl flexibiliteit voor kortingen of op factuurniveau gewenst waren. Daarnaast kwamen orders de hele dag binnen en hoe eerder een afleverdocument bij het juiste magazijn terecht kwam, hoe beter.
In het RAMAC-geheugen van 6 miljoen tekens konden per artikel de prijs, de voorraad en wat extra gegevens worden bijgehouden. De IBM 650 zonder extra RAMAC geheugen was niet geschikt en pas bij de mogelijkheid een extern geheugen aan te sluiten werd begonnen met het onderzoek of een geïntegreerde order- en factuurbehandeling mogelijk was. Deze IBM 650/RAMAC kon het werk van een vijftigtal werknemers overnemen.
In 1958 werd een werkgroep van zeven man opgericht waaraan IBM een deskundige toevoegde. IBM had een opleidingscursus voor de 650/RAMAC. Allereerst werden de werkzaamheden geanalyseerd en beschreven waarna er blokschema’s van werden opgesteld. Deze schema’s werden daarna door dezelfde programmeurs uitgewerkt, getest en samengevoegd tot een programma. Dit programma werd op ponskaart gezet en in Duitsland getest bij de meest dichtbijzijnde installatie.42
4.2.2 Netto-loonberekening
Eind 1958 werd besloten om te beginnen met een onderzoek naar de automatisering van de netto-loonberekening om ervaring en kennis op te doen van automatisering. Daarnaast was het ook een belangrijke stap op weg naar verdere integratie van het verloningsproces. Op 7 januari 1959 werd een werkgroep ingesteld om dit onderzoek uit te voeren. Het doel was om op 1 juli 1959 klaar te zijn met de automatisering van de loonberekening zodat in het nieuwe kwartaal met de geautomatiseerde loonberekening begonnen kon worden.
Om de nieuwe nettoloonslips te kunnen drukken en op tijd klaar te zijn, moest de nieuwe ponskaartindeling op 1 april 1959 bekend zijn. Verder werden de verschillende werkzaamheden die bij de netto-loonberekening kwamen kijken, uitgewerkt in acht hoofd-blokschema’s.
Bij het verlonen van ongeveer 36000 werknemers werden twee groepen ponskaarten gebruikt, de variabele kaarten en de vaste kaarten. Per loonweek moesten ongeveer 160000 ponskaarten worden ingevoerd om daarna te worden verwerkt. Om deze grote hoeveelheid ponskaarten beter aan te kunnen, werden de ponskaarten in een zeventigtal eenheden verdeeld van ongeveer 2000 tot 2500 ponskaarten per eenheid.
Op 25 maart 1959 werd begonnen met het maken van een blokschema door de systeemprogrammeur die alle handelingen in de juiste volgorde zette. Dit blokschema werd uitgewerkt tot een programma geschreven in SOAP-II-code. Bij het inlezen en vertalen van SOAP-II code werd het programma door de computer automatisch op de meest gunstige geheugenplaatsten geplaatst. Het eerste programma kwam op 16 juni gereed om getest te worden. Het besloeg 1000 adressen en kon in 25 uur de hele loonberekening voor een week afhandelen.
Hierna werd begonnen met het optimaliseren van het programma en op 9 juli 1959 was dit snelle programma gereed; het was zeven en een half uur sneller dan het oude. In 1960 werd het programma nogmaals geoptimaliseerd omdat het aantal werknemers was gestegen. Bij deze optimalisatiepoging werd nog eens een besparing van vier uur bereikt.43
4.3 Administratief rekenwerk
Automatisering bestond niet uit enkel informatieverwerkende systemen. Er waren ook administratieve problemen van meer wiskundige aard, zoals wachttijd- en andere planningsproblemen. In deze paragraaf worden twee van deze problemen besproken die het beste gekarakteriseerd kunnen worden als administratieve rekenwerk. Bij deze problemen was overigens grote overeenkomst met een aantal technische problemen. Dit waren optimalisatieproblemen, net als verkeersproblemen bij de PTT of materiaalgebruik bij industrieën.
4.3.1 Simulatie van wachttijdproblemen
De afdeling Technische Efficiency en Organisatie hield zich onder andere bezig met wachttijden en voorraadbeheer op de grens van wetenschap en administratie. Een theoretische benadering van een wachttijd of voorraadprobleem hield in dat de werkelijkheid in een aantal formules werd gevat. Soms waren er problemen die niet theoretisch oplosbaar waren. Experimenten met echte systemen waren natuurlijk niet mogelijk en daarom werd een nagebootst experiment uitgevoerd. Bij een nagebootst experiment werd de situatie op een computer nagedaan, oftewel gesimuleerd.
Bij een simulatie werd de werkelijkheid vereenvoudigd tot enkel die elementen die ter zake deden, dat wil zeggen dat wat theoretisch afgehandeld kon worden, werd theoretisch afgehandeld en hoefde dus niet in de simulatie voor te komen.
Wat houdt nu die simulatie in? Het is een iets meer wetenschappelijke uitwerking van wat iedere bedrijfsleider zich zal proberen “eens in te denken”.44
Om de werkelijkheid te benaderen werd gebruik gemaakt van willekeurige getallen die de computer kon berekenen. Voordeel van zo’n computerprogramma was dat het hergebruikt kon worden, vaak door andere parameters mee te geven.
Er werd een simulatie van het gereedschappenprobleem in een fabriek gemaakt en gedraaid op de IBM 650. In 2 minuten tijd werd een heel jaar gesimuleerd. Het probleem ging over de beschikbaarheid van machines om gereedschappen te maken. In de simulatie speelden de volgende parameters een rol: de beschikbare gereedschappen, de vraag naar gereedschappen, de voorraad van gereedschappen, de prijs, enzovoorts. Hiermee kon bepaald worden wat de optimale hoeveelheid gereedschappen was en wat er bespaard kon worden door bepaalde variabelen in de simulatie aan te passen en deze in de echte wereld door te voeren.45
4.3.2 Snijverliezen bij de fabricage van golfkarton
De golfkartonfabriek van Philips produceerde op twee verschillende machines banen golfkarton van verschillende breedte. Deze banen konden in de breedte en lengte worden gesneden. Het probleem was nu om de optimale verdeling te vinden van orders op de banen golfkarton waarbij de snijverliezen geminimaliseerd werden. Dit probleem behoorde tot de categorie van lineaire programming problemen. De oplossing werd op de PASCAL geprogrammeerd en uitgevoerd.46
4.4 Wetenschappelijk rekenwerk
Naast automatisering bood het Rekencentrum ook onderdak aan toepassingen van wetenschappelijke aard. Deze toepassingen, beter gezegd opdrachten, kwamen voornamelijk van het NatLab, maar ook andere afdelingen van het Philipsconcern lieten technische-wetenschappelijke berekeningen uitvoeren door het Rekencentrum. Naast de twee IBM 650 machines en de PASCAL was er ook een analoge PACE machine die ingezet kon worden voor berekeningen.
4.4.1 Het berekenen van potentiaalvelden en elektronenbanen met behulp van een elektronische rekenmachine
Op de IBM 650 werden berekeningen uitgevoerd om de ruimte tussen elektrodes als functie van de tijd te bepalen, gegeven de configuratie en potentialen van de elektrodes. Hierbij werden het potentiaalveld tussen de elektrodes en de bewegingen van de elektronen in dit veld bepaald. Na ingebruikname van de PASCAL werd het programma herschreven om ook op deze computer uitgevoerd te kunnen worden.
Er waren verschillende manieren om deze berekeningen uit te voeren. De zuiver wiskundige benadering was meestal ondoenlijk. Daarnaast waren er een aantal analoge rekenmethoden, zoals het rubbervel, het geleidend papier, de elektrolytische trog en het weerstandsnetwerk. Tenslotte was er de numerieke methode die bij de komst van elektronische rekenmachines ook praktisch uitvoerbaar waren geworden.
De numerieke methode was een iteratieve methode. Voor het berekenen van de ruimtelading in de vergelijking van Poisson moesten de banen van de elektronen bekend zijn, maar daarvoor moest eerst de vergelijking van Poisson opgeslost zijn. Door nu iteratief deze twee afhankelijke vergelijkingen te bepalen, gegeven de vorige benadering van de andere vergelijking, kon de uiteindelijke waarde zeer nauwkeurig benaderd worden.47
4.4.2 Berekening van luidsprekermagneten van ferroxdure
Magneetsystemen van luidsprekers hadden een ringmagneet van ferroxdure die om een weekijzeren kern zat en tussen twee weekijzeren eindplaten. Met behulp van een IBM 650 werd berekend, gegeven afmetingen van het systeem, wat de inductie in de luchtspleet en de inductie in het ferroxdure was. Verder was het mogelijk vast te stellen hoe de magneet gepositioneerd moest worden om de juiste inductie te verkrijgen met een zo klein mogelijke magneet.48
4.4.3 Onderzoek van een magneetveld van een isochroon cylclotron
Het NatLab ontwikkelde een isochrone cyclotron, dat was een cyclotron met een constante omlooptijd, waarbij de PASCAL werd gebruikt. Nadat de vergelijkingen van de beweging van deeltjes in een magnetisch veld uitgewerkt waren, werden met behulp van metingen de banen van deeltjes numeriek benaderd op de PASCAL. Hierna werd de PASCAl weer ingezet om vervolgberekeningen uit te voeren aan veldverloop, hoekfrequenties en oscillatiefrequenties. Meetresultaten op ponsband werden door de computer verwerkt door een drietal programma’s. De resultaten daarvan werden weer door andere programma’s bewerkt, waaronder het plotten van een fasevlakdiagram.49
4.5 Overige toepassingen
Naast administratief en wetenschappelijk rekenwerk was er nog een aantal toepassingen die niet tot beide groepen gerekend konden worden. Alhoewel een deel van deze overige toepassingen weer wel tot wetenschap gerekend kon worden, de wetenschap informatica. Hiertoe behoorden de ontwikkeling van compilers en ander systeemsoftware voor PASCAL en STEVIN. In maart 1960 waren hiermee zeven mensen full-time bezig. Daarnaast deed A.J.W. Duijvestijn onderzoek naar logisch-wiskundige problemen. Hij promoveerde op Electronic computation of squared rectangles50, oftewel het oplossen van puzzels met behulp van een computer.
Daarnaast werden de computers ook wel eens gebruikt om plezier te maken, bijvoorbeeld door ze muziek te laten maken.
4.5.1 Het oplossen van een legpuzzel met de PASCAL
Om de mogelijkheden van de computer beter te begrijpen werden ook niet rekenkundige problemen uitgeprobeerd. Het SSAA in Amsterdam was bijvoorbeeld bezig met een schaakprogramma onder leiding van M. Euwe voor Euratom. Bij Philips werd een oplossingsprocedure bedacht voor de PASCAL voor een Perzische puzzel. De puzzel bestond uit twaalf snedes uit een schaakbord en de vraag was of die samen weer een schaakbord konden vormen en, zo ja, hoeveel oplossingen er dan waren.
Dit probleem werd opgelost door eenvoudigweg te proberen en dat betekende dat het aantal mogelijkheden dat uitgeprobeerd moest worden erg groot was. Een systematische aanpak was dus nodig om alle oplossingen tegen te komen. Zonder computer was zo’n opgave zo goed als onmogelijk.
De oplossing bestond daaruit dat een leeg schaakbord werd bedekt met alle mogelijke pasvormen van de twaalf stukken en hierbij werd bijgehouden welke vakjes door welke stukken bedekt waren en dat van alle al uitgeprobeerde zetten. De PASCAL kwam na acht minuten tot de conclusie dat er elf oplossingen waren en printte die vervolgens uit.51
4.5.2 Rekengeluiden van de PASCAL
Rekenwerk op een elektronische rekenmachine bestond voornamelijk uit het doorlopen van cyclussen. Door een luidspreker aan te sluiten aan een register van de machine konden dergelijke cyclussen beluisterd worden. Vaak genereerde zo’n cyclus een herkenbaar geluid of zelfs een toon.
Elk programma had zijn eigen kenmerkende geluid. Een programmeur kon dan ook horen of zijn programma zich wel normaal gedroeg. Bij de PASCAL werd de luidspreker bijvoorbeeld aan het minst significante bit van het S-register aangesloten. De geluiden die door enkele berekeningen werden gemaakt, waren op plaat gezet en bij het Philips Technisch Tijdschrift gevoegd.
Het was hierdoor ook mogelijk om muziek te maken met de PASCAL. Door een programma zo te schrijven dat bepaalde tonen achter elkaar gespeeld werden, onstond een melodie. Zo werd er een programma geschreven dat een menuet van Mozart ten gehore bracht. Het was ook mogelijk om programmacode in te lezen en de getallen die ermee gerepresenteerd werden te gebruiken om een toon te genereren. Zo was het mogelijk om min of meer “stochastische” muziekstukken te verkrijgen.52
5 Philips Computer Industrie (PCI)
Voornamelijk gebaseerd op I.J. Blanken, Een industriële wereldfederatie, deel 5 (Zaltbommel: Europese Bibliotheek 2002).
5.1 Philips’ verhouding tot de computerindustrie
Het NatLab beleid was er op gericht om de wisselwerking tussen componenten en apparaten te gebruiken als leidraad voor het onderzoek. Niet alleen werd onderzoek naar componenten als zodanig gedaan, ook werd onderzoek naar complexe systemen waarin dergelijke componenten werden verwerkt, gedaan om de ontwikkeling van die componenten te ondersteunen en te verbeteren.53
5.1.0.1 Halfgeleiders
Eind 1947 werd de transistor uitgevonden en de mogelijkheden van deze halfgeleider waren meteen duidelijk. Het NatLab ontwikkelde al in de jaren veertig halfgeleiders en in 1950 werd het productieproces voor de productie van germanium diodes overgedragen aan de Elektronenbuizen industriegroep. In 1951 werd een aparte industriegroep voor de ontwikkeling en productie van halfgeleiders opgericht door de directie van Philips. De ontwikkeling en prodcutie van halfgeleiders door NatLab en de nieuwe industriegroep bleef groeien in de jaren ’50.54
Wat betreft transistors ging de ontwikkeling niet zo voorspoedig. Pas in 1952 werd voldoende kennis opgedaan om zelf transistors te ontwikkelen. In dat jaar gaf Bell Laboratories, waar de transistor was uitgevonden, het Transistor Technology Symposium, waar de geheimen van de transistor werden ontsloten55.
Eind 1952 was het NatLab in staat de eerste transistors te maken. Hierna werden allerhande ontwikkelingen gestart. Allereerst moest de kennis voor het vervaardigen van transistors naar de ontwikkelingslaboratoria van de industriegroepen. Verder moesten toepassingen van transistors worden onderzocht. Omdat er nog zo goed als geen ervaring was met de toepassing in consumentenproducten moest die kennis opgebouwd.
In 1953 werd besloten om in Nijmegen een halfgeleiderfabriek neer te zetten waar ook een ontwikkelingslaboratorium kwam. In 1954 werd de fabriek opgeleverd en werd de al in een oud bankgebouw begonnen productie overgezet naar de nieuwe fabriek. Dit was de grootste en modernste fabriek waar transistoren in Europa werden geproduceerd.
Niettemin rezen er problemen omdat de fabriek veel te klein was om aan de vraag te voldoen. Er zou enorm uitgebreid moeten worden. Daarnaast was Philips in midden 1957 nog niet in staat om hoogfrequente transistors te produceren terwijl de Amerikaanse concurrenten dat wel konden.
Nu was het NatLab bezig met een eigen methode om dergelijke hoogfrequente transistors te bouwen, maar of dit zou gaan werken was onzeker. Een andere mogelijkheid was om een methode te kopen van de Amerikanen, bijvoorbeeld die van Philco. Eind 1957 bleek de methode die het NatLab ontwikkelde, de pushed-out-base-techniek, goede resultaten te boeken en werd begonnen aan de ontwikkeling van productie met deze techniek. Deze techniek was uitermate geschikt voor een efficiente massaproductie van hoogfrequente transistors waardoor Philips zelfs een voorsprong op de concurrenten verkreeg.56
5.1.0.2 IBM
Philips ontplooide als enige grote elektrotechnische industrie geen eigen initiatieven op het gebied van computersystemen. In 1951 antwoorde Schouten op de vraag van Frits Philips of Philips in computers moest gaan dat het van levensbelang was. Rinia, een van de directeuren van het NatLab op het gebied van apparaten en systemen plaatste daar kritische kanttekeningen bij.57
Niettemin werd er toch een onderzoeksgroep voor opgericht die zich met rekenapparatuur ging bezighouden. Vooral met het oog op de vervaardiging van nieuwe componenten werd besloten dat het NatLab zelf een computer zou gaan bouwen. In 1956 werd de PETER in bedrijf genomen.
Rinia schreef in januari 1954 een notitie aan Otten nadat Engelfriet van de Nillmij op bezoek was geweest en het idee opperde om samen met Bull en het MC te helpen met de mechanisering van de Nillmij. Rinia was van mening dat Philips niet geïnteresseerd was in reken- of kantoormachines. Natuurlijk wilde Philips maar al te graag componenten leveren om dergelijke machines te bouwen.
Ook een aanbod van de PTT om de bij het Dr. Neherlaboratorium ontworpen ZEBRA te gaan ontwikkelen en produceren werd afgewezen. Philips was overigens wel bereid om een uitgewerkte machine te monteren bij Philips Telecommunicatie Industrie.58 Overigens had PTI wel grote interesse in het ontwikkelen van de ZEBRA en andere computerapparatuur, maar het hoofdbestuur van Philips voerde een andere koers.
Deze desinteresse in het maken van computers werd mede veroorzaakt doordat Philips met IBM een speciale relatie had. De basis van deze relatie was dat Philips zich nadrukkelijk niet met computerbouw zou bezighouden. Hierdoor zouden computerfabrikanten, waaronder IBM, componenten bij Philips kunnen bestellen zonder bang te zijn voor Philips als concurrent. OVerigens wilde Philips wel computerapparatuur ontwikkelen voor speciale toepassingen.
Op 1 mei 1956 werd de officiële samenwerking met IBM gesloten; technische kennis werd uitgewisseld tijdens allerhande bezoeken die over en weer plaatsvonden. De kern van de samenwerking was dat Philips zich op het maken van componenten zou toeleggen die IBM af zou nemen en dat ze samen zouden werken aan elektronische informatiesystemen. Van dat laatste kwam echter weinig terecht. Philips zou geen eigen computerindustrie beginnen en IBM zou geen eigen componentenindustrie oprichten.
Tot in het voorjaar van 1960 veranderde er weinig in de relatie tussen IBM en Philips: IBM kocht componenten en Philips huurde machines van IBM. Langzaamaan werd echter wel duidelijk dat de samenwerking op informatiesystemen niet van de grond kwam. Toen IBM het beleid wat betreft het niet zelf produceren van componenten wijzigde begon Philips te denken aan een eigen computerindustrie, bijvoorbeeld door een samenwerking met Electrologica.
IBM had daar niets op tegen. Te meer daar ze zelf hadden geprobeerd Electrologica over te nemen. Het was voor IBM beter dat Philips de beschikking kreeg over de kennis en ervaring van Electrologica dan een van hun grote concurrenten Bull of ITT.59
5.2 Een eigen industrie en de verhouding tot Electrologica
Tot 1960 was Philips niet van plan zelf in de computerindustrie te gaan. Philips had de keuze gemaakt voor analoge apparaten en wilde hoofdleverancier van componenten en onderdelen blijven. Na de breuk met IBM werd echter een nieuw beleid ingezet. Op 30 juni 1960 stelde het bestuur de commissie Numerieke Informatie in die eind dat jaar concludeerde dat Philips zich op de productie van computers voor administratief en wetenschappelijk gebruik moest gaan toeleggen.60
Deze stap in de computerindustrie was belangrijk om de onderdelen PIT en PTI te kunnen ondersteunen in de groeiende markt voor elektronische dataverwerking. Daarnaast was het ook noodzakelijk om nieuwe componenten te ontwikkelen voor de markt. Binnen Philips werd de nieuw op te richten Hoofd Industrie Groep (HIG) primair gezien als een leverancier van computers voor de HIGs die professionele systemen bouwden. Omdat deze eigen interne markt te klein was werd besloten ook administratieve systemen te gaan produceren, alhoewel duidelijk was dat dat niet rendabel was.
Verder adviseerde de commissie dat samenwerking met bestaande computerfabrikanten de beste oplossing was. Het liefste wilde men het Nederlandse Electrologica samenwerken. Ook van de kant van de Nillmij werd gezocht naar een partner, Engelfriet zocht toenadering tot Philips. Electrologica had financiële problemen en de Nillmij wilde Electrologica niet blijven financieren omdat het produceren van computers niet de taak van een verzekeringsmaatschappij was. Verder had Electrologica problemen met de ontwikkeling van een opvolger voor de succesvolle X1. Toch bleek eind 1961 dat er geen goede basis voor samenwerking was; Electrologica wilde haar onafhankelijkheid behouden.
Philips kwam ondertussen met Control Data Corporation (CDC) in contact, een eigenzinnige Amerikaanse computerproducent. De voorgeschiedenis van CDC met hun eerdere moederonderneming Sperry-Rand bemoeilijkte verregaande samenwerking. Philips wilde per sé een minderheidsaandeel in het Amerikaanse bedrijf CDC en was bereid om van alle andere eisen af te zien. Toch haakte CDC ad, ze waren bevreesd voor hun zelfstandigheid.
Ondertussen was besloten dat Philips daadwerkelijk in de computerindustrie zou stappen. De technisch directeur van de HIG Telecommunicatie, Jorna, kreeg in de zomer van 1962 de opdracht om Philips Computerindustrie op te bouwen. Jorna dacht daar vijf jaar voor nodig te hebben. Naast het opbouwen van de organisatie zou in die vijf jaar ook een familie van middelgrote machines ontwikkeld moeten worden. In zijn visie was Philips’ computerindustrie primair bedoeld ter ondersteuning van de HIGs PIT, PTI en HSA. Hij deelde daarmee de visie van de raad van bestuur.
In Europa werden begin jaren ’60 allerhande samenwerkingsinitiatieven opgezet om tegenwicht tegen IBM te kunnen bieden. In 1963 werd Philips gevraagd om samen met Siemens, Olivetti, Bull en ICT samen te werken. Philips voelde zich echter niet sterk genoeg op het gebied van computers en wees het voorstel af.
In 1964 werd Electrologica verzelfstandigd en dit trok de aandacht van Philips. Electrologica, zo was de redenering, zou snel een nieuwe financier nodig hebben en Philips wilde die rol graag op zich nemen om toegang tot Electrologica’s kennis te krijgen. Pas in januari 1965 werden nieuwe onderhandelingsgesprekken gevoerd tussen Philips en Electrologica. Omdat Philips ook met met Elliot Automation in onderhandeling was, verliep de onderhandeling tussen Electrologica en Philips stroef.
Zodra Philips besloot dat het niet met Elliot wilde samenwerken eiste het van Electrologica om te kiezen voor of tegen overname door Philips. Op 19 maart 1965 werd besloten tot samenwerking. Toen een jaar later bleek dat Electrologica er financieel zo slecht voor stond, was Philips genoodzaakt om het gehele bedrijf over te nemen. Electrologica zou in Philips Computer Industrie geïntegreerd worden.
In 1966 werd ook een nieuw tienjarenplan voor PCI gepresenteerd dat sterk afweek van het plan dat Jorna eerder presenteerde. De omvang van het plan was enorm, het was zelfs maar de vraag of Philips de investeringskosten zou kunnen dragen. Het hoofdbestuur schaarde zich echter achter dit plan omdat het “betreden van het ‘digitale pad’”61 noodzakelijk zou zijn om de plaats die Philips had in deze bedrijfstak te kunnen behouden, niet in de laatste plaats als leverancier van componenten.
Op 12 juni 1968 werd in Apeldoorn Philips Computer Industrie officieel geopend onder de naam Philips-Electrologica. Dit bedrijf had drie typen computers in haar assortiment die overeen kwamen met computers uit de IBM 360 serie. Ondanks de positieve geluiden die bij de opening klonken was de situatie van PCI allerminst zeker. In 1970 bleek dat er van de P1000 serie computers veel minder werden verkocht dan beraamd. Het totale verlies van PCI liep daarmee op tot 215 miljoen gulden. Het was duidelijk dat Philips een zelfstandige computerindustrie niet zou kunnen dragen in in 1970 werden samenwerkingsgesprekken gevoerd op initiatief van de Europese Commissie met alle grote Europese computerproducenten.62
Literatuur
H. T. de Beer en A. van den Boogaard, ‘Interview met H. Heijn gehouden op 1 februari 2008’, 2008.↩︎
De informatie over de PETER in deze paragraaf is, tenzij anders aangegeven, gebaseerd op: H. J. Heijn, ‘Philips’ Experimentele Tweetallige Electronische Rekenmachine’, in Nederlands rekenmachine genootschap 1959 – 1969. Colloquium Moderne Rekenmachine II (Amsterdam: NRG en MC, 1969), 82–89.↩︎
Eda Kranakis, ‘Early Computers in The Netherlands’, CWI Quarterly 1, nr. 4 (december 1988): 77; I. J. Blanken, Een industriële wereldfederatie, vol. 5, Geschiedenis van koninklijke Philips Electronics N.V. (Zaltbommel: Europese Bibliotheek, 2002), 133; Beer en Boogaard, ‘Interview met H. Heijn’.↩︎
Beer en Boogaard, ‘Interview met H. Heijn’.↩︎
Ibid.↩︎
NC de Troye, From ARRA to Apple (Eindhoven: Philips International Institute, 1987), 8, http://library.tue.nl/csp/dare/LinkToRepository.csp?recordnumber=476005.↩︎
Ibid., 9.↩︎
Ibid., 8; P. J. van Donselaar, De ontwikkeling van elektronische rekenmachines in Nederland (Een historisch overzicht van Nederlandse computers) (Amsterdam: Stichting Het Nederlands Studiecentrum voor Administratieve Automatisering en Bestuurlijke Informatieverwerking, juli 1967), 16.↩︎
H. J. Heijn, ‘Ontwerp van een invoerprogramma voor een electronische rekenmachine’, in Nederlands rekenmachine genootschap 1959 – 1969. Colloquium Moderne Rekenmachine II (Amsterdam: NRG en MC, 1969), 11.↩︎
Ibid.↩︎
Troye, From ARRA to Apple, 9.↩︎
Ibid.↩︎
H. J. Heijn en J. C. Selman, ‘The Philps Computer PASCAL’, IRE Transactions on Electronic Computers, 1961, 175.↩︎
Kranakis, ‘Early Computers in The Netherlands’, 78.↩︎
Heijn en Selman, ‘The Philps Computer PASCAL’, 175.↩︎
Troye, From ARRA to Apple, 9.↩︎
P. de Jager, ‘Het rekencentrum’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 3.0–1.↩︎
Donselaar, Elektronische rekenmachines in Nederland, 17.↩︎
‘The Philps Computer PASCAL’.↩︎
G. Nielen, ‘PASCAL en STEVIN’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 12.4.↩︎
Ibid.↩︎
Ibid., 12.0.↩︎
W. Nijenhuis, ‘De “PASCAL”, een zeer snelle digitale elektronische rekenmachine voor Philips’ rekencentrum’, Philips Technisch Tijdschrift 23:1 (1961), 1–32, aldaar 16↩︎
Nielen, ‘PASCAL en STEVIN’, 12.8–9.↩︎
H. J. Heijn, ‘Jaarverslag over 1963 van de groep “Digitale Technieken”’, 1964, 7.↩︎
Troye, From ARRA to Apple, 12.↩︎
H. A. A. de Kruyff, ‘De betekenis van automatische informatieverwerking voor de onderneming’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 1.0–3.↩︎
A. Meeuwis, ‘Aanpak van automatie in de administratie’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 2.0–12.↩︎
Kruyff, ‘De betekenis van automatische informatieverwerking voor de onderneming’.↩︎
Ibid.↩︎
Meeuwis, ‘Aanpak van automatie in de administratie’.↩︎
Kruyff, ‘De betekenis van automatische informatieverwerking voor de onderneming’.↩︎
Meeuwis, ‘Aanpak van automatie in de administratie’, 2.8.↩︎
Meeuwis, ‘Aanpak van automatie in de administratie’.↩︎
P. C. Breek, ‘De administratieve functie in het Philips concern’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 0.3.↩︎
Jager, ‘Het rekencentrum’, 3.1.↩︎
Ibid.↩︎
Ibid., 3.6.↩︎
K. L. Koffeman, ‘Het programmeren’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 13.0.↩︎
Koffeman, ‘Het programmeren’.↩︎
J. C. Vastrick, ‘Opleiding en training voor ponskaaren- en automatie-apparatuur’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 15.0–3.↩︎
D. Sla, ‘Toepassing van een IBM 650/RAMAC bij Philips Nederland’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 8.0–5.↩︎
W. Veenendaal, ‘De netto-loonberekening’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 11.0–13.↩︎
W. Monhemius en A. R. W. Muyen, ‘Simulatie op computers om wachttijd- en voorraadproblemen op te lossen’, in Omschakeling naar automatie (Eindhoven: N.V. Philips Gloeilampenfabrieken, 1960), 9.1.↩︎
W. Monhemius en A.R.W. Muyen, ‘Simulatie op computers om wachttijd- en voorraad- problemen op te lossen’, in: Omschakeling naar automatie (Eindhoven: N.V. Philips Gloei- lampenfabrieken 1960), 9.0–9.6↩︎
H. W. van den Meerendonk en J. H. Schouten, ‘De snijverliezen bij fabricage van golfkarton’, Philips Technisch Tijdschrift, nr. 4/5 (1962): 121–29.↩︎
C. Weber, ‘Het berekenen van potentiaalvelden en elektronenbanen met behulp van een elektronische rekenmachine’, Philips Technisch Tijdschrift, nr. 4/5 (1962): 130–43.↩︎
M. F. Reynst en W.Th. Langendam, ‘Berekening van luidsprekermagneten van ferroxdure’, Philips Technisch Tijdschrift, nr. 4/5 (1962): 144–50.↩︎
N. F. Verster en H. L. Hagedoorn, ‘Onderzoek van het magneetveld van een isochroon cyclotron’, Philips Technisch Tijdschrift, nr. 4/5 (1962): 106–20.↩︎
A. J. W. Duijvestijn, ‘Electronic computation of squared rectangles’, Philips Research Reports, 1961, 523–613.↩︎
A. J. Dekkers en A. J. W. Duijvestijn, ‘Het oplossen van een legpuzzel met de PASCAL’, Philips Technisch Tijdschrift, nr. 4/5 (1962): 151–57.↩︎
W. Nijenhuis, ‘Rekengeluiden van de PASCAL’, Philips Technisch Tijdschrift, nr. 4/5 (1962): 157–64.↩︎
Blanken, Een industriële wereldfederatie, 5:133.↩︎
Deze paragraaf is, tenzij anders aangegeven, gebaseerd op ibid., 5:136–45.↩︎
De kennis voor productie in licentie genomen? http://www.pbs.org/transistor/background1/events/symposia.html↩︎
Blanken, Een industriële wereldfederatie, 5:136–45.↩︎
Deze paragraaf is, tenzij anders aangegeven, gebaseerd op ibid., 5:153–65.↩︎
Verslag van de vergadering van de laboratoriumbestuursraad van 25 mei 1955. ‘Nationaal Archief, Den Haag, Ministerie Verkeer en Waterstaat (NL-HANA), Staatsbedrijf der PTT 1955–1988, inventarisnummer 9994’, z.d.↩︎
Blanken, Een industriële wereldfederatie, 5:153–65.↩︎
Deze paragraaf is, tenzij anders aangegeven, gebaseerd op ibid., 5:345–89.↩︎
Ibid., 5:367.↩︎
Ibid., 5:345–89.↩︎