dezelfde stroom bij elke stap die ik zet." Alain
Eindverslag - CADCollege
Eindverslag - CADCollege
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
"Als <strong>ik</strong> van de ene berg<strong>stroom</strong> naar de andere ga, zie <strong>ik</strong> steeds<br />
<strong>dezelfde</strong> <strong>stroom</strong>. Maar als <strong>ik</strong> van rots naar rots klim, verandert<br />
<strong>dezelfde</strong> <strong>stroom</strong> <strong>bij</strong> <strong>elke</strong> <strong>stap</strong> <strong>die</strong> <strong>ik</strong> <strong>zet</strong>."<br />
<strong>Alain</strong>
Voorwoord<br />
Na de middelbare school ben <strong>ik</strong> Architectonische Vormgeving gaan studeren aan de Academie voor<br />
Beeldende Kunsten te ’s Gravenhage. Hier ben <strong>ik</strong> in aanraking gekomen met het programma AutoCAD<br />
(14). Na drie jaar Architectonische Vormgeving ben <strong>ik</strong> overge<strong>stap</strong>t naar de richting Grafische en<br />
Typografische Vormgeving. Deze stu<strong>die</strong> heb <strong>ik</strong> een jaar gevolgd waarna <strong>ik</strong> ben gestopt met studeren<br />
en ben gaan werken. Ongeveer een jaar geleden heb <strong>ik</strong> besloten om mijn stu<strong>die</strong>, hetzij op een andere<br />
manier, weer op te pakken en ben begonnen aan deze HBO opleiding. Mijn situatie is dus momenteel<br />
dat <strong>ik</strong> geen relevante werkervaring heb <strong>die</strong> zou kunnen <strong>die</strong>nen om hieruit een afstudeeropdracht af te<br />
leiden.<br />
Gelukkig waren er medestudenten en een docent <strong>die</strong> hebben geholpen met het aandragen van ideeën<br />
voor een passende en haalbare opdracht. Mede dankzij deze mensen, <strong>die</strong> mijn programmaontwerp<br />
regelmatig van commentaar voorzagen, is dit geheel (het programma en dit verslag) tot stand<br />
gekomen.<br />
Mijn dank gaat uit naar Ronald Boeklagen en Leonie Bergsma van het TEC CAD College voor hun<br />
ondersteuning en begeleiding. Naar Michael Slavenburg en Eric Boers (medestudenten) voor hun<br />
enthousiasme en commentaar. En naar Paul Arts (tevens van het TEC CAD College) voor het geven<br />
van de laatste tips.<br />
IV 4
Inhoudsopgave<br />
Pagina<br />
Voorwoord<br />
IV<br />
Samenvatting 6<br />
Inleiding 7<br />
Hoofdstuk 1 Het Stroomschema 8<br />
1.1 Inleiding 8<br />
1.2 Definitie van een <strong>stroom</strong>schema 8<br />
1.3 Het gebru<strong>ik</strong> van een <strong>stroom</strong>schema 8<br />
1.4 Het verschil tussen een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram 8<br />
1.5 Basissymbolen van een <strong>stroom</strong>schema en <strong>stroom</strong>diagram 10<br />
1.5.1 Basissymbolen van een <strong>stroom</strong>schema 10<br />
1.5.2 Basissymbolen van een <strong>stroom</strong>diagram 11<br />
1.6 Keuze tussen het <strong>stroom</strong>schema en het <strong>stroom</strong>diagram 12<br />
1.6.1 Voordelen en nadelen van een <strong>stroom</strong>schema 12<br />
1.6.2 Voordelen en nadelen van een <strong>stroom</strong>diagram 12<br />
1.7 De opbouw en het structuren van een <strong>stroom</strong>schema 13<br />
1.8 De opbouw van een <strong>stroom</strong>schema met een procedure 14<br />
1.9 Het geautomatiseerd tekenen van een <strong>stroom</strong>schema 14<br />
1.10 Vergelijking van verschillende programma’s 15<br />
1.11 Besluit 18<br />
Hoofdstuk 2 Het Programma 19<br />
2.1 Inleiding 19<br />
2.2 Het <strong>stroom</strong>schema als probleem 19<br />
2.3 Symbolen, pijlen en tekst 21<br />
2.3.1 Beginfase en eindfase 21<br />
2.4 De Lay-out 22<br />
2.4.1 Het beginontwerp 22<br />
2.4.2 Het tussenontwerp 23<br />
2.4.3 Het eindontwerp 24<br />
2.5 Het resultaat 24<br />
Hoofdstuk 3 De werking van het programma 25<br />
3.1 Inleiding 25<br />
3.2 Werken met het programma 25<br />
3.3 Het <strong>stroom</strong>schema 29<br />
3.4 Delen van de code 30<br />
3.4.1 Algemene instellingen 30<br />
3.4.2 Symbolen 30<br />
3.4.3 Tekst 32<br />
3.4.4 Pijlen 35<br />
Conclusie 38<br />
Bijlagen<br />
A NEN Norm 3283 XXXIX<br />
B Overige symbolen XL<br />
C Help procedure programma XLII<br />
D Gebru<strong>ik</strong>saanwijzing installatie XLIV<br />
E Literatuurlijst XLVI<br />
V5
Samenvatting<br />
Dit verslag is nagenoeg een chronologische vertelling van het ontwerpproces.<br />
Hoofdstuk 1 begint met wat een <strong>stroom</strong>schema is en waarvoor een <strong>stroom</strong>schema wordt gebru<strong>ik</strong>t. Hier<br />
wordt een verschil gemaakt tussen een Programma Stroom Schema en een Programma Stroom<br />
Diagram. Dit zijn twee verschillende manieren om een grafische beschrijving (schema) van een proces<br />
van een programma weer te geven. Deze twee schema’s verschillen van elkaar in de symbolen en de<br />
opbouw, en worden aan de hand van een voorbeeld uitgelegd. Beide manieren van tekenen hebben<br />
voor- en nadelen. Deze voor- en nadelen van het gebru<strong>ik</strong> van deze schema’s wordt weergegeven in<br />
een tabel waarna er een keuze wordt gemaakt om door te gaan met één van deze twee grafische<br />
beschrijvingen.<br />
Vervolgens wordt er uitgelegd hoe een <strong>stroom</strong>schema theoretisch wordt opgebouwd tot een<br />
verwoording van een programma. De praktijk wordt uitgelegd aan de hand van een vergelijking van een<br />
aantal programma’s <strong>die</strong> op de markt zijn waarmee <strong>stroom</strong>schema’s getekend kunnen worden. Vanuit<br />
deze vergelijking wordt het idee aangedragen voor het nog te ontw<strong>ik</strong>kelen programma.<br />
Hoofdstuk 2 begint met het opsplitsen van het probleem “<strong>stroom</strong>schema”, zodat elk deelprobleem apart<br />
benaderd en opgelost kan worden. Deze deelproblemen zijn; de algemene instellingen, de symbolen,<br />
de tekst en de pijlen. Vanuit deze deelproblemen wordt er gezocht naar oplossingen om deze om te<br />
<strong>zet</strong>ten in een programma. Het proces om tot deze oplossingen te komen is in twee duidelijke fases<br />
gebeurd. Alle deelproblemen zijn in beide fases beschreven zodat er een duidelijk overzicht ontstaat<br />
over hoe het programma zich ontw<strong>ik</strong>keld heeft.<br />
Vervolgens wordt het proces beschreven van de lay-out van het programma, w<strong>elke</strong> drie fases heeft<br />
doorgemaakt. Hier worden alle voor- en de nadelen van een lay-out benoemd om zo het goede van<br />
een lay-out te behouden en het minder goede te verbeteren, om tot het uiteindelijke resultaat te komen.<br />
Hoofdstuk 3 begint met het uitleggen aan de hand van een aantal afbeeldingen hoe het programma<br />
werkt en w<strong>elke</strong> instellingen er in het programma zitten.<br />
Vervolgens wordt het <strong>stroom</strong>schema van het geschreven programma getoond en worden er delen van<br />
de code van het programma beschreven. Deze delen van de code zijn eveneens opgesplitst in de<br />
algemene instellingen, symbolen, tekst en pijlen om het overzicht te behouden.<br />
Tot slot wordt er in de conclusie gekeken naar het geheel van het programma. W<strong>elke</strong> punten voldoen<br />
aan de door mij gestelde eisen, en w<strong>elke</strong> punten kunnen in de toekomst verbeterd worden.<br />
6
Inleiding<br />
Doordat <strong>ik</strong> mijn afstudeeropdracht niet vanuit mijn werkzaamheden kon afleiden, heb <strong>ik</strong> gekeken naar<br />
praktische problemen <strong>die</strong> naar voren kwamen tijdens deze opleiding om zo, in plaats van een<br />
werkgever, mijn toekomstige medestudenten tegemoet te komen.<br />
Tijdens deze opleiding behoor je een werkend programma te schrijven en een eindverslag met hierin<br />
opgenomen een <strong>stroom</strong>schema. Mij (en een aantal medestudenten) is al snel duidelijk geworden dat<br />
het lastig is om “even snel” een <strong>stroom</strong>schema te tekenen. Ten eerste zijn er een aantal verschillende<br />
symbolen met elk een andere betekenis en ten tweede zijn er verschillende programma’s waarmee<br />
<strong>stroom</strong>schema’s getekend kunnen worden.<br />
Door het bovengenoemde heb <strong>ik</strong> (niet helemaal alleen) gekozen voor het praktische probleem; het<br />
<strong>stroom</strong>schema. En doordat een <strong>stroom</strong>schema <strong>bij</strong> <strong>elke</strong> vorm van een programma ontwerpen<br />
duidelijkheid schept, is dit een onderwerp waar zowel beginnende (medestudenten) als gevorderde<br />
programmeurs hun voordeel mee kunnen doen.<br />
Met dit gekozen onderwerp ben <strong>ik</strong> mij eerst een aantal vragen gaan stellen w<strong>elke</strong> men kan tegenkomen<br />
in de inleiding van de meeste hoofdstukken. Vervolgens ben <strong>ik</strong> aan de hand van de vragen<br />
verschillende opties gaan uitproberen om tot een gewenst resultaat te komen, namelijk een programma<br />
dat <strong>stroom</strong>schema’s “tekent”.<br />
Met als uitgangspunt dat mijn programma duidelijker, sneller, meer gestandaardiseerd maar vooral<br />
eenvoudig in gebru<strong>ik</strong> moet zijn, is dit ontwerp tot stand gekomen.<br />
7
Hoofdstuk 1 Het Stroomschema<br />
1.1 Inleiding<br />
Om meer inzicht en duidelijkheid te krijgen wat een <strong>stroom</strong>schema is, wordt in dit hoofdstuk eerst<br />
<strong>die</strong>per op het “probleem” <strong>stroom</strong>schema ingegaan. Dit is gebeurd aan de hand van de volgende<br />
vragen; Wat is een <strong>stroom</strong>schema en/of een <strong>stroom</strong>diagram? Waarvoor <strong>die</strong>nt een<br />
<strong>stroom</strong>schema/diagram? Wat doet een <strong>stroom</strong>schema/diagram? En hoe wordt deze opgebouwd? Wat<br />
betekenen de symbolen? W<strong>elke</strong> symbolen worden voor w<strong>elke</strong> acties/bewerkingen gebru<strong>ik</strong>t? Wat is het<br />
verschil tussen een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram? Wanneer wordt een <strong>stroom</strong>schema<br />
gebru<strong>ik</strong>te en wanneer een <strong>stroom</strong>diagram?<br />
Vervolgens worden er verschillende manieren vergeleken om een <strong>stroom</strong>schema te tekenen waaruit<br />
naar voren komt waar de knelpunten zitten, om van hieruit tot een besluit te komen hoe dit beter kan en<br />
hoe verder te gaan met dat gegeven. Hieruit komt de eerste op<strong>zet</strong> voor een ontwerp.<br />
1.2 Definitie van een <strong>stroom</strong>schema<br />
Stroomschema – Stroomdiagram – Blokdiagram – Flowchart<br />
Een <strong>stroom</strong>schema is een hulpmiddel om de structuur en de werking van een computerprogramma<br />
voor te stellen en/of te verduidelijken. Het is een methode om een bepaald proces of beslissing op een<br />
logische beeldende manier in kaart te brengen.<br />
Een <strong>stroom</strong>schema bestaat uit hokjes met een symbolische vorm <strong>die</strong> systematisch, verbonden door<br />
een aantal lijnen of pijlen, de volgorde van handelingen en beslissingen een programma doorlopen en<br />
verduidelijken. Een goed <strong>stroom</strong>schema is onafhankelijk van gebru<strong>ik</strong>te programmeer taal. En om netjes<br />
te programmeren wordt er begonnen met een <strong>stroom</strong>schema.<br />
1.3 Het gebru<strong>ik</strong> van een <strong>stroom</strong>schema<br />
Een <strong>stroom</strong>schema wordt altijd gebru<strong>ik</strong>t voor het beschrijven van een proces. Dit kunnen processen zijn<br />
in de chemie, biologie, farmacie etc. Het proces wat hier beschreven gaat worden, is het<br />
programmeren. Programmeren is door analyseren een probleem oplossen. Het probleem wordt<br />
opgedeeld in zelfstandige deelproblemen. Van elk deelprobleem wordt een omschrijving gemaakt van<br />
de uit te voeren <strong>stap</strong>pen om tot een oplossing te komen. Deze uit te voeren <strong>stap</strong>pen worden in een<br />
grafisch schema omge<strong>zet</strong>; het Programma Stroom Schema (PSS) en/of het Programma Stroom<br />
Diagram (PSD).<br />
1.4 Het verschil tussen een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram<br />
Een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram hebben beiden <strong>dezelfde</strong> functie, een grafische beschrijving<br />
(schema) van het proces van een programma. Maar om het verschil te visualiseren zijn op de volgende<br />
pagina in figuur 1A, een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram naast elkaar geplaatst. De procedure<br />
<strong>die</strong> als voorbeeld is genomen is het tekenen met pen op papier van een stoomschema. Het<br />
<strong>stroom</strong>schema (links) bevat het symbool subroutine met de tekst ‘Plaats symbolisch blok’. Deze<br />
subroutine is uitgewerkt in een <strong>stroom</strong>diagram (rechts).<br />
8
Figuur 1A Het verschil tussen een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram<br />
9
1.5 Basissymbolen van een <strong>stroom</strong>schema en <strong>stroom</strong>diagram<br />
1.5.1 Basissymbolen van een <strong>stroom</strong>schema<br />
In een <strong>stroom</strong>schema worden een aantal verschillende standaard symbolen gebru<strong>ik</strong>t. Hierdoor zijn de<br />
verschillende soorten opdrachten eenvoudig te herkennen. Deze symbolen zijn terug te vinden in de<br />
NEN Norm 3283:1967, zie <strong>bij</strong>lage A. In deze Norm zijn geen bindende aanwijzingen voor de<br />
verhoudingen van de hoogte en de breedte van de symbolen gegeven, de dusdanige verhouding<br />
tussen de hoogte en de breedte <strong>die</strong>nt te worden aangehouden zodat het symbool direct herkenbaar is.<br />
De volgende symbolen worden het meest gebru<strong>ik</strong>t;<br />
Afsluiting, onderbreking (NEN 3283:1967-433), wordt gebru<strong>ik</strong>t als beginpunt, eindpunt, pauze, uitstel of<br />
onderbreking.<br />
Invoer (NEN 3283:1967-313), directe communicatie van mens naar machine. Tijdens de verwerking<br />
wordt er met de hand informatie ingevoerd door middel van het be<strong>die</strong>nen van schakelaars,<br />
toetsenborden of drukknoppen. Het programma zal verder werken met deze ingevoerde informatie en<br />
op deze manier het resultaat beïnvloeden.<br />
Bewerking, proces, handeling (NEN 3283:1967-310/410), een uniek programma of deel van een<br />
programma. Elke bewerking kan afzonderlijk door het besturingssysteem worden afgehandeld. Het zijn<br />
aaneengeschakelde activiteiten om één of meer doelen te bere<strong>ik</strong>en. Een bewerking omschrijft tevens<br />
de wijze waarop de activiteiten verlopen en hoe ze zich ontw<strong>ik</strong>kelen.<br />
Vooraf ingesteld proces (NEN 3283:1967-412), een programmadeel bestaande uit één of meerdere<br />
bewerkingen <strong>die</strong> ergens anders wordt beschreven zoals een functie of een subroutine.<br />
Sturing, beslissing (NEN 3283:1967-411), handeling waarmee wordt bepaald w<strong>elke</strong> van een aantal<br />
alternatieve wegen moet worden gevolgd naar een volgende bewerking.<br />
Alle overige symbolen van een <strong>stroom</strong>schema zijn te vinden op <strong>bij</strong>lage B<br />
10
1.5.2 Basissymbolen van een <strong>stroom</strong>diagram<br />
Een <strong>stroom</strong>diagram bevat een klein aantal standaard symbolen. Een aantal van deze symbolen worden<br />
voor verschillende soorten opdrachten en zijn als dusdanig niet herkenbaar. Deze symbolen liggen niet<br />
vast in een Norm.<br />
Bij een <strong>stroom</strong>diagram worden de volgende symbolen gebru<strong>ik</strong>t;<br />
Bewerking (Proces). Een uniek programma of deel van een programma. Elke bewerking kan<br />
afzonderlijk door het besturingssysteem worden afgehandeld. Het zijn aaneengeschakelde activiteiten<br />
om één of meer doelen te bere<strong>ik</strong>en. Een bewerking omschrijft tevens de wijze waarop de activiteiten<br />
verlopen en hoe ze zich ontw<strong>ik</strong>kelen.<br />
Vooraf ingesteld proces. Een programmadeel bestaande uit één of meerdere bewerkingen <strong>die</strong> ergens<br />
anders wordt beschreven zoals een functie of een subroutine.<br />
B<br />
A<br />
C<br />
D<br />
E<br />
A. Voorwaarde of beslissing. Handeling waarmee wordt bepaald w<strong>elke</strong> van een aantal<br />
alternatieve wegen moet worden gevolgd naar een volgende bewerking.<br />
B. – C. Het “waar” en “niet waar” zijn van de voorwaarde of beslissing.<br />
D. – E. Handeling navolgend op “waar” en “niet waar”.<br />
B C D<br />
E F G<br />
A<br />
A. Voorwaarde of beslissing. Handeling waarmee wordt bepaald w<strong>elke</strong> van een aantal<br />
alternatieve wegen moet worden gevolgd naar een volgende bewerking.<br />
B.-C.-D. Waarden, behandel afhankelijk van de gekozen waarde een variabele<br />
E.-F.-G. Variabelen, handelingen navolgend op de waarden<br />
A<br />
B<br />
B<br />
C<br />
C<br />
A. Zolang de voorwaarde “waar” is wordt deze bewerkingen herhaald<br />
B. – C. Bewerkingen<br />
A<br />
11
1.6 Keuze tussen het <strong>stroom</strong>schema en het <strong>stroom</strong>diagram<br />
Het gebru<strong>ik</strong> van een <strong>stroom</strong>schema of een <strong>stroom</strong>diagram is zelf te bepalen. Het door elkaar gebru<strong>ik</strong>en<br />
van een <strong>stroom</strong>schema en een <strong>stroom</strong>diagram heeft geen bezwaar. Maar om fouten te voorkomen is<br />
het beter om één van de twee te gebru<strong>ik</strong>en. Hierdoor zal <strong>ik</strong> niet beide schema’s uitwerken maar een<br />
keuze maken om verder te gaan met één soort schema. Deze keuze maak <strong>ik</strong> aan de hand van de<br />
voordelen en nadelen van beide schema’s.<br />
1.6.1 Voordelen en nadelen van een <strong>stroom</strong>schema<br />
Voordelen<br />
Nadelen<br />
• Als men een grafische beschrijving van een • Een <strong>stroom</strong>schema neemt meer ruimte in<br />
proces tegenkomt is het meestal omschreven • Handelingen moeten in meer <strong>stap</strong>pen<br />
in een <strong>stroom</strong>schema.<br />
omschreven worden.<br />
• Nagenoeg alle symbolen staan omschreven<br />
in de normen van het Nederlands<br />
Normalisatie-instituut (NEN) (zie <strong>bij</strong>lage A)<br />
• Computerprogramma’s zoals het Office<br />
pakket (Word, Excel, PowerPoint), AutoCAD<br />
(Symbolen A) etc. zijn voorzien van deze<br />
symbolen, ondersteunen deze manier van<br />
een schema tekenen.<br />
• Aan de symbolische vorm is te herkennen<br />
w<strong>elke</strong> handeling zal plaatsvinden of verwacht<br />
wordt.<br />
• Een <strong>stroom</strong>schema is zeer overzichtelijk.<br />
1.6.2 Voordelen en nadelen van een <strong>stroom</strong>diagram<br />
Voordelen<br />
Nadelen<br />
• Deze vorm van schema is veel compacter • Een <strong>stroom</strong>diagram wordt veel minder<br />
waardoor deze minder ruimte in beslag<br />
gebru<strong>ik</strong>t<br />
neemt.<br />
• De symbolen voldoen niet aan een enkele<br />
• Er zijn minder <strong>stap</strong>pen nodig om een<br />
vorm van een norm, dus iedereen deze naar<br />
handeling te omschrijven.<br />
eigen inzicht gebru<strong>ik</strong>en.<br />
• Deze schemasymbolen staan niet standaard<br />
in software programma’s.<br />
• De symbolen zijn universeel en zal niet als<br />
een bepaalde handeling herkend worden.<br />
• Een <strong>stroom</strong>diagram is minder overzichtelijk<br />
Naar aanleiding van de voordelen en nadelen beschreven in deze tabellen heb <strong>ik</strong> gekozen om het<br />
<strong>stroom</strong>schema verder uit te werken.<br />
12
1.7 De opbouw en het structuren van een <strong>stroom</strong>schema<br />
Een <strong>stroom</strong>schema is de schematische weergave van de <strong>stap</strong>pen <strong>die</strong> in programma worden doorlopen.<br />
In de volgende figuren wordt een voorbeeld van een <strong>stroom</strong>schema opgebouwd naar aanleiding van<br />
een simpel programma.<br />
Om de logische werking van het programma te verduidelijken is hier gebru<strong>ik</strong> gemaakt van pijlen. De<br />
pijlen geven de volgorde weer waarin het <strong>stroom</strong>schema moet worden doorlopen.<br />
Figuur 1B hieronder, is de meest eenvoudige vorm van een programma, een beginblok en een eindblok<br />
w<strong>elke</strong> nagenoeg altijd in een programma zitten. Het programma begint en een <strong>stap</strong> verder stopt het.<br />
Figuur 1B De meest eenvoudige vorm van een programma<br />
• Het eerste <strong>stroom</strong>schema hieronder, figuur 1C, is uitgebreid met 2 blokken, bewerkingen of<br />
procedures.<br />
• Het volgende <strong>stroom</strong>schema hieronder, figuur 1D, is uitgebreid met een nieuwe bewerking. Deze<br />
bevat een variabele en is geplaatst tussen de vorige twee bewerkingen.<br />
• Het derde <strong>stroom</strong>schema hieronder, figuur 1E, is uitgebreid met een blok voor de invoer van een<br />
waarde. De andere waarden zijn nu afhankelijk van wat de gebru<strong>ik</strong>er invoert.<br />
• Het laatste <strong>stroom</strong>schema hieronder, figuur 1F, is uitgebreid met een sturingsblok. In dit blok wordt<br />
altijd een waarde vergeleken. In het eerste blok wordt dus een waarde ingegeven, in het tweede<br />
blok wordt deze opgehoogd. In het derde blok wordt de opgetelde waarde vergeleken met de op <strong>die</strong><br />
plek ingevoerde waarde. Zolang de waarde niet gelijk is aan de ingevoerde waarde zal het<br />
programma de waarden blijven ophogen.<br />
Figuur 1C Figuur 1D Figuur 1E Figuur 1F<br />
13
1.8 De opbouw van een <strong>stroom</strong>schema met een procedure<br />
Een procedure is een stukje programma of code dat zo is klaargemaakt dat hij meerdere keren gebru<strong>ik</strong>t<br />
kan worden. Een procedure kan bestaan uit een Function (functie) dit zijn procedures <strong>die</strong> een resultaat<br />
teruggeven, of uit een Sub (subroutine) dit zijn procedures <strong>die</strong> geen resultaat teruggeven.<br />
Figuur 1G laat een <strong>stroom</strong>schema zien met 2 manieren om een function of een sub aan te geven in een<br />
<strong>stroom</strong>schema.<br />
Figuur 1G 2 Manieren om een function of een sub aan te geven in een <strong>stroom</strong>schema<br />
1.9 Het geautomatiseerd tekenen van een <strong>stroom</strong>schema<br />
Tot zover het theoretische gedeelte van het <strong>stroom</strong>schema. Nu de praktijk.<br />
Het tekenen van een <strong>stroom</strong>schema kan op 2 verschillende manieren gebeuren; met pen en papier of<br />
met een computerprogramma. Er zijn verschillende computerprogramma’s waar dit mee mogelijk is.<br />
Met de veel gebru<strong>ik</strong>te programma’s zoals Word en Excel komt men al een heel eind, maar er zijn ook<br />
programma’s zoals Visio en Smartdraw <strong>die</strong> specifiek schema’s (vaak in de breedste zin van het woord)<br />
tekenen. Tekenprogramma’s zoals AutoCAD zijn zeer uitgebreid en hebben de mogelijkheid om<br />
bepaalde tekeningen en handelingen te standaardiseren.<br />
Elk programma heeft zijn voordelen en zijn nadelen en elk persoon <strong>die</strong> ermee moet tekenen heeft zijn<br />
eigen voorkeuren en vaardigheden.<br />
14
1.10 Vergelijking van verschillende programma’s<br />
In de volgende tabellen worden 4 programma’s op een aantal punten vergeleken op het gemak van<br />
het tekenen van een <strong>stroom</strong>schema. De eerste 2 programma’s, Word en Excel, zijn in verhouding de<br />
meest gebru<strong>ik</strong>te programma’s. De volgende 2 programma’s, AutoCAD en Smartdraw, zijn meer<br />
geavanceerde programma’s en daardoor <strong>bij</strong> een minder breed publiek bekend.<br />
Het tekenen van een <strong>stroom</strong>schema zonder programma is weggelaten, daar dit op nagenoeg alle<br />
punten matig tot slecht scoort.<br />
Het gemak van<br />
het gebru<strong>ik</strong> van: Word (Figuur 1H) Excel (Figuur 1I)<br />
Blokken<br />
Uitlijnen<br />
Verbindingslijnen<br />
(pijlen)<br />
Tekst in blok<br />
Tekst <strong>bij</strong> pijl<br />
Goed (in<strong>die</strong>n shifttoets voor de<br />
standaard verhoudingen ingedrukt<br />
gehouden wordt)<br />
Goed, ten opzichte van de objecten<br />
onderling<br />
Redelijk, pijlen bestaande uit<br />
meerdere lijnen worden vaak niet<br />
naar de wensen van de gebru<strong>ik</strong>er<br />
getekend<br />
Redelijk, via menu onder rechter<br />
muisknop<br />
Tekst wordt linksboven uitgelijnd<br />
geplaatst binnen het blok en kan<br />
meerdere regels bevatten<br />
Tekst <strong>die</strong> niet binnen het blok valt<br />
(teveel regels) is niet zichtbaar<br />
Matig, voor <strong>elke</strong> tekst naast het<br />
schema <strong>die</strong>nt een tekstvalk te worden<br />
aangemaakt<br />
Goed (in<strong>die</strong>n shifttoets voor de<br />
standaard verhoudingen ingedrukt<br />
gehouden wordt)<br />
Goed, ten opzichte van de objecten<br />
onderling<br />
Redelijk, pijlen bestaande uit<br />
meerdere lijnen worden vaak niet<br />
naar de wensen van de gebru<strong>ik</strong>er<br />
getekend<br />
Redelijk, tekst kan direct ingetypt<br />
worden<br />
Tekst wordt linksboven uitgelijnd<br />
geplaatst binnen het blok en kan<br />
meerdere regels bevatten<br />
Tekst <strong>die</strong> niet binnen het blok valt<br />
(teveel regels) is niet zichtbaar<br />
Goed<br />
F1 Help<br />
Redelijk (beknopt, staat niets over Matig<br />
uitlijning)<br />
A4 formaat Ja Nee<br />
Precisie Niet (op het oog) Nauwelijks (enig houvast aan de<br />
exceltabel op de achtergrond)<br />
Standaardiseren Redelijk Redelijk<br />
Snelheid Redelijk Redelijk<br />
Bijzonderheden Er wordt getekend in een tekenveld<br />
Pijltoetsen werken<br />
Opties van het pulldown menu<br />
Tekenen en AutoVormen kunnen<br />
“losgescheurd” worden<br />
Pijltoetsen werken<br />
Opties van het pulldown menu<br />
Tekenen en AutoVormen kunnen<br />
“losgescheurd” worden<br />
Het printveld kan vergroot of verkleind<br />
worden zodat het schema nagenoeg<br />
altijd op A4 past<br />
15
Het gemak van<br />
het gebru<strong>ik</strong> van: AutoCAD (Figuur 1J) Smartdraw (Figuur 1K)<br />
Blokken<br />
Uitlijnen<br />
Verbindingslijnen<br />
Tekst in blok<br />
Tekst <strong>bij</strong> pijl<br />
Slecht, alles <strong>die</strong>nt zelf getekend te<br />
worden<br />
Goed, in<strong>die</strong>n er een raster gebru<strong>ik</strong>t<br />
wordt<br />
Redelijk, de lijnen kunnen zoals de<br />
gebru<strong>ik</strong>er wenst neerge<strong>zet</strong> worden<br />
De pijlpunten vergen iets meer<br />
handigheid met het programma<br />
Slecht, <strong>elke</strong> tekst moet opnieuw<br />
geactiveerd en uitgelijnd worden<br />
Als de tekst te groot is zal deze buiten<br />
het blok vallen<br />
Matig, <strong>elke</strong> tekst moet opnieuw<br />
geactiveerd en uitgelijnd worden<br />
Redelijk, er zijn geen standaard<br />
verhoudingen voor blokken (shifttoets<br />
werkt niet)<br />
Redelijk, op het oog<br />
Redelijk, pijlen worden <strong>bij</strong> de meeste<br />
blokken automatisch getekend<br />
Pijlen bestaande uit meerdere lijnen<br />
worden vaak niet naar de wensen van<br />
de gebru<strong>ik</strong>er getekend<br />
Redelijk, tekst kan direct ingetypt<br />
worden<br />
Tekst wordt gecentreerd geplaatst<br />
binnen het blok en kan meerdere<br />
regels bevatten<br />
Het programma past zelf de<br />
letterhoogte aan besch<strong>ik</strong>bare ruimte<br />
binnen het blok<br />
Goed<br />
F1 Help Niet Goed (uitgebreid, alleen in Engelse<br />
taal)<br />
A4 formaat Nee Ja<br />
Precisie Goed Niet (op het oog)<br />
Standaardiseren Ja, kan door middel van blocks Redelijk<br />
Snelheid Slecht Goed<br />
Bijzonderheden<br />
Het programma heeft de<br />
mogelijkheden om <strong>stroom</strong>schema’s<br />
sneller en beter te kunnen tekenen<br />
Bij het printen kan de schaal vergroot<br />
of verkleind worden zodat het schema<br />
nagenoeg altijd op A4 past<br />
Van tevoren kan de lay-out gekozen<br />
worden<br />
In<strong>die</strong>n er een achtergrondkleur is<br />
gekozen hebben niet alle blokken<br />
deze kleur<br />
16
Figuur 1H Het tekenen van een <strong>stroom</strong>schema in Word<br />
Figuur 1I Het tekenen van een <strong>stroom</strong>schema in Excel<br />
Figuur 1J Het tekenen van een <strong>stroom</strong>schema in AutoCAD<br />
Figuur 1K Het tekenen van een <strong>stroom</strong>schema in Smartdraw<br />
17
1.11 Besluit<br />
De symbolen van een <strong>stroom</strong>schema liggen vast in de NEN norm 3283, maar komen in geen enkel<br />
programma op een dusdanige manier herkenbaar voor. Daar<strong>bij</strong> voldoet geen enkel programma aan alle<br />
wensen.<br />
Dus als men sporadisch een <strong>stroom</strong>schema tekent voldoen de programma’s Word en Excel. Als men<br />
presentaties met <strong>stroom</strong>schema’s maakt is een programma als Smartdraw een optie. Voor alle<br />
anderen, hier uitgaande van AutoCAD/VBA programmeurs (mijn medestudenten), <strong>die</strong> regelmatig<br />
functionele <strong>stroom</strong>schema’s volgens de norm willen tekenen is er weinig. En dit betekent dat<br />
AutoCAD/VBA programmeurs naast het programma AutoCAD altijd een ander programma moeten<br />
hebben openstaan om een <strong>stroom</strong>schema in te tekenen, wat niet wenselijk is.<br />
Naar aanleiding van de resultaten zoals af te lezen is in de tabel van de vorige paragraaf is het idee/de<br />
uitdaging ontstaan om een programma te ontw<strong>ik</strong>kelen waarmee het tekenen van een <strong>stroom</strong>schema<br />
makkelijker en sneller gaat. Het programma moet duidelijk in gebru<strong>ik</strong> zijn en het moet de symbolen van<br />
het <strong>stroom</strong>schema standaardiseren op de NEN Norm.<br />
Voor het ontw<strong>ik</strong>kelen van een zoals hierboven beschreven programma is een geavanceerd<br />
tekenprogramma als AutoCAD in combinatie met de programmeermogelijkheden van VBA hier het<br />
meest gesch<strong>ik</strong>t voor. Ook omdat AutoCAD/VBA programmeurs hierdoor minder programma’s nodig<br />
hebben om eenvoudig een <strong>stroom</strong>schema te tekenen.<br />
Doordat er binnen AutoCAD tevens met blocks gewerkt kan worden kunnen de NEN symbolen in de<br />
tekening geladen worden (vanaf Internet of een symbolen CD) waardoor de tekening<br />
gestandaardiseerd zal worden zodat elk symbool een constante is. VBA <strong>bij</strong> uitstek gesch<strong>ik</strong>t voor om de<br />
pijlen te definiëren en alle symbolen op een eenvoudige manier op te roepen via formulier met een<br />
makkelijk werkbare lay-out. Dit formulier moet het programma gaan verwoorden aan alle bovenstaande<br />
ideeën voldoet.<br />
18
Hoofdstuk 2 Het Programma<br />
2.1 Inleiding<br />
Nu bekend is wat het idee voor het te schrijven programma is kwamen de volgende vragen naar voren;<br />
Wat maakt een programma duidelijk en overzichtelijk? Wat maakt een programma gebru<strong>ik</strong>svriendelijk?<br />
Wat maakt een programma eenvoudig te gebru<strong>ik</strong>en? Hoe wordt het programma verwoordt in de<br />
lay-out? Hoe ontwerp <strong>ik</strong> een lay-out <strong>die</strong> aanspreekt? De symbolen zijn bekend maar hoe gaan deze<br />
geplaatst worden? Hoe worden de veel gebru<strong>ik</strong>te en de minder gebru<strong>ik</strong>te symbolen verdeeld? Hoe<br />
worden de pijlen gedefinieerd? Hoe wordt een “Help”gebru<strong>ik</strong>t als men er zelf niet uit komt?<br />
Een heleboel vragen waar in dit hoofdstuk op in gegaan wordt aan de hand van het proces wat mijn<br />
uiteindelijke programma heeft doorgemaakt tijdens het ontwerpen van het programma met<br />
<strong>bij</strong>behorende lay-out<br />
2.2 Het <strong>stroom</strong>schema als probleem<br />
Zoals in het vorige hoofdstuk al geschreven stond; om een probleem op te lossen <strong>die</strong>nt deze verdeeld<br />
te worden in deelproblemen.<br />
Als het probleem “Stroomschema” grof opgesplitst wordt, blijven er 4 deelproblemen over, te weten; de<br />
algemene instellingen, de symbolen, de tekst <strong>die</strong> hier eventueel in geplaatst gaat worden en de pijlen.<br />
De algemene instellingen zorgen ervoor dat binnen het programma bepaalde instellingen aangepast<br />
worden om het programma te vereenvoudigen en om het resultaat te standaardiseren, denk hier<strong>bij</strong> aan<br />
tekstfont, tekenlimiet etc. De gebru<strong>ik</strong>er kan eenvoudig alle verdere handelingen verrichten zonder dat<br />
deze merkt dat deze instellingen aangepast zijn of dat de gebru<strong>ik</strong>er deze zelf eerst heeft moeten<br />
aanpassen.<br />
Om een <strong>stroom</strong>schema logisch te tekenen moet dit overzichtelijk gebeuren. Eerst wordt het grootste<br />
gedeelte van de symbolen geplaatst met daarin direct de tekst, vervolgens de pijlen, waarna het<br />
<strong>stroom</strong>schema met nog ontbrekende symbolen, teksten en pijlen wordt aangevuld. Dit gegeven is<br />
omge<strong>zet</strong> in een <strong>stroom</strong>schema over hoe “het <strong>stroom</strong>schema” met het programma getekend zou<br />
moeten worden, zie figuur 2A op de volgende pagina.<br />
19
Figuur 2A Het geautomatiseerd tekenen van een <strong>stroom</strong>schema<br />
20
2.3 Symbolen, pijlen en tekst<br />
Het om<strong>zet</strong>ten van de deelproblemen naar een gebru<strong>ik</strong>svriendelijk programma is een proces geweest<br />
met 2 duidelijke fases; de beginfase en de eindfase.<br />
2.3.1 Beginfase en eindfase<br />
Beginfase<br />
Algemene De instellingen werden vanuit het<br />
instellingen programma geactiveerd. Raster, grit en<br />
tekstfont werden met VBA aangepast<br />
binnen de actieve tekening zodra het<br />
programma gestart werd of een functie<br />
van het programma werd gebru<strong>ik</strong>t<br />
Resultaat Geen flexibiliteit. Bovenstaande<br />
instellingen waren niet aan te passen<br />
tijdens het tekenen van een<br />
<strong>stroom</strong>schema doordat tijdens het<br />
gebru<strong>ik</strong> het programma deze instellingen<br />
t<strong>elke</strong>ns activeerde<br />
Symbolen<br />
Resultaat<br />
Tekst<br />
Resultaat<br />
Pijlen<br />
Resultaat<br />
Elke lijn van een symbolisch blok werd<br />
los getekend met in een sub<br />
gedefinieerde lijnen in VBA<br />
Door alle losse lijnen werd de code zeer<br />
lang en onoverzichtelijk waardoor de<br />
kans op foutmeldingen toeneemt, en het<br />
blok was lastig te verplaatsen doordat<br />
alle losse lijnen geselecteerd moest<br />
worden<br />
De tekst bevatte 1 regel <strong>die</strong> op een vast<br />
punt binnen de getekende lijnen stond<br />
De tekst was niet flexibel en net als de<br />
rest een los onderdeel en moest dus ook<br />
geselecteerd worden als het blok<br />
verplaatst werd<br />
Elke pijl werd los gedefinieerd, wat<br />
inhield dat er een behoorlijk aantal<br />
verschillende pijlen was met een vast<br />
aantal bochten en een vaste richting van<br />
de pijlpunt.<br />
Geen flexibiliteit, men moest van te voren<br />
weten w<strong>elke</strong> pijl er nodig was (hoeveel<br />
bochten en de stand van de pijlpunt) en<br />
door alle losse pijlen werd de code zeer<br />
lang en onoverzichtelijk waardoor de<br />
kans op foutmeldingen toeneemt. Pijlen<br />
met meer dan drie bochten moesten<br />
worden aangevuld met de normale lijn<br />
vanuit AutoCAD zelf<br />
Eindfase<br />
De instellingen zijn opgeslagen in een<br />
tekening. Het tekenlimiet staat ingesteld<br />
op formaat A4. Het raster, en het<br />
zichtbare A4 kader zijn blocks <strong>die</strong> in een<br />
niet te printen laag staan. Het tekstfont is<br />
gewoon onder Format aangepast<br />
Zeer flexibel. De gebru<strong>ik</strong>er heeft alle<br />
vrijheid om de instellingen naar eigen<br />
wens aan te passen zonder dat deze<br />
<strong>elke</strong> keer opnieuw wordt aangepast door<br />
het programma<br />
De symbolische blokken staan<br />
opgeslagen als blocks (volgens de NEN<br />
norm) binnen de tekening. Het<br />
programma roept de betreffende blocks<br />
op<br />
Doordat er gewerkt wordt met blocks <strong>die</strong><br />
opgeroepen worden kunnen de NEN<br />
blocks van internet of de symbolen-CD<br />
gebru<strong>ik</strong>t worden<br />
De tekst kan uit meerdere regels bestaan<br />
<strong>die</strong> op het block geplaatst wordt<br />
De tekst is flexibeler, maar is nog steeds<br />
een los onderdeel <strong>die</strong> apart geselecteerd<br />
moet worden om samen met het block te<br />
verplaatsen.<br />
Er zijn 2 pijlen gedefinieerd; de enkele<br />
pijl, waar maar 2 punten voor nodig zijn,<br />
en de oneindige pijl, waar de lijn zoveel<br />
lengtes en bochten kan bevatten tot dat<br />
de gebru<strong>ik</strong>er de lijn afsluit met Enter<br />
Zeer flexibel. Er hoeft alleen een keuze<br />
gemaakt te worden of de pijl uit 1 lijn<br />
bestaat of uit meerdere lijnen. De richting<br />
van de pijlpunt wordt geplaatst in de<br />
laatst gekozen richting<br />
21
2.4 De Lay-out<br />
Ook de lay-out van het programma heeft een proces doorgemaakt. Dit omdat het gebru<strong>ik</strong>svriendelijke<br />
programma ook een gebru<strong>ik</strong>svriendelijke lay-out nodig heeft. De lay-out moet voor zichzelf spreken<br />
zodat <strong>elke</strong> gebru<strong>ik</strong>er zonder enige voorkennis het programma kan gebru<strong>ik</strong>en. De lay-out heeft 3<br />
ontwerpfases doorgemaakt; het beginontwerp, het tussenontwerp en het eindontwerp.<br />
2.4.1 Het beginontwerp<br />
Grootte<br />
Duidelijkheid<br />
Gebru<strong>ik</strong><br />
Ontwerp 1 (figuur 2B) Ontwerp 2 (figuur 2B)<br />
+ … Het programma neemt in het<br />
tekenveld nauwelijks ruimte in beslag<br />
- Het programma is in verhouding tot …<br />
het tekenscherm erg ruimtevullend<br />
+ Het is duidelijk w<strong>elke</strong> knop voor welk …<br />
symbool of pijl gebru<strong>ik</strong>t moet worden<br />
- Door de hoeveelheid informatie kan de<br />
verkeerde knop ingedrukt worden<br />
+ Het tekenen van een <strong>stroom</strong>schema<br />
gaat al een stuk eenvoudiger<br />
- Het merendeel van de symbolen staan<br />
er niet op<br />
Doordat er geen illustraties gebru<strong>ik</strong>t<br />
worden moet er vanuit de omschrijving<br />
begrepen worden om w<strong>elke</strong> symbolen<br />
en pijlen het gaat<br />
Als men alle omschrijvingen weet is er<br />
met het programma te werken<br />
Zeer onhandig.<br />
Figuur 2B Het beginontwerp van de lay-out<br />
22
2.4.2 Het tussenontwerp<br />
Grootte<br />
Duidelijkheid<br />
Gebru<strong>ik</strong><br />
Ontwerp 3 (figuur 2C) Ontwerp 4 (figuur 2C)<br />
+ Doordat het programma uit<br />
tabbladeren bestaat neemt het<br />
programma niet veel ruimte in beslag<br />
Doordat het programma uit<br />
tabbladeren bestaat neemt het<br />
programma niet veel ruimte in beslag,<br />
al wordt het programma breder <strong>bij</strong> het<br />
tabblad “Blokken” en langer <strong>bij</strong> het<br />
tabblad “Help”<br />
- … …<br />
+ Het is duidelijk w<strong>elke</strong> knop voor welk<br />
symbool of pijl gebru<strong>ik</strong>t moet worden<br />
- De pijlen moeten nog steeds goed<br />
vooraf geschat worden om de juiste<br />
pijl aan te kl<strong>ik</strong>ken<br />
Het is duidelijk w<strong>elke</strong> knop voor welk<br />
symbool of pijl gebru<strong>ik</strong>t moet worden<br />
en doordat er nog maar 2 pijlen zijn<br />
hier minder vergissingen in mogelijk<br />
Bij de pijlen komt er na het afsluiten<br />
van de lijn nog een pijlpunt van 5 mm<br />
aan<br />
+ Door de overzichtelijkheid goed Het programma uitgebreid is met een<br />
“Help” en kunnen problemen direct<br />
worden opgelost. De meer specifieke<br />
(minder gebru<strong>ik</strong>te) symbolen staan<br />
onder de uitbreiding van het tabblad<br />
“blokken” en is dus compleet.<br />
- Het merendeel van de symbolen staan<br />
er niet op<br />
…<br />
Figuur 2C Het tussenontwerp van de lay-out<br />
23
2.4.3 Het eindontwerp<br />
Het eindontwerp, figuur 2D, lijkt erg veel op het 4 de ontwerp van de vorige paragraaf, alleen de<br />
volgende onderdelen zijn aangepast/geoptimaliseerd;<br />
• De lay-out is meer met kleur omdat de vormen van de symbolen hierdoor nog beter naar voren<br />
komen en het oogt in zijn totaliteit vriendelijker dan een programma dat bestaat uit een grijze<br />
achtergrond met zwarte lijntjes en letters. Een grafische lay-out voor een grafische beschrijving van<br />
een proces (programma).<br />
• De pijlen zijn geoptimaliseerd zodat waar de lijn wordt afgesloten ook direct de punt van de pijlpunt<br />
daar geplaatst wordt.<br />
• In plaats van dat het tabblad “Help” langer wordt, wordt deze breder net als de verbreding van het<br />
tabblad “Blokken” zodat ook in het formulier een bepaalde standaard ontstaat.<br />
• Het tabblad “Blokken” kan nog verbreed worden maar niet meer versmald, het programma versmald<br />
zichzelf als een ander tabblad of een standaard symbool/blok geactiveerd wordt.<br />
• Het tabblad “Help” verbreed zich automatisch als een van de Help-tabs geactiveerd wordt en het<br />
programma versmald zichzelf als een ander tabblad (Blokken of Pijlen)geactiveerd wordt.<br />
Figuur 2D Het eindontwerp van de lay-out<br />
2.5 Het resultaat<br />
Doordat er in verschillende fases is gewerkt ontstaat er een proces waar het positieve van een ontwerp,<br />
zowel programma als lay-out, wordt behouden of eventueel wordt verbeterd. Het minder goede van het<br />
ontwerp wordt dusdanig verbeterd en aangepast dat hier een duidelijk verschil ontstaat om het<br />
programma en de lay-out te perfectioneren.<br />
Het resultaat is een eenvoudig geschreven programma dat net zo eenvoudig werkt met een<br />
aansprekende lay-out.<br />
24
Hoofdstuk 3 De werking van het programma<br />
3.1 Inleiding<br />
In dit hoofdstuk wordt beschreven hoe het programma werkt in combinatie met AutoCAD. Vervolgens<br />
wordt het geschreven programma visueel uitgebeeld in een <strong>stroom</strong>schema waarna er delen van de<br />
code worden uitgelegd waaruit het programma is opgebouwd.<br />
3.2 Werken met het programma<br />
Het resultaat is een programma naast dat duidelijk en simpel is geschreven, een duidelijke<br />
gebru<strong>ik</strong>svriendelijke lay-out heeft en voor de gebru<strong>ik</strong>er eenvoudig werkt.<br />
De werking van het programma wordt getoond aan de hand van een aantal figuren;<br />
Figuur 3A<br />
Zodra de template met het programma geopend/gestart wordt zijn de verschillende<br />
instellingen actief w<strong>elke</strong> zijn opgeslagen in de tekening terug te vinden volgens de normale<br />
methode van AutoCAD. Deze instellingen zijn op de blocks na te wijzigen zonder dat dit<br />
nadelig werkt voor het programma. Als de blocks gewijzigd worden kan AutoCAD deze niet<br />
meer oproepen en zal er niets getekend worden of er komen minder fraaie tekeningen te<br />
voorschijn.<br />
De instellingen <strong>die</strong> zich in de tekening bevinden zijn;<br />
• Het tekstfont is aangepast naar Arial<br />
• Het tekenlimiet heeft het formaat van een A4<br />
• Er zijn een aantal lagen ingesteld waarin zich blocks bevinden;<br />
• Een block van een 5 millimeter raster w<strong>elke</strong> op slot staat en niet wordt geprint<br />
• Een block van een 10 millimeter raster w<strong>elke</strong> op slot staat en niet wordt geprint<br />
• Een block van een kader op het A4 formaat w<strong>elke</strong> op slot staat en niet wordt geprint<br />
• Een lege laag “Blokken” waarin het schema wordt getekend en wel wordt geprint<br />
• De tekening is geladen met alle blocks <strong>die</strong> worden gebru<strong>ik</strong>t door het programma<br />
• Deze blocks bevatten attributen<br />
• Het programma is embedded in de tekening<br />
25
Figuur 3A De actieve instellingen binnen de template<br />
Figuur 3B<br />
Figuur 3C<br />
Figuur 3D<br />
Figuur 3E<br />
Dit is de template <strong>die</strong> het hele programma bevat. Het programma is embedded (ingeladen)<br />
in de tekening. Het programma wordt als deze template aangeleverd om vervolgens door<br />
de gebru<strong>ik</strong>er deze ook als template op de harde schijf op te slaan. Dus om het programma<br />
te gebru<strong>ik</strong>en hoeft de gebru<strong>ik</strong>er alleen de opgeslagen template te openen.<br />
De symbolen worden geplaatst door de betreffende knop van het programma te activeren<br />
waarna in de commandoregel gelezen kan worden waar het symbool geplaatst moet<br />
worden. Nadat het symbool geplaatst is wordt er een nieuw programma actief waarmee de<br />
tekst kan worden geplaatst.<br />
Het tekenen van pijlen is een kwestie van de juiste pijl kiezen. De enkele pijl bestaat uit<br />
een enkele lijn met daaraan de pijlpunt. De oneindige pijl bestaat uit meerdere lijnen, de<br />
pijlpunt wordt geplaatst nadat er is afgesloten met Enter of dat er op Escape is gedrukt. De<br />
punt van de pijl wordt geplaatst op de laatste muiskl<strong>ik</strong> van de geplaatste lijn. De pijlpunt<br />
heeft <strong>dezelfde</strong> richting als de laatst getekende lijn.<br />
Mocht men er toch niet uitkomen, graag willen weten wat de betekenis is van bepaalde<br />
symbolen zijn of de NEN norm willen bekijken kan dit op het tabblad Help. De teksten van<br />
dit tabblad zijn terug te vinden op <strong>bij</strong>lage C<br />
26
Figuur 3B De programma bevattende template<br />
Figuur 3C Het plaatsen van de symbolen en tekst met het programma<br />
27
Figuur 3D Het plaatsen van de pijlen met het programma<br />
Figuur 3E Het gebru<strong>ik</strong> van het tabblad Help van het programma<br />
28
3.3 Het <strong>stroom</strong>schema<br />
Figuur 3F Het stoomschema van het geschreven programma<br />
29
3.4 Delen van de code<br />
Doordat het programma uit meerdere onderdelen bestaat, wordt de code per onderdeel behandeld;<br />
3.4.1 Algemene instellingen<br />
Instelling voor het tonen/activeren van het programma zodra de template geopend wordt<br />
Private Sub AcadDocument_Activate()<br />
frmStroomschema.Show<br />
End Sub<br />
Instelling voor de breedte van het formulier/lay-out zodra deze gestart wordt<br />
Private Sub UserForm_Activate()<br />
Me.Width = 125<br />
End Sub<br />
Instelling voor de standaard breedte van de tabbladen “Blokken”, “Pijlen” en “Help”<br />
Private Sub MultiPage1_Change()<br />
Me.Width = 125<br />
End Sub<br />
Instelling voor het verbreden van tabblad “Blokken” om de Specifiek Symbolische Blokken te openen<br />
Private Sub ImVerbreden_Click()<br />
Me.Width = 310<br />
End Sub<br />
Instelling voor het verbreden van de tabbladen w<strong>elke</strong> zich bevinden op het tabblad “Help”<br />
Private Sub MultiPage2_Change()<br />
Me.Width = 310<br />
End Sub<br />
3.4.2 Symbolen<br />
De symbolen worden aangemaakt in de module Tekenen. Zodra een functie van het programma<br />
geactiveerd wordt zal de code achter het formulier deze module oproepen<br />
Een block oproepen vanuit module Tekenen<br />
Sub NEN_Blokken(ByVal Naam As String, ByVal x As Double, ByVal y As Double, ByVal h As Double)<br />
Dim punt(0 To 2) As Double<br />
Dim NENBlokObject As AcadBlockReference<br />
punt(0) = x<br />
punt(1) = y<br />
punt(2) = 0<br />
On Error Resume Next<br />
Eerst wordt er gezocht of de op te roepen block in de tekening staat<br />
Set NENBlokObject = ThisDrawing.ModelSpace.InsertBlock(punt, Naam, 1, 1, 1, h)<br />
Als dit niet zo is wordt de harde schijf doorzocht of de blocks zich daar bevinden<br />
If Err Then<br />
Set NENBlokObject = ThisDrawing.ModelSpace.InsertBlock(punt, Naam & ".dwg", 1, 1, 1, h)<br />
Err.Clear<br />
End If<br />
NENBlokObject.Update<br />
End Sub 'Einde NEN_Blokken<br />
30
Achter de knoppen van het programma bevinden zich deze codes. Doordat er voor nagenoeg elk<br />
symbool <strong>dezelfde</strong> code wordt gebru<strong>ik</strong>t staan hier enkele voorbeelden om een indruk te krijgen.<br />
Het oproepen van block NEN 433; Begin of Einde, vanuit het programma<br />
Private Sub LbBegin_Click()<br />
Definiëren van het punt dat de gebru<strong>ik</strong>er plaatst in het tekenveld<br />
p = ThisDrawing.Utility.GetPoint(, "Waar")<br />
x = p(0)<br />
y = p(1)<br />
Het oproepen van het aangemaakte/opgeroepen block vanuit de module Tekenen<br />
Tekenen.NEN_Blokken "NEN 433", x, y, h<br />
Het oproepen van een nieuw formulier/programma om de tekst te plaatsen<br />
frmAttribuutBeginEinde.Show<br />
End Sub<br />
Om aan te tonen dat de code nauwelijks veranderd <strong>bij</strong> verschillende te plaatsen symbolen volgen hier<br />
de codes van de symbolen NEN 313 Invoer, NEN 310 Bewerking en NEN 411 Sturing<br />
Private Sub LbInvoer_Click()<br />
p = ThisDrawing.Utility.GetPoint(, "Waar")<br />
x = p(0)<br />
y = p(1)<br />
Tekenen.NEN_Blokken "NEN 313", x, y, h<br />
frmAttributenAlgemeen.Show<br />
End Sub<br />
Private Sub LbBewerking_Click()<br />
p = ThisDrawing.Utility.GetPoint(, "Waar")<br />
x = p(0)<br />
y = p(1)<br />
Tekenen.NEN_Blokken "NEN 310", x, y, h<br />
frmAttributenAlgemeen.Show<br />
End Sub<br />
Private Sub LbSturing_Click()<br />
p = ThisDrawing.Utility.GetPoint(, "Waar")<br />
x = p(0)<br />
y = p(1)<br />
Tekenen.NEN_Blokken "NEN 411", x, y, h<br />
frmAttributenSturing.Show<br />
End Sub<br />
31
3.4.3 Tekst<br />
Er worden verschillende tekstsoorten aangemaakt in de module Tekenen. Deze tekstsoorten worden<br />
opgeroepen vanuit de verschillende formulieren <strong>die</strong> gekoppeld staan aan de symbolen van het<br />
programma. Vanuit deze formulieren kan de gebru<strong>ik</strong>er de gewenste tekst invoeren waarna deze in het<br />
symbool geplaatst wordt.<br />
Het aanmaken van links uitlijnende tekst in de module Tekenen<br />
Sub Tekst(ByVal regel As String, ByVal x As Double, ByVal y As Double, ByVal h As Double)<br />
Dim punt(0 To 2) As Double<br />
Het aanmaken van een tekst in AutoCAD<br />
Dim objTekst As AcadText<br />
punt(0) = x<br />
punt(1) = y<br />
On Error Resume Next<br />
De net aangemaakte tekst toevoegen<br />
Set objTekst = ThisDrawing.ModelSpace.AddText(regel, punt, h)<br />
objTekst.Update<br />
End Sub 'Einde Tekst<br />
Het aanmaken van gecentreerde tekst in de module Tekenen<br />
Sub TekstGecentreerd(ByVal regel As String, ByVal x As Double, ByVal y As Double, ByVal h As Double)<br />
Dim punt(0 To 2) As Double<br />
Dim oorsprong(0 To 2) As Double<br />
Het aanmaken van een tekst in AutoCAD<br />
Dim objTekst As AcadText<br />
punt(0) = x<br />
punt(1) = y<br />
On Error Resume Next<br />
De net aangemaakte tekst toevoegen<br />
Set objTekst = ThisDrawing.ModelSpace.AddText(regel, punt, h)<br />
De tekst centreren op het aangegeven punt<br />
objTekst.Alignment = acAlignmentMiddleCenter<br />
Call objTekst.Move(oorsprong, punt)<br />
objTekst.Update<br />
End Sub 'Einde TekstGecentreerd<br />
Het aanmaken van rechts uitlijnende tekst in de module Tekenen<br />
Sub TekstRechts(ByVal regel As String, ByVal x As Double, ByVal y As Double, ByVal h As Double)<br />
Dim punt(0 To 2) As Double<br />
Dim oorsprong(0 To 2) As Double<br />
Het aanmaken van een tekst in AutoCAD<br />
Dim objTekst As AcadText<br />
punt(0) = x<br />
punt(1) = y<br />
On Error Resume Next<br />
De net aangemaakte tekst toevoegen<br />
Set objTekst = ThisDrawing.ModelSpace.AddText(regel, punt, h)<br />
De tekst rechts uitlijnen vanaf het aangegeven punt<br />
objTekst.Alignment = acAlignmentMiddleRight<br />
Call objTekst.Move(oorsprong, punt)<br />
objTekst.Update<br />
End Sub 'Einde TekstRechts<br />
32
Achter de knoppen van de tekstprogramma’s bevinden zich deze codes. Doordat er voor nagenoeg elk<br />
tekstprogramma <strong>dezelfde</strong> code wordt gebru<strong>ik</strong>t staan hier enkele voorbeelden om een indruk te krijgen.<br />
Het plaatsen van een tekst door middel van het tekstprogramma “Begin of Einde” figuur 3G<br />
Private Sub ImAttributenStartEinde_Click()<br />
Het formulier van het programma moet verdwijnen zodra de tekst geplaatst is<br />
Me.Hide<br />
p = ThisDrawing.Utility.GetPoint(, "Kl<strong>ik</strong> het plaatspunt van het blok aan")<br />
x = p(0)<br />
y = p(1)<br />
De tekst <strong>die</strong> geplaatst moet worden is de tekst uit de tekstbox van het programma<br />
GetoondeTekst = Me.TxtRegel1<br />
Tekenen.TekstGecentreerd GetoondeTekst, x, y - 5, 2.5<br />
End Sub<br />
Het plaatsen van een tekst door middel van het tekstprogramma “Sturing” figuur 3H<br />
Private Sub ImAttributenAlgemeen_Click()<br />
Het formulier van het programma moet verdwijnen zodra de tekst geplaatst is<br />
Me.Hide<br />
p = ThisDrawing.Utility.GetPoint(, "Kl<strong>ik</strong> het plaatspunt van het blok aan")<br />
x = p(0)<br />
y = p(1)<br />
De gecentreerde tekst <strong>die</strong> geplaatst moet worden vanuit de tekstbox van het programma<br />
GetoondeTekst = Me.TxtRegel1<br />
Tekenen.TekstGecentreerd GetoondeTekst, x, y - 20 / 4, 2.5<br />
GetoondeTekst = Me.TxtRegel2<br />
Tekenen.TekstGecentreerd GetoondeTekst, x, y - 20 / 2, 2.5<br />
GetoondeTekst = Me.TxtRegel3<br />
Tekenen.TekstGecentreerd GetoondeTekst, x, y - 20 / 4 * 3, 2.5<br />
De links uitlijnende tekst <strong>die</strong> geplaatst moet worden vanuit de tekstbox van het programma<br />
GetoondeTekst = Me.TxtWaarNietWaar<br />
Tekenen.Tekst GetoondeTekst, x + 16, y - 20 / 4 - 1.25, 2.5<br />
GetoondeTekst = Me.TxtNietWaarWaar<br />
Tekenen.Tekst GetoondeTekst, x + 1, y - 25 - 1.25, 2.5<br />
De rechts uitlijnende tekst <strong>die</strong> geplaatst moet worden vanuit de tekstbox van het programma<br />
GetoondeTekst = Me.TxtWaarrNietWaar<br />
Tekenen.TekstRechts GetoondeTekst, x - 16, y - 20 / 4, 2.5<br />
GetoondeTekst = Me.TxtNietWaarWaar<br />
Tekenen.TekstRechts GetoondeTekst, x - 1, y - 25, 2.5<br />
End Sub<br />
33
Het plaatsen van een tekst door middel van het tekstprogramma “Blokken algemeen” met 3 links<br />
uitlijnende tekstregels, figuur 3I<br />
Private Sub ImAttributenAlgemeen_Click()<br />
Het formulier van het programma moet verdwijnen zodra de tekst geplaatst is<br />
Me.Hide<br />
p = ThisDrawing.Utility.GetPoint(, "Kl<strong>ik</strong> het plaatspunt van het blok aan")<br />
x = p(0)<br />
y = p(1)<br />
De links uitlijnende tekst <strong>die</strong> geplaatst moet worden vanuit de tekstbox van het programma<br />
GetoondeTekst = Me.TxtRegel1<br />
Tekenen.Tekst GetoondeTekst, x - 12.5, y - 20 / 4 - 1.25, 2.5<br />
GetoondeTekst = Me.TxtRegel2<br />
Tekenen.Tekst GetoondeTekst, x - 12.5, y - 20 / 2 - 1.25, 2.5<br />
GetoondeTekst = Me.TxtRegel3<br />
Tekenen.Tekst GetoondeTekst, x - 12.5, y - 20 / 4 * 3 - 1.25, 2.5<br />
End Sub<br />
Het plaatsen van een tekst door middel van het tekstprogramma “Blokken algemeen” met gecentreerde<br />
tekstregels, figuur 3J<br />
Private Sub ImAttributenAlgemeen_Click()<br />
Het formulier van het programma moet verdwijnen zodra de tekst geplaatst is<br />
Me.Hide<br />
p = ThisDrawing.Utility.GetPoint(, "Kl<strong>ik</strong> het plaatspunt van het blok aan")<br />
x = p(0)<br />
y = p(1)<br />
De gecentreerde tekst <strong>die</strong> geplaatst moet worden vanuit de tekstbox van het programma<br />
GetoondeTekst = Me.TxtRegel1<br />
Tekenen.TekstGecentreerd GetoondeTekst, x, y - 20 / 4, 2.5<br />
GetoondeTekst = Me.TxtRegel2<br />
Tekenen.TekstGecentreerd GetoondeTekst, x, y - 20 / 2, 2.5<br />
End Sub<br />
Figuur 3G Figuur 3H Figuur 3I Figuur 3J<br />
34
3.4.4 Pijlen<br />
De pijlpunt wordt als block aangemaakt in de module Tekenen. De lijnen worden aangemaakt in de<br />
module Pijlen. De enkele lijn en de laatst getekende lijn van de meervoudige lijn worden 5 mm verkort<br />
waarna de pijlpunt, <strong>die</strong> 5 mm lang is, wordt opgeroepen uit de module Tekenen en geplaatst in de<br />
zelfde richting als de enkele lijn en de laatst getekende lijn van de meervoudige lijn. Zodra de functie<br />
enkele pijl of oneindige lijn van het programma geactiveerd wordt zal de code achter het formulier de<br />
module Pijlen oproepen.<br />
Het aanmaken van het block pijlpunt in de module Tekenen<br />
Sub Blok_Punt(x, y, h)<br />
De punten definiëren <strong>die</strong> worden gebru<strong>ik</strong>t om de pijlpunt te tekenen<br />
Dim p0(0 To 2) As Double<br />
Dim p1(0 To 2) As Double<br />
Dim p2(0 To 2) As Double<br />
Dim p3(0 To 2) As Double<br />
Dim oorsprong(0 To 2) As Double<br />
Dim punt(0 To 2) As Double<br />
punt(0) = x<br />
punt(1) = y<br />
On Error Resume Next<br />
Eerst wordt er gezocht of het nog aan te maken block al in de tekening staat<br />
Set BlokPuntObject = ThisDrawing.Blocks.Item("BlokPunt")<br />
If Err Then<br />
Zoniet dan wordt het block aangemaakt<br />
Set BlokPuntObject = ThisDrawing.Blocks.Add(oorsprong, "BlokPunt")<br />
Pijlgrootte = 5<br />
p0(0) = 0: p0(1) = -Pijlgrootte / 4<br />
p1(0) = Pijlgrootte: p1(1) = 0<br />
p2(0) = 0: p2(1) = Pijlgrootte / 4<br />
p3(0) = 0: p3(1) = Pijlgrootte / 4<br />
Van het block een solid maken zodat de punt niet uit losse lijnen bestaat<br />
Dim SolidObj As AcadSolid<br />
Set SolidObj = BlokPuntObject.AddSolid(p0, p1, p2, p3)<br />
SolidObj.Update<br />
End If<br />
Het oproepen van een block referentie (w<strong>elke</strong> of al in de tekening staat of net is aangemaakt)<br />
Dim pijl As AcadBlockReference<br />
Set pijl = ThisDrawing.ModelSpace.InsertBlock(punt, "BlokPunt", 1, 1, 1, h)<br />
pijl.Update<br />
End Sub 'Einde Blok Punt<br />
35
Het aanmaken van een oneindige pijl in de module Pijlen<br />
Sub Oneidige_Pijl()<br />
Definiëren van het beginpunt en het volgende punt dat de gebru<strong>ik</strong>er plaatst in het tekenveld<br />
Dim p(0 To 2) As Double<br />
p0 = ThisDrawing.Utility.GetPoint(, "Beginpunt")<br />
x0 = p0(0)<br />
y0 = p0(1)<br />
p1 = ThisDrawing.Utility.GetPoint(p0, "Volgend punt")<br />
x1 = p1(0)<br />
y1 = p1(1)<br />
Het aanmaken van een lijn<br />
Dim LijnObject As AcadLine<br />
Set LijnObject = ThisDrawing.ModelSpace.AddLine(p0, p1)<br />
On Error Resume Next<br />
Het aanmaken vanaf het derde en de daarop volgende punten totdat de lijn wordt afgesloten met Enter<br />
Do<br />
p(0) = p0(0): p(1) = p0(1)<br />
p0(0) = x1: p0(1) = y1<br />
x0 = p0(0): y0 = p0(1)<br />
Call ThisDrawing.Utility.InitializeUserInput(0, "Enter")<br />
p1 = ThisDrawing.Utility.GetPoint(p0, "Volgend punt of [Enter]")<br />
x1 = p1(0)<br />
y1 = p1(1)<br />
If Not (x0 = x1 And y0 = y1) Then<br />
Set LijnObject = ThisDrawing.ModelSpace.AddLine(p0, p1)<br />
Else<br />
Het definiëren van de variabelen hoek en de lengte van de laatst getekende lijn van de pijl<br />
Dim hoek As Variant<br />
hoek = LijnObject.Angle<br />
Dim oude_lengte As Variant<br />
Dim nieuwe_lengte As Variant<br />
oude_lengte = LijnObject.Length<br />
nieuwe_lengte = oude_lengte - 5<br />
Het uitwissen van de laatst getekende lijn, zodat de nieuwe laatste lijn – 5 mm met daaraan direct de<br />
pijlpunt, geplaatst kan worden<br />
LijnObject.Delete<br />
Het tekenen van de nieuwe laatste lijn<br />
Dim punt(0 To 2) As Double<br />
Dim PolarPunt As Variant<br />
PolarPunt = ThisDrawing.Utility.PolarPoint(p, hoek, nieuwe_lengte)<br />
Set LijnObject = ThisDrawing.ModelSpace.AddLine(p, PolarPunt)<br />
x3 = PolarPunt(0)<br />
y3 = PolarPunt(1)<br />
Het plaatsen van het aangemaakte/opgeroepen block vanuit de module Tekenen<br />
Call Tekenen.Blok_Punt(x3, y3, hoek)<br />
GoTo stoppen<br />
End If<br />
Loop<br />
stoppen:<br />
End Sub 'Einde Oneindige Pijl<br />
36
Het aanmaken van een enkele pijl in de module Pijlen<br />
Sub Enkele_Pijl()<br />
Definiëren van het beginpunt en het eindpunt dat de gebru<strong>ik</strong>er plaatst in het tekenveld<br />
p0 = ThisDrawing.Utility.GetPoint(, "Beginpunt")<br />
p1 = ThisDrawing.Utility.GetPoint(p0, "Eindpunt")<br />
Het aanmaken van een lijn<br />
Dim LijnObject As AcadLine<br />
Set LijnObject = ThisDrawing.ModelSpace.AddLine(p0, p1)<br />
Het definiëren van de variabelen hoek en de lengte van de pijl<br />
Dim hoek As Variant<br />
hoek = LijnObject.Angle<br />
Dim oude_lengte As Variant<br />
Dim nieuwe_lengte As Variant<br />
oude_lengte = LijnObject.Length<br />
nieuwe_lengte = oude_lengte - 5<br />
Het uitwissen van de als eerst getekende lijn, zodat de nieuwe lijn – 5 mm met daaraan direct de<br />
pijlpunt, geplaatst kan worden<br />
LijnObject.Delete<br />
Het tekenen van de nieuwe lijn<br />
Dim punt(0 To 2) As Double<br />
Dim PolarPunt As Variant<br />
PolarPunt = ThisDrawing.Utility.PolarPoint(p0, hoek, nieuwe_lengte)<br />
Set LijnObject = ThisDrawing.ModelSpace.AddLine(p0, PolarPunt)<br />
x = PolarPunt(0)<br />
y = PolarPunt(1)<br />
Het plaatsen van het aangemaakte/opgeroepen block vanuit de module Tekenen<br />
Call Tekenen.Blok_Punt(x, y, hoek)<br />
End Sub 'Einde Enkele Pijl<br />
Het oproepen van de enkele pijl, vanuit het programma<br />
Private Sub LbEnkelePijl_Click()<br />
Het oproepen van de aangemaakte pijl vanuit de module Pijlen<br />
Call Pijlen.Enkele_Pijl<br />
End Sub<br />
Het oproepen van de oneindige pijl, vanuit het programma<br />
Private Sub LbOneindigePijl_Click()<br />
Het oproepen van de aangemaakte pijl vanuit de module Pijlen<br />
Call Pijlen.Oneidige_Pijl<br />
End Sub<br />
37
Conclusie<br />
In de op<strong>zet</strong> om een duidelijker, sneller, meer gestandaardiseerd maar vooral eenvoudig programma te<br />
ontwerpen ben <strong>ik</strong> naar mijn idee aardig geslaagd. Persoonlijk vind <strong>ik</strong> het programma prettig werken en<br />
heb het programma veelvuldig gebru<strong>ik</strong>t <strong>bij</strong> het tekenen van de <strong>stroom</strong>schema’s in dit verslag.<br />
De personen aan wie dit programma getoond is en de personen <strong>die</strong> dit programma getest hebben zijn<br />
er al even positief over.<br />
Maar doordat er tot op heden maar een klein aantal personen (<strong>die</strong> nu ondertussen weten hoe het<br />
programma werkt) het programma hebben getest zullen er ongetwijfeld nog kinderziekten naar boven<br />
komen. Maar problemen zijn er om opgelost te worden en zijn dus een onderdeel van het totale proces<br />
om tot een goed ontwerp/product te komen.<br />
Het plaatsen van de tekst is naar mijn idee een punt wat de toekomst nog te verbeteren is.<br />
En mocht <strong>bij</strong> de gebru<strong>ik</strong>er het programma desondanks toch niet aan alle wensen voldoen, staan alle<br />
blocks met attributen opgeslagen in de tekening en zijn deze op de manieren binnen AutoCAD te<br />
gebru<strong>ik</strong>en. De blocks kunnen ook makkelijk omge<strong>zet</strong> worden in een Toolpallete waardoor ze ook simpel<br />
te gebru<strong>ik</strong>en zijn. Alleen op deze manier van werken vergt het tekenen van de pijlen weer enige tijd.<br />
38
Bijlage A NEN Norm 3283<br />
NEN 3283:1967 nl<br />
Documentnummer<br />
NEN 3283:1967 nl<br />
Publicatiedatum 01-12-1967<br />
Registratiedatum 01-01-1980<br />
Taal<br />
Nederlandse titel<br />
Engelse titel<br />
nl<br />
Automatische informatieverwerking - Symbolen voor schema's<br />
Flowchart symbols for information processing<br />
Vervangt<br />
Vervangen door<br />
Wijzigt<br />
Gewijzigd door<br />
ICS code(s) 35.080<br />
Intrekkingdatum<br />
Uitgever<br />
NEN<br />
Aantal pagina's 4<br />
Nationale samenvatting<br />
Deze norm geeft symbolen voor schema's voor automatische informatieverwerking.<br />
Engelse samenvatting<br />
Relaties ISO/DP 1299<br />
Opmerking<br />
Commissienummer 381007<br />
Commissie<br />
Bundels<br />
Vertaling<br />
Commissie Europees<br />
Commissie Internationaal<br />
Richtlijnen<br />
Regelgeving<br />
NEN 3283:1967 nl<br />
39
XXXIX<br />
40
Bijlage B Overige symbolen<br />
Gegevens invoer, uitvoer (NEN 3283:1967-320/420), algemeen<br />
voor het gebru<strong>ik</strong> van invoer/uitvoer handelingen.<br />
Voorbereiding (NEN 3283:1967-413), het klaarmaken van een<br />
instructie of een groep van instructies; het <strong>zet</strong>ten van een<br />
wissel, het initialiseren van een routine etc.<br />
Handmatige bewerking (NEN 3283:1967-312/414), hier<strong>bij</strong> wordt<br />
geen gebru<strong>ik</strong> gemaakt van mechanische hulpmiddelen.<br />
Document (NEN 3283:1967-323), de overdracht van informatie<br />
waar<strong>bij</strong> de drager een document is.<br />
Meerdere documenten.<br />
Interne opslag (NEN 3283:1967-329), het vastleggen of<br />
overdragen van informatie waar<strong>bij</strong> de drager een<br />
kernengeheugen is.<br />
Kaart (NEN 3283:1967-324), de overdracht van informatie<br />
waar<strong>bij</strong> de drager een kaart (in alle specialistische vormen) is.<br />
Ponsband (NEN 3283:1967-325), de overdracht van informatie<br />
waar<strong>bij</strong> de drager een ponsband is.<br />
Scheidingslijn<br />
Connector (NEN 3283:1967-333/432), het afbreken van een lijn<br />
<strong>die</strong> onder verwijzing naar een andere connector met een<br />
corresponderende aanduiding ergens anders wordt voortge<strong>zet</strong><br />
Connector naar andere pagina<br />
Samenvoeging<br />
Of<br />
XL 41
Samenvoegen met selectie (NEN 3283:1967-316),<br />
samenvoegen met gelijktijdige uitsplitsing; het vormen van twee<br />
of meer rijen informatie-eenheden uit twee of meer andere rijen.<br />
Sorteren (NEN 3283:1967-317), het ordenen van een serie<br />
informatie-eenheden in een speciale volgorde.<br />
Uitsplitsen - Extract - (NEN 3283:1967-315), het volgens<br />
bepaalde criteria scheiden van een rij informatie-eenheden in<br />
twee of meer rijen.<br />
Samenvoegen - Merge - (NEN 3283:1967-314), het in elkaar<br />
voegen van twee of meerdere rijen in één enkele rij.<br />
Uitstel<br />
Gekoppeld geheugen (NEN 3283:1967-321), algemeen<br />
symbool voor een handeling waar<strong>bij</strong> gebru<strong>ik</strong>t wordt gemaakt<br />
van een gekoppeld geheugen zoals magneetband,<br />
magneetschijf etc.<br />
Magneetband (NEN 3283:1967-326), de vastlegging of<br />
overdracht van informatie waar<strong>bij</strong> de drager een magneetband<br />
is.<br />
Magneetschijf (NEN 3283:1967-328), de vastlegging of<br />
overdracht van informatie waar<strong>bij</strong> de drager een magneetschijf<br />
is.<br />
Magneettrommel (NEN 3283:1967-327), de vastlegging of<br />
overdracht van informatie waar<strong>bij</strong> de drager een<br />
magneettrommel is.<br />
Weergave (NEN 3283:1967-3210), directe communicatie van<br />
machine naar mens. Overdracht waar<strong>bij</strong> de informatie<br />
gedurende het proces direct toegankelijk wordt.<br />
XLI 42
Bijlage C Help procedure programma<br />
Algemeen<br />
Zodra de template wordt geopend zijn<br />
de volgende instellingen actief;<br />
De tekenlimiet is ingesteld op A4<br />
formaat. Binnen deze limiet bevinden<br />
zich een zichtbaar raster en kader. Het<br />
raster en het kader zijn blokken en<br />
staan in de betreffende laag op slot.<br />
Deze lagen worden niet geprint.<br />
Alle blokken <strong>die</strong> gebru<strong>ik</strong>t worden door<br />
het <strong>stroom</strong>schemaprogramma zijn in<br />
de template ingeladen.<br />
Deze worden geplaatst in de laag<br />
Blokken w<strong>elke</strong> geactiveerd wordt door<br />
het programma.<br />
Deze laag staat niet op slot en zal<br />
worden geprint.<br />
Het tekstfont staat ingesteld op Arial.<br />
Het <strong>stroom</strong>schemaprogramma start<br />
automatisch zodra de template wordt<br />
geopend. Mocht het programma<br />
afgesloten worden, dan is deze te<br />
herstarten door een nieuwe tekening<br />
te openen en vervolgens op Annuleren<br />
te drukken.<br />
Blokken<br />
Op het direct zichtbare gedeelte op de<br />
tab “Blokken” staan de standaard (veel<br />
gebru<strong>ik</strong>te) <strong>stroom</strong>schemasymbolen. Dit<br />
gedeelte kan verbreed worden (>)<br />
waardoor de specifiek symbolische<br />
(minder voorkomende) <strong>stroom</strong> -<br />
schemasymbolen zichtbaar worden.<br />
Het plaatsen van de symbolen;<br />
Activeer na het maken van een keuze<br />
het symbool door er met de linker muis -<br />
knop op te kl<strong>ik</strong>ken. Op de commando -<br />
regel komt de tekst “Waar?” waarna er<br />
op een willekeurige plek in het tekenveld<br />
gekl<strong>ik</strong>t kan worden. Het symbool wordt<br />
geplaatst.<br />
LET OP: Het plaatspunt van alle<br />
<strong>stroom</strong>schemasymbolen zit bovenin het<br />
midden van het symbool<br />
Tekst<br />
De symbolen w<strong>elke</strong> ingeladen zijn in<br />
de tekening bevatten tekst,<br />
uitgezonderd de symbolen NEN 314<br />
Samenvoegen, NEN 315 Ophalen,<br />
NEN 316 Samenvoeging, NEN 317<br />
Sorteren, Samenvoeging en Of.<br />
Nadat een symbool geplaatst is,<br />
verschijnt er een invulbox waarin de<br />
omschrijving (tekst) ingevoerd kan<br />
worden. Dit kan in 1,2 of 3 regels (naargelang<br />
de grootte van het symbool) zijn<br />
en op <strong>elke</strong> regel past ongeveer 15<br />
tekens. De grootte van de tekst bepaalt<br />
w<strong>elke</strong> regels nodig zijn om deze goed te<br />
verdelen binnen het symbool. Een tekst<br />
< 15 tekens wordt geplaatst op de<br />
middelste regel. Een tekst < 30 tekens<br />
wordt op de eerste en de derde regel<br />
geplaatst. Met een tekst > 30 tekens<br />
worden alle 3 de regels gebru<strong>ik</strong>t.<br />
Hierdoor zal de tekst op de juiste plaats in<br />
het symbool komen te staan.<br />
LET OP: De tekst wordt los geplaatst en<br />
het plaatspunt van de tekst zit bovenin<br />
het midden van het laatst geplaatste<br />
symbool.<br />
Betekenis symbolen<br />
Gegevens invoer, uitvoer<br />
Voorbereiding<br />
Handmatige bewerking<br />
Document<br />
Meerdere documenten<br />
Interne opslag<br />
Kaart<br />
Ponsband<br />
Scheidingslijn<br />
Connector<br />
Connector naar andere pagina<br />
Samenvoeging<br />
Of<br />
Samenvoegen met selectie<br />
Sorteren<br />
Uitsplitsen<br />
Samenvoegen<br />
Gekoppeld geheugen<br />
Uitstel<br />
Magneetband<br />
Magneetschijf<br />
Magneettrommel<br />
Weergave<br />
XLII 43
Het plaatsen van de pijlen<br />
NEN Norm 3283<br />
Activeer na het maken van een keuze<br />
de pijl door er met de linker muis -<br />
knop op te kl<strong>ik</strong>ken. Op de commando -<br />
regel komt de tekst “Beginpunt”<br />
waarna er op een willekeurige plek in<br />
het tekenveld gekl<strong>ik</strong>t kan worden.<br />
Hierna wordt er afhankelijk van de<br />
gekozen pijl gevraagd om het<br />
“Eindpunt” of om een “Volgend punt of<br />
[Enter]”<br />
LET OP: De pijl wordt geplaatst vanaf<br />
de staart (Xà) en de pijlpunt wordt geplaatst<br />
op het “Eindpunt” of de met<br />
[Enter] afgesloten lijn (àX).<br />
De enkele pijl<br />
Pijl bestaande uit één enkele rechte<br />
lijn. Na het “Beginpunt” wordt er direct<br />
gevraagd om het “Eindpunt”.<br />
De oneindige pijl<br />
Pijl bestaande uit meerdere rechte<br />
lijnen. Na het “Beginpunt” wordt er<br />
gevraagd naar een “Volgend punt of<br />
[Enter]”.De punt wordt dus pas<br />
geplaatst nadat de lijn is afgesloten<br />
met Enter.<br />
Copyright©<br />
Copyright© W.H.C. Oskam 2005.<br />
Alle rechten voorbehouden.<br />
Waarschuwing: dit computerprogramma<br />
is auteursrechtelijk beschermd.<br />
Onrechtmatige verveelvoudiging of<br />
distributie van dit programma, of een<br />
gedeelte ervan is verboden en strafbaar.<br />
XLIII 44
Bijlage D Gebru<strong>ik</strong>saanwijzing installatie<br />
LET OP: Het programma is een AutoCAD bestand en kan alleen worden gebru<strong>ik</strong>t in<strong>die</strong>n dit programma<br />
reeds is geïnstalleerd op de te gebru<strong>ik</strong>en computer!<br />
De programmahoudende template kan op verschillende manieren aangeleverd worden; via de e-mail,<br />
zie figuur D1 of via een externe opslag (hiermee wordt bedoeld een diskette, CD of via een USB-stick),<br />
zie figuur D2.<br />
Figuur D1 De template aangeleverd via de e-mail<br />
Figuur D2 De template aangeleverd via een externe opslag<br />
Het is de bedoeling dat de template wordt geopend. Als de template via de e-mail aangeleverd wordt<br />
kan deze geopend worden door erop te dubbelkl<strong>ik</strong>ken. Als de template via een externe opslag wordt<br />
aangeleverd kan deze worden geopend door AutoCAD te activeren, en Bestand – Openen te activeren.<br />
Deze externe bron te <strong>die</strong>nt geselecteerd te worden. Alle bestanden w<strong>elke</strong> zijn opgeslagen op de<br />
externe opslag worden getoond, activeer het juiste bestand door er op de kl<strong>ik</strong>ken en vervolgens op<br />
openen te kl<strong>ik</strong>ken.<br />
De template wordt geopend. Het volgende beeld, figuur D3, wordt getoond. Er verschijnt de<br />
achtergrondtekening waarin het <strong>stroom</strong>schema getekend <strong>die</strong>nt te worden en een melding dat dit<br />
bestand macro’s bevat. Deze macro’s vormen het programma. Kl<strong>ik</strong> op “Enable Macros” om het<br />
programma te activeren, figuur D4.<br />
Figuur D3 Macro’s toestaan om het programma te activeren<br />
Figuur D4 Het programma<br />
XLIV 45
Vervolgens wordt de geopende template opgeslagen als template op de harde schijf of een netwerk,<br />
naargelang de wensen van de gebru<strong>ik</strong>er of bedrijf.<br />
Activeer Bestand – Opslaan als … Selecteer <strong>bij</strong> bestandtype AutoCAD Drawing Template [*dwt], figuur<br />
D5. Sla de template vervolgens op in de map “Template” of een andere map w<strong>elke</strong> snel en eenvoudig<br />
terug te vinden is. De map “Template” heeft een voordeel dat er reeds een snelkoppeling is, waardoor<br />
deze map snel en eenvoudig terug te vinden is.<br />
Figuur D5 Bestandtype aanpassen naar AutoCAD Drawing Template [*dwt]<br />
Figuur D6 Opslaan in een eenvoudig terug te vinden map<br />
Mocht het programma per ongeluk weg gedrukt worden is deze eenvoudig op te roepen door Bestand –<br />
Openen te activeren om vervolgens op annuleren te kl<strong>ik</strong>ken. Het programma herstart dan automatisch.<br />
Voor alle andere vragen betreffende het gebru<strong>ik</strong> van het programma kan het tabblad Help van het<br />
programma zelf worden geraadpleegd.<br />
Veel plezier met het programma!<br />
XLV 46
Bijlage E Literatuurlijst<br />
Boeken ter ondersteuning van het onderzoek naar <strong>stroom</strong>schema’s<br />
• Boeklagen, R. AutoCAD 2005 Computer ondersteunend ontwerpen<br />
TEC CAD College B.V. Nijmegen 2004<br />
• Boeklagen, R. BCAD 5<br />
TEC CAD College B.V. Nijmegen 2003<br />
• Albada Jelgersma, H.E. Informatica BBO<br />
Websites ter ondersteuning van het onderzoek naar <strong>stroom</strong>schema’s<br />
• Microsoft ® Encarta ® Encyclope<strong>die</strong> Winkler Prins. ©<br />
1993-2002<br />
• http://www.pzzl.com. Pzzl.com<br />
Amsterdam 2001<br />
• Bos, G. Nederlands Computerwoordenboek<br />
1998<br />
• http://www.vandale.nl. Van Dale Taalweb<br />
NEN Norm ter ondersteuning van het onderzoek naar <strong>stroom</strong>schema’s<br />
• Nederlands Normalisatie Instituut NEN 3283 Automatische Informatieverwerking<br />
Tweede druk, Delft, 1967<br />
Boeken ter ondersteuning van het schrijven van het verslag<br />
• Taalfonds, Het. Spellingswijzer onze taal<br />
Elfde druk, Amsterdam/Antwerpen 2005<br />
XLVI 47