Door
: Erwin Mangini - de Ron
Begeleider : ir. R. Boeklagen
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Auteur
: Erwin Mangini - de Ron
Opleiding : AutoCAD System Manager Plaats
: Nijmegen
Datum
: 20-11-2003
Pag. 2/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Voorwoord Dit werkstuk heb ik gemaakt als onderdeel van mijn opleiding tot AutoCAD System Manager. Het beschrijft één van de knelpunten, welke ik in mijn dagelijkse werkzaamheden ben tegengekomen. Ik zal de huidige situatie met zijn knelpunten en gevolgen beschrijven, evenals mijn gedachtengang die geleid heeft tot de oplossing die ik heb gekozen. Dit werkstuk is mede dankzij ir. R. Boeklagen tot stand gekomen. Hij is als docent/studiebegeleider AutoCAD System Manager verbonden aan het “Cadcollege” te Nijmegen.
Pag. 3/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Inhoud: 1
Organisatie..................................................................................... 6 1.1 Eigen werkgever .................................................................... 6 1.2 Huidige werkplek ................................................................... 7 1.3 Gebruikte CAD-systeem ........................................................ 8
2
Huidige Situatie ............................................................................ 10
3
Oplossingen ................................................................................. 11 3.1 3.2 3.3 3.4
4
Uiteindelijk programma ................................................................ 15 4.1 4.2 4.3 4.4
5
Algemeen ............................................................................ 11 Gebruikers interface ............................................................ 12 Bestand selectie .................................................................. 13 Script bewerkingen .............................................................. 14 Gebruikers interface ............................................................ 15 Bestand selectie .................................................................. 17 Script bewerkingen .............................................................. 20 Het gebruik van BatchJob.................................................... 21
Conclusies.................................................................................... 24
Lijst van figuren: Fig. 1 Fig. 2 Fig. 3 Fig. 4 Fig. 5 Fig. 6 Fig. 7 Fig. 8 Fig. 9
: Overzicht bedrijfsstructuur “Solvus Resource Group”.............. 6 : Gebruikers Interface. ............................................................. 16 : Lijst van bestanden................................................................ 17 : Bestanden selecteren met de “Common Dialog Box”. ........... 18 : Lijst met bestanden................................................................ 19 : Opgave van de script bewerkingen........................................ 20 : Melding “Geen bewerkingen opgegeven”. ............................. 21 : Melding “Geen bestanden geselecteerd”. .............................. 21 : Help.23
Bijlagen: 1 2
: Organigram ABB Marine & Turbocharging Rotterdam : Flow Diagram - RUN
Pag. 4/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Inleiding Het omzetten van tekeningen (lees: dwg bestanden) naar een eerdere versie van AutoCAD, het overgaan naar een nieuwere versie van AutoCAD en het opzetten en bijhouden van een symbolenbibliotheek zijn geen van allen klusjes waar tekenaars naar uitzien. Dit zijn namelijk zeer tijdrovende bezigheden waarbij het er in feite op neer komt dat heel vaak dezelfde bewerkingen uitgevoerd moeten worden. Elke repeterende bewerking kan geautomatiseerd worden. Zo ook de hiervoor beschreven klusjes. In de navolgende hoofdstukken zal ik de verschillende oplossingen beschrijven evenals de keuze die ik gemaakt heb en de redenen daarvan.
Pag. 5/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
1
Organisatie
1.1
Eigen werkgever Het bedrijf waar ik voor werk (Innotiv), werkt op basis van detachering. Deze heeft door de hele Benelux kantoren. Het is onderdeel van “Solvus Resource Group” (zie: onderstaand figuur). Ikzelf ben verbonden aan de vestiging te Schiedam. Deze vestiging detacheert technici voornamelijk in en rond Rotterdam. Via deze organisatie ben ik daardoor ook binnen verschillende bedrijven werkzaam geweest.
Fig. 1 : Overzicht bedrijfsstructuur “Solvus Resource Group”.
Pag. 6/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
1.2
Huidige werkplek Op dit moment ben ik al geruime tijd gedetacheerd bij ABB Marine te Rotterdam. ABB is van herkomst een samenvoeging van de concerns ASEA en Brown&Boveri. Deze samenvoeging resulteerde in een grote multinational, gespecialiseerd op het gebied van elektrotechniek en procesautomatisering. De afdeling Marine beweegt zich in beide gebieden, met als specialisatie de (burger)scheepvaart en offshore industrie. De afdeling Marine te Rotterdam houdt zich voornamelijk bezig met: •
automatisering van scheepsmotoren (diesel - en elektromotoren).
•
automatisering van generatoren.
•
automatisering van stoomturbines.
•
automatisering van Voith Schneider aandrijvingen.
•
geïntegreerde alarm en bediening systemen.
•
opwekking en distributie van elektrische energie evenals de automatisering hiervan.
Zie ook: bijlage: 1 - Organigram ABB Marine Rotterdam
Pag. 7/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
1.3
Gebruikte CAD-systeem Het huidige CAD-systeem wat gebruikt wordt is een kale installatie van AutoCAD. Met kale installatie bedoel ik dat er geen speciale applicaties zijn toegevoegd ten behoeve van het tekenen van elektrotechnische schema’s e.d. Dit heeft tot gevolg dat er niets is geautomatiseerd (behalve Batchplot die standaard bij AutoCAD geleverd wordt). En dit terwijl AutoCAD daar juist zo geschikt voor is. De afdeling projecten, waaraan ik verbonden ben, heeft hoofdzakelijk projecten met betrekking tot automatiseringssystemen aan boord van schepen. Dit kunnen zowel nieuwe als reeds varende schepen zijn. Dientengevolge is geen één systeem hetzelfde. In de praktijk betekent dit dat er geen standaard product is maar een standaard concept/opzet. Er zal voor een nieuw project een set tekeningen gekopieerd worden van een zoveel mogelijk lijkend project dat eerder is gedaan. Vervolgens dienen deze tekeningen omgenummerd te worden naar een nieuw tekeningnummer en aan de hand van de specificaties van het nieuw te leveren systeem worden aangepast. De gebruikte bestandstructuur is als volgt opgebouwd: Op het netwerk is een plaats (directory) gereserveerd waar alle project gerelateerde documenten worden opgeslagen. Voor alle verschillende soorten documenten worden hieronder verschillende subdirectories aangemaakt. Zo ook voor het tekeningen pakket. Elk tekeningen pakket bestaat uit meerdere onderdelen (aansluit schema’s, opstellingen, tekeningen van derde partijen enz.). Voor elk onderdeel wordt weer en subdirectory aangemaakt. Tijdens de verschillende stadia van een project zullen de tekeningen steeds worden aangepast. Als er wijzigingen zijn nadat een bepaalde Pag. 8/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
versie verstuurd is, zal het revisie nummer worden verhoogd. Voor elke revisie zal opnieuw een subdirectory worden aangemaakt. Op deze manier ontstaat een overzichtelijke manier van het opslaan van de diverse, project gerelateerde, documenten. Het komt voor dat tekeningen door een derde partij (onderleverancier) aangeleverd worden. Als een dergelijke tekening aangeleverd is, word deze op het netwerk geplaatst en word er aan het bestand de eigenschap “alleen lezen” gegeven. Dit om te voorkomen dat de originele bestanden gewijzigd worden. Vervolgens dient de tekening dan omgezet te worden naar de, door ons gebruikte, CAD standaard (bijvoorbeeld instellingen m.b.t. printen). Een dergelijke tekening moet dan geopend worden, aangepast worden en onder een nieuwe bestandsnaam bewaard worden.
Pag. 9/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
2
Huidige Situatie Zoals in hoofdstuk 1.3 al aangegeven is, wordt er op het ogenblik gewerkt met een kale installatie van AutoCAD. Uiteraard zijn er wel enkele basisdingen aangepast aan AutoCAD zoals template’s, bestanden van printer configuraties e.d. Eveneens is er, door de loop van de tijd, een symbolenbibliotheek aangelegd. Dit alles bij elkaar heeft tot gevolg dat het CAD-systeem niet veel meer is dan een elektronische versie van de ouderwetse tekentafel met inktpennen. Met andere woorden: er wordt niet het volle potentieel benut van de gebruikte software. Dit heeft als nadeel dat het tekenwerk onnodig arbeidsintensief is of met andere woorden, dat het duurder is dan nodig zou zijn.
Pag. 10/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
3
Oplossingen
3.1
Algemeen Het uitgangspunt is om tijd te besparen. Het ligt dus voor de hand om repetitieve bewerkingen te automatiseren. Nu is het mogelijk om voor elke bewerking een apart programma te maken die het van de gebruiker overneemt. Dit schiet echter het doel voorbij doordat er heel veel verschillende bewerkingen mogelijk zijn. De oplossing moet daarom zo universeel mogelijk van opzet zijn en dient het, in de toekomst, uitbreidbaar zijn. Met uitbreidbaar bedoel ik dat het programma uit te breiden moet zijn met extra modules ten behoeve van het vergemakkelijken van veel voorkomende bewerkingen (voor voorbeeld zie: hst.1.3 m.b.t. het omnummeren van tekeningen). Met de kernwoorden “automatisch” en “universeel” kom ik uit bij scripten. Scripten is het opslaan van AutoCAD commando’s in een tekst bestand (herkenbaar aan de extensie “scr”) die in AutoCAD aangeroepen kan worden. Hierdoor is het automatisch uitvoeren van meerdere willekeurige bewerkingen dus mogelijk.
Pag. 11/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
3.2
Gebruikers interface Voor de gebruikers interface (bediening) zijn er verschillende mogelijkheden. Ik zou voor elke functie een los programma module kunnen maken. Dit komt de bediening, het gebruiksgemak en de duidelijkheid niet ten goede. Het is namelijk ook de bedoeling dat het programma gebruikt gaat worden door mensen die (nog) niet zoveel kennis van AutoCAD hebben. Zeker de huidige generatie computer- c.q. Windows gebruikers zijn er aan gewend dat elk programma een mooie grafische bedienings interface heeft. De gebruikersinterface dient dus grafisch, duidelijk en overzichtelijk te zijn wat betreft opzet. Als laatst moet het, voor de gebruiker. mogelijk zijn om een “help” op te roepen, voor het geval dat er iets niet duidelijk is.
Pag. 12/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
3.3
Bestand selectie Één van de uitgangspunten is dus ook om automatisch meerdere bestanden te openen, te bewerken en (al dan niet met de bewerkingen bewaard) af te sluiten. De bestandsnamen (incl. pad) dienen hiervoor bekend te zijn. Deze zouden met de hand ingevoerd kunnen worden of met behulp van een DOS commando in een tekst bestand geplaatst worden. De beste oplossing is echter om, voor het selecteren van de bestanden, een nette grafische Windows interface te gebruiken. In Windows is het namelijk mogelijk om bestanden te selecteren met de zogenaamde “Common Dialog Box”. Deze is zeer gebruiksvriendelijk en voor elke Windows gebruiker herkenbaar. Gezien het feit dat bestanden verspreid kunnen staan over verschillende directories (zie: hst.1.3) moet het dus mogelijk zijn om deze te selecteren en aan een lijst toe te voegen. In deze lijst komen dan de bestandsnamen te staan van alle te bewerken tekeningen. Deze “Common Dialog Box” moet dus ook meerdere malen achter elkaar op te roepen zijn. Omdat mensen fouten kunnen maken, moet de lijst met bestandsnamen te bewerken zijn. Het moet mogelijk zijn om op elk moment bestandsnamen toe te voegen maar ook moet het mogelijk zijn om één of meerdere te verwijderen. Deze lijst moet dus voor de gebruiker zichtbaar zijn en met behulp van knoppen te wijzigen zijn.
Pag. 13/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
3.4
Script bewerkingen Door het opzetten van een grafische gebruikers interface, voor het selecteren van bestanden, is het een kleine stap om dit ook te maken voor het deel waar de script bewerkingen opgegeven moeten worden. Gezien het feit dat scripten al standaard met AutoCAD kan, dient mijn programma ook met al bestaande script bestanden overweg te kunnen. Het selecteren van een dergelijk script bestand moet ook weer met een “Common Dialog Box”. Vervolgens zal de tekst, in dat scriptbestand, in de tekst box geplaatst worden.
Pag. 14/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
4
Uiteindelijk programma
4.1
Gebruikers interface De gebruikers interface heb ik opgezet als een window welke de gebruiker kan oproepen middels het aanklikken van een knop op een knoppenbalk. Deze knoppenbalk heb ik gemaakt om het starten te vergemakkelijken voor gebruikers die (nog) niet zoveel kennis van AutoCAD hebben. In het opgeroepen window heb ik twee zogenaamde tabbladen aangemaakt. Een voor het maken van een lijst van te bewerken dwg bestanden en een voor het opgeven van de script bewerkingen. Aan de onderkant heb ik knoppen geplaatst voor het starten en onderbreken van de batch bewerking en één voor het afsluiten van het programma. Deze laatste heb ik geplaatst om bepaalde AutoCAD variabelen weer terug te brengen naar hun oorspronkelijke waarde. Ook heb ik hier het optie vakje geplaatst waar aangegeven kan worden dat de script bewerkingen in de dwg bestanden bewaard dienen te worden.
Pag. 15/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Fig. 2 : Gebruikers Interface.
Pag. 16/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
4.2
Bestand selectie Dit alles in gedachten houdend, heb ik een grafische gebruikers interface gemaakt waarbij dit alles mogelijk is. Er wordt een lijst getoond waar de bestandsnamen in weergegeven worden.
Fig. 3 : Lijst van bestanden.
Pag. 17/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Er is een knop om de “Common Dialog Box” mee op te roepen zodat bestanden geselecteerd kunnen worden.
Fig. 4 : Bestanden selecteren met de “Common Dialog Box”.
Pag. 18/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Vervolgens zullen deze in de lijst met te bewerken bestanden geplaatst worden.
Fig. 5 : Lijst met bestanden.
Pag. 19/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
4.3
Script bewerkingen Hierin heb ik voorzien door een tabblad bij te maken met een tekst box waar de commando’s ingetypt kunnen worden.
Fig. 6 : Opgave van de script bewerkingen.
Zo de gebruiker wil, kan de inhoud van de tekst box ook opgeslagen worden in een script bestand.
Pag. 20/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
4.4
Het gebruik van BatchJob Als de gebruiker op de knop [Start] klikt zullen de volgende dingen gebeuren (zie ook: bijlage 2) : Als eerste zullen alle bedieningsfuncties geblokkeerd worden (op de knop [Onderbreek] na). Er word gecontroleerd of er bewerkingen zijn opgegeven. Zo ja, dan worden deze in een tijdelijk script bestand opgeslagen. Als er geen bewerkingen zijn opgegeven zijn, dan wordt de gebruiker de vraag gesteld of deze desondanks toch wil doorgaan of niet.
Fig. 7 : Melding “Geen bewerkingen opgegeven”.
Vervolgens word er gecontroleerd of er bestanden geselecteerd zijn. Is dit niet het geval, dan zal de gebruiker een melding hiervan krijgen, zullen de bedieningsfuncties gedeblokkeerd worden en gebeurd er voor de rest niets.
Fig. 8 : Melding “Geen bestanden geselecteerd”.
Als er wel bestanden geselecteerd zijn dan zal er een lus opgestart worden. In die lus wordt gecontroleerd of er op de knop [Onderbreek] is Pag. 21/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
gedrukt en wordt voor elk bestand gecontroleerd of het nog wel bestaat. Als de bewerkingen niet bewaard moeten worden, zullen de bestanden als “alleen lezen” geopend worden. Als de bestanden wel met wijzigingen bewaard moeten worden, wordt voor elk bestand gecontroleerd of deze wel of niet al geopend is en of het bestand de eigenschap “alleen lezen” heeft. Vervolgens wordt het desbetreffende bestand geopend (al dan niet als “alleen lezen”) en wordt het tijdelijke script bestand aangeroepen worden. Als laatste wordt het bestand afgesloten en word er gekeken of dit het laatste bestand is in de lijst. Is het niet het laatste bestand uit de lijst, dan zal de lus van voor af aan beginnen. Als het wel het laatste bestand uit de lijst is, zullen de bedieningsfuncties weer gedeblokkeerd worden.
Pag. 22/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Voor de bediening is het voor de gebruiker mogelijk om “help” op te roepen m.b.v. de functie toets [F1]. Zie ook onderstaande figuur.
Fig. 9 : Help.
Pag. 23/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
5
Conclusies Middels mijn programma is het mogelijk om script bewerkingen op meerdere bestanden uit te voeren. Door gebruik te maken van de standaard Windows interface voor het selecteren van bestanden, is dit programma vriendelijk in het gebruik en worden type-fouten uitgesloten. Door ook de interface voor het opgeven van de script bewerkingen, in het programma op te nemen, is dit een alles-in-één programma geworden. Door het gebruik van tabbladen in de gebruikers interface (zie: hst.4.1), is het redelijk eenvoudig om in de toekomst, ten behoeve van specifieke bewerkingen, programma modules toe te voegen.
Pag. 24/25
AutoCAD System Manager
BatchJob
Afstudeer Scriptie
Literatuurlijst Boeklagen, Ir. R, AutoCAD 2002 “Computer Ondersteund Ontwerpen”, 1e druk, Nijmegen, 2002.
Pag. 25/25
Hans Parlevliet Willem Philipsen Hans de Meij Jacques Kleisterlee
Office Manager Controlling Quality Communications / PR
1/9/2003
Administration / Logistics Piet van Looi Nico Dubbe
Power Products Jan de Rooy Frans Baartmans Automation Products Ton Haasdijk Projects & Retrofits Ton Haasdijk Spareparts Max Dekker Petra Steehouwer
Sales Manager Fred van den Hoonaard
Henri Hoff Fred van den Hoonaard
BAU Marine & Turbocharging BUU Marine
Radio Remote Control units Han Witteveen Tom van Dijk
Project Co-ordination Jacqueline Rolffs Engineering Harry Jezuit Erwin de Mos Maarten Bartel Paul Hesp Cees Molenaar Autocad Erwin Mangini - de Ron
Projects and Products Manager Peter van Baarle
ABB bv Marten Meesweg 5 NL-3068 AV Rotterdam The Netherlands
Service
+31 10 407 8867 +31 10 407 8445
[email protected]
Marco de Rave Marco Middelkoop Martin van Hagen Remco Lodder Anne-Wim v Lieburg
Erwin Mangini – de Ron AutoCAD System Manager BatchJob Bijlage: 1
Field Service Bert Hofman* Rene de Ruiter Richard Maes Nico de Lange Maurits Muller Stanislaw Wenta *) Senior Engineer
Technical Support / Training Paulo Caeiro
Service Co-ordination Hans Parlevliet (section leader) Barbara Tilly Maarten Burggraaf Component repair Pieter Hehakaja
Manager Tonie van Breda
Phone Fax e-mail
ABB bv - Marine & Turbocharging - Marine Organization
ABB