Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare...

88
Eindhoven University of Technology MASTER Sensor gestuurd booglassen m.b.v. een optische profielsensor en een industriele robot Nieuwmeijer, J.G. Award date: 1986 Link to publication Disclaimer This document contains a student thesis (bachelor's or master's), as authored by a student at Eindhoven University of Technology. Student theses are made available in the TU/e repository upon obtaining the required degree. The grade received is not published on the document as presented in the repository. The required complexity or quality of research of student theses may vary by program, and the required minimum study period may vary in duration. General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain

Transcript of Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare...

Page 1: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Eindhoven University of Technology

MASTER

Sensor gestuurd booglassen m.b.v. een optische profielsensor en een industriele robot

Nieuwmeijer, J.G.

Award date:1986

Link to publication

DisclaimerThis document contains a student thesis (bachelor's or master's), as authored by a student at Eindhoven University of Technology. Studenttheses are made available in the TU/e repository upon obtaining the required degree. The grade received is not published on the documentas presented in the repository. The required complexity or quality of research of student theses may vary by program, and the requiredminimum study period may vary in duration.

General rightsCopyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright ownersand it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.

• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain

Page 2: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

rO){

AFDELING DER ELEKTROTECHNIEK

TECHNISCHE HOGESCHOOL

EINDHOVEN

Vakgroep Meten en Regelen

Sensor gestuurd booglassen m.b.v.een optische profielsensor eneen industriele robot.

door J.G. Nieuwmeijer

rapport van het afstudeerwerk

uitgevoerd van december 1984 tot februari 1986

in opdracht van prof-ir. F.J. Kylstra

onder leiding van ir. N.G.M. Kouwenberg en W.J. Rogers

De afdeling der elektrotechniek van de TechIllsche Hogeschool Eindhoven aan­

vaardt geen verantwoording voor de inhoud van stage- en afstudeerverslagen.

- 1 -

Page 3: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Sarnenvatting

Samenvatting

In het kader van het onderzoek "sensor gestuurd booglassen" dat o.a.

plaatsvindt bij de vakgroep Meten en Regelen wordt een robotboog­

lassysteem beschreven. Dit systeem maakt gebruik van een optische

profIelsensor welke informatie levert over de geometrie, positie en

orH~ntatie van de te lassen naad. Met behulp van deze infonnatie

worden de toortspositie, lasspanning en draadtoevoersnelheid real

time bestuurd. Problemen die optreden bij pendelend lassen omdat

de sensor meebeweegt met de pendelbeweging en omdat de

interface-mogelijkheden van de robot beperkt zijn, worden bespro­

ken. Er zijn enige experimenten gedaan met het lassen van V-naden

in vlakke platen. De hieruit volgen conclusies betreffende de

mogelijkheden van de sensor en de gewenste mogelijkheden van de

robot worden besproken.

Abstract

Research on "sensor controlled arc welding" is one of the activities of

the professional group "Measurement and Control". A welding

robotic system consisting of an industrial robot and an optical

profile sensor is described. The sensor detects the weld geometry

and the actual position and orientation of the seam. Using this

L"1formation the system controls in real time the torch position, the

welding voltage and the wire feed rate. Problems arise with the

introduction of weaving patterns. Proper seamtracking becomes

difficult because the sensor takes part in the weaving action and

because of the limited interfadng posibilities of the robot. The sys­

tem has been used to weld some V-grooves in flat sheets. Results of

these experiments which show the pcssibilities of the sensor and

some reqUirements for the robot are included.

-2-

Page 4: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Inhoud

Inhoud

1 Voorwoord 5

2 Inleiding.. 6

2.1 Automatisering van booglassen 6

2.2 Robotbooglassystemen 9

3 Het gebruik van een optische proftel sensor bij automatisch booglassen

...................................................................................................................................... 11

4 Systeembeschrijving _......................................................... 14

4.1 Algemene systeemopzet 14

4.2 De sensor 15

4.2.1 De globale werking 15

4.2.1 Template matching 16

4.3 De robot _................................................................................................... 19

4.3.1 Inleiding _................................. 19

4.3.2 De adaptiviteit functie 20

4.4 De lasmachine ~ _ _ _..... ........................................ 25

4.4.1 Inleiding 25

4.4.2 Interfadng 26

4.5 De procescomputer en besturingssoftware 27

5 Mogelijkhed.en van het systeem _............... 29

5.1 Naadzoeken 29

5.2 Naadvolgen ~ 31

5.3 Pendelend lassen 33

5.4 Automatisch naadvullen (volumecompensatie) _ _............... 36

6 Het besturingsalgorithme 38

6.1 Te verzo.r-gen taken 38

6.2 Algemene opzet 38

6.3 Real time besturing van de dwars- en hoogtepositie van de toorts 41

6.4 timing 43

6.4.1 timing vanuit de procescomputer _................................. 43

6.4.2 timing vanuit de sensor 44

6.4.3 timing vanuit de pendelbeweging 47

- 3 -

Page 5: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Inhoud

7 Het ESAB probleem 50

8 Las-ervaring en resultaten 53

8.1 Het lassen van een eerste laag (doorlassen) 53

8,2 Het lassen van een laatste laag (vullaag) 56

9 Conclusies en aanbevelingen 58

10 Literatuur 60

BIJLAGEN 61

A Software procescomputer 62

B Software robot _................................................................................... 62

C Schema's en aansluitingen van de interface 77

D Software slaveproc~soren _ _... 79

E Registrntie pendelbanen 84

-4-

Page 6: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

1. Voorwoord

In het kader van het onderzoek op het gebied van flexibe1e produktautomatisering

en industri(He robots (FAIR) aan de T.H. Eindhoven wordt binnen de vakgroep

Meten en Rege1en (ER) van de afdeling e1ektrotechniek in samenwerking met de

vakgroep Produktie techno1ogie en Bedrijfsmechanisatie (WPB) van de afdeling

werktuigbouwkunde onderzoek gedaan naar de mogelijkheden om met behu1p van

een ASEA IRb 6/2 robot en een optische profre1sensor van 01de1ft een automatisch

boog1assysteem te realiseren. Er wordt daarbij gemikt op een systeem dat

adekwaat kan reageren op afwijkingen in de geometrie, positie en orientatie van de

te lassen naad.

Mijn dank gaat uit naar de frrma 01de1ft voor het ter beschikking stellen van de

optische profrelsensor, naar de frrma ESAB voor het aan1everen van een applikatie

en de frrma ASEA voor de ge1everde ondersteuning.

Mijn grote dank gaat uit naar mijn voorganger H.R. Klaassen, mijn afstudeerhoog­

1eraar prof. F.J. Ky1stra en mijn beide coaches W.J. Bogers en ir. N.G.M. Kouwen­

berg.

februari 1986,

Jaap Nieuwmeijer

-5-

Page 7: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

2Inleiding

2. Inleiding

2.1. Automatisering van booglassen

In de industriiHe automatisering is automatisch booglassen tegenwoordig een

belangrijk vakgebied. De verwachting is dat de toepassing van robots voor booglas­

sen een grote vlucht zal nemen zodat in 1990 20% van het aantal robots veor boog­

lassen zal worden gebruikt (zie lit 1).

In het meest extreme geval van booglas-automatiseIing worden alle taken van de

lasser overgenomen door programmeerbare apparatuur. Deze taken betreffen

ondermeer de aan- en afvoor van het werkstuk, het instellen van de juiste las

parameters, het besturen van de toorts en/of werkstuk en de kontrole op de kwali­

teit van de lasnaad.

Voor een dergelijke vorm van automatisering zijn naast een programmeerbare

manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare

besturings-apparatuur nodig.

De sensoren mooten in staat zijn de positie, de afmetingen en de vorm van het

werkstuk te bepalen en ten slotte de kwaliteit van de las te beoordelen.

De besturings-apparatuur moot in staat zijn de meetgegevens van de diverse sen­

soren te verwerken en te interpreteren en de manipulator en lasmachine te bestu­reno

Volledige lasautomatisering betekent dat kennis en behendigheid van een lasser

omgezet moet worden in vaak ingewikkelde (las) algorithmen en gegevensbestan­den. Een robotcontroller of programmeerbare logic-controller (PLC) zal hieIin

veelal te kort schieten zodat bestuIing door een (micro)computer nodig is. Het

gebruik van een computer biedt bovendien de mogelijkheid een automatisch lassy­

steem te integreren in een CAD/CAM systeem.

Bovenbeschreven vorm van volledige booglas-automatisering is zeer moeilijk te

realiseren. De complexheid van het lasproces en de interfacemogelijlr.heden van de

huidige generatie robots zijn daarbij de grootste problemen.

Commercieel beschikbaar zijn momenteel alleen systemen waarbij slechts een

gedeelte van het lasproces geautomatiseerd is en die sterk op een applikatie geIichtzijn.

In lit. 1 wordt een algemene analyse van de te automatiseren booglasoperatiesgegeven. Deze indeling zal hier kort besproken worden met de nadruk op het

toepassen van robots. Figuur 2.1 geeft een schematisch overzicht van de gemaakteindeling.

-6-

Page 8: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

2Inleiding

booglas-operaties

I Irl basis- ...--- programmerings- -- besturings-operaties operaties operaties

I

r1 1aS- r1 programmeren van de rl stabiliserende

operaties lasparameters besturingsoperaties- ....

toortsbewegings- yprogrammeren van de adaptieve- operaties toortsbewegings-parameters besturingsoperaties

figuur 2.1, schematische indeling van de te automatiseren booglasoperaties

De booglasoperaties worden in een drietal groepen verdeeld:

A Basis-operatiesDit zijn de operaties die zijn afgeleid van de fysieke handelingen die een

handlasser verricht. Er zijn twee soorten basis-operaties:

1 Las-operatiesHet betreft hier de aanvoer van (elektrische) energie. vulmateriaal en

beschermend materiaal. Bij robotbooglassen worden deze operaties meestal

door een lasmachine verzorgd.

2 Toortsbewegings-operaties

Dit betreft de beweging van de toorts en/of het werkstuk. Deze operaties

worden bij robotbooglassen uiteraard verzorgd door een robot en soms een of

meeT manipulatoren.

B Programmerings-operaties

Dit betreft het vastleggen van een bepaalde uitvoering van bovenstaande basis­

operaties in een programma. In een dergelijk programma worden proces- en

positiegrootheden in een aantal parameters vast gelegd. Deze parameters zijn te

verdelen in een tweetal groepen:

1 Las-parameters

Het gaat hier om parameters als de lasspanning. lasstroom. aa.."1voersnelheid

van vulmateriaal en beschermend materiaal en de lasvoortgangssnelheid.

- 7 -

Page 9: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

2Inleiding

2 Toortsbeweging-parameters

De beweging en stand van de toorts kunnen met een vijftal parameters

besehreven worden:

1 De toortsvoortgangs-beweging:

In simpele gevallen is deze beweging met een rechte lijn te beschrijven, in

meer gecomplieeerde gevallen moet de beweging met een groot aantal pun­

ten worden vastgelegd.

2 De toortszijwaartse positie (dwars-positie):

Dit is de positie van de toorts ten opzichte van de laasnaad in een riehting

loodrecht op de voortgangsriehting en evenwijdig aan het oppervlak van

het werkstuk.

3 De toortshoogte positie:

Dit is de hoogte ten op ziehte van de lasnaad of vorige laslaag. In de

meeste gevallen moet deze hoogte konstant worden gehouden.

4 De toortswerkhoek (zie figuur 2.2).

5 De toortsvoortgangshoek (zie figuur 2.2).

z

~:

_ WELD AXIS

figuur 2.2, de diverse toortbewegings-parameters

C Besturingsoperaties

Dit zijn operaties die afgeleid zijn van de interpreterende functie van een

handlasser. Het gaat hierbij om het detekteren en reageren op afwijkingen van

de ingestelde lasparameters die een gevolg zijn van afwijkingen van de

verwaehte situatie. Er zijn twee soorten besturingsoperaties:

1 Stabiliserende-besturingsoneraties

Het doel van stabiliserende-besturingsoperaties is het konstant houden van

een bepaalde parameter ondanks het optreden van onverwachte situaties.

Het konstant houden van de lasspanning of van de hoogte van de toorts ten

-8-

Page 10: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

2Inleiding

opzichte van de lasnaad zijn bekende voorbeelden van stabiliserende bestu­

ring. Een stabiliserende besturingsoperatie beperkt zich altijd tot een param­

eter.

2 Adaptieve besturingsoperaties

Het doel van adaptieve-besturingsoperaties is het handhaven van de laskwa­

liteit ondanks het optreden van afwijkende situaties. Adaptieve besturings­

operaties strekken zich ~eestal uit tot meerdere lasparameters Ais bijvoor­

beeld tijdens het lassen de vooropening groter wordt, zou een adaptieve

besturingsoperatie kunnen zijn het bijstellen van het pendelpatroon

(toortshoogte- en dwarspositie verloop), lasspanning en lasstroom en de

toortswerkhoek. Het zal dUidelijk zijn dat voor het implementeren van

adaptieve besturingsoperaties veel computer-eapaciteit en veel kennis van hetlasproces nodig is.

2.2. Robotbooglassystemen

Voor het verzorgen van de toortsbewegings-functies wordt tegenwoordig vaak

een robot gebruikt. Het booglasproces stelt echter enige eisen aan de te

gebruiken robot. Deze eisen zijn onder meer een hoge nauwkeurigheid en de

mogelijkheid te bewegen met een lage, eenparige snelheid. Alleen robots diegebruik maken van Continous Path besturing voldoen aan deze laatste eis.

Point to Point bestuurde robots welke van punt naar punt bewegen met een

onregelmatige snelheid zijn onbruikbaar.

Bij robotbooglassystemen die in staat moeten zijn te reageren op onverwachte

situaties, is het gewenst dat de positie en orietatie van de toorts real time bestu­urbaar zijn.

In het automatiseringsproces zijn vele stadia te onderscheiden. Met betrekking

tot robotbooglassen wordt vaak onderscheid gemaakt tussen een drietal genera­ties lasrobot-systemen (zie lit 1.):

- Lasrobot-systemen van de eerste generatie

Dit zijn systemen waarbij het mogelijk is de las- en toortsbewegings-operaties

in een geheugen vast te leggen en in deze vorm uit te voeren. Afwijkingen van

de verwachte situatie worden niet gedetekteerd en er wordt dus ook niet op

gereageerd. Dit soort systemen stelt hoge eisen aan de afwerking en positione­ring van de werkstukken.

- Lasrobot-systemen van de tweede generatie

Dit zijn robot systemen die ook in staat zijn stabiliserende-besturingsoperaties

uit te voeren. Hiertoe zijn voor externe waarnemingen sensoren (en

-9-

Page 11: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

2 Inleiding

terugkoppellussen) in het systeem opgenomen. Dit soort systemen worden op

dit moment ontwikkeld en eenvoudige uitvoeringen hiervan zijn al

commercirel verkrijgbaar.

- Lasrobot-systemen van de derde generatie

Dit zijn systemen die naast stabiliserende besturingsoperaties ook adaptieve

besturingsoperaties kunnen uitvoeren. In dit soort systemen zit dus een groot

stuk lasinteligentie verwerkt.

Dit onderzoek betreft een systeem met stabiliserende-besturingsoperaties op de

besturing van de lasspanning en toortshoogte- en dwarspositie. De computer­

capaciteit, de sensorinformatie en de besturings-mogelijkhed.en geven in principe

ook de mogelijkheid om adaptieve besturingsoperaties te implementeren. Door

de beperkte kennis van het lasproces is dit echter beperkt gebleven tot een eerste

aanzet tot automatisch naadvullen.

- 10 -

Page 12: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

3 Het gebruik van een optische protielsensor

3. Het gebruik van een optische proflelsensor bij automatisch booglassen

Een optische pronelsensor is een sensor die langs optische weg infonnatie vergaart

over de positie, vonn en afmetingen van het pronel van een lasnaad. De sensor

meet niet in het lasbad maar enkele centimeters voor de toorts. Er wordt hierbij

gebruik gemaakt van een kontaktloos, optisch meetprindpe.

Naast optische pronelsensoren worden bij automatisch booglassen nog andere typen

sensoren toegepast. De meest gebruikte zijn:

- Tastsensoren; hierbij wordt de te lassen naad afgetast en zo worden correcties op

een voorgeprogrammeerde baan aangebracht.

- Through the arc sensoren; hierbij worden boogspanningsvariaties die bij een pen­

delbeweging optreden onderzocht om infonnatie te verkrijgen over de positie van

de lastoorts ten op zichte van de naad.

lnfrarood-sensoren; deze observeren het smeltbad en zijn direkte omgeving

tijdens het lassen. Met behulp van deze temperaturen en gradienten worden de

toortspositie en de lasparameters bestuurd.

figuur 3.1, de Seampilot sensor en het geleverde profielinformatie

De optische pronelsensor die tijdens dit onderzoek is gebruikt is de Seampilot vande nrma Oldelft. De sensor is geschikt voor het herkennen van verschillende typen

lasnaden en geeft maximaal 10 maal per seconde pronelinfcrmatie over de lasnaad.

De sensor levert de volgende informatie:

-11-

Page 13: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

3 Het gebruik van een optische profteisensor

- De naadpositie:

De positie van de rooteR) en shoulder(S) punten en van het zwaartepunt(C) (zie

ftguur 3.2) worden, in een cartesisch coordinatenstelsel met de oorsprong in de

sensor, uitgedrukt in mm.

- De naadafmetingen:

De naadbreedte en vooropening kunnen uit de positie van de rooteR) en

schoulderCS) punten berekend worden, het naadoppervlak R1S1S2R2 wordt

geleverd in mm 2.

Nf\AO e,~Ef0" e,. ).

I

figuur 3.2, een V-naad en zijn karakterestieke afmetingen

Met deze informatie beschikbaar is het in principe mogelijk de volgende zaken te

rmliseren:

- Naadzoeken:

Als de naad binnen het bereik van de sensor ligt, is het mogelijk automatisch de

toorts naar het begin van de naad te brengen in de juiste startpositie.

- Naadvolgen:

Afwijkingen van een voorgeprogrammeerde lasbaan worden tijdens het lassen

door de sensor gedetekteerd, en kunnen in principe ook gecorrigeerd worden.

Omdat de sensor enkele centimeters voor de toorts meet, is er voldoende tijd

beschikbaar om de meetgegevens te verwerken en correktiesignalen te bepalen en

uit te sturen.

- Besturing lasparameters:

De sensor levert aUe belangrijke afmetingen van de te lassen naad. Door gebruik­

making van databestanden kunnen in principe de bijbehorende lasparameters

tijdens het lassen real time bestuurd worden. Omdat de sensor ook infonnatie

levert voorafgaand aan het lasproces, kunnen ook beginwaarden voor deze

- 12 -

Page 14: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

- Kromtrekken van het werkstuk tijdens het lassen en hechtlassen zijn aanvaard­

baar. Het systeem is in staat deze zaken te herkennen en er aangepast op te

3 Het gebruik van een optische profielsensor

parameters bepaald worden.

- Besturing pendelbeweging:

Bij sommige toepassingen is het wenselijk dat er pendelend (zwaaiend) gelast

wordt. Uit de afmetingen van de naad kan vooraf het pendelpatroon in vonn en

grootte bepaald worden. Tijdens het lassen kan de beweging van de toorts vol­

gens dit patroon bestuurd worden en kan eventueel het patroon wordenaangepast.

Het gebruik van een optische profielsensor vergt een grote investering. Het verschil

met eerdergenoomde goedkopere typen sensoren is dat een optische profielsensor

meer dimensies meet en zodoende ook infonnatie geeft over de afmetingen van de

naad en dat de informatie ook voorafgaand aan het lasproces beschikbaar is. Dit

levert de volgende ekonomische voordelen op:

- Minder eisen ten aanzien van de positionering van het werkstuk. Zowel de positie

als de orH~ntatie van de lasbaan mogen afwijken van de geprogrammeerde baan.

- Programmering van de robot kan eenvoudiger. Het is voldoende slechts enkele

punten van de lasbaan in het robotprogramma vast te leggen.

I -Minder eisen ten aanzien van de voorbewerking van het werkstuk. De toleran­

tievoorschriften waaraan het werkstuk moot voldoen kunnen verzwakt worden.....

reageren.

-13-

Page 15: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

4. Systeembeschrijving

4.1. Algemene systeemopzet

Figuur 4.1 geeft een overzicht van de systeemopzet zoals deze bij dit onderzoek is

gebruikt. Er is zovee1 mogelijk gebruik gemaakt van standaard industrie1e appara­

tuur. Alleen het interfacegedee1te is op de TH ontwikke1d en gebouwd.

valve

/'air dustremove

watercaallng

·Oldellt­opticalpromesensor

/

ASEA Irb 6-2

robot controller

M88000 CCU

I~~~.t======~ pr~::::~::~

M68000 SPC

IEEE 488

reduceddata

figzmr 4.1 de algemene systeemopzet

A1s sensor wordt de 01de1ft optische profie1sensor, de Seampilot, gebruikt. De sen­

sor is vast verbonden met de toorts en zo opgeste1d dat de senscr-scanlijn 25 mm

voor de stick~ut van de 1astoorts ligt. EIke 100 ms 1evert de sensor een profiel van

de te lassen naad. Een bij de sensor behorende computer voert op het gevonden

profie1 een datareduktie uit. Met een in te stellen "message rate" wordt de geredu­

ceerde data, bestaande uit de positie van 7 markante punten en het naadvo1ume,naar de procescomputer verstuurd.

De toortsbewegingsfuncties worden uitgevoerd door een ASEA Irb-6-2 robot. In

het robotprogramma zijn de globale beginpositie, de voortgangs-richting en

sne1heid, de dwars- en hoogtecorrectierichting, de toortswerkhoek en de

- 14 -

Page 16: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

toortsvoortgangshoek vastgelegd.

De diverse lasfuncties zoals de lasspanning, de draadtoevoer en de gastoevoer wor­

den verzorgd door een ESAB A32 lasmachine.

De procescomputer, een HP 9922 micro-computer, geprogrammeerd in Basic met

real time fadliteiten, interpreteert de binnenkomende meetwaarden van de sensor

en bestuurt via twee interface computers de bewegingscorrectie op de geprogram­

meerde lasbaan en via twee D/A converters de lasspanning en de'draadtoevoer,

bovendien worden er een aantal relais bediend.

Omdat een vloeiende lasbeweging vereist is, is het noodzakelijk dat een lasbeweging

overeenkomt met een instruktie in het robotprogramma. Overgang naar een andere

instruktie betekent namelijk stilstand van de lastoorts voor een onbepaalde tijd.

Dit betekent dat de functies die zijn vastgelegd in het robotprogramma tijdens een

lasbeweging niet veranderd kunnen worden Alleen de "functies die door de proces­computer bestuurd worden kunnen dus real time, tijdens het lassen, bestuurd wor­

den. Met de ASEA robot kunnen met behulp van een positie-instruktie alleen

rechtlijnige of circelvormige banen worden geprogrammeerd. Dit betekent dus dat

aleen rechte of circelvormige lasbanen kunnen worden geprogrameerd. De

werkelijke lasbaan kan afwijken van de geprogrameerde lasbaan en hoeft dus nietrechtlijnig of circelvormig te zijn.

Er is geexperimeenteerd met twee soorten werkstukken, ronde pijpen ingeklemd in

een manipulator en vlakke platen. In beide gevallen ging het om het lassen v~ v­naden.

De opzet zoals hierboven beschreven is grotendeels tijdens het afstudeeronderzoek

van H.R. Klaassen tot stand gekomen. Een beschrijving van de diverse systeemon­

derdelen is dan ook te vinden in lit. 2.

Hierna voIgt een korte beschrijving van de systeemcomponenten met de nadruk op

die aspekten die tijdens dit afstudeeronderzoek aan het licht zijn gekomen.

4.2. De sensor

4.2.1. De globale werking

De gebruikte sensor, de Seampilot van de firma Oldelft, gebruikt een laserbundel en

een lineair CCD array om met behulp van het principe van driehoeksmeting eenmaat voor de afstand tussen de sensor en het meetobjekt te verkrijgen. Met behulp

van een bewegende spiegeltje wordt de laser bundel dwars over de lasnaad

bewogen. Hierdoor ontstaat een 2-D beeld (prone!) van de lasnaad.

- 15 -

Page 17: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

motor

angle sensor __----J

beam deflector---~

scanning motion----h

4 Systeembeschrijving

~r------laser

~xl~-------focussing lens

'-- viewing mirror

--,.--- object

figuur 4.2, het principe van de Oldelft sensor

De sensor is voorzien van de nodige inteillgen.tie. Een Camera & Control Unit

(CCU) verzorgt de besturing van de sensor, een. coordinatentransformatie en een.datareduktie. Een. Signal Processing Computer (SPC) verzorgt het herkennen van

een. proftel (template matching) en het construeren van de markante punten en

waarden die als gereduceerde data naar de procesromputer worden verstuurd.

In lit. 2,7 en 8 is een beschrijving van de sensor te vinden.

4.2.2. Template matching

Tijdens het onderzoek is een nieuwe software release (version 2) in de sensor en

zijn controller geimplementeerd.

Een van de belangrijke veranderingen hieTbij betTof de methode van template

matching. Omdat dit onderzoek zich heeft toegespitst op het lassen van V-naden

worden de huidige en toekomstige mogelijkheden van template matching van een

V-naad besproken.

Huidige mogelijkheden

Een template is een geometrische beschrijving van de verwachte lasnaad. Zo'nbeschrijving bevat informatie over de vonn, de afmetingen, en de orientatie van de

lasnaad. De beschrijving wordt vastgelegd door de speciftcatie van een aantal

- 16 -

Page 18: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

parameters. Oldelft onderscheidt daarbij de volgende drie soorten parameters:

- Reg uired parameters:

Deze parameters moeten altijd door de gebruiker gespeciflceerd worden.

- Default parameters:

Dit zijn parameters die altijd nodig zijn voor het vastleggen van een template en

die een bepaalde beginwaarde (default waarde) meekrijgen. De gebruiker kan

deze waarde eventueel veranderen.

- Optional parameters:

Dit zijn parameters die, naar believen, aan een template kunnen worden toe­

gevoegd. In het algemeen betekent dit dat bij het herkennen van een lasnaad

extra criteria worden toegepast.

Template matching is het proces waarbij, bijvoorbeeld door correlatieberekeningen,

bepaald wordt of een gevonden proftel binnen de toleranties van een temp1a­

tebeschrijvmg valt. Indien dit zo is worden met behu1p van de temp1atebeschrijving

een aanta1 markante punten en waarden geconstrueerd. Deze markante punten en

waarden vormen de gereduceerde data die naar de procescomputer worden ver­

stuurd.

figuur 4.3, template parameters bij een V-naad

Figuur 4.3 geeft een overzicht van de diverse parameters die een template van een

V-naad beschrijven. X 1,X2,Pl en P 2 zijn daarbij optional parameters, alle andere

zijn default parameters.

- 17 -

Page 19: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

Als het template past op een gevonden profiel worden de punten en het oppervlak

zoals aangegeven in figuur 4.4 geconstrueerd.

T, S, S'1. T1.G

\ cC

~figuur 4.4, de markante punten bij een V-naad

C is daarbij het zwaartepunt van het oppervlak SlR 1R 2S2 Dit zwaartepunt vorrnt

een geschikt richtpunt voor de lastoorts. A geeft de grootte van het oppervlak

SlR 1R 2S2 , dit is nuttige inforrnatie als er automatische volumerompenensatie

wordt toegepast (zie paragraaf 5.4).

Toekomstige mogelijkheden

In de toekomst wordt het ook mogelijk naast de hiervoor beschreven naad­

herkenningsparameters zogenaamde lasparameters in een ternplate te specificeren.

Deze las parameters maken het mogelijk een "te lassen gebied" te deftnieren. Inftguur 4.5 is zo'n te lassen gebied gearceerd getekend en zijn tevens de beschrijvende

parameters ingetekend. Uiteraard zijn dit alle optional parameters.

figuur 4.5, definitie van een "te lassen gebied"

Daarnaast bestaat de mogelijkheid om in zo'n te lassen gebied een aantallaslagen te

definiE~ren. Daarvoor komen de parameters "bead percentage" en "bead side"

- 18 -

Page 20: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

beschikbaar. De parameter "bead percentage" geeft aari hoeveel procent van het te

lassen gebied gevuld moet worden met lasmateriaal. De parameter "bead side" geeft

aan, aan welke zijde van het te lassen gebied de laslaag moet komen te liggen.

Bij het gebruik van een te lassen gebied of een laslaag wordt het punt C in het

zwaartepunt van de laslaag gelegd en wordt voor A de grootte van het dwars­

oppervlak van een laslaag genomen. Deze informatie kan dus rechtstreeks voornaadvolg- en volumeoompensatie-doeleinden gebruikt worden.

Het bovenstaande betekent dat bij het lassen in meerdere lagen een gedeelte van de

lasintelligentie kan worden overgebracht van de procescomputer naar de sensor.

4.3. De robot

4.3.1. In1eiding

De gebruikte robot is een ASEA Irb 6-2 industri(He robot. Dit is een vijfassige

robot van het type R q,R eR Ot met een hanteervermogen van 6 kg die ingericht is voorbaanbesturing.

Axis (e)

Axis (E)

A.ili (P)

Robot co-ordinate system

figuur 4.6, De ASEA Irb 6-2 robot

- 19-

Rec:tansular co-ordinatesystem

Page 21: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

Als men de robot een bepaalde baan wi! laten volgen moeten er twee punten gepro­

grammeerd worden. Na de instruktie "RECT COORD" worden aHe verplaatsingen

als een rechte lijn geinterpoleerd. Het alternatief is de instruktie "ROBOT COORD"

hierna worden aHe verplaatsingen zodanig uitgevoerd dat de diverse asbewegingen

gelijktijdig starten en gelijktijdig in het eindpunt aankomen Voor booglas-banen is

uiteraard aHeen het eerste geval interessant.

De software zoals aanwezig in de gebruikte robot bezit een tweetal extra robot­

functies namelijk de adaptiviteit functie en de welding functie.

De adaptiviteit functie is een robotfunctie die het mogelijk maakt om externe sig­nalen afkomstig van sensoren invloed te laten hebben op de geprogrammeerde

robotbeweging. Tijdens het uitvoeren van een positionerings-instruktie kan de

robotbeweging met behulp van externe signalen beinvloed worden.

De welding functie geeft de gebruiker de mogelijkheid om vanuit het robotpro­

gramma de ESAB lasapparatuur aan te sturen. Met het deftnieren van een bepaald

datablok kan men de diverse lasparameters bij het opstarten van het lassen, tijdens

het lasproces en bij het beeindigen van de las besturen.

Bij de aanwezige software voor de robotcontroHer is het echter onmogelijk

tegelijkertijd de adaptiviteit .functie en de welding functie te gebruiken. Omdat de

adaptiviteit functie onontbeerlijk is voor het naadvolgen wordt de welding functie

niet gebruikt. Later bleek dat ASEA weI in staat is software te leveren die beide

functies kan combineren.

Verder informatie over de robot en het programmeren ervan is te vinden in lit. 3

tim 6.

4.3.2. De adaptiviteit functie

Er zijn een drietal adaptiviteit functies mogelijk:

- SEARCH:

Hierbij kan een sensorsignaal de robotbeweging stoppen of starten.

- VELOCITY:

Hierbij kan een sensorsignaal de voortgangssnelheid van de beweging beinvloeden.

- CONTOUR:

Afhanke1ijk van een sensorsignaal wordt een correktie-beweging op een

positionerings-beweging gesuperponeerd. De richting van deze beweging moet met

behulp van een correctievektor geprogrammeerd worden, de snelheid en de duur

van de correctiebeweging worden door een ser.sorsignaal bepaald.

- 20-

Page 22: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

De sensorsignalen hierbij kunnen analoog of digitaal (1-8 bit) zijn. Een beschrij­

ving van deze functies is te vinden in lit. 6.

Tijdens dit onderzoek is de contourfunctie gebruikt ten bat~ van het naadzoeken en

het naadvolgen. Hierbij zijn enige verschiIlen aan het licht gekomen tussen de

beschrijving zoals gegeven in lit. 3 en de werkelijke gedragingen van de robot. De

contourfunctie zal daarom nader bekeken worden.

Zoals bij aIle robotinstrukties heeft de contour functie betrekking op de positie en

beweging van het aktuele Tool Center Point (TCP). Als het verloop van de baan

van het TCP afhankelijk moet zijn van een sensorsignaal dan moeten er vier zaken

verzorgd worden:

1 De sensor moet gedeftnieerd worden, waarbij aangegeven moet worden of de sen­

sor vast is opgesteld, dan weI meebeweegt met het TCP en hoeveel bit het input-:

signaal is en vanaf welke inputpoorten het binnenkomt. Tevens moet er een

schaalfaktor en een bereik aangegeven worden.

SI R 4B INP2 0.15 -7/7

Het bovenstaande definieert bijvoorbeeld sensor 1, die met het TCP meebeweegt

en een 4 bit input signaal gebruikt dat binnenkomt op input 2 tim 5. De schaal­

faktor is hier 0.15 en het bereik ligt tussen de -7 en 7 eenheden.

Een sensordeftnitie wordt vastgelegd in een apart datablok en niet in het

sequentiele robotprogramma. Ben sensordeftnitie kan dan ook niet programma­

tisch veranderd worden. Er kunnen in totaal 16 sensoren gedeftnieerd worden.

2 De robot moet een verplaatsing tussen twee punten als een rechte lijn uitvoeren.

I?it gebeurt na de instruktie:

100 RECT COORD

3 Er moet een correctievector geprogrammeerd worden, dit gebeurt met behulp van

de joy-stick en de instruktie:

200 POS V""I00% VECTOR SI

Hierbij geeft SI aan dat de vector bij sensor 1 hoort.

Voor elke gedeftnieerde sensor kan zo een correetievektor geprogrammeerd

- 21 -

Page 23: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

worden. Als er twee correctievectoren loodrecht op de geprogrammeerde baan

gebrUikt worden dan kan deze baan in aIle richtingen geror,rigeerd worden.

4 Een positionerings-instruktie moet het argument CONTOUR meekrijgen, waarbij

moet worden aangegeven welke sensor de baan kan beinvloeden en een

zogenaamd biaspercentage BIAS% moet worden meegegeven. Dit percentage

BIAS% bepaalt het nulniveau BIAS van de regeling. Bij digitale sensoren gaat dit

volgens de formule:

n = het amttal bits van het input sigtuzal.

Het bereik zoals meegegeven in de sensordefmitie (1) heeft geen invloed op BIAS,

deze vormt alleen een begrenzing voor het inputsignaal.

300 POS V=loo% CONTOUR S1I50%

Bovenstaande positie-instruktie zal beinvloed worden door de sensor SI en heeft

een BIAS% van 50%. Dit betekent dat het nulniveau BIAS op nulligt en dat bij

een sensorsignaal grootte nul de positionerings-beweging onbeinvloed blijft. Bij

een deftnitie van een vier bit sensor zoals in 1 zal bij een BIAS% van 100% het

nulniveau BIAS op 7 liggen en zal bij een sensorsignaal 7 de beweging

onbeinvloed blijven.

correktie-beweging Uitgevoerde beweging

positionerings-beweging

Bij uitvoering van instruktie 300 wordt de beweging bepaald door twee gecom­bineerde bewegingen:

- Een rechtlijnige positionerings-beweging, de snelheid hievan wordt op de normale

wijze bepaald door het VELOCITY statement en het percentage in de positie-

- 22-

Page 24: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

instruktie.

- Een correctiebeweging waarvan de richting bepaald wordt door de correctievektor

zoals geprogrammeerd met instruktie 200. De snelheid van de correktie-beweging

is afhankelijk van de V% zoals vastgelegd in de correctievektor defmitie (instruk­

tie 200). De V% zoals meegegeven in de positie-instruktie (instruktie 300) heeft

geen invloed op de snelheid van de correctiebeweging. as is een maat voor de

door een sensor gemeten afwijking en bepaalt de grootte van de correctiesn~lheid

VCORR • Deze as is afhankelijk van de schaalfaktor (mm/bit) zoals vastgelegd in

de sensordeftnitie (zie 1) en van het verschil tussen het input signaal INPUT en

het nulniveau BIAS:

as = SCHAALFAKTOR (INPUT-BIAS)

Voor de grootte van de correctiesnelheid VCOTT geldt dan:

V%Vcorr=-- as

5

Vcorr= V% as40

Vcorr=O

als [asl > 0.2 mm

als 0.1 mm ~ [as I ~ 0.2 mm

als [as I < 0.1 mm

De regeling kent dus een dode zone en een kleine versterkingsfaktor bij kleine

waarden voor as. De grensen van 1 en 2 mm zijn vastgelegd in de ASEA bestu­

ringssoftware en dus niet beinvloedbaar. Bij het gebruik van digitale sensoren is

de signaalgrootte INPUT uiteraard discreet en zal dus ook VCORR discreet zijn.

Tot zover het gedrag zoals dat met enige moeite is af te leiden uit de ASEA pro­

'grammeer handleiding (lit. 3). Bij het gebruik van de CONTOUR functie zijn

echter een drietal belangrijke verschillen aan.het licht gekomen:

1 De snelheid van de correctiebeweging is lager dan verwacht. Figuur 4,7 geeft een

beeld van dit verschil.

- 23 -

Page 25: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

-t

+0

~0

0

+0

~0

0

!> 6 ~

~

iN~U.T

II>

10

-~ -b -, -It -J -'t

0

t(J

+(J

..0

+0

+

Sc..\olo.ClIL~ClIk.uft ~ O.IS'

ai PI~ °/0 :. ~o %V "0 ::=. I 00 0/0

figuur 4.7, beschreven en gemeten gedrag van de CONTOUR functie

De correctiesnelheid is uitgezet als functie van de (discrete) input. De dode zone

rond het nulpunt van de regeling blijft als offset aanwezig in het verdere verloop

van de kromme. Dit gedrag is ook meer voor de hand liggend dan het beschreven

regelgedrag. Uit een groot aantal meetingen is gebleken dat in het algemeen geldt:

V%C )VC07T::::: -5- fJ.S - of f set als fJ.S > 0.2 mm

V% C )VC07T::::: -5- fJ.S + of f set als fJ.S < -0.2 mm

17 - V% "SvC07T ..... -- ""40

als 0.1 mm ~ IfJ.S J ~ 0.2 mm

VC07T=O als lfJ.s] < 0.1 mm

De gevonden afwijking wordt gerepresenteerd door de parameter of f set welke

afhankelijk is van de schaalfaktor en van V% en aIleen experimenteel te bepalen

is.

Met nadruk wordt gewezen op de ongeveer-gelijk-tekens in bovenstaande ver­

gelijkingen. Belangrijkste conc1usie uit de metingen is namelijk dat de correc­

tiesnelheid reproduceerbaar is en onafhankelijk van de positie van de robot is,

maar dat de absolute grootte aIleen nauwkeurig is te bepalen langs experimentele

- 24-

Page 26: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

weg.

2 De ingangen welke voor de sensorsignalen gebruikt worden, worden met een sam­

pletijd van 50 ms bemonsterd. Omdat geen enkele vonn van synchronisatie

mogelijk is (zie lit. 9) betekent dit dat de tijdsduur van de correctiebeweging een

onzekerheid heeft van 50 ms. Dit is een wezenlijke beperking van het lassysteem

gebleken (zie hoofdstuk 6.2).

3 De adaptiviteit functie heeft een vertraging. Pas 150 ms (± 25 ms) nadat een

bepaald signaal op de inputpoort is gezet zal dit te zien zijn in de beweging van

de robot (zie lit. 9).

Bovenstaande bijzonderheden in de regelkarakteristiek van de adaptiviteit functie

zijn te verklaren uit het feit dat deze regeling ontworpen is voor sensoren in een

teruggekoppeld systeem. In dergelijke situaties wordt vaak een dode zone en ook

een niet-lineaire versterking toegepast. De terugkoppeling zorgt dan voor denauwkeurigheid van het systeem. Open loop besturingssystemen, zoals het hier

gebruikte systeem met een sensor die voor de toorts meet, zijn echter zeer moeizaam

met deze functie te realiseren.

4.4. De lasmachine

~4.1. Inleiding

De gebruikte lasmachine is een ESAB A32 lasmachine speciaal geschikt voor kop­

peling aan een robot. De ftnna ESAB kan een standaard koppeling tussen de

lasmachine en de ASEA robot verzorgen. Op de TH is een dergelijke koppeling

aanwezig. Hierbij worden alle functies van de lasmachine vanuit de robotcon­

troller bestuurd. De lasmachine kent de volgende functies:

1 Sturing lasspanning:

Dit gebeurt met een analoge stuurspanning tussen de 0 en 10,24 V. Er bestaat een

lineair verband tussen deze stuurspanning Vs en de lasspanning VLAS :

tJ' U 50YLAs=Ys--10.24

[volt]

2 Sturing draadtoevoer:

Ook dit gebeurt met een analoge stuurspanning Vws • De draadtoevoersnelheid,WIRE FEED, voIgt dan uit:

18WIRE FEED = Vws 10.24 [m/min]

3 Gelijkrichter aan/uit (welding on)

- 25-

Page 27: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembeschrijving

4 Draadtoevoer aan/uit

5 Bescherm gas aan/uit

6 Spatter cleaning aan/uit

De lasspanning en de draadtoevoersnelheid moeten real time bestuurbaar zijn. Dit

is niet mogelijk met besturing vanuit de robotcontroller. Tijdens de uitvoering van

een positie-instruktie is het niet mogelijk uitgangspoorten te beinvloeden en over­

gang naar een andere instruktie is n.iet gewenst vanwege onvoorspelbare haperingen

in de lasvoortgang. Vandaar dat de functies 1 tim 3 losgekoppeld zijn van de

robotcontroller en bestuurd worden door de procescomputer.

De lasapparatuur en de weldingfunctie van de robot bieden mogelijkheden om ver­

beteringen aan te brengen in de aanzet en het beeindigen van het smeltbad. De

welding functie is niet te combineren met de CONTOUR functie die nodig is voor

het naadvolgen. Eventueel kan echter bij het opstarten en beeindigen van een las­

baan weI van deze welding functie gebruik worden gemaakt.

Het is echter ook denkbaar dat alle functies van de lasmachine door de procescom­

puter bestuurd worden. Vooral bij het gebruik van een andere lasmachine lijkt dit

een logische keuze.

4.4.2. Interfacing

De koppeling die op de TH is aangebracht is zeer slecht gedocwnenteerd. De koppel­

ing wijkt duidelijk af van de standaard koppeling zoals beschreven in de documen­tatie (lit 10).

Volgens de documentatie is voor het extern besturen van de lasspanning en draad­

toevoersnelheid een stuurspanning tussen de 0 en 10,24 V nodig. Toen echter op

deze wijze de lasapparatuur werd aangestuurd, had dit het doorbranden van enige

printsporen in de lasmachine tot gevolg. Vermoedelijk worden er in de lasmachine

meerdere aardniveaus gebruikt en is bij de aansluiting een kortsluiting tussen deze

aardniveau's gemaakt. Het is niet gelukt om van de leveran,cier meer documentatie

over de juiste aansluitmethode te verkl'ijgen. Uiteindelijk is besloten een vrij

rigoreuse maar veilige oplossing te gebruiken en is een galvanische scheiding tussen

de lasapparatuur en de procescomputer aangebracht. De interface ziet er dan alsvoIgt uit:

- 26-

Page 28: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Sys~eembeschrijving

-IS

I r

~To !,•

g Sil L~,c.~ O~c.G~LVPl-

~~iT "Jj sc.~ f oJ

SL\o'ft oi N' -" "

I ..i.'1'

figuur 4.8, de aansturing van de lasspanning en draadtoevoersnelheid

De werking van de galvanische scheiding-schakeling is beschreven in lit. 11. De

gedetailleerde schema's en de betreffende aansluitingen van de connectors bevinden

zich in bijlage C.

4.5. De procescomputer en besturingssoftware

Als procesromputer is een HP 9920 micro-computer gebruikt. De belangrijkste

reden hiervoor is het feit dat de besturingssoftware voor de sensor door Oldelft op

dit systeem is ontwikkeld1• Als programeertaal is om de zelfde. reden Basic

gekozen. De gebruikte HP Basic (version 3.0) heeft een zeer uitgebreide instruk­

tieset en biedt een aantal real time faciliteiten en eenvoudige interfacemo­

gelijkheden.

Tijdens dit onderzoek zi.jn een belangrijk voordeel en een belangrijk nadeel van het

gebruik van Basic aan het licht gekomen:

- Ben voordeel van Basic

Basic maakt gebruik van een interpreter en niet van een compiler. Bij het

ontwikkelen van besturingsprogrammatuur voor sterk applikatiegerichte proble­

men en voor interfacedoeleinden is het erg handig dat er snel weizigingen in het

programma kunnen worden aangebracht. Het oplossen van applikatie- en inter­

faceproblemen gebeurt vaak proefondervindelijk zodat het ontbreken van, bij een

micro-computer vaak lange, compilatietijden erg handig is.

- Ben nadeel van Basic

Basic dWingt de programmeur niet tot gestruktureerd programmeren. Sterker nog

gestruktureerd programmeren in Basic is moeilijk en het gaat gepaard met de

1 Intussen is ook een versie voor de IBM-pc beschikbaar, de mogelijkheden hiervan zijnechter beperkter.

- 27-

Page 29: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

4 Systeembescnrijving

nodige kunstgrepen. Vooral wanneer de tijdsdruk groot is, zal men snel geneigd

zijn minder gestruktureerd te programmeren.

De besturingssoftware

Er is getracht de software modulair op te bouwen. Elke functie is ondergebracht in

een aparte routine die weer gebruik maakt van diverse andere modules die op een

lager niveau functies verzorgen

De diverse modules en de indeling in niveau's zijn te vinden in ftguur 4.9.

sensor

besturing.systeem besturing

I [I I I lI instellen Itestenl lassenI

parameters

I

I I II

lassen van lassen van lassen van

I een t e laag een r laa~ een 3e laag

~I 1 1

--r- I II initia-

naadzoeken I Inaadvolgen I data aquisitielisatieI

I \ 1I lI verwerken rbesturmg roOOt .1

I meetwaarden en lasapparatuurI II

interface routines

figzmr 4.9, de opbouw in niveua's van de besturingssoftware

De ontwikkelde besturingsprogrammatuur vormt een geheel met de door Oldelft

ontwikkelde besturingssoftware voor de sensor. Dit omdat diverse modules

gebruik maken van de mogelijheden van deze programmatuur en omdat in de

ontwikkelingsfase de sensor op verschillende manieren gebruikt is.

- 28-

Page 30: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

5. Mogelijkheden van het systeem

5.1. Naadzoeken

Voorafgaand aan het lasproces dient de toorts op een beginpositie hoven de naad te

worden ingesteld. Hierbij wordt gebruik gemaakt van de sensormeetwaarden die

verkregen worden als de naad in het gezichtsveld van de sensor ligt.

In bet proces van het instellen van de jUiste toortsbeginpositie kunnen we drie fases

onderscheiden:

1 Beweeg de sensor tot. de naad binnen het gezichtsveld van de sensor valt. De

sensor kan dit "in zicht" zelf melden.

2 Corrigeer de sensorpositie zodanig dat de sensor recht hoven de beginpositie

staat.

3 Beweeg de toorts naar de beginpositie.

De naadzoekroutine is op dit moment nog beperkt. De naadzoekroutine zoekt niet

naar het begin van de naad, maar zet de toorts uitsluitend op een punt van de

lasnaad waar het lassen kan beginnen.

figuur 5.1, een werkstuk en het werkstuk-coordinaten stelsel

In termen van werkstuk-r05rdinaten (zie figuur 5.1) betekent dit dat de naad­

zoekprocedure alleen correcties in de Y- en Z-richting verzorgt maar niet in de X­

richting.

In het geval van bet lassen van pijpen is dit voldoende (het begin van de naad

bestaat niet) bij het lassen van platen is dit echter onvoldoende.

- 29-

Page 31: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

De figuren 5.2 a,b en c laten de werking van de naadzoekprocedure zien bij een naad

die iets scheef ligt ten opzichte van de geprogrammeerde baan. Met een positie­

instruktie in het robotprogramma wordt de sensor in de omgeving van de V-naad

gebracht, zodanig dat de sensor de V-naad in het gezichts veld heeft en,zodanig dat

de sensortoorts hartlijn (T-A) evenwijdig ligt met de geprogrammeerde baan (X­

as). In figuur 5.2-a is een bovenaanzicht van deze sytuatie getekend.

Se ..,~(lyt­

SC:AN..l.\)'"

Dv

figuur S.2-a, de sensor heeft de naad in her gezichtsveld

Daarna worden met behulp van de meetgegev,ens van de sensor dwars- en hoogte­

correctiestappen uitgevoerd, zodanig dat de toorts recht voor het punt A komt te

staan. De afstand AB wordt GUS naar nul geregeld (zie figuur 5.2-b).

$E"'~o~-

~c.Cl\"'-I.:'S,.,

figuur S.2-b, de toorts staat rech! voor de beginpositie A

Vervolgens wordt de toorts over de voorloopafstand Dv evenwijdig aan de gepro­

grammeerde baan (in de X richting) bewogen (zie figuur 5.2-c). Dan pas wordt de

toorts ontstoken en begint het lassen met naadvolgen. Deze laatste handelingen

worden niet meer verzorgd door de naadzoekroutine maar door de naadvolgroutine.

Dit omdat tijdens de beweging van de toorts van T naar A (zie figuur 5.2-b) de

- 30-

Page 32: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

eerste metingen ten bate van het naadvolgen worden gedaan.

se.. soWl­5e~t-I-LiS'"

figtmr 5.3-e, de toorts staat in de beginpositie A en kan ontstoken worden

5.2. Naadvo1gen

Naadvolgen is het proces waarbij de beweging van de toorts zodanig geregeld wordt

dat de toorts op een vaste positie ten opzichte van de lasnaad de lasbaan voIgt. Het

huidige systeem is in staat lasbanen die scheef liggen ten op zichte van de gepro­

grammeerde baan en die krommingen vertonen, probleemloos te volgen.

Om een en ander makkelijker bespreekbaar te maken wordt eerst een werkstuk­

coordinaten stelsel ingevoerd. De oorsprong van dit stelselligt in het startpunt van

de lasbaan (dit is dus de toortspositie na de naadzoek procedure). De X-as ligt

evenwijdig aan de voorgeprogrammeerde baan en de Y-as ligt in het oppervlak van

het werkstuk (zie ftguur 5.3).

figtmr 5.3, het werkstuk-eoordinaten stelsel

Bij het programmeren van een lasbaan moeten een aantal zaken verzorgd worden:

- 31 -

Page 33: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

I De begin- en eindpositie van de lasbaan moeten worden vastgelegd. Daarbij is

het niet noodzakelijk dat deze overeenkomen met de werkelijke begin- en eind­

positie van de te lassen naad.

2 De sensortoorts hartlijn moet te allen tijde evenwijdig liggen met de geprogram­

meerde baan zodat de sensorscan lijn altijd evenwijdig ligt met de Y-as. Hiertoe

moet in het begin- en eindpunt de orH~ntatie van de sensortoorts. combinatie

nauwkeurig worden geprogrammeerd. rijdens het uitvoeren van de lasbaan

zorgt de robot automatisch voor het handhaven van die orientatie.

3 De correctie-vectoren (zie hoofdstuk 3.3.2) moeten nauwkeurig evenwijdig aan

de Y- en Z-as geprogrammeerd worden.

)

figuur 5.4, bovenaanzich:t van een scheel liggende en kromme laasnaad

In figuur 5.4 is een scheef liggende naad en de sensortoorts combinatie ingetekend.

De Y-positie van de toorts, YD eK), is bekend U;it voorgaande metingen. De sensor

geeft de afwijking van de naad ten op zicht van de sensortoorts as, YSENSOR' Zodat

de positie van de naad ter hoogte van de sensorscan-lijn berekend kan worden. Als

de voorloopafstand D v gerepresenteerd wordt door een buffer ter grootte M dan

moet deze positie opgeslagen worden in YD eK +M). Met behulp van YD eK) en

YD eK +1) kan de benodigde correctie-stap in de Y-richting berekend worden. Er

wordt hierbij gebruik gemaakt van het feit dat met em konstante voort­

gangssnelheid wordt gelast. Uiteraard geldt een analoog verhaal voor de Z-richting.

Het kan gebeuren dat de sensor, door ongewenste refiekties e.d., af en toe de naadniet herkent (NO MATCH) en dus geen meetwaarden levert. In zo'n geval wordt de

positie van de naad met behulp van lineaire interpolatie of extrapolatie berekend.

Het maximale aantal te tolereren "NO MATCH" punten is als parameter mee te

geven. Indien dit maximurn wordt overschreden konstateert het systeem "einde

- 32-

Page 34: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

naad" en wordt het lasproces gestopt op het moment waarop de toorts deze zone

bereikt.

Beperkingen :

- De gebruikte cyclustijd voor het besturingsproces (500-800 ms) en de gekozenvoorloopafstand (25 mm) stellen een beperking aan de voortgangssnelheid.

Momenteel zijn lassnelheden tot 8 mm/s haalbaar, voor robotbooglas­

toepassingen is dit voldoende.

- De robot stelt enige beperkingen aan de positie en orientatie van de lasbaan. Het

werkgebied van de robot is vrij klein wat bij het lassen van platen zonder mani­

pulator beperkingen oplevert. Daarnaast is de huidige ophanging van de sensor­

toorts combinatie een beperking voor de orientatie van de lasbaan. De draaiing in

de P-as van de robot die er voor moet zorgen dat de sensortoorts hartlijn altijd

evenwijdig aan de geprogrammeerde baan ligt, is door deze ophanging beperkt(zie figuur 5.5).

1.

~O'#E"" AA ....~{c.'" T~o~o, PiiV1.

~~DE" TOl>lt't~ C>P~lllw(,,·t.J(,

!;ELe:n nEIf..TEE N

"'O~ "'i\ i- i", Of ~_p'S

3

figuur 5.5 beperkingen voor de lasbaan orienratie door de huidige sensortooT1sophanging

5.3. Pendelend lassen

Pendelend (zwaaiend) lassen is een veel gebruikte techniek bij booglassen. De

toorts voIgt hierbij tijdens het lassen een bepaald bewegingspatroon. Dit patroon is

sterk afhankeUjk van de afmetingen en materiaalsoort van het werkstuk. In het

begin van het onderzoek werd er van uitgegaan dat pendelend lassen vooral

- 33-

Page 35: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

.5 Mogelijkheden van het systeem

belangrijk is bij het leggen van een eerste laag (doorlassen). Pendelend lassen zorgt

hier voor een goede inbranding op de flanken van de lasnaad en voor een goede

doorlassing. Tevens ontstaat bij pendelend lassen een parabolisch gevormd

oppervlak waarop een tweede laag good kan hechten. Bij dit soort toopassingen

werd gedacht aan pendelbreedten van maximaal 3 mm. Later bleek dat ook bij het

lassen van een tweede en een derde laslaag pendelend gelast moot worden. Hierbij

gaat het om pendelbreedten tot 15 mm.

In de huidige systeemopzet vormt pendelend lassen een probleem. De sensor, die

vast verbonden is met de toorts, beweegt namelijk mee met de pendelbeweging. De

timing van de meetpunten en de uitsturing van de dwars-beweging worden erg kri­

tisch in verband met de plaatsreferentie van het sensorbeeld en bewegingsdeforma­

tie.

Er zijn twee manieren voor de besturing van de pendelbeweging ontwikkeld, elk

met zijn eigen mogelijkheden en beperkingen:

- Lassen met real time besturing van de pendelbeweging vanuit de procescomputer

Bij deze manier van besturing wordt de pendelbeweging gesuperponeerd op de

correctie-bewegingen die ten bate van het naadvolgen worden gemaakt. Het pen­

delpatroon wordt dwars op de naad (Y-richting) uitgevoord en heeft de vorm

van een afgeplatte driehook (zie figuur 5.6).

)

.500

figuur 5.6, pendelpatroon bij real time besturing vanuit de procescomputer

De pendelfrequentie is konstant genomen. Deze is namelijk vastgelegd in de

cyclustijd van het besturingsproces en is afgeleid van de herhalings-frequentie

van de sensor welke op 10Hz is ingesteld.

Er kan gekozen worden voor een pendelbreedte afhankelijk van de gemeten naad­

breedte, afhankelijk van de gemeten vooropening of voor een konstante pendel­

breedte. De benodigde pendelbreedte wordt elke cyclus (600 ms) berekend en

- 34-

Page 36: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

uitgestuurd.

In de praktijk blijkt dat bij deze methode van pendelen het naadvolggedrag een

zweving gaat vertonen. In bijlage E.l zijn een aantal met deze methode gereali­

seerde lasbanen met verschillende pendelbreedten te vinden. Allren voor kleine

pendelbreedten « 3 mm) is er sprake van een redelijk naadvolggedrag. Grote

pendelbreedten kunnen dus niet met deze methode worden gerealiseerd. De

gevonden zweving is een rechtstreeks gevolg van de 50 ms onzekerheid in de

adaptiviteit functie van de de robot (zie hoofdstuk 4.3.2) die een onnauwkeu­

righeid van 10% in de dwarscorrectie tot gevolg heeft (zie hoofdstuk 6.3).

- Lassen met besturing van de pendelbeweging vanuit de robot

Bij deze methode wordt de pendelbeweging vastgelegd in een subroutine van het

robotprogramma. De pendelbeweging wordt dan gesuperponeerd op de

positionerings-beweging van de robot. Deze positioneringsbeweging blijft daarbij

gevoelig voor sensorsignalen zodat het naadvolggedrag gehandhaafd blijft. De

correctiebeweging voor het naadvolgen gaat nu echter in kleine stappen (grootte

orde 1 mm) zodat de onnauwkeurigheid binnen de sensor resolutie (0.3 mm)

valt.

Omdat de pendelbeweging nu is vastgelegd in het robotprogramma kan deze

tijdens het lassen niet meer beinvloed worden. De pendelbreedte is dus niet meer

real time bestuurbaar. WeI kan voorafgaand aan het lasproces een geschikt pen­

delpatroon worden gekozen. Er onstaan op deze manier ook meer mogelijkheden

voor de vorm van het pendelpatroon. De pendelbeweging kan nu zowel in de

dw.ars (¥) richting als in de hoogte (Z) richting uitgevoerd worden. De pendel­

frequentie is ook hier konstant, maar is nu vastgelegd in het robotsubprogramma

waarin het pendelpatroon is vastgelegd. Bij de experimenten is gebruik gemaakt

van een "geknikte vlinder pendelbaan" (zie figuur 5:7).

figuur 5.7, een pendelbaan bij besturing vanuit de robot

Bij het programmeren van een dergelijke pendelbeweging moet nauwkeurig te

- 35-

Page 37: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 Mogelijkheden van het systeem

werk worden gegaan. Momenteel moeten er een aantal tijdskonstanten bepaald

worden (zie hoofdstuk 6.4.3).

Bijlage E.2 geeft enige lasbanen die met deze methode zijn gerealiseerd. Bij scheef

liggende lasnaden is dUidelijk te zien dat de orientatie van het pendelpatroon niet

meebeweegt met de orientatie van de lasbaan omdat de adaptiviteit van de robot

beperkt is tot positie en geen orientatie besturing verzogt. AHren het middelpunt

(referentiepunt) van het pendelpatroon wordt door de naadvolgroutiIle zodanig

verschoven dat het pendelpatroon op de lasnaad blijft vallen.

5.4.. Automatisch naadvullen (volurne-cornpensatie)

Indien werkstukken worden aangeleverd met grote toleranties in de lasnaad

geometrie (kosten besparend) is het zaak om de lasparameters voortdurend aan te

passen om een goed lasresultaat te verkrijgen. Hiertoe levert de sensor behalve

positie gegevens ook volume gegevens van het gemeten proftel. Het automatisch

naadvullen kan in feite aHeen in de tweede en volgende lagen gebeuren omdat pas

na de grondlaag sprake kan zijn van gemeten volume.

Van de ESAB lasapparatuur zijn de lasspanning en de draadtoevoersnelheid real

time regelbaar (zie hoofdstuk 4.4) De lassnelheid is bekend zodat met behulp van

het door de sensor geleverde dwarsoppervlak het naadvolume berekend kan wor­

den.

In eerste opzet is gekozen voor een regeling met een konstante lasspanning en een

draadtoevoersnelheid die lineair afhankelijk is van het te vu1len naadvolume.

De sensor geeft elke cyclus een waarde voor het dwars-oppervlak SlR 1R 2S 2 zoals

getekend in ftguur 5.8.

figuur 5.8, he! gemeten dwars-oppervlak

De daarbij behorende draadtoevoersnelheid wordt als voIgt berekend:

- 36-

Page 38: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

5 MogelijItheden van het systeem

AWIRE FEED=Vx NAAD [mm/s]

. ADRAAD

Vx is hierbij de voortgangssnelheid en A DRAAD het dwarsoppervlak van de lasdraad.

Daarnaast is een zogenaamd vulpercentage ingevoerd, waarmee bereikt kan worden

dat slechts een bepaald gedeelte van de naad gevuld wordt.

WIRE FEED = VULOJo Vx A NAAD [nun/s]100 A DRAAD

Bij experimenten is gebleken dat de keuze van een regelalgorithme met konstante

lasspanning en een variabele draadtoevoen;nelheid voor naden met kleine toleran­

ties in de geometrie gerechtvaardigd is. Bij keuze van een relatief hoge lasspaning

blijkt het mogelijk de daarbij behorende draadtoevoersnelheid over een bereik van

75 tot 125% te rege1en zonder dat een slechte las ontstaat.

Verder is geb1eken dat de naden die met behulp van bovenstaand algorithme zijn

ge1ast, te vol worden ge1ast. De invoering van een correctie factor lijkt gewenst. De1asdeskundige van de firma ESAB-Brusse1 bevestigde het bestaan van een dergelijke

faktor. Deze faktor is echter afhankelijk van zovee1 faktoren dat voor10pig een

experimente1e inschatting het meest haalbare lijkt.

- 37-

Page 39: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

6. Het besturingsalgorithme

6.1. Te verzorgen taken

Het besturingsa1gorithme voor het 1asproces is geimp1ementeerd a1s uitbreiding van

de door 01delft ontwikke1de software voor de sensorcommunicatie. Het

besturings-a1gorithme dient de vo1gende zaken te verzorgen:

- Communicatie met de operateur.

De operateur Classer) bepaa1d de 1asmethode en de (begin)instelling van de

1asparameters en procesparameters. Een aanta1 parameters zoa1s de 1asspanning,

draadtoevoersnelheid of vulpercentage moeten tijdens het lassen door de 1asser

kunnen worden bijgeste1d.

- Binnenha1en van de sensormeetwaarden

- Verwerken van de sensormeetwaarden.

De sensor 1evert de positie van een aanta1 punten in sensorc03rdinaten en deze

moeten worden omgezet naar werkstuk--eoOrdinaten.

- Berekenen en uitsturen van de benodigde dwars- en hoogtebewegingsstappen.

- Berekenen en uitsturen van de 1asspanning en draadtoevoersnelheid.

- Uitsturen van digita1e signa1en die de sequentie van het 1asproces bepa1en. Het

betreft hier signa1en a1s "start 1asbewging", "ontsteek-toorts", enz.

6.2. Algemene opzet

Het besturingsa1gorithme gebruikt het werkstuk-eOOrdinatenste1se1 zoa1s

gedefmieerd in hoofdstuk 5.2 (zie nguur 6.1)

figuur 6.1, het werkstuk-coordinatenstelsel

Figuur 6.2 geeft het bovenaanzicht van een scheef liggende naad met daarin de

diverse variabelen zoa1s deze in het XY-v1ak zijn gedefinieerd. De toorts staat a1s

- 38-

Page 40: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

gevolg van de pendelbeweging op de linker flank van de naad.

y Yo

(;

'D")

Sc~a~­

S'PI"'\.·I~~

figuur 6.2, bovenaanzicht van een scheel liggende naad

Yr geeft de Y-positie van de toorts. YD geeft de Y-positie van het naadrichtpunt.

dit kan het zwaartepunt of een ander referentiepunt zijn (zie hoofdstuk 8). YSENSOR

is de afwijking van sensortoorts-as ten opzichte van het naadrichtpunt op een

voorloopafstand Dv voor de toorts.

In het XZ-vlak geldt een analoog plaatje. met dien verstande dat hier meestal geldt

dat ZT = ZD omdat een pendelbeweging zich meestal alleen in het XY-vlakafspeelt.

De toorts en de sensor bewegen met een konstante snelheid in de X-richting De

diverse Y- en Z- posities worden in een buffer opgeslagen. Dit buffer kan in prin­

cipe een cyclisch-buffer zijn maar ten bate van data logging wordt een buffer

gebruikt dat de hele lasbaan representeerd.

We stellen dat tijdens de k" cyclus van het besturingsproces de toortst van het

punt k-l naar het punt k beweegt (zie figuur 6.3).

- 39-

Page 41: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

~ENS.Oll­

'::oc. '" '" L\~ '-J

y

k-l

(,

n

figuur 6.3 toonsbeweging tijdens de k e cyclus

Tijdens de ke cyclus dient het besturings-algorithme het volgende te verzorgen:

- De sensormeetwaarden die zijn vergaard toen de toorts in het punt k-l stond

moeten worden binnengehaald en verwerkt. De voorloopafstand Dv wordt

gerepresenteerd door M bufferplaatsen Dit betekent dat met de sensormeetwaar­

den de positie van het naadrichtpunt k+M-l berekend kan worden:

YD(k +M-I) = YT(k-1) + Y SENSOR

ZD(k +M-I) = Zr(k -I) + ZSENSOR

= ZD (k -I) + ZSENSOR

- De lasspaning en draadtoevoersnelheid zoals berekend of zoals ingesteld door deoperateur moeten worden verstuurd.

- De dwars en hoogte-beweging zoals deze nodig is tussen het punt k en k+lmoet

worden berekend en verstuurd. Afhankelijk of de besturing van de pendel­

beweging door de procescomputer of door de robotcontroller wordt verzorgd

gebeurt dit op twee verschillende manieren:

1 Bij besturing van de pendelbeweging door de procescomputer moeten en een

verplaatsing als gevolg van het scheef liggen of krom zijn van de naad, en eenverplaatsing nodig voor de pendelbeweging worden uitgestuurd. Eerst wordt

de gewenste positie van de toorts in het punt k+l berekend:

1Y T (k +I) = Y D(k +I) ± 2:BpENDEL

Vervolgens wordt de benodigde verplaatsing in de Y- en Z-richting bepaald:

- 40-

Page 42: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

~Y = YT(k +1) - YT(k)

~Z = ZD (k +1) - ZD (k )

2 Bij besturing van de pendelbeweging vanuit de robotcontroller moot alleen

een verplaatsing als gevolg van het scheef liggen of krom zijn van de naad

worden uitgestuurd:

~ = YD(k +1) - YD(k)

~Z = ZD(k+1) - ZD(k)

De positie van de toorts moot echter nog steeds berekend worden omdat deze

nodig is bij de omzetting van sensor naar werkstuk-coordinaten.

BPENDEL is nu echter een parameter die bepaald wordt door het gebruikterobotsubprogramma.

6.3. Real time besturing van de dwars- en hoogtepositie van de toorts

Voor het real time besturen van de toorts Y- en Z-positie wordt de adaptiviteit

functie van de robot gebruikt (zie hoofdstuk 4.3.2). Met deze functie kunnen

correctie op de voorgeprogrammeerde baan gesuperponeerd worden. Deze adaptivi­

teit voorziet niet in het aanbrengen van positiecorrecties doch van snelheidscorrec­

ties. De beoogde positiecorrectie wordt bereikt door de duur en de grootte van desnelheidscorectie te besturen. In het robotprogramma zijn daartoo twee correctie­

vectoren in de Y- en Z-richting van het werkstuk-coordinatenstelsel geprogram­

meerd. Twee slave-processoren verzorgen de twee digitale (4 bit) inputsignalen

voor de adaptiviteit functie. De grootte van zo'n signaal INPUT bepaald hierbij de

snelheid van de Y- of Z-beweging en de pulsbreedte t:J van het signaal INPUT

bepaalt de tijdsduur van de Y- of Z-beweging.

Het verband tussen de het inputsignaal INPUT en de snelheid van de Y- of Z­

beweging is experimenteel bepaald:

- 41 -

Page 43: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

iV ( /) II INPUT I V ( /) II INPUTy mm s I I y mm s

I

0 0000 I 0

I I II 1 0001 I 0 -1 1001 0I

0010 I I I I1 2 1,4 -2 1010 I -1,4

3 0011 4,2 -3 1011 -4,2

14 0100 I 7,0 -4 1100 -7,0

1

5 0101 I 9,8 I -5 1101 I-9,8

I; 0110 12,6 1-6I

1110 I -12,6

0111 15,4 Ii -7 I 1111I

-15,4

De pulsduur 6.t van het inputsignaa1 bepaa1t samen met de snelheid V y de ver­

p1aatsing in de Y-richting 6.Y:

6.Y = Vy * 6.t

Vanuit het besturingsprogramma in de procescomputer wordt een gewenste ver­

p1aatsing M' doorgegeven naar de Y-s1aveprocessor. Deze slave bepaa1t dan de

sne1heid Vy en de pulsduur 6.t zodanig dat I:J zo groot mogelijk en maximaa1 500

ms is. De sturing van de duur en grootte wordt ook door de slave verzorgd. Een

beschrijving van de werking en schema's van de hardware van de slaveprocessoren

is te vinden in lit. 2. De gebruikte software, die herzien is, is te vinden in bijlage D.

In figuur 6.4 is te zien hoe op deze manier een verp1aatsing van 1,8 mm wordt

gerealiseerd. De slave bepaa1t hiertoe een pu1sduur van 420 ms en een snelheid van

4,2 mm/s en stuurt dus een signaa1 ter grootte 3 (0011) gedurende 420 ms uit.

"S4~ - - - - -r--------.'1!

r. ) -.,~

AI:': ltf.o~ A y= 0,"'2.0 • 1t,1. • I,e nn

figuur 6.4, INPUT bij een gewenste Y-verplaatsing van 1,8 mm

Onnauwkeurigheid van deze besturing

Door een stageonderzoek (zie lit.9) is komen vast te staan dat de robotcontroller

het signaa1 INPUT voor de adaptiviteit functie met een samp1etijd TSAMPLE van 50

ms bemonstert. Dit bemonsteren gebeurt asynchroon met het uitsturen van het

signaa1 INPUT door de slaves, synchronisatie mogelijkheden ontbreken namelijk.

- 42-

Page 44: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

Hierdoor ontstaat een onzekerheid in de verp1aatsing ~Y. Figuur 6.5 1aat dit zien

voor een bedoe1de verp1aatsing van 1.8 mm.

lbS43'l.i

"~="""1i

I,I

~~A y= O,It'1.0 • ~,'1. =I,!? "n

figuur 6.5, de onzekerheid in de verplaatsing ~

Met de gebruikte software voor de slave ligt de pulsduur ~t altijd tussen de 400

en 500 ms, zodat een onzekerheid van 12% ontstaat:

400 ::s;; ~t ::s;; 500 ms I~TSAMPLE = 50 ms

.... ONZEKERHEID IN ~y VAN 10-12 %

6.4. Timing

6.4.1. Timing vanuit de procescomputer

Tijdens het afstudeeronderzoek van H.R. Klaassen is er gebruik gemaakt van timing

van het besturingsproces vanuit de procescomputer. Struktuee1 gezien is dit ook de

meest logische op1ossing, praktisch gezien heeft dit echter de vo1gende nade1en:

- De synchronisatie mogelijkheden van de sensor zijn beperkt, het is niet mogelijk

van buiten af de start van een scan te initieren. De synchronisatie mogelijkheden

van de procescomputer zijn zeer uitgebreid, een interrupt van de sensor of van de

- 43-

Page 45: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

robot kan zeer eenvoudig de start van een cyclus van het besturings-a1gorithme

initieren.

- Bij timing vanuit de procescomputer lopen de cycli van de procescomputer en van

de sensor niet synchroon. Hierdoor is het nodig de discrete meetpunten die het

besturings-a1gorithme nodig heeft uit meerdere meetpunten van de sensor te con­

strueren.

Gezien het bovenstaande is pende1end lassen met een meebewegende sensor en met

deze methode van timing zeer mooizaam te realiseren.

6.4.2. Timing vanuit de sensor

Pendelbaan

Voor het verkrijgen van bruikbare meetwaarden is het noodzakelijk dat de sensor

gedurende een bepaa1de scan geen bewegingen in de Y- of Z-richting maakt. Er zijn

hiervoor twee redenen:

- Een scan duurt minimaa1 100 ms, grote bewegingen in de Y- of Z-richting tijdens

deze 100 ms maken de meetwaarden, door de optredende bee1dvervorming,onbruikbaar.

- Er is geen positie-terugkoppeling vanuit de robot aanwezig. Bij de transformatie

van sensor naar werkstuk--ooOrdinaten moot de positie van de sensor gedurende

een scan bekend zijn. Vanwege de gebruikte besturing in de Y- en Z-richting is

deze positie aIleen bekend a1s de sensortoorts combinatie geen beweging met

behu1p van deze besturing maakt.

Bovenstaande betekent dat niet alle scans die de sensor 1evert ook gebruikt worden.

Scans die gedurende bewegingen in de Y- en Z-richting zijn genomen blijven onge­bruikt.

Om deze reden is er gekozen voor een driehoekig pende1patroon met afgep1atte kan­ten (zie figuur 6.6).

- 44-

Page 46: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

c..

figuur 6.6 pendelpatroon bij besturing van de pendelbeweging door de procescompu

ter

Een scan duurt 100 ms dus de beweging AB moet minimaa1 100 ms duren. De

maximum duur van een dwars- of hoogtecorrectie-stap is vastge1egd in de software

van de slaveprocessoren en is 500 ms. Dit betekent dat de beweging Be maximaa1

500 ms duurt. Er ontstaat zo een cyclustijd Tcyews van 600 ms.

Bij deze methode van besturing wordt dus zowe1 de correctiebeweging voor het

naadvo1gen als de pende1beweging door de procesromputer (via de slaveproces­soren) bestuurd.

Timing

Een cyclus van het besturingsa1gorithme wordt geinitieerd door een interrupt van

de sensor. Met de nieuwe (software) versie van de sensor is het niet vooropgesteld

dat e1ke scan ook een sensorinterrupt initieert. Het is mogelijk een "scan rate" en

"message rate" in te stellen. In verband met de gekozen cyclustijd van 600 ms is

een zodanige "message rate" gekozen dat e1ke 200 ms een sensorinterrupt naar deprocesromputer gaat (600 ms was niet inste1baar). Figuur 6.7 geeft een overzicht

van de gebruikte timing. Gedurende de 100 ms dat de toorts geen Y- of Z­

beweging maakt wordt een scan genomen. Ben vertragingstijd "sensor delay" (±

300 ms) na het het midden van een scan komt het daarbij behorende sensorinter­

rupt bij de procesromputer binnen. De interruptservice-routine van de procesrom­puter gebruikt elk derde interrupt (dus om de 600 ms) om een dataverwerkings­

routine op te starten. Deze routine verzorgt. het binnenha1en en bewerken van de

meetwaarden.

Een vaste vertragingstijd "robot delay" (± 150 ms) voordat de robot een dwars­

beweging moet maken moeten de slave-processoren die deze beweging besturen

aangestuurd worden. Dit gebeurt door een bepaa1de tijd na de start van de

dataverwerkings-routine deze routine te onderbreken en de besturings-routine

- 45-

Page 47: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

i r 11

verwerking meetwaardenL..-_--=yf--...L.l.----j__--1..._---LL ----!'--_.J.L...__

sensorinterrupt;==:--r..l...--f-L-----l...------l..-l-----.l......---I---

aansturen robotL..- ---'~_.l_ J.L_ --U'____ via slaveprocessoren

figuur 6.7 timing vanuit de sensor

"slave" op te starten. Deze routine verstuurt de gewenste verplaatsing ~y en ~z

naar de slaveprocessoren en verstuurt tevens de gewenste lasspanning en draadtoe­

voersnelheid naar de lasmachine.

Bij deze methode van besturing worden dus met behulp van de adaptiviteit functie

van de robot, relatief grote (tot 15 mm) dwarsbewegings-stappen uitgevoerd. Door

de onnauwkeurigheid in deze besturing onstaat hierdoor een slecht naadvolggedrag

(zie hoofdstuk 5.3). Er kunnen dus alleen kleine pendelbreedtes (tot 3 mm) met

deze methode gerealiseerd worden.

Het programma SEAM_C_l (zie bijlage A.I) verzorgt een besturing zoals hier­

boven beschreven. SEAM_C_2 verzorgt een besturing met een langere cyclustijd

(800 ms). Hierbij is de tijd TRECHT dat de toorts uitsluitend in de X-richting

beweegt langer (300 ms) zodat de marge met sensorscantijd (loa ms) groter wordt.

Het gedrag van beide besturingen is echter identiek.

- 46-

Page 48: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

Het gebruikte robotprogramma is te vinden in bijlage B.l.

6.4.3. Timing vanuit de pendelbaan

Pendelbaan

De ASEA robot biedt de mogelijkheid om op een rechtlijnige positioneIings-bewegi

ng een bepaald bewegingspatroon te superponeren. De rechtlijnige beweging kan

daarbij via de adaptiviteit functie real time bijgestuurd worden. ,Het gesuper­

poneerde patroon ligt echter vast in een robot-subprogramma en kan niet real time

bestuurd worden.

POS V=lO% CONTOUR S1/50% S2/50% WEAVE PROG200 V=lOO%

Bovenstaande robot-instruktie superponeert bijvoorbeeld een beweging zoals vast­

gelegd in programma 200 op een rechtlijnige beweging die beinvloedbaar is via de

sensoringangen van Sl en S2.

Figuur 6.8 geeft een rechtlijnige beweging van A naar B, de daarop te superponeren

beweging zoals vastgelegd in programma 200 en de zo onstane robotbaan.

• ) •

B

X

figuur 6.8, pendelhaan bij besturing van de pendelbeweging vanuit de robotcontroller

Omdat de scan-eyclus van de sensor en de cyclus van de pendelbeweging asyn­

chroon verlopen, moot de tijd TRECHT nu groter gekozen worden. Het pendelpatroon

is daarom zo geprogrammeerd dat de toorts 300 ms op een flank blijft lassen.

Gedurende deze tijd zal altijd een bruikbare scan ontstaan. De robot geeft door

middel van het setten en resetten van een outputpoort aan wanneer deze rechte

- 47-

Page 49: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgorithme

stukken doorlopen worden. De totale periodetijd van de pendelbeweging wordt

hierdoor 1,7 s.

Timing

Figuur 6.9, geeft een overzicht van de bij deze methode gebruikte timing.

OUTPUTl van de robot

sensorinterrupt

r------., ...-., ......II I I

I.

r------ 'T I'" - j i• I • I

I •

" 1 .""'"U_-+ +- J.L-.__-+ ---'-''--____ output -serVIce

"wait for sensor interrupt"~:=::::;~--__---¥- --1"""

aansturen robot___________IJI....-.....II....- ] via slaveprocessoren

<0---+~oe.o"T

OELQlY

figuur 6.9 timing vanuit de pendelbeweging

Een sensorinterrupt die bij een bruikbare sensorscan hoort kan binnenkomen op een

tijdstip wat ongeveer 300 ms na het hoog worden van de robotuitgang OUTPUTI

ligt. Dit tijdsverschil is een gevolg van de vertragingstijd "sensor delay". De routine

"wait for sensor interrupt" zorgt ervoor dat het eerst komende sensorinterrupt een

- 48-

Page 50: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6 Het besturingalgo.ithme

dataverwerkings-routine opstart.

De routine "slave" die de dwars- en hoogtecorrectiebeweging opstart moot op een

zodanig tijdstip opgestart worden dat deze correctiebeweging samenvalt met de

"oversteek" in de pendelbeweging. Dit startmoment ligt "robot delay" (± 150 ms)

voor het laag worden van OUTPUTl.

Momenteel worden alle vertragingen software'matig opgevangen. Dit maakt het

nodig dat de cyc1ustijd Tcycws en de "rechtdoor gaan tijd" TREeHI' van de pendel­

beweging als parameter aan de software mooten worden meegegeven. Als de ver­

tragingstijden hardwarematig worden gerealiseerd kan deze methode voor elk pen­

delpatroon zonder het meegeven van deze tijdskonstanten worden gebruikt. Indien

er alleen maar gebruik zou worden gemaakt van sensorscans die aan ren kant van

de lasnaad zijn genomen, wordt zelfs de parameter BpENDEL (pendelbreedte) overbo­

dig.

Of deze manier van timing aanvaardbaar is hangt af van het feit of het aanvaardb

aar is de real time beschikbare informatie omtrent de naadbreedte en vooropening

niet gebruikt wordt voor een real time besturing van de pendelbreedte.

SEAM_D_l is een programma wat bovenstaande besturingsmethode verzorgt (zie

bijlage A.2). De hierbij behorende robotprogramma's zijn te vinden in bijlage B.2.

- 49-

Page 51: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

7 Het ESAB probleem

7. Het ESAB prob1eem

De firma ESAB-Brusse1 heeft tijdens dit onderzoek een applikatie voor het

ontwikke1de 1assysteem aange1everd. Het gaat hier om een prob1eem wat niet met

een "blind 1assende" boog1asrobot op te 10ssen is. De aangeleverde werkstukken zijn

sehuin afgesneden vlakke platen met een afgep1atte flank, zodat de naad tussen de

platen een V-naad is. Deze te lassen V-naad is recht (vertoont geen krommingen)

maar de to1eranties in de afmetingen zijn vrij groot. Voora1 de vooropening ver­

toont een grote to1erantie. Figuur 7.1 toont de afmetingen van de te lassen V-naad.

T°°\\~,

\ /'

f-----""\ J-I ~

figuur 7.1, de te lassen naad. bij he! ESAB probleem

De 1asmethode en de daarbij behorende inste1ling van de 1asparameters werden

door ESAB gespeeificeerd. Vo1gens deze specificaties moet er pende1end ge1ast wor­

den met een voortgangssne1heid Vx van 15 em/min. De stiek-out van de toorts

moet 12 tot 15 mm zijn en er. moet enigzins stekend ge1ast worden (toortsvoort­

gangshoek van 15 graden). De naad moet in drie lagen gevu1d worden:

- De eerste 1aag

Er moet ge1ast worden met een pende1breedte die 2 mm groter is dan de voor­

opening. De lasspanning en 1asstroom worden vast ingesteld op 19V en 160/170A (zie figuur 7.2)

- 50-

Page 52: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

7 Het ESAB probleem

BPENDEL = 2 nun + BOPEN =::: 5 nun

VLAS = 19 V

I LAS = 160/170 A

figuur 7.2, de lassspecificatie voor de eerste laag

Op deze manier moot een vlooiend aansluitend, hoI gevormd oppervlak ontstaan,

zodat een tweede laslaag goed kan hechten.

- De tweede laagBij de tweede laag moot gependeld worden met een pendelbreedte die 2 mm

kleiner is dan de naadbreedte. De lasspanning en lasstroom worden vast ingesteld

op 23/24 Yen 220 A (zie ftguur 7.3).

BPENDEL = BNAAD - 2 nun =::: 8 nun

VLAS = 23/24 V

ILAS = 220 A

figuur 7.3, de lasspecificaties voor de tweede laag

- De derde laag

Bij een derde laag moot gependeld worden over de volle naadbreedte. De lasspan­

ning wordt vast ingesteld op 24/25 V en de lasstroom is afhankelijk van het nog

te vullen naadvolume, maar varieert rond de 220 A.

- 51 -

Page 53: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

7 Het ESAB probleem

VLAS = 24/25 V

ILAS ::::: 220 A (Volumec:ompenatie)

figuur 7.4, de lasspecficaties voor de derde laag

Bij de door ons uitgevoerde lasexperimenten bleek dat de opgegeven speciftkaties

slechts zeer ten dele goede lasresultaten opleveren. In hoofdstuk 8 worden deze

lasexperimenten besproken.

- 52-

Page 54: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

8 Las-ervaringen en resultaten

8. Las-ervaringen en resultaten

Als afsluiting van dit afstudeeronderzoek zijn een aantal proeflassen gelegd. Het

betreft hier V-naden in vlakke platen die zoveel mogelijk volgens de specificaties

van de firma ESAB-Brussel zijn gelast. AUe laslagen zijn pendelend gelast met de

besturing van de pendelbeweging vanuit het robotprogramma. Er zijn experimen­

ten gedaan met het leggen van een eerste laag (doorlassen) en met het leggen van

een laatste laag (vu1laag).

8.1. Het lassen van een eerste laag (doorlassen)

Naadherkenning en naadrichtpunt

Het bleek dat bij een vooropening kleiner dan 2 mm de sensor de rootpunten (R 1

R 2 ) en het zwaartepunt (C) niet meer eenduidig construeert. In figuur 8.1 zijn drie

verschillende representaties die de sensor voor een naad met een kleine vooropening

geeft getekend.

\1 S. T. s. So. It.

figuur 8.1, drie verschiUende sensor-representaties voor een naad met een kleinevooropening

Om problemen hiermee te voorkomen wordt het naadrichtpunt voor de eerste laag

berekend uit de positie van de shoulder punten (S 1 S2)'

1YRICHrPJJrr =2"(Ys 1-Ys 2)

Met ZOFFSET kan de stick-out, waarmee gelast moet worden, ingesteld worden.

Ook hechtlassen en/of bramen kunnen problemen opleveren bij het construeren van

de markante punten. Een asymmetrische hechtlas of braam kan door de sensor op

twee manieren worden gerepresenteerd, figuur 8.2 illustreert dit.

- 53-

Page 55: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

T, 5,

8 L.1s-ervaringen en resultaten

figuur 8.2 twee manieren van sensor-representatie van een asymmetrische hechtlas

Ben strakkere vastlegging van het gebruikte template bleek hierbij geen oplossing.

Lassen

Het is gebleken dat speciaal bij het leggen van een eerste laag de instelling van de

lasspanning, draadtoevoersnelheid en pendelbreedte zeer kritisch zijn. Het gebruik

van tabellen of databestanden is beslist onvoldoende voor de bepaling van de

lasparameters. Alleen proefondervindelijk kan een lasser de juiste parameters

bepalen De volgende parameters gaven het beste resultaat:

VLAS = 20.5 V

WIRE FEED = 3.2 m/rnin

Vx = 2.2 mm/s

BpENDEL = 3.2 mm

f PENDEL = 0.6 Hz

Het gebruikte pendelpatroon is het "geknikte vlinder patroon" zoals getekend in

. figuur 8.3. De tijd dat de toorts op een vlank last, TR..."CHT' is 280 ms en de tijd dat

de toorts over een oversteek doet is 560 ms. Hiermee ontstaat een cyclustijd van

840 ms. In bijlage E-2 C1 en 2) is een registratie van een dergelijke pendelbaan te

vinden.

- 54-

Page 56: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

8 Las-ervaringen en resultaten

x

figuur 8.3 het gebruikte "vlinder pendelpatroon"

2L V(; )

~\'L. n"'I

1'l. ""

Een betere pendelbeweging zou ontstaan als ook de toortswerkhoek bij het pendelen

betrokken werd. in figuur 8.4 dit schematisch getekend. Op deze manier wordt een

betere inbranding op de vlanken van de naad verkregen.

figu:ur 8.4 pendelen met verdraaing van de toortswerkhoek

Met de huidige systeemopzet is dit niet mogelijk omdat de robot deze

vrijheidsgraad niet bezit en omdat de sensor dan een variabele orientatie ten

opzichte van de lasnaad krijgt. Pendelen vanuit een extra as of assenstelsellijkt de

oplossing.

Door de warmtewerking zal een werkstuk tijdens het lassen gaan trekken. Bij onze

experimenten bleek dat tijdens het lassen de vooropening aanzienlijk kleiner wordt

(soms van 3 naar 1.5 mm). Het is dan gewenst dat ook de pendelbreedte afneemt.

deze is echter niet real time bestuurbaar. Tevens zouden de lasspanning en de

draadtoevoersnelheid moeten worden aangepast. deze twee parameters zijn echter

afhankelijk van elkaar en de instelling is zodanig kritisch dat dit niet met een een­

voudig algorithme valt te automatiseren.

De gelegde eerste lagen zijn vrij dik. te dik om er nog twee lagen overheen telassen. Het is niet gelukt goed gelaste dunnere lagen te leggen. Volgens de lastech­

nici op de TH is dit te wijten aan de dikke afgekapte kanten van de V-naad. een

spitse V-naad zou veel beter te lassen zijn (zie figuur 8.5) Volgens ESAB-Brussel

moet deze afgekapte flank echter 1 mm dik zijn.

- 55-

Page 57: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

8 Las-ervaringen en resultaten

DLJ u[]figuur 8.5, een naad met afgekapte flimken en een spitse naad

8.2. Het lassen van een laatste laag (vullaag)

Naadherkenning en naadrichtpunt

Indien bij het leggen van de vorige laslagen de naad te vol is gelast zal de sensor de

naad niet meer herkennen. Er moet minimaal een lasnaad-flank van I mm over­

blijven wi! de sensor de naad nog als V-naad herkennen (zie nguur 8.6).

figuur 8.6, sensor-representatie van een te volle en een niet te volle lasnaad

Bij het leggen van een laatste laag wordt het zwaartepunt C weI eenduidig gecon­

strueerd, dit punt wordt dan ook gebruikt als richtpunt voor de toorts.

Lassen

Bij het leggen van de laatste laag wordt uiteraard de optie "auiomatisch­

naadvullen" gebruikt. Dit betekent dat gelast wordt met een vast ingestelde

lasspanning en een draadtoevoersnelheid die lineair afhankelijk is van het naadvo­

lume (zie hoofdstuk 5.4).

Het beste lasresultaat werd verkregen met de volgende instelling:

VLAS = 26 V

VUL PERCENTAGE = 150 %

- 56-

Page 58: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

8 Las-ervaringen en resultaten

Vx = 3.0mm/s

BPENDEL = 5.6 mm

f PENDEL = 0.6 Hz

Het hoge vulpercentage is nodig om een bolle vulling te krijgen (zie figuur 8.7). In

de toekomst kan dit percentage vervangen worden door het gebruik van een "te

lassen gebied" in de vastlegging van een template voor de sensor (zie hoofdstuk

4.2.2).

figuur 8.7, een bot afgevu1de lasnaad

Opvallend is de gebruikte kleine pendelbreedte, de firma ESAB-Brussel had een

pendelbreedte van 10 mm aanbevolen. Hierbij werd echter uitgegaan van een

driehoekig pendelpatroon, terwijl er een "vlinder pendelpatroon" is gebruikt waarbij

de toorts 280 ms een flank van de naad blijft volgen. Een registratie van dit pen­

delpatroon is te vinden in bijlage E.2 (3 en4).

De voortgangs snelheid Vx is hoger genomen als ESAB had aangegeven. Bij de aan­

bevolen snelheid van 2.5 mm/s onstaat als gevolg van de warmtewerking een enig­

sinds taps lopende las.

- 57-

Page 59: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

9 Conclusies en aanbevelingen

9. Conc1usies en aanbevelingen

- Met het huidige systeem is een lasnaadvolgsysteem voor ronde pijpen en vlakke

platen gerealiseerd. Het systeem stabiliseert de toortsdwars- en hoogtepositie

ten opzichte van de werkelijke lasnaad. Verder is er een eenvoudige vorm van

"automatisch naadvuIlen" gerealiseerd waarbij met een vast ingestelde lasspan­

ning en een draadtoevoersnelheid afhankelijk van het naadvolume gelast wordt.

Het systeem gaat uit van een voorgeprogrammeerde, rechte baan. De positie en

orientatie van de werkelijke lasbaan mag afwijken van deze baan. Daarnaast mag

de lasbaan niet te scherpe krommingen vertonen. Het systeem is toegepast bij

het lassen van V-naden in ronde pijpen en vlakke platen.

- Pendelend lassen is met het huidige systeem mogelijk maar heeft zijn beper­

kingen. Bij pendelbreedten groter dan 3 mm is de pendelbreedte niet real timebestuurbaar. Bij pendelbreedten kleiner dan 3 mm is weI een real time besturing

van de pendelbrredte mogelijk, maar zijn de mogelijkheden ten aanzien van de

vorm van de pendelbaan beperkter.

- Pendelend lassen met grote pendelbreedten (> 3mm) is gerealiseerd met een

besturing van de pendelbeweging vanuit het robotprogramma. Daarbij is het niet

mogelijk de pendelbreedte real time te besturen. Besturingstechnisch geZien is dit

een aantrekkelijke oplossing waarbij een goed naadvolggedrag gerealiseerd is en

vele pendelpatronen mogelijk zijn. De aanvaardbaarheid van deze oplossing

hangt af van economische en lastechnische afwegingen:

Is het economisch aanvaardbaar dat weI real time beschikbare informatie

niet gebruikt wordt voor een real time besturing?

Is het mogelijk zonder real time besturing van de pendelbreedte een goede

laskwaliteit te verkrijgen ?

- Het ontbreken van real time besturing van de pendelbreedte bij grotere pendel­

breedten (> 3 mm) is een gevolg van een onnauwkeurigheid van 10% in de real

time besturing van de toortsdwars- en hoogtepositie. Dit is een rechtstreeks

gevolg van het ontbreken van synchronisatie mogelijkheden bij het inlezen van

sensor-signalen door de ASEA robotcontroller en van het ontbreken van een

positie-terugkoppeling. Er zijn twee manieren om dit op te lossen:

Het aanbrengen van synchronisatiemogelijkheden. Waarschijnlijk moet dit

in de besturings-software van de robotcontroller gebeuren zodat aIleen de

firma ASEA dit kan realiseren.

Het aanbrengen van een positieterugkoppeling. Momentee1 biedt noch de sen­

sor (meet 25 mm voor de toorts) noch de robot deze mogelijkheid.

- 58-

Page 60: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

9 Conc1usies en aanbevelingen

De mogelijkheden ten aanzien van de vorm van de pendelbaan bij real time

besturing van de pendelbeweging zijn beperkt omdat bij de ASEA robot de orien­tatie van het TCP niet real time bestuurbaar is. AHeen de positie van het TCP is

real time bestuurbaar.

- De pendelbeweging moet niet door de 5 standaard-assen van de robot verzorgd

worden maar moet vanuit een extra as of assenstelsel verzorgd worden. Er zijn

hiervoor een aantal redenen:

De sensor hoeft dan niet mee te bewegen met de pendelbeweging, de timing

en uitsturing voor het naadvolgen worden dan eenvoudiger. Bovendienvormt de sensor-positie en orientatie geen belemmering meer voor de te

kiezen pendelpatronen.

Er zijn lastechnisch gezien betere pendelpatronen mogelijk. Met name een real

time besturing van de toortswerkhoek is gewenst.

Doordat niet de hele robot meebeweegt met de pendelbeweging zullen

storende dynamische effekten veel minder zijn en zal de robot minder

slijten. Zeker de dominante bijdrage van de eerste as dient vermeden te wor­

den.

Een nadeel van de extra as is de bijdrage ervan in de polsbelasting die zelfs

zonder deze Uitbreiding de maximaal toelaatbare waarde benadert.

- De informatie van de sensor en de aanwezige computer-eapaciteit biedenmogelijkheden tot de opbouw van een systeem met adaptieve besturing van de

lasparameters. Een dergelijk systeem bepaalt afhankelijk van de positie en

orientatie van het werkstuk beginwaarden voor de toortspositie- en de laspara­

meters en bestuurt tijdens het lassen Creal time) een aantal belangrijke parame­

ters. De volgende parameters dienen real time bestuurbaar te zijn:

1 De dwars- en hoogtepositie van de toorts ten op zichte van de naad Cgereali­

seerd in het hUidige systeem).

2 De lasspanning en draadtoevoersnelheid of lasstroom Cgerealiseerd in hethUidige systeem).

3 De pendelbreedte (in dit systeem aHeen mogelijk bij kleine pendelbreedten of

bU toepassing van een extra as of assenstelseO.

4 De toortswerkhoek (in dit systeem aHeen mogelijk bij de toepassing van een

extra as of assenstelseO.

5 De toortsvoortgangssnelheid Ceenvoudig toe te voegen aan dit systeem}.

- 59-

Page 61: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

9 Conclusies en aanbevelingen

- Bij de ontwikkeling van een automatisch lassysteem en in het bijzonder bij de

ontwikkeling van een systeem met adaptieve besturingsmogelijkheden zijn een

grondige theoretische kennis van het lasproces en de inzet van lasdeskundige

beslist noodzakelijk.

- 60-

Page 62: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

10 Literatuur

10. Literatuur

[1] V. Malin; Designer's Guide to Effective Welding Automation, Part 1: Analysis

of Welding Operations as Objects for Automation.

Welding Journal nov. 1985

[2] H.R. Klaassen; Interfacing van een optische profielsensor met een industriele

lasrobot.

Afstudeerverslag T.H. Eindhoven, vakgroep ER, december '84

[3] ASEA IRb 6/2 Programmeerhandleiding.

Descrtption CK 09- 1401N, feb. '85

[4] ASEA IRb 6/2 Instalation Manual.

Descrtption CK 09- 130lE, mei '83

[5] ASEA IRb 6/2 Service Manual.

Descrtption CK 09- 1502E, jan. '83

[6] ASEA IRb 6/2 Circuit Diagrams.

Descrtption CK 09- 1503E, juni '84

[7] G.L. Oomen, W.J.P.A. Verbeek; A Real Time Optical Profile Sensor for Robot

Arc Welding.

[8] W.J.P.A. Verbeek; Arc Welding Process Control By Preview Sensor.

Symp. on Robot Vision and Sensory Controls '85

[9] M.J.A. Tielemans; Onderzoek aan de adaptive control van de ASEA IRb 6/2.

Stageverslag T.H. Eindhoven, vakgroep ER, maart '85

. [10] ESAB; A32 HD Robot Welding Equipment.

Descrtption

U1] Hewlett-Packard Optoelctronics division; Optoelctronics Aplication Manual.

- 61 -

Page 63: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

COM ILa.para••1 INIEGER Robot_tnt ,JMp3 ,Ga. ,Power_aource ,loorts( 150) ,Man1pu

!!dit zijn de &tateMentn veer het auto~ateMatl&ch las,enIveor e.a. het laasen van'V-naden in vlak~e platenIM.b.v, de OLDELFT-aennor en da ASEA IRb 6/2 robot

IVOOR HET VERlATEN VAN SEAMfRACKING![ERST JUI5TE INTERRUPT SERVICEiROUTINE KLAARZETIEN

IA BEINVLOEOT DE PENDELBREEDTEITOORTS MOET ONTSTDKEN WORDEN!PENOELlEN OVER DE VOOROPENEING'BEEN AUTOMATISCH NAADVULLEN

"EXIT" GOTO Exit.laag"DATA" GOSUB Oata_verwerk,ng·l.AAB t" GOSUB ladQ..1"LAAG 2" GOSUB Laao_2"[AAG 3" GOSUB Laao_3

TA8XY(C,3),"LftSSEN VAN EEN EERSTE LAAG:"TABXY(0,4)1'~at 1nstelb",re las .panntng en dread toevoer"TABXYC0,51,"pendelbreedte .. fhankeltjk van de voor opening"TABXYI0.8);"-------------------------------------------------------

Lae(j_l:GOSUB ClearJeY5SYSTEM PRIORITY 0Z_ofhet-170Voltaoe=19Wir"_5peed~3.2

A~2

L<ls_vla~ul

DoorIa5_v.l"o~1

Vul_vlag-0I •GOSUB In1tlalla"erGOSUB NaadzoekenIPRINTPRINTPRINTPRINT

ILAAB_l DELE ROUTINE VERIORGI HET OOORLA5SEN (EERSIE LAS)DE LAS SPANNING, WIRE SPEED KUNNEN WORDEN INGESTEl.ODE PENOEL BREEOTE 15 1\ MM GROTER AlS DE GEMETEN

! VOOR OPENING!------------------------------------ -----------------------------------

UN Kty ~ LnCCL I~~' ~I ~~~J ~~~~~ '_-r_-r---ON KEY 5 LABEL "SET SPEEDS" BOSUB Set_speedsON KEY 1 LABEL "SET OFSETS" GOSUB S~t_Dffsets

ON KEY 6 LABEL "SET SYSTEM PAR." GOSUB Set_sys_parON KEY 9 l1\BEL "aOOG l1\'iSEN" GOSUB l."d!Ll",senON KEY 2 GOTO BloplON KEY 8 GO TO Blop1ON KEY 7 GOTO BloplON KEY 3 GeTO BloptON KEY 4 LABEL "EXIT" GOTO EXlt_to_MalnGO TO BloplJ

E~lt_to_Meln: tON INTR 7 GOSUB Senaor_serv1ceGOTO MaIn!!-----------------------------------------------------------_._----------!Laa~lasaen: SUBROUTINE VOOR HET LASSEN VAN VLAKKE PlAIEN IN DRlf! LAGEN!-----------------------------------------------,

Laao_laaaen: I

GOSU8 Clear_~eY5

SYSTEM PRIORITY 0!

810>,2: TijdON KEY 4 LABELON KEY 0 LABELON KEY 7 LI\BELON KEY 8 LABELON KEY 9 LABELGOTO Blop2!

E.<It_laag:RETURN1

1------------------------------------------------------------------

5blOlO5610562056305640565056605670Si680569057005710572057305740575057605770578057905800581058205830584058505860587135fHJ0,;8905!J005910592059305'34059505960597059805990600060106020603060406050606060706080609061006110611161206130614061506160617061716172

l\II)'

MESSAGES/SECDE 300 MSEC I I IOFF

ISCANWIDTH110 SCANS/SEC!CENTRE OFFSET=0IMEASUREMENT UNITS-MILLIMETERS

!CAMERA MOUNTING DIRECTION-BACKWARDS~FITT DATA MODE- ON!FITT DAIA RATE IS 5

EEN SENSOR INTERRUPT OMIFILTERED DATA MODE·!FllTEREO DAlA RATEIINITIAlIZE SENSOR

!VOORLOOPAFSTAND SENSOR-TOORTSINULIN5TELlING VOOR OWARS-REGELING SENSOR!" HOOGTE-REGELING SENSORI Y CORRECTIE SNELHUD SCHAALFACTOR 0.30 4 BIT11 CORRECTIE SNELHEID SCHAALFACTOR 0.15: 4 aITIVOORTGANGSNELHEID ROBOT - LASSNELHEIDICYUCLUS TIJO AANSTURING SLAVESIVERTRAGINGS TIJO ROBOTIVERTRAGINBS TIJO SENSORIFILTEREN VAN Yd OVER N LIN MEETPUNTEN!AANTAL t~O MATCHES NDOIG VOOR E[NDE NARD OETEKTIE!DIAMETER LASDRAAD IN MM

Chan~ed-0 THENDv-25Y_off.et--·11.5Z_effset-174Vy-31 .4Vz=15,5Vrobet-2.5T_cyclus·.G0O"lay_robot~,.15

Delay_.ensor-.302N_l111-1NMt_Max~5

D_draad-l.2END If,OFF CYCLE

,............•...........•...................•...•.•.•...••...•...•..•••. '

I

,...........•...........................•.•..............................!

SeaMtrack!n~:

500050105020 ,••=........... AUTOMATIC SEAMTRACKING ••••••••••••~•••••••••••••••••••503050405050506050705080

,509051005110lator5120 COM IChal INTEGER Chal ,Cha25130 COM IRobolvelocl REAL VY,Vz5140 COM IProftel1 REAL Yd(150),'(t(150),ld(150),8_na",d('50),B__op~n(150},0(I~i0)5150 COM IBooleanl INTEGER Match( 150),No_track( 150)5160 COM IPara~1 REAL Voltaoe,WIre_feed5170 INTEGER K,M5172 INTEGER Lu_vi ag ,Deer 1Ba_v laQ ,Vu 1_'11 ag ,E" j t _t rack I ng ,5 t 0PP Yanda 11 eft, St..rt_verwerk,Vierde5173 INTEGER NMt_Max,Int_teller,NMt5174 I5180 I5190 Set_up_d.. te(1)-405200 5et_up_data(2)·1

i5210 Set_up_data(3)·05220 Set_up_data(4)·05230 Set_up_dntaI5J·Warn_level5240 Set._up_dat a ( [j )-Errer_I eve I5250 Set_up_.dataC7 )·15260 Set_up_deta(B)·'5270 Set_up__deta( 9J·25280 !IN WERKELIJKHEID BETEKENT OIT5290 Set_up_dat .. ( 10)=05300 Set_up_datal 11 )-25310 GOSUB Fill au send5320 Stype_code:'S'-5330 CALL Send_MessageCStype_code,Sequence_nuMber,Su send' ~Senaor)

5340 I - ,

5350 !INITIALISATIE EXTERNE PhRAMETERS5360 !CALLEEN DOORLOPEN ALS PARAMETERS NIET VERAND~RO IIJrl)5370 !5380 IF539054005410542054305440545054605470548054905500553055405550

_._---------------------"

Page 64: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

6730 ON KEY 9 LA8EL "START LASSEN" 60SU8 Naadvolgen6740 I6750 Blop42: Tljd6760 IF EXit_tracklnQ=0 THEN 60TO Blop426770 aOSUB Inlt_scroen6780 RETURN6790 I

6800 1------------------------------------------------------------------------6810 ILAAG_3 DEZE ROUTINE VERZORGT HEr LASSEN VAN DE DERDE LAAG6820 I DE LAS SPANNING KAN WOROEN INGESrELD6821 DE ORAAO TOEVOER WORDT AUTOMATISCH GEREGELD6830 DE PENOEL BREEDTE 15 A MM KLEINER AL5 DE GEMErEN6840 I NARD BREEOTE6850 1--------------------------------------------------------------------6860 I6870 Laag_3: ,6880 l_offeot=1776890 Voltaga-246900 Vul_faktor-I ICORRECTIE FAKTDR VODR HET AUTOMAT1SGH NAADVULLEN6910 A=I IA BEINVLOEDT DE PENDEL BREEDTE69Z0 Las_vlaQ=l ITOORTS MOET ONTSTOKEN WORDEN6930 Ooorlas_vleo-13 iPENOELLEN OVER DE NAADHREEDTE6931 Vul_vI "0-1 I ME TAUT OMAT [SCH NAAD'JlJLLEN69413 !6950 GOSU8 Inltlaliseer6960 GOSUB Naadzoekenb970 GOSlJB Cl~ar_keys

69813 SYSTEM PRIORITY 06990 I

7000 PRINT rABXYI0,31;"LASSEN VAN fEN LAArSTE LAIIG:"7010 PRINT TABMY(0,4)1"~et instelbare las .panning"7011 PRINT TABXYI0,5);"dread toevner afhanLellJL van het naad volu~e"

7~13 PRINT TAOMYI0,6),"pendelbreedte afhanLeJjJk van de naad breedte"7014 PRINT TABXY(0,B);"-------------------------------------------------------

111"1"

V"M/MIN"

Nilf\D BREEOIE ..

"VOLTAGE" GOSUB Upvolt"VUL FAKTOR" GOSU8 Upvul"PENOEL BREEOTE" 60SU8 Upbreedte"OOOF TDORTS" GOSUB Bedien_toorts"START LASSEN" GOSU8 Naadvolgen

LABELLABELLA8ELLABELLABEL

TA8MY(0,91;"LAS SPANNINGTf\BXY(0,ll )I"DRAAD rOEVOERrA8XV(0,13);"PENDEL8REEOTE =rABXY(0,15);"VUl FAKlOR ."r /\8X Yl 0, '6 ) I "-- ------------ .. --. - ------------ -- ----------- - - --- ---- --- _.- .. -

PRINTPRINlPRINTPRINTPRINT

702070307040704\7050

7060 PRINT TABXY( 17,9) I

7070 PRINT USING "ZO.OO",Uoltage7071 Wire_~peed=Vrobot·O(H).Draad_faLtor.Vul_faLtor

7080 PRINT TA8XYI 17,11 );7090 PRINT USING "ZO.OO";Wlre_speed7091 PRINT TABXY(3Z,13);71392 PRINT USING "20.0";A7093 PRINT TA8XYI17,15);7094 PRINT USING "ZO.OO"IVul_fektor7095 Print_~atenIM)

7100 I7110 ON KEY 57120 ON KEY 67130 ON KEY 77140 ON KEY 87150 ON KEY 97160 1

7170 Blop43: Tijd7180 IF E~jt_tr"cking·0 THEN GOTO Blop437190 GOSUO Init_~creen

72130 flETURN

6210 PRINT TABXYI0,14)'"------------------------------------------------------

6640 PRINT TABXY( 17,9)\6650 PRINT USING "20.DO"IVa!tage6660 PRINT TABXY( 17,11 ),6670 PRINT USING "20.DO";Wlra_speed6671 PRINT TA8XY(32,1])16ij72 PRINT USING "20.0",A6673 Print_~atenIMl

6674 Send_pera~(Voltage,Wira_speedl

6600 PRINT TABXYI0,9),"LAS SPANNING V·6610 PRINT TABXYI0 ,II ) I "ORAlIO TOEVOER - MiMIN"6620 PRINT TABXV(0,13),"PENOELBREEOTE - NAAO 8REEOTE - MM"6630 PRINT TABXY(0,14ll"------------------------------------------------------

6220 PRINT TABXY(17,9);6230 PRINT USING "20.00";VoltaQo6240 PRINT TABXY( 17,11 l;6250 PRINT USING "20.00";Wire_speed6251 PRINT rABXY(3Z.13);6252 PRINT USING "20.0";/\6253 Print_~aten(M)

6254 5end_para~(VoltaQe,Wire_speedl

6262 I6270 ON KEY <; LABEL "VOLTAGE" GOSUB Upvolt6280 ON KEY 6 LABEL "ORAAO TOEVOER" GOSUB Upspeod6290 ON KEY 7 LABEL "PENOEL BREEOTE" GOSUB Upbreedte6300 ON KEY 8 LABEL "OOOF TOORTS" GOSUB Bcdien_toort~

6310 ON KEY 9 LABEL "START LASSEN" GOSUB Naadvolgen6320 16330 Blop41: Tijd6340 IF EXit_trecking-0 THEN GOTO Alop416350 GOsue Inlt_screen6360 RETURN6370 16380 1------------------------------------------------------------------------6390 ILAAG 2 OEZE ROUTINE VERIORGT HET LASSEN VAN DE lWEEDE LAII66400 1 - OE LAS SPANNING, WIRE SPEED KUNNEN WOROEN lNGESTELO6410 I DE PENOEL BREEOTE 15 II MM KLEINER ilLS DE GEMETEN6420 ! NAAO BREEOlE6430 1------------------------------------------------------------------------6440 16450 LeaQ_2: I6460 2_offset-1716470 Voltegc-246480 Wiro_speed-5.S6490 A-2 !A 8EINVLOEOT DE PENOEl BREEOTE6500 Las_vlag-l !TOORTS MOET ONTSTOKEN WORDEN6510 000rlas_vlao=0 IPENDELLEN OVER DE NAIID8REEOTE6511 Vul_vlao-0 IGEEN AUTOMA11SCH NIIAOVULLEN6520 ,6530 GOSUB Initialiseer6540 GOSUB Naadzoeken6550 GOSUR Clear_keys6560 SYSTEM PRIORITY 06570 I6580 PRINT TABXY(0,31;"LASSEN VAN EEN TWEEOE LAAG:·6590 PRINT TABXYI0,4);"~et instelbare las spannlnQ en draad toevoer"6591 PRINT TABXY(0,G),"pendelbreedte afhankelljk van de need broodto'6592 PRINT TABXY(0,B)I"-------------------------------------------------------

Page 65: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

IY COOROINAAT lWAARTEPUNl

Il COURDINAMI 'WAARIE~UNr

!ALLEEN 81J VIEROE SENSOR11N1ERRUPI UE 51.AVES MANSTIJREN

,~

or,

7260 !---------------------------------..-----------------------7270 !7280 Initiallseer: I7290 PRINT TABMYI0.3)\· ••• INITALISATIE ROUTINE III

7300 M-INTlCDv/(T_cyclus"Vrobot )1+.5) !BEREKENING HUFFERLENGTE7310 PRINT TA8MYI0,611·BUFFERLENGTE-·lM7320 Dra",d_fIlUor~.0fi.4/3. 14/D_draad/D_droad I FAKTOR VOOR NMDVULLEN7330 Chol-0 !TELLER VOOR AANTAL KEREN7340 Chd2-0 ! DUTY CYCLE > 100 X7350 K=07360 FOR P-0 TO M-17370 MatchCPI=17390 NEXT P7400 FOR P-0 TO 1507410 YdCPI-07420 YtIPI-07430 IdIPI-07440 B_naadIPI-07450 B_openIP)-07451 OIPI-07460 ! MatchlPI-07470 Toorts(PI-07480 No_track(PI=07490 NEXT f'7500 Stopp-07510 Exit_tracking-07520 Pendelleft-07521 Pendel_breadte-07530 PRINT TAHXY(0.411"7540 PRINT TABMYC0,SII"7550 RETURN7560 I7570 1------------------------------------------------------------------------7580 !NARD ZOEI<EN: DElE ROUT)NE lET D[ IOORi RECHT \JOOR DE LAS NAAD7590 , EN GEEFl B_.naad01 I. l3_openl M). 01 MI EEN BEGIN7600 , WAAROE7610 ,------------------------------------------------------------------------7620 I7630 Nlladzoe~an:

7640 GOSUB Clear.keys7650 SYSTEM PRIORITY 07660 !7670 PRINT fABKYI0.3),· ••• NAAD lOE~ ROUTiNE •••7680 ON KEY 9 LABEL ·STOP IOEKEN" GOTO Stop.nalld!oeken7690 I7700 ON INTR 7,4 GOSUU Service !TIMING VANUIl DE SENSOR7710 ENABLE INTR 71MIIsk7720 ENABLE7730 !7740 Int_teller~0

7750 5tart_verwerk~0

7760 Wait.int_ind: Tijd7770 IF st"rt_verwer~·1 lHEN GOSU8 Init_verwerk7780 IF Stapp·' THEN GOlD EXit.nalldzoeken7790 6010 WIIlt_lnt.init7800 !7801 Stop.ndadzoeken:7802 Exit.tracking=17803 ,7810 E~1t_naadzoeken: !7820 GOSUB Init.6creen7830 OFF I NTR7840 RETURN

7880 SENSOR TIJDENS Ut KUUI1Nt NMMULU~~CN7890 1 a _

7900 I7910 1," t_verwerk: I7520 Start_verwerk-07530 IF Vierde=0 lHEN7940 Vierde-l7950 ELSE7960 Vierde-07970 IF NUMIRdata$[811=4 l~EN

7980 OISP "7990 FdI-0B000 Rddt~_length.LEN(Rdata$)-1

8010 FOR Rl-1S TO Rdatll_Iength SfEP 28020 FdI-Fdl+l8030 Rf II tdata( Fdl l-BINIOR( NUMC Rdata$1 RI I > .ROTATE( NlJ/1\ Rd,!I,a$[ 111 t 1 ] ) ,8 i )

8040 Yz(Fdl )aIRfiltdata(Fdl 1/32)8050 NEMT Ri8051 IF Ooorla,.vlag-l THEN8060 Mldden=<Yz(9l+Yz( 15) )i2

8061 ELSE0062 Mldden=Yzl I)8063 END IFB070 Hoogte~l Yzl 12 )+Yz( '8 l li28080 Hn-l_off~et-Hoogte

8090 Yn-Mldden-Y.offsel8100 PRINT lABMY(0.ISli"8110 IF ABSIYn».2 OR A8S(Hnl~.J THEN8120 Y.displace(Yn/l.5)8130 Z_dlsplaceIHn/l.5 I8140 CONTROL 12.2;2815~ CONTROL 12.2;3SIB0 ELSE0170 Slopp~1

B18D PRINT TABMY(0.9Il·INITIALISATIE KLAAR·8181 B_naadCMI-ABS(Yz(31-YzI5»)8182 B_openIMI-ABS(Yz(15)-Yz(91)8190 0<t1)~( 1.0'NUM<Rdata$ll1 I )t",:Sf'.0·NUMIRd,.Ila$1 121 HfjSS:1o.0'NIJMIRd"ta$[ 13) ltI67772IB.0.NUMIRdatdr 14) i 1/10?4

8200 END IF0210 ELSE8220 OISP "NO MATCH·8230 END IF8240 END IF8250 RETURN

Page 66: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

J7...-.

I

Upchange4: Vul_faktor=Vul_faktor+KNOBX/IIII0PRINT TAAXYII'I,15);PRINT USING "2D.00" ,Vul_JaklorWlre_5peed-Vrobot.0(Ml oOraad_faktor.Vul_f a ktorPRINT T!'I8XYI17,11),PRINT USING "20,OO",Wlre_5peedRETURN

IBedlen_toort5: ,

IF La,_vlag=l THENl,,"_vlag=0ON KEY B LA8EL "ONTSTEEK TOORTS" GOSU8 8edien... toor-ts

ELSELa,_vlag-lON KEY 8 LABEL "OOOF TOORTS" 60SU8 Bedlen_tO()rts

END IFRETURNI

Clean_pljl: IPRINT TABXY(50,9ll"PRINT TA8XY(50,ll h"PRINT TIIBXY( 50 ,1.3 >J"PRINT TIIBXY< 50.15);"RfTliRN

IUpchange3: /I~II+KN08X/10111

PRINT lAAXY(32,1311PRINT USING "20.0";ARETURN

1Upchange2: Wjra_5peed-Wire_5peed+KNOBX/1011l

Sand._p ar'al'l I Va I t age ,1.11 re__ ,peed )PRINT l/lBXY( 17,11 ),PRINT USING "2D,OD",Wire_"peedRETURN

IUpvol t: !

GOSU8 Clean_pijlPRINT TA8XYI50,9),"(==--= lNSTELBAAR"ON KN08 .0\ ,2 GOSUS Upch"ngelRETURN

lIp5peed: I

GOSU8 Glean_.plj IPRINT TABXY( 50,11 );" (~--= INSTELB/lAR"ON KN08 .01.2 GOSU8 Upchange2RETURN

Upbreedte: I60SU8 Cl ean._p i j IPRINT TA8XY(50.13),"(==== INSTEL8I1AR"ON KN08 .0\ ,2 GOSU8 Upchange3RETURN

Upvul: !GOSU8 Clean_pljlPRINT TII8XY(50,'5)'"(---- INSTELBAAR"ON KNOB .01,2 GOSUB Upchange4RETURN

I

Upchangel: Voltdge-Voltage+KN08X/100Send_paral'll Vol tage ,Wlt-e__ speed)PRINT TA8XY( 17,9);PRINT USING "2D.DO"IVoltageRETURN

89108920892189308940A9S089608961897089808991119000911101901090209030903190329033903490359040'90509(J61119070908091119091009110912091309140915091611191'7091809190920092109211921292139214921592\69218921992209230924092509260927092809290930093\0!l31193129313931493159319

",

SEAMTRACt:! NGCYCLLl5

!LAS TOORTS OOVENI INTERRUPT NAAR ROBOT PROGRAMMA

IINTERRUPT NAAR DE R080TIHIEROOOR WOROT NAAR DE VOLGENDEiINSTRUKTIE IN HET R080T PROGRAMMA16ESPRON6EN

LASSEN83108320 \8330 1-------------------------------------------------------------------------8340 I8350 Ndadvolgen:8360 SYSTEM PRIORITY B8370 18390 ON KEY 9 LABEL "STOP LASSEN " GOTO Opperdlor_end8400 ON ERROR GOTO Error_end8410 ON INTR 7,4 GOSU8 Service8420 ENA8LE INTR 7,Md~k

8430 ENA8LE8440 Robot_lnt-l8450 Send_,wltches(0)8460 Robot_lnt-08470 WAIT. 18480 Send .wltche.(0)8490 Nl'lt-08500 Int_teller-08510 Start_verwerk-08520 \8530 1---------------------------------------------------8540Weit_Int: T!Jd !8550 IF No trdcklK+1 I-I THEN GOTO Elnde_nead I

8560 IF Shrt_verwerk-l THEN GOSU8 Verwerl,B570 GOTO Walt_int8580 1---------------------------------------------------8590 I8600 I8610 Opperator_end: OISP "GESTOPT DOOFt DE OPFRAIFIJR"8620 OFF INTR8630 GOTO Stop_part8640 Elnde_nedd: OISP "EINOE VIIN OF. WIIID GFDEOE/(lTERD8650 OFF I NTR8660 60TO Slop_part8670 Error_end: I8680 OFF INTR8690 OISP "STOPpED BY PROGRAM ERROR" .ERRM$8700 GOTO Stop_pad8710 ,8720 Stop_part: !8730 OFF ERROR8740 OFF KN088760 Toort5(0)=08770 Robot lnt~1

8780 Send_,witche5(a)8790 Robot_inl~0

8B00 WIlIT. 18810 Send_,w!tche5(0)8Bll GOSU8 Clear_keys !TEN BATE VAN TEKST OP DISPLAY8B12 ON KEY 9 LABEL "PROCEED" GOTO EXII_neadvolgen8B13 Blop6: TiJdB814 GOTO, 810p68B15 Exit_ndadvolgen:8820 Exit_tracklnu-18B40 RETURN

Page 67: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

VERWERKIN6: DEZE ROUTINE VERZORGT DE UITVOER VAN MEETGEGEVENSNAIIR HET SCHERM,PRINTER OF DISK

tOM DE TWEE INTERRUrfS MOEf DE!ROUTINE VERWERK WORDEN GES1ART

TIME-OUf ERROR 2"

1----------------------------------------------------- ---------.-.------'Verwed:: SUBROUTINE DIE NA EU: TWEEOE INTERRUPT ~WJ Of SU~S()R WOROTI A~NGEROEPEN,

-_.---~. -_._----_._-­1--------------------------------_·-------------------IVerwerk:

IStart_verw"rk~0

K~K+1

!IHET PROCES VERWERK WORDT Delay_robot SEC VOOR EEN NIELIWE CYCLUS10NDERBROKEN DOOR HET PROCES SLIIVE, DIIT ZOR6 DRAAGT VOOR DEiAANSTURING VAN DE SLAVE PROCESSORS!ON DELAY C.65-Delay_,,,n,or-Oelay_robot ),3 GOSUB Slave!

ITll'l_err2: !

Serv ice.. t ype-0OFF CYCLERESET 7 !RESET HP1BCleM' ,creenPRINT-TAAXYI 10,16 ),'INTERFACEWAIT IRETURN

!!

I!---------------------------------------------------------------------_.

Service: IDISABLEON TIMEOUT 7,,1 G05UB TI~_err2

RESET @Rec..bufRhulp=SPOLU 702)SEND ~Sen50r,UNL UNT TALK 2 MLATRANSFER ~Sen,or TO ~Rec_buf'END

WIlIT FOR EDT @Sen60rSTATUS ~Rec_buf .4;RhulpOFF TIMEOUTIF Int_teller~0 THEN

St.rt_verwer',GIRtype_code=NUMCRecieved_dota$[31)

! Td g NUMIRecieved_dola$f4J )·10J~J+l

IF Rtype_code<)143 THENPRINT TABXY(0,0)IRtype_codel" IS WRONG TYPE CODE "'"Service_lyp,,*0

ELSERd.t/l$=Recieved_ddta$[4 .Rhulp-I J

END IFEND IFInt teller-Int teller+lIF int_teller-~ THEN Int leller-0ENABLE INTR 7lMas.ENABLERETURN

99209930994099509960997099809g90100001001010020100301004010050100601007010081'1009010101'1011010120101301014010150101601017011'180101901020010210102201023010240102501026010270102801029010300103101032010330103401035010360103701038010390104001041010420, 04301044010450104601047010480

0(1 )V00R( I )Idl I )Yt ( I )Yd( T )

!----------------------------------------------IDATA,!1-----------------------------------------_·_----------------------------I

Data_verwerklng:GOSUB Clear_keYBSySTEM PRIORITY 0IPRINT TABXYl0.3)'· ••• DATA VERWERKINGS ROUTINE •••CONTROL 1,1210

I

93209330934093509360937093809390940094109420943094409450 I9460 DISP 'DO YOU WANT A PRINTOUT ON THE PRINTER, SCREEN OR DISC'9470 ON KEY 5 LABEL 'PRINTER" GO TO Printout9480 ON KEY 6 LABEL 'SCREEN" GOTO Screenout9490 ON KEY 7 LABEL "DISC' 60TO DiBcaut9500 ON KEY 9 LABEL 'NO" GOTD EXit_data9510 I9520 Blop5: 19530 GOTO Blop59540 I9550 Printout: PRINTER IS 7019560 60TO Si tt9570 Screenout: PRINTER IS 195B0 PRINT CHRS(12)9590 60TO Sltt9600 Oillcout: INPUT 'GEEF NII/lI1 VAN FILl:' ,Nd",,,$9610 ON ERROR GOSUB DioG_error9620 CREATE BOAT Na",,,$l!.":HP82901.700,1" ,501,489630 ASSIGN @Flle TO NaMe$l\" :HP82901 ,7130 ,1"lFORMIH OFF9640 FOR J~I TO K+M9650 OUTPUT @FJle,J,Yd(J),Yt(Jl,ld I Jl,R_naad(,/),B..openl.!)/I",tchIJ>,Toort.(.!) ,No_t,-.,d (J) .9660 NEXT J9670 OFF ERROR9680 ASSIGN @File TO •9690 GOTO Blop59700 ,9710 Sitt:9720 PRINT9730 PRINTHATCH TOORTS9740 PRINT9750 FOR .I-I TO K+M9760 PRINT USING "30,3X,6140.DD,3X)2X,D,6X,O',J,Yd(J),Yt<J),Zd(J),B_naad(J),B_open(.J) ,DC J) ,M.tchC J) ,ToC'rtsl J)9770 NEXT J97B0 PRINTER IS9790 GOTO BioI'S9800 !9810 Di.c_error: I9820 IF ERRN-80 THEN DTSP "STOP EEN FLOPPY IN DRIVE 1"9830 RETURN9840 Ex i t_da ta:9B50 GOSUB Inlt ,creen9860 RETURN9870 !98809890

,~

Page 68: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

IGEL.DIG MEETPlJNT

10NGELDIG MEETPUNT

..,--

IFILTER UOOR KLEINE UODROPENING

IINTERRUPT NilAN SLAVES PROCESSOREN

!INDIEN NODIG LhSTOORTS ONTSTEKEN10F DOVEN

INEEM HET GEMIDDELDE OVER N_LIN

II1EETPuNTEN

TalJ-2Yso",-0WHILE T':N_lln AND J<M-I

IF Match(~+J)-1 THEN. YSOI'l-YSOM+( Yd(KtJ )-Yd(K+l »)I( J-l )

T-T+IEND IFJ-J+I

END WHILEYdlK+2 )-Yd(K+I )+Ysop,1TIF 8_open(K+2)(.3 THEN

8_open(J{t2 )-B_open(K+l )END IFRETURN,!-----------------------------------------------------------------------!Slave: SUBROUTINE VOOR HET AANS1UREN VAN DE SLAVEPROCESSORSI DElE ROUTINE BEREKEND UIT DE PUNTEN K EN k+l EN DE

PENOELBREEDT~ DE Y EN l CORRECT IE WAAROES EN VERSTUURUDElE CORRECTIESDE POSITIE VAN DE TDORlS WOIlOT OPGESLAGEN IN YI

1----------------------------------------------------------.-------~ -----I

Sieve: IIF Doorlas_vlag«1 THEN

Pendel_breedte=B_open( K+ 1 )+AELSE

Pendel_breedte-B_n'led(Ktl )-AEND IFIF Toorh(K+1 )E0 THEN Pendel __breed\e-0IF Pendelleft-I THEN

YtcK+\ )=YdiK+1 1+(Pendel __ br-eedle/2)Pendelleft a0

ELSEYt (/(+1 )~Yd( K+l 1--1 Pendel breedtel2)Pendellefl= I

END IFY__displace(YtcK+l )-YI(K»l_displace( ZdlK+1 l-ld(K»CONTROL 12,2:0CONTROL 12,2;3I

IF Toorh(K )OToor\s(K-l } THENSend_5wi tches( J{)

END IFIF Vul_vlay·' THEN ISIJ AUTOMATISCH Nllt\oVULLEN

Wire_speed-Vr'obot oO( K)oDraad_fak toroVul .. fah torSend_parel'l(Voltage,Wire_speedlPRINT TA8XY(17,11).PRINT USING "2D.D";Wlre_apeed

END IFPrlnt __l'la\en(J{ )RETURN

1110611107111081110911110111111 \ 112111131111411115111161111811119J1120111221112311130111401115011180J 117011180l' 1901120011210t 12201123011240I I ,Sill112601126 ,112701 12e~}

112901130~

11310113201133011340113501136011370113801139011400114101141111412114131141511416114171141811420

II

rir!,I

Ii

!LASSEN VANAF PUNT M

IDE SENSOR Y WAARDE

IDE SENSOR l WAARDEINAI\D 8REEDTE! 8flEEDTE 'JOOROPENEINGIWERKSTU/( CDORDINATEN

INo_~alch_\eller-No_~atch_teller+l

! EINIJE NAAD GEDETEKTEERD

IVOLGEN TOT HET LAATSTE MATCH PUNTILASSfN TOT HEl EEN PUNT DAARVDOR

!TELLER VOOR DE BUFFERPLAATS!lOEK HET EERSTE GELOIGE MEET PUNTMatch(KtJ)-0 AND J(-M-I

JaJ+1END WHILEIF Match(K+J )=1 THEN lALS EEN GELDIG MEETPUNT GEVONDEN

Yd(K+2 )-Yd(K+J)t( (Yd(K+J )-Yd(K+l ) )/( .I-I I)Zd(K+2 )-ld(I<+1 )t( (ld(K+.) )-ld(K+l ) )/( .1-1»B_needl K+2 )-B_naadl K+I )t( (B_'",ed( K+J )-B_llead( K+I ) ) I ( .1- r »B_open( Kt2 )-B open( Kt 1 )+ ( (B_open( K+J )-13 _(Jpent K+ 1 ) )/( .1-1 ) )0(K+2 )-O(K+l )t( (O(f:+J )-01/(+1) )/(J-I »

ELSE IALS BEEN GELDIG MEET PUNT GEVONDENYd( K+2 )-2oYd( K+ I )-Yd( K) 'STUUIl DE TOORTS RECHTDOORZd(J{t2)-Z.ld(Ktl )-ld(K)B_naed( K+2 )-2-B_naad( K+ I )-B_naad( J{ )B_open( K+2 ).w2 -S_open( K+ 1 )-B_open( K)0(K+2 )a2-0(K+l )-O(/()

10550 IDE SCAN DIE BIJ DElE MEETGEGEVEN HOORT IS GENOMEN OP EEN MOMENT OAT10560 IDE SENSOR TOORTS COMBINATIE STIL STOND10570 'OElE MEETWAARDES HOREN 8IJ HET PUNT 1(+/1··110580 !10590 IF Lds_vlagal THEN Toorh(K+M-l )al10600 ,10610 IF NUM(Rd"I,,$[8J )a4 THEN10620 DISP"10630 /1dtch(K+M-l )~1

10640 Fdl a 010650 Rdel,,_lenoth-LEN(Rdele$)-110660 FOR Rl-15 TO Rdeta_length STEP 210670 FdlaFdl+110680 Yz(Fdl )a(BINIOR(NUM(RdetaS[Ri 1) ,ROTATE<t/UM(Rdat",$[Rl+l) ,8» )/3210690 NEXT Ri10691 IF Doorlae_vleg-l THEN10700 Yeeneor-CYz(9)+Yz(15»/2-Y_offset10701 ELSE10702 Yuneor-YzC 1 )-Y_offaet10703 END IF10710 ZeeneoraZ_offeet-(Yz(12)+Yz( 1811/21072. 8_needlK+/1-1 )-ABSlYz(3)-Yzl5»10730 B_open(K+M-1 )aABSCYz( 15)-Yz(Sll10740 Yd(K+M-l )-Yeenaor+YtlK-l )10750 Zdll(+/1-1 )-Zseneor+ld(K-l )10760 O( K+/1-1 )a( I . 0oNUM( Rdat e$[ 1 I ) it256. Ij-NUM( Rda t"ilI[ 12) )1-65536. 0-NUI1( Rda tei(131)+16777216.0oNUI1(Rdete$[14))/1024 INAAD OPPERVLAK10770 NMt a0 !No_Match_teller-010780 ELSE10790 /1atchlK+M-1 )a010800 DISP 'NO MATCH"10810 NMt-NMt+l10820 IF NMp-NMt ..Me" THEN10830 FOR .I a 0 TO lNl'lt_Max-1 )10840 No_trec~(K+M-l-J)al

10850 TQorts(K+M-2-JI-010860 NEXT J10870 END IF10880 END IF10890 ,-----------------------------------------------------------10900 INO MATCH I3EHANOELWG VAN HU PUNT /(+210910 1-----------------------------------------------------------10920 I10930 IINDIEN HET PUNT 1<+2 EEN NO_MATCH PUNT 15 WOflDT EEN GEINTROPOLEEROE WMROE10940 ITOEGEKEND10950 !10960 .1=210970 WHILE1098010990110001101011020110301104011041110501106011070110801109011091

Page 69: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

!.* ••• *•••••••••• *•••••••••••••• ,~ ••••• , •••••••••• , ••••• *•• ~I •••• ** ••••••

COM ILa5par~MI INTEGER Robot_int,JMp3,Gas,Power_"ource,Toort.( 150),Manlpu

!VOOR HET VERLA TEN VAN SEAMTRACKINGIEERST JUISTE INlEkRUPf SERVICEIROUTINE KLAARZETTEN

IPI:NDELBREEDTE!BEINVLOED HOOGTE VAN DE TODRTSI TOORTS MOET ONTSTOKEN WORDENIPENDELLEN OVER DE VoOROPENEINGIGEEN AUTOMATISCH NAADVULLEN

1---------------------------------------- --------------- ---------. --------ILAAG t DEZE ROUTINE VERZORGT HET DOORLAS5EN (EER5lE LAS)I - DE LAS SPANNING, WIRE SPEED KUNNEN WORDEN INGESTElO

DE PENDEL 8REEDTE MOET OVEREENKOMEN MET DIE IN HEl! ROBOT PROGRAMMA1-------------------------------------------------------!

l.aag_' :GOSUB Clear_keysSYSTEM PRIORITY 13Volt"ge~20.5

Wlre_speed-3.2B_pendel-3.2Dlepte s 4Laa_vlag»1Doorlaa_vl~g·l

Vul_"I ..g~0IGOSUB InltlallseerGOSUB Na..dzoeken

1---- --------------------------------- ----------- -.--- ---- - -- ------ - --.-IL~aQlaaaen: SUBROUTINE VOOR HET LASSEN VAN VLAKKE PLAlEN IN DRIEI LAGEN

GOsue lnIt_5creenI

BI op I : TI j dON KEY 0 LABEL "TEST SPEEDS" GOSUB Te.t_,peedON KEY 5 LABEL "SET SPEEDS" GoSUS Set_"peedsON KEY 1 LABEL "SET OFSETS" GOSU8 Set __off.elsON KEY 6 LABEL "SET SYSTEM PAR." GOSUB Sel_sys_parON KEY 9 LABEL "BOOG LASSEN" GOSUS Ladg__.ldssenON KEY 2 L~BEL "~FSTELLEN" GOSUS Ar.tallenON KEY 8 GOTO BloplON KEY 7 GOTO BloplON KEY 3 GOTO SloplON KEY 4 LA8EL "EXIT" GO TO E~lt_to_~aln

GOTO BloplI

Exit_to_Plain:ON INTR 7 GOSUB Sensor_servIceGOTO M.. inI

!----------------------_._----------------------------------. --_ .. _----_._---,Laag_l~aaon: ,

GoSUB Clear_keysSYSTEM PRIORITY 0,

Blop2: TlJdON KEY 4 LABEL "EXIT" GOTo EXlt_laaQON KEY 0 LABEL "DATA" GOSUB Data_"erwerklngON KEY 7 LABEL "LAAG I" GOSUB LaaQ_1ON KEY 8 LABEL "LAAG 2" GOSUB Laao_2ON KEY 9 LABEL "LAAG 3" GOSUB Laag_3GOTO SlopZI

E... ll_1aeg:RETURNI

JUg ..

5570558055905600561056205630564056505660567056805690570057105720573057405750576057705780579058005810582~

58305840~iB50

58605870588058905900591059205930594059505960597059805990600060106020603060406050607060813609060916100611061116121361306140

lI,

ISCANWIDTH110 SCANS/SECICENTRE OFFSET-0!MEASUREMENT UNITS-MILLIMETERS

ICAMERA MOUNTING DIRECTION-SftCKWARDSIFI1T DATA MODE- ONIFlTT CATA RATE IS 10 MESSAGES/SEC

OM DE 200 MSEC " I I ! ! I I I ! I'FILTERED DATA MODE- OFFIFILTERED DATA RATE'INITIALIZE SENSOR

IVOORLOOPAFSTAND SENSOR-TOORTS'NULINSTELLING VOOR DWARS-REGELING SENSORI HOOGTE-REGELIN6 SENSOR'Y CORRECT IE SNELHEID SCHAALFAC10R 0, IS, 4 BITIZ CORRECTIE SNELHEID SCflAALFACTOR 0.15, 4 BITIVOORTGANGSNELflEID ROBOT· LASSNELHEIDICYUCLUS TIJo AANSTURING SLAVESITIJD OAT DE SENSOR GEEN PENUEL 8EWE6ING MAAKT'VERTRAGINGS TIJO ROBOTIVERTRAGINGS TIJD SENSOR,VERTARGINGS TIJO VAN OUTPUTIIFIL TEREN VAN Yd OVER N_LIN 11EETPUNTEN!AANTAL NO MATCHES NODIG VOOl< EINDE NAilD DETEKTIE!DIAMETER LASORAAD IN MM

CWS'-'" _ it

OFF CYCLE

Changed-0 THENDvo:a:25Y_offset--8.5Z_offaet-176Vy·15.7Vz-15.5Vrobot=2.2T_cyclua"'.840T_recht-.28oelaYJobot-.15Delay_.ensor"'.3Delay_output-.05N_Iin-1NMt_Max-5D_droads , .2

END IF!

36.iF po503050405050 I5060 SeaMtrac~lng: I

5070 IdIt ziJn de 5tateMenta Voor het autoMatoMattach lassen5080 Ivoer o.a. het laaaen van V-naden In vlakke platen5090 !M.b.v. de OLOELFT-aensor en de ~SEA IRb 6/2 robot5091 IMet beaturlng van de pendelbeweglng utt de robot5092 'en tiMing van het procee venull de pendelbeweglng51005110letor5120 COM IChal INTEGER Cha I ,Cha25130 COM IRobotvelocl RE~L VY,Vz5140 COM IProfieli RE~L Yd(150),Ytlt50J,Zd(150),O(150)5150 COM IBooleanl INTEGER Match( 150),No_track( 150)5160 COM IPareMI REAL Voltage,Wlre_feed5161 REAL Ya( 150)5170 INTEGER K,M5172 INTEGER Los_vlag,Ooorlas_vlaO,Vul_vlag,Exlt_tracklng,StoPD,Pendolleft ,Stort_verwerk ,Julet.e_scen5173 INTEGER NMt._l'Iax ,Nl'lt5174 I61B0 I5190 Set_up_data( 1 )-405200 Set_up_data(2)-15210 Set_up_data(3)-05220 Set_up_dataI4 )-05230 Set_up_data(5)-Uern_Ievel5240 Set_up_data(6)-Error_leve!5250 Set_up_data(7)-'5260 Set_up_data(8)-15270 Set_up_data(9)·'5280 !DIT BETEKEND SENSOR INTERRUPTS5290 Set_up._diOlta( 10 )-05300 Set_up_data( t 1 )-25310 GoSUB Fill_au_send5320 Stype_code-165330 CALL Send_MessageIStype_code,Sequence_nul'lber,Su_.end$,@Senaor)5340 I5350 IINITIALIS~TIE EXTERNE PARAMETERS5360 !(~LLEEN DOOR LOP EN ALS P~RAMETERS NIET VERANDERD ZIJN)5370 I53B0 IF53905400541054205430544054505451546054705471548054905500553055405550

I

CJ"-..q;,J

Page 70: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

-----------------------p

------------------------~

6600 PRINT TABXYI0.9/I"LAS SPANNING V'6610 PRINT TABXY(0.11 II 'ORAlIO TOEVO£R = ~I/MIN'

6620 PRINT TABXY(0.131,"PENOEL8REEDTE • MM"6630 PRINT TABXYI0.14)I'------------------------------------------------------

::D.~

r,I\I\DVULLEN

V"~l/MIN"

MM'

ICORRECTIE FAKTOR VOOR HET AUTOMIITISCH!OE PENOEL BREEOTEIBEINVLOEO DE HOGGTE VAN DE TOORTSITOORTS MOET ONTSTOKEN WORDENIPENDELLEN OVER DE NAAOBREEOTEJMET AUTOMIITISCH NIIADVULLEN

"VOLTAGE" GOSUB Upvolt"ORAAO TOEVOER' GO SUB Up.peed"OOOF TOORlS" GOSUB Sedlen_toort."START LASSEN' GOSUB Naadvolgen

5 LABEL6 LABELS LABEL9 LABEL

TABXY(0.9)I"LAS SPANNING ­TABXYl0 .11 ); "ORAlIO TOEVOER c

TABXYl0.13),'PENOElBREEOTE ­TABXYI0.1511"VUL FAKTORTABXY(0.161,'----------------------------------- ----.--------------

TABXYl0.311"LASSEN VAN EEN LAATSTE LAAG:"TABXYI0.4)i"P1et Instelbare lab spanning"TABXYI0.511"draad toevoer afhankelljk van hel naad voluPle"TABXYl0.611"de pendelbreedte Moet oveereen kOPien P1el hel robotproyr

PRINT TABXY( 17,9);PRINT USING "20.0D"IVoltageWlre_~peed·Vrobot.OIM)·Oradd-fdktor.Vul-faktor

PRINT TABXY(17.11)lPRINT USING '20.0D",Wire_speedPRINT TABXYl17.13hPRINT USING "20.D"18_pendelPRINT TABXY117.1511PRINT USING "2D.OO',Vul_faktorPrlnt_l'IetenIM)

PRINTPRINTPRINTPRINTPRINT

7014 PRINT TIIBXYl0,BII'---------------------------------------- ---------------

70207030704070417050

7060707070717080709070917092709370947095

6670 PRINT USING 'ZD.OO"IWlre_5peed6671 PRINT TABXY117.1311G672 PRINT USING "20.0";B_pendel6673 Prlnt_l'IatenIM)6674 Send_paraPiIVollage.Wlre_5peedl6680 !669<1 ON KEY6700 ON f:EY6720 ON KEY6730 ON KEYG740 !6750 Blop42: Tljd6760 IF EXlt.tracking-0 THEN GOTO Blop426770 GOSUB Init_screen67B0 RETURN6790 I6800 !---------------------------------------------------------.--------------6810 !LAAG_3 OEZE ROUTINE VERZORGT HET LASSEN VAN DE DERUE lAAG6820! DE LAS SPANNING KilN WORDEN INGESTELO68Z1! DE ORAlIO TOEVOER WOROT AUTOMATISCH GEREcGELD6830 DE PENOEL BREEOTE MOET DVEREEN KOMEN MET DIE. IN HET6840 ! ROBOT PROGRAMMA6850 1-------------------------------------------------------------------6860 I6870 Laag_3:6890 VollBge=246900 Vul_fektor=16~'0 B_pendel~5.6

6911 Olepte~2

6920 La._vleu~1

G930 Ooorlas_vlag~0

6931 Vul_vlaga )

6940 !695<1 GOSUB Inltiellseer6960 60SUB Naad:oeken6970 GO SUB Clear_keys6980 SYSTEM PRIORITY 06990 I7000 PRINT7010 PRINT7011 PRINT7013 PRINT

IDE PENDEL BREEOTEIBEINVLOED HOOGTE VAN DE TOORTSITOORIS MOET ONTSTOKEN WORDENIPENOELLEN OVER DE NAAOBREEOTEIGEEN AUTOMATISCH NAAOVULLEN

'VOLTAGE" GOSUB Upvolt"DRAAO TOEVOER" GOSUS Upspeed"DOOF TOORTS' G05UB Bedlen toorts'START LASSEN" GOSUB Naadv;lgen

PRINT T~BXYl0,4)1"l'Iet in~telbare la~ ~pannlng on dread toevoer'PRINT T~BXYI0.5);'de pendelbreedte l'Ioet o¥oroonkol'len l'Iot hot robot progra

PRINT T~BXYl0,8JI'---------------------------- _

PRINT TABXYl0.8I'"--------------------------------------------- _

617061711'1 1'1a "6172

6180 PRINT T~BXYl0.9)I"l~S SPANNING • V'6190 PRINT TABXYl 0.11 )I "DRMD TDEVOER u MIMIN"6200 PRINT TABXYI0,131I'PENOElBREEOTE • MM"6210 PRINT TABXYl0.14Ji'----------------------------------------- _

6220 PRINT TABXYI17.9);6230 PRINT USING '20.00"IVoltago6240 PRINT TABXY(17. j j );

6250 PRINl USING "20.DO";Wlre_~peed6251 PRINT TABXYI17.131,6252 PRINT USING "ZO.O',B.pandal6253 Prlnt_l'IetenlMI6254 Send_paraI'lIVoltage.Wlre_~peedl

6262 I6270 ON KEY 5 LABEL6280 ON KEY 6 LABEL6300 ON KEY 8 LABEL5310 ON KEY 9 LABEL6320 I6330 Blop41: Tljd6340 IF EXlt.tracklng u 0 THEN GOTO Slop416350 GOSUS Init.screen6360 RETURN6370 ,6380 1-------------------------------·---------------------- _6390 ILAAG_2 DEZE ROUTINE VERZORGT HET LASSEN VAN DE TWEEOE LAAG6400 ! DE LAS SPANNING, WIRE SPEED KUNNEN WORDEN INGESTELD6410 DE PENOEl BREEOTE MOEI OVEREENKOMEN MET DIE IN HET6420 I ROBOT PROGRAMMA6430 1------------------------------------------------ _6440 !6450 LaalL2:6470 VoltaQe c246480 Wlre_~peedc5.5

6490 B-pendel-5.16491 016pte=26500 Las_vlag~1

6510 Ooorla~_vlaQ=0

651 1 Vul_vlaQ~0

6520 !6530 GOSUB Inltiali~eer

6540 GOSUB Naadzoeken6550 GOSUB Clear_key~

6560 SYSTEM PRIORITY e6570 !6580 PRINT TABXYI0.311"LASSEN VAN EEIJ TWEEOE LAII6:"6590 PRINT TABXYI0.411"l'Iet Instelbare las spanning en dread toevoer'6591 PRINT TABXYI0,S);'de pendelbreedte l'Ioel overeen kOl'len l'Iet het robot prograMl'la"659Z

I

CJ'.,.

~1

Page 71: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

I Z RICHTPUNl

I '{ RI CHTPUIH :IMIDDEN 80V~N DE VUOROPENING

IR0801 BEli[Nl UNf:S

(I(l{] ti ;Jl.ar-,,_VQrWQI ""'-1 •• , .... , .. ... ~ .. ~_ .. ,. __

1780 IF Stopp-I THEN 60TO EKlt_naactzoeken7790 60TO Wait_lnt_.n.t7800 I7801 Stop_naad.oeken:7B02 EKlt_trackinQ~1

7803 I7BI0 EXll_naad.oeken: I7820 SOSUB Inlt screen7830 OFF INTR783\ OFF CYCLE7840 RETURN7650 I7B51 Naadzoek_.tap:7852 Jui.te_scan-I7853 RETURN7654 !7860 !---------------------------------------------------------------7870 !Init_verwerk: SUBROUTINE AANGEROEPEN NA ELK VIERDE INTERRUPT VAN DE7880 I SENSOR TIJDENS DE ROUTINE NAAOlOEKEN7890 ! ---------------------- -------------- ...- .. ----------------.- - -.- ..... - - .-.-.--- ... -

791'10 !7910 Ind_verwerk: f7920 Start_verwerk-07970 IF NUM(Rdata$[8)~4 THEN7980 DISP "7991'1 Fdl-08000 Rdata_length~LENIRdata$I-1

8011'1 FOR RI~15 TO Rdata_Iength STEP 2B0~0 Fdl~Fdl+ 18030 Rf 11 tdatill Fdll~8INIORINUr11 Rdata$[ R1 J ) .ROTATEI NUMi lida \ a'll! III +1 I ) .8 ) I8040 Yz(Fdl )o(RflItdata(Fdl 1/32)81'150 NEXT RlB05\ IF Doorla._vldg-I THEN8060 Midden~(Y,( II ltY.! 171 II;'

8061 ELSE6062 Midden-Yz( I)8063 ENU IF8070 Hoogte-l Y;.( 12 ltY,( 18) )/~

B080 Hn~l_off5et-Hooyte-Olep\e

8090 Yn-Mldden-Y_off.el-(B_pendel/218100 DISP "8110 IF ABS(Yn»).2 OR ABS(Hn)j.3 THEN8120 Y_.displaceIYn/l.51B130 l_dlsplaceIHnl1.5)8\40 CONTROL 12.2.28151'1 CONTROL 12.~;3

BI60 ELSE8170 Stoppel8180 PRINT TA8XYI0.9)I·INITIALISATIE KLAAR"81S0 O( MIm( I . 0'NUM( Rdata$[ I I ) lt256. 0*NUM( Rda Ia$112 J itS5S36" 0.NU~11 Rda Ia$[ I)) )tI67772IS.0·NUMIRdala$[ 14) )110248191 FOR I~I TO M-I STEP IBI92 Oil )-011'118193 NEXT I8200 END IFB2 11'1 ELSE8220 CISP "NO MATCH"B230 END IF8250 RETURN

IINIERRUPT VAN DE SENSORON INTR 7.4 eosue ServiceENABLE INTR 7lMaskENABLEON CYCLE 2.T_cyc lus.4 GOSua Naadzoek...5tap !ELKE CYCLUS Nf'JADZOEK STAP

OPSTARTEN VIA DE JUISTE_.SCAN VLAG

UN r..r:r 0 LnOI;:L VVL I II" .V" -,.,,--- -r - __

ON KEY B LABEL "DOOF TOORTS" eOSUB Bedien_toorhON KEY 9 LABEL "START LASSEN" GOSUB NaadvolgenI

Blop43: TljdIF Exit_tracklng-0 THEN BOTO Blop43BOSUB Inlt_screen

RETURNI1------------------------------------------------------------------------IINITALISEER: DElE ROUTINE BEEFT DE DIVERSE VARIABLEN HUN JUISTE BEGIN! WI\ARDESI

!-----------------------------------------------------.------------------I

Inltlaliseer': IPRINT TABXY(0.3)," ••• INITf\LISATIE ROUTINE •••M-INT(Dv/IT_cyclus.Vrobol »t.5) !BEREKENING BUFFERLENGTEPRINT TIlBXYI0.6),"BUFFERLENGTE-";MDraed_fektor-.0S.4/3.14/D_draad/D_draad IFAKTOR VOOR NAADVULLENChal-0 ITELLER VOOR AANTAL KERENCha2-0 I DUTY CYCLE " 100 %

K-0FOR P-0 TO M-I

l1atchIP)-1NEXT PFOR p-e TO 150

Yd(P)-0Ytl P )-0ZdIP)-00IP)-0Toor-tsCP )-0No_trackIP)-0

NEXT P5toppe 0Exi t_trecking-0JUiste._scan-0Pendelldt-0Pendel_breedte-0PRINT TABXYI0.41;·PRINT TA8XYI0.611"

RETURNIf------------------------------------------------------------------------INAAD ZOEKEN: DEZE ROUTINE lEl DE TOORT RECHT VDOR DE LAS NAADI EN GEEFT B_naadll1). B_openIMI. OIMI EEN BEGINI WAARDE1------------------------------------------------------------------------!

Naadzoeken: I60SUB ClearJeY5SYSTEM fRIORITY 0,PRINT TA8XYI0.31;· ••• NAAD lOEK ROUTINE •••ON KEY 9 LABEL ·STOP lOEKEN" GO TO Slop_neadzoekenON KEY 0 LABEL "SIMULEER" GOTO EKlt_"aadzoeken

.( 1,10

7140715071607170718071907200721072207230724072507260727072807290730073107320733073407;35073607370739074007410742074307451747074807490 .'750075107511752075217530754075507560757075807590760076107620763076407650766076707680'Z68176907700771077207721

oI

Page 72: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

LASSEN

1-------------------------------------------------------~-----------------I

Naadvolgen:SYSTEM PRIORITY 0I

BEL "ONTSTEEK TOORTS" GOSUB Bedlen_toort5

I1------------------------------------------------------------------------I •

Upvolt: !GOSUB Clean_piJIPRINT TABXYI50.9);"··---- INSTELBAAR"ON KN06 .01,2 GOSUS Upch"ngelRETURN

Up6peed: I

GOSUB Clean_plJIPRINT TABXYlS0,l1 );"<~=E. INSTELBAAR"ON KNOB .01 ,2 BOSUB Upchange2RETURN

Upbreedte: IGOSUB Clean_pljlPRINT TABXY(.' ',13)1"(E="E INSTELBAAR"ON KNOB .01,: 30SUB Upchange3RETURN

Upvul: IGOSUB Clean_p I.JIPRINT TASXYIS0.IS),"(;=E- INSTELBI\AR"ON KNOB .01.2 GOSUB Upehange4RETURN

Upchange3: B_pende I~8_pende I +f:NOBX 1100PRINT TABXYiI7,13)1PRINT USING "2D.0";B_pendelRETURN

iUpchange4: Vul_faktor-Vul_faklortKNOBX/100

PRINT TABXY(17,lSl;PRINT USING "20.00",Vul_faklorWlre_speed~Vrobot·O(M)·Dr"ad_faktor·Vul-faktor

PRINT TIIBXYI 17 ,II );PRINT USING "20.DO"IWire_speedRETURN

IBedien_toorts: I

IF La6_vlag~1 THENLas_vlag'\'ION KEY 8 I

ELSELas_vlag=1ON KEY B LABEL "OOOF TOORTS" GOSUB Bedlen_toortc

END IFRETURN!

IUpeh"nge2: Wlre_speed-Wlre_speed+KNOBX/100

Send.__ para",( Vol tage .Wlr'e_.pe"d)PRINT TA8XY< 17,11);PRINT USING' 'O.OO"IWire_speedRETURN

tltllllO

8890139008910892089218930894089508960896189708980899090009001901090209030903190329033903490359040 I

9050 Upehangel: Voltage EVoltage+KNOBX/1009060 Send_para",eVoltage.Wlre_speedl9070 PRINT TABXYlI7,9),9080 PRINT USING "20.00",Voltage9iJ90 RETURN91009110912091:i091409150916091709180919092009210921192129213921492159216921892199220923092409250926092709280929093009310

SEAMTRIICf: I NGCYCLUS

!LAS TOORTS DOl/ENI INTE.RRUPT NAAH ROBOT PROGRAMMII

!INTERRUPT NAAR DE ROBOTIHIEROOOR WOROT NAAR DE VOLGENOEI INSTRUKT IE IN IIEl ROBOT PROGRIIMI1AIGESPRONGEN

!TEN BATE VAN TEKST OP DISPLAYGOTO EXlt_naadvolgen

ON KEY 9 LA8EL "STOP LASSEN " GOTO Opperator_aniON ERROR 60TO Error_endON INTR 7.4 GOSUB Service IINTTERRUPT VAN DE SENSORENABLE INTR 7,Ma6kON INTR 12,4 GOSUB Robot_service ijNTTERRUPT VAN DE ROBOTENA8LE INTR 12;\ENI\BLERobot_int~l

Send_s~ltehes(0)

Robot_lnl;0WAIT .1Send_soil tehec( 0)NI'lt a 0Start_verwerk-0I!---------------------------------------------------

Walt_lnt: TlJdIF No_traek(Kl-l THEN GOTO Elnde_naadIF 5tart_ver~erk-1 THEN GOSUB Ver~erl

GOTO Walt_int1----------------------------------------------------II

Opperator_end: OISP "GESTOPT DOOR DE OPERATEUR"OFF INTRGOTO Stop_part

Elnde_na"d: DISP "EINDE VAN DE NAAD 5EDEDEKTEEROOFF INTRGOTO Stop_part

Error_end: IOFF INTRDISP "STOPPED BY PROGRAM ERROR" ,ERRM$GOTO Stop_part

!Stop_p"wt: !

OFF ERROROFF KNOBOFF DELAYfoortsl 0 )~0

Robot_intEISend_suJi tcheoi 0)·Robot_lnt E0WAIT. ISend_swltches(0)60SUB Clear_~eys

ON KEY 9 LABEL "PROCEEO"Blop6: T1Jd

GOTO Blop6Ex i t_naadvo Igen:

Exi t_tracking"lRETURN

!

8310832083308340835083608370839084008410842084218422843084408450846084708480849085108520853085408550856085708580859086008610862086308640865086608670868086908700871087208730874087S087608770878087908800881088118812881388148815882088408850

Page 73: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

(-----------------------------------------------------------------------

PRINT TI\flXYl50 ,11)1'PRINf TABXYI50,13),'PRINT TABXY(50,15),"RETURN!------------ .._--------------------------------------------------------IDATA VERWERKING: DEZE ROUTINE VERZORGT DE UITVOER VAN MEET6E6EVENS! NAAR HET SCHERM,PRINTER OF DISK

9740 PRINT9750 FOR J=l TO K+H9760 PRINT USING "3D .3X .5( 40.00 .3X )2:< ,0 .6X ,0" IJ ,Yd( J), Yt I J). Yo(J) ,Zd( J) ,O( J) ,Match( J). Toort.( J )9770 NEXT J9780 PRINTER IS9790 GOTO BlopS9800 I9810 Disc_error:9820 IF ERRN=S0 THEN DISP 'STOP EEN FLOPPY IN DRIVE I"9830 RETURN9840 Exit_data:9850 GOSUB Inlt 5creen9860 RETURN

!----------------------------------------------------------------------!Set_~ui5te_.can: ALS JUISTE_SCAN-l DAN WORDT DE EERST VOLGENOE SENSOR! MESSAGE VERWERKT1----------------------------------------------------------------------!Set_jui5te_,can:JU1,te_9car.~1

RETURN!

9930 !----------------------------------------------------------------------9940 Service: I9950 DISABLE9960 ON TIMEOUT 7,.1 GOSUB T1M_err29970 RESET ~Rec_buf

9980 Rhulp-SPOLL(702)9990 SEND ~Sen50riUNL UNT TALK 2 MLA10000 TRANSFER @Senoor TO @Rec_buFIEND10010 WAIT FOR EOT ~Sen50r

10020 STATUS ~Rec_buF ,4;Rhulp10030 OFF TIMEOUT10040 IF Julste_5can-l THEN10041 JU15te_5can=010050 Start_verwer~ul

10060 Rtype_code=NUM(Recle ved_data!li£31)10090 IF Rtype __code0143 THEN10100 PRINT TABXY(0,0)IRtype_codei" IS WRONG TYPE CODE III"

10110 Service_type-010120 ELSE10130 Rdata!li=Rec16ved_data!li[4,Rhulp-l110140 END IF10150 END IF101B0 ENABLE INTR 7;Mas~

10190 ENABLE10200 RETURN10210 !10220 TiM_err2: I10230 Servlce_type=010240 OFF CYCLE10250 RESET 7 IRESET HPIB10260 Clear_5creen10270 PRINT T/lBXY(10,16);"INTERFIlCE TIME-OUT ERROR 2"10280 l.AIT 110290 RETURN10300 !10301 !-------------------------------------------------------- ---.--------10302 IROBOT_SERVICE: ROBOT INTERRUPf SERVICE ROUTINE10303 1 EEN INTERRUPT VAN DE ROBOT GEEFT /IAN OAT DE R080T AAN10304 I EEN RECHT STUK IN DE PENDELBAAN BEGONNEN IS10305 1--------------------------------------------------------\0306 !10307 !NA T_RECHT-OELAY_ROBOT-DELAY_OUTPUT 110ET SLAVE OPGESTART WURDEN10309 INA DELAY_SENSOR-DELAY_OUTPUT MOET DE EERSTE SENSOR SCAN UERWER~f WOFOEN10310 I10311 !OMDAT DE INTERRUPT LIJN LAAG BLIJFT IN HET RECHfE BAAN STUk HOET10312 !ENABLE INTTERRUPT PAS LATER KOMEN 'I! I! I I! I !10313 I10315 Rpbot_service: I10316 ON DELAY T_recht-Delay_robot-OelaY_Dutput ,3 GOSUB Slave10317 K=K+l10319 RETURN10320103211032210323103241032510327103351033610337

MATetl TOORTSOll )ld( I >YsYt ( I )

DATA VERWERKIN6S RourlNE •••

Yd( I )

IData_verwerklnQ: !

GOSUB CI ear_~,eysSYSTEM PRIORITY 0!PRINT TABXYI0.3);· •• •CONTROL 1. I?; 0

I

931393149315931993209330934093509360937093809390940094109420943094409450 I9460 DISP "DO YOU WANT A PRINTOUT ON THE PRINfER, SCREEN OR DISC"9470 ON KEY 5 LABEL "PRINTER" GOTD Printout9480 ON KEY 6 LABEL 'SCREEN" 60TO Screenout9490 ON KEY 7 LABEL 'DISC' GOTD Dlscout9500 ON KEY 9 LABEL 'NO" 60TO EXit_data9510 I9520 SlopS: I9530 GOTO Blop59540 !9550 Printout: PRINTER IS 7019560 GOTO Sitt9570 Screenout: PRINTER IS 19580 PRINT CHR$( 12)9590 GOTO Sitt9600 Discout: INPUT "GEEF NilAM UAN FILE" ,NilMe$9610 ON ERROR GOSUB Disc_error9620 CREATE BOAT Nal'\e$ll." :HPS2901 ,700,1' ,501.489630 ASSI6N ~Flle TO NaMe$l!.":HPB290! ,700,1";FORMAT OFF9640 FOR J=I TO K+M9650 OUTPUT ~FlIe.J'Yd(J).YtIJ).ZdIJ).l1atchIJ),Toorts(J),No_tracHJ)

9660 NEXT J9670 OFF ERROR9680 ASSIGN @F,le fO •9690 GOTO Blcp59700 ,9710 S11 t:9730 PRINT

Page 74: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

IGELDI6 MEETPUNT

IONGELDIG MEETPUNT

!LASSEN VANAF PUNT M

liN HET ZWAARTE PUNT

GELD 16 ~IEfrPUNT GEVONIJENTOORTS RECH1DOOR

GELD 16 ~lEETPUNT bEVONDEN

IMAAK INTERRUPT VAN OUTPUT 1 WEER! f10GEL I JK

ITELLER VOOR DE BUFFERPLAATS!ZOE~, f1El EERSTE GELDIGE MEETPUNTWHILE MatchCK+JI-0 AND J(-M-l

J-J+IEND WHILEIF Match(K+J)-' THEN IALS EEN

Yd(K+Z)-YdCK+I )t«YdCK+J)-YdCK+1 »/(J-l J)

ZdCK+2 )~Zd(K+1 )+( (Zdll<+J )-ld(K+\) )/(.1-1»OCJ<+Z)~O(K+I )+«OCJ<+J)-O(l(il »/CJ-l»

ELSE I ALS GEENYd< K+2 )-Z*Yd( K+ 1 )-Yd( K) 'STUUR DEld( K+2 )-2*Zd( K+ I )-Zd( K)0(K+2 )-Z*O(K+1 )-O(f:)

END IFENABLE INTR lZ11

RETURN,1-----------------------------------------------------------------------ISlave: SUBROUTINE VOOR HET AANSTUREN VAN DE SLAVEPROCESSORS! DIE DE I\DI\PTIEVE INGANGEN ~ANSTUREN

! EN VOOR HET AANSTUREN VAN DE LASAPPERATlJlJR1----------------------------------------------------------- -------------I

Slave: ION DELAY Delay_sensor-T_.recht tDelay_-"obot ,4 GDSUB Set_.1u lbte ..... 5ca"I

Y__ dlsplace( 'Id(K )-Yd(K-1 »

Z_dlsplace(ZdCI< )-ZdCK-I»CONTROL 12,210 'INTERRUPT NAAR SLAVES PROCESSORENCONTROL lZ.2;3!IF Toorts(K IOToort5(K-I) THEN IINDIEN NOOl6 lASTOORTS ONTSTEr:EN

Send_5wltche~(K) IOF DOVENEND IFIF Vul_vlag~1 THEN IBIJ AUTOMATISCH NAAOVULLEN

WI re_speed=Vrobot *O( K)*Oraad_ f a~ t Dr *l)u l_fa~ lorSend__p"raM( Vo l t age .W 1 re._speed )PRINT TA8XY{ 17,11)1PRINT USING "2D.D";Wlre_speed

END IFPrJ nt_Maten( K-l )RETURN

!---------------------------,IINDIEN HET PUNT 1<+2 EEN NO_MATCH PUNT IS WORDT EEN GEINTROPOLEER~E WAAROEITOEGEKENDi

109101092010930109401095010960109701090010990110001101011020110411105011060110701109111100111101112011122111231113011140111501116011190112001121011220112.3011340113501136011370113B01139011400114101141111412t 14131141511416114171141 B11422

. ';

iVOLGEN TOT HET LAATSTE MATCH PUNTILASSEN TOT HEr EEN PUNT OAARVOOR

! NO_MOl tch_. te I ler~No_Ma tch te ller+ 1!EINGE NAAD GEDETEKTEERD -

IDE SCAN IS GENOHEN TOEN DE SENSORIUITERST !.INt<S OF RECHTS STOND

10350 110360 1----------------------------------------------------------------------10370 110380 Verwerlt:10390 I10400 Start_verwerk~0

10420 !10430 IDEZE ROUTINE WOROT ALLEEN OPG£START ALS JUISTE SCAN=I EN ALS ER EEN10440 !SENSOR INTERRUPT IS10441 IDEZE ROUTINE VERWERKT DUS DE EERSTE SENSOR SCAN DIE SENSOR DELAY10442 INA EEN ROBOT INTERRUPT BINNEN KOMT10450 !DEZE ROUTINE VERWERKT DUS EEN SCAN DIE IN EEN RECHT STUK VAN DE10460 IPENOEL BEWEGING 6ENOMEN IS10460 I

10481 IF Pendelleft-l THEN10482 yt(K-1 )-Yd(K-l )+(B_pende1l2)10463 Pendelleft-010464 ELSE10465 YHK-l )-Yd(/<-1 )-( B_pende1l2)10466 Pendelleft-l10467 END IF10488 I

10490 1-------------------------------------------------------10500 1VERWERI<EN VIIN DE SENSOR MEETGEGEVENS:10510 1--------------------------------------------------------105Z0 I10570 IDElE MEETWMROES HOREH BIJ HET PUNT K+M-I10580 I10590 IF Llu_vlae-! THEN Toorh(I':+H-1 )·'110600 I10610 IF NUM(Rdata$[6J )-4 THEN10620 DISP "10630 Match(I<+M-l )-110640 Fdl-010650 Rdata_Iength-LENCRdata$)-110660 FOR Ri-15 TO Rdata_Iength STEP Z10670 Fdl=Fdl+l10680 yz (Fdl )-( SINIORC NUMC Rdata$rR 1) ) ,ROTATE I NUM( Rdala$[ Rt +11) ,8 ) )/3210690 NEXT Rt10691 IF Doorlas_vlag=1 THEN IV RICHTPUNT:10700 Y5en50r~<Yz( 11 )1-'(z( 17) I/Z-Y._Dffset IMIDDEN BOVEN DE VOOROPENING10701 ELSE10702 Y5eneor~Yl( 1 )-Y_.offset10703 END IF10710 Zsensor-Z_offset-Dteplu-(Yz( 12)+Yz(18»/2 !DE SENSOR Z WAIIRDE10720 YsCK+M-l )~Y5ensor IVOOR DIITA VERWERKIN6'0740 YdC KtM-I )-Ysensor+yt< 1<-1 ) ! IJERKSTUK COORDINI\TEN10750 ZdCI<+H-1 )=Zsensor+Zd(K'-I)10760 O( K+M-I ).( 1 . 0*NUMC Rdah$[ 11 ) )1256. 0*NUMC Rdah$[ 121 >+65536. 0*NUM( Rdata$[131 >+16777216.0*NUMCRd"ta$[ 141) )/1024 INAIID OPPERVLAK .10770 NMt-0 INa Match teller-010760 ELSE - -.10790 Match(K+M-t )-010600 DISP "NO MATCH"10610 NMt-NMt+l10820 IF NMt>-NMt_M6x THEN10830 FOR J-0 TO CNMt Max-I)10840 No_treckCK+M:I-J)-110850 Toort.Cl<tM-Z-J)~0

10860 NEXT J10670 END IF10880 END IF

I

-+J<tJJ

Page 75: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Z_.peed:CONTROL 2.12:0INPUT ·Geef de gewenstel_displeGeIZI'\I'\/10)Y_displace(0)FOR J4 a l TO 10

Ti JdCONTROL 12,212CONTROL 12,2:3WAIT 1

NExT J 4RETURN

GOTO Set_speeds!

E" i (_.set _speed; !GOSUS In11_.creenRETURN

ISet_speeds: I

GOSUB Clear_~eys

SYSTEM PRIORITY 0PRINT TABXYC0.4)1·.·. SET SPEED ROUTINE •••PRINT TA8XYI0.BII"Y CORRECTIE SNELHEIO=" .VyPRINT TABXY(0,9)I·Z CORRECTIE SNELHEID=· ,V.PRINT TABXYI0,10);"LAS SNELHEIO ··.VrobotChanged-'ON KEY 5 LABEL "set Y speed" GOTO Set_vyON KEY 6 LABEL ·set Z speed" GOTO Set_vzON KEY 7 LABEL "set weld speed· GOTO Set_vrobotON KEY 9 LABEL "EXIT· GOTO EXlt_set_.peed

BlopB:GOTO Blop81

Set_vy: IINPUT ·GEEF DE GEWENSTE Y CORRECT!E SNELHEID • ,VyGOTO Set_speeds

!Set_v,:

INPUT "GEEF DE GEWENSTE Z CORRECTIE SNELHEID ".\1.GOTO Set_speeds

ISet_vrobot:

INPUT "GEEF DE GEWENSTE LAS SNELHEID ".VrobotPRINT TABXY(5.20>1· ••• VERANDER OOK DE LAS SNELHEID IN HET ROBOl PROGRAMMA

1Io'iIll'''

1216012170121801219012201111221012220 1---------------------------------------------------------.12230 !SET OFFSETS; ROUTINE VOOR HET VERANOEREN VAN DE OFFSEIS12240 I

12250 1-------,---------------------------------------------------------------12260 !12270 Set_offsets: I12280 GOSUB Clear_yeys12290 SYSTEM PRIORITY 012300 PRINT TABXY(0.411·.'. SET OFFSETS ROUTINE •••12310 PRINT TABXYI0.8);·Y OFFSET~" ,V_offset12320 PRINT TABXY(0.9)I·Z OFFSET=· .Z_off.et12330 Changed=1\2340 ON KEY 5 LA8EL "set Y offeet· GOTO Set_j_off.et12350 ON KEY 6 LABEL "set Z off.et" GOTO Sel_z_offset12360 ON KEY 9 LABEL ·EXIT· GOTO Exlt_set_off.et12370 Blop9:GOTD Blop912380 f12390 Set_y_off.et: I12400 INPUT ·GEEF DE GEWENSTE Y OFFSET· .Y_off.et12410 GOTO Set_offsets12420 I12430 Set_z_offset: I12440 INPUT "GEEF DE GEWENSTE Z OFFSET" .Z_,off.et12450 GO TO Set_offset.12460 !12470 EXit_set_offset:124B0 GOSUB Inlt_5creen12490 RETURN

1190011910119201193011940119501196011970119801199012000120101202012030120401205012060120701208012090121001211012120121301214012150

1143\ 1-----------------------------------------------------------------------11432 IAFSTELLEN: ROUTINE DIE DE TOORTS MIDDEN BOVEN DE NAAO lET. OIT VOOR11433 , HET AF~rELLEN VAN DE OFSETS11434 1---------------------------··--------------------------------------------11435 I11436 Afstellenl 111437 GOSUB Cle~r_keys

11438 SYSTEM PRIORITY 011439 PRINT TABXYI0.8>,·OEZE ROUTINE ZET DE TOORTS MIDDEN BOVEN DE NAAO·11440 01epte~0

1144\ B_pendel=011442 GOSUB Inltialiseer11443 GOSUB Na~dzoeken

11444 GOSUB Init_screen11445 RETURN11446 I11448 !-----------------------------------------------------------------------1\450 /TEST SPEED: ROUTINE VOOR HET EIKEN VAN DE CORRn:TIE SNELHEOEN11460 !I1470 1-----------------------------------------------------------------------11480 I11490 Test_speed:!11500 GOSUB Clear_keys11510 SYSTEM PRIORITY 011520 PRINT TABXYI0.4),· ••• TEST SPEED ROUTINE •••\1530 ON KEY 5 LABEL "Y speed· GOSUB V_speed11540 ON KEY 6 LA8EL "Z speed" GOSUa I_,peed11550 ON KEY 9 LABEL "STOP" GOTO EXlt_te.I_.peed11560 Blop7:~OTO Blop711570 I115B0 V_6peed:INPUT "Geef de gewen.le Y-'ver'plaalslng i", 1'11'\" .YI'II'l11590 Y_di.place(YI'\I'\/10)11600 Z_dlspl~ce(~)

11610 FOR J4~1 TO 1011620 CONTROL 12.2,011630 CONTROL 12.2;311640 T1jd11650 WAIT 111660 NEXT J411670 OISP "READY11680 RETURN11690117001171011720117301174011750117601177011780117901·18001181011820 111830 Exit_test_"peed: !11840 GOSUB Init_"creen11850 RETURN

I

-t-lrI

Page 76: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

I

-+JVlI

12530 I12540 !-----------------------------------------------------------------------12550 112560 Set_BYB_p~r: !12570 GOSUB Clear_keys12S80 SYSTEM PRIORITY 012590 I12600 PRINT TABXY(0,41;· •• • SET SYSTEM PARAMETERS ROUTINE •••126101 PRINT TABXYI0,BI,'N LIN ~'IN_Iin

12620! PRINT TABXYI25,8),'AANTAL BAANPUNTEN WAAROVER SEMIODELO WORDT'12630 PRINT TABXYI0.911"NMT MAX ·";NMt_Max12640 PRINT TABXY(25,9),'AANTAL NO MATCH PUNTEN NODIG VOOR EINDE NAAO DETEI<TIE"12650 PRINT TIIBXY(0,10),'ROBOT DELAY ~",Oel"YJobot

12660 PRINT TABXY(0,ll II'SENSOR OELAY·";Delay_6enBor12670 PRINT TilBXYI0,121;'T eye Ius ~"IT_cycluB

12680 PRINT TAOXY(0,13l;'Dv ·",Dv12690 PRINT TABXY(25,13);'VOORLOOPAFSTAND'12700 PRINT TABXY(0.141,·D_draad ·",D_draad12710 PRINT TABXY(25,141I'(DIAHETER VAN DE LASORAAD IN MMI'12711 PRINT TABXYl0, 15)i 'T_reeht ." iTJecht12720 Changed-'127301 ON KEY 0 LABEL 'set N LIN' SOTO Se(_n_.lln12740 ON KEY 5 LABEL "set NMT MAX' GOTO Set_nMt_MaA12750 ON KEY 1 LABEL 'set ROBOT DELAY" GOTO Set_robot_delay12760 ON KEY 6 LABEL "set SENSOR DELAY' GOTO Sid_sen_delay12770 ON KEY 2 LABEL "set T eyclu." GOTO Set_t_.cycluB12780 ON KEY 7 LABEL 'set DV" SOTO Set_dv12781 ON KEY 3 LA8EL 'SET T recht" SOTO Set_t_recht12790 ON KEY 8 LABEL 'set 0 la.dread· GOTO Set_draad12800 ON KEY 9 LABEL "EXIT' GOrO EXlt_set_sys12BI0 BlopI0:GOTO Blopl012820 I12830 Sel_n_lln:12840 INPUT 'GEEF DE GEWENSTE N LIN .. ,N_Illl12850 IF N_11n<1 THEN GOlO 5et_n_Iln12860 GOTO Set_sys_par12870 I12B30 Set nMt Ma~: I12890- INPUT -;;-6EEF DE GEWENS1E NIH MAX •• NMt_Ma,'12900 IF NMt_Ma~<1 THEN BOTO Sel_nMt_Ma.12910 SOTO Set_.ys_par12920 !12930 Set_robol_delay:12940 INPUT "SEEF DE GEWENSTE ROBOT_DELAY WI\ARDE .. ,llelaYJobol12950 GOTO Set_sys_par12960 !12970 Set_sen_delay:12980 INPUT "GEEF DE GEWENSTE SENSOR DELAY WAAROE ",Delay_.ensor12990 GOTO Sel_.y._par13000 !13010 Set_t_cyclus: I13020 INPUT 'SEEF DE GEWENSTE ,. cyclu, WI\ARDE' .T_cyclus13030 SOTO Set_,y,_pBr13040 I

13050 Set_dv: I13060 INPUT "SEEF DE SEWENSTE UOORLOOPAFSTAMD OU IMMI" .Ov13070 GOTD Set_5ys_par

!1I,IiI'- I11

!jj Ii jI)!

II

, IIi

,i

13110 GO TO Set_.y._par13120 !13121 Set t recht: '.13122 INPUT "BEEF DE 6EWENSTE T_recht .. ,T_recht13123 GOTO Set_.ys_par13124 !13130 E~lt_set_sys: I

13140 BOSUe Init_ocreen13150 RETURN13160 I

/3170 1--------------------------------------------------------- ..--.- ----------13180 !INIT_SCREEN: ROUTINE DIE HET SCHERM EN DE SOFTKEYS LEES MAAKT13190 ! EN EEN TEKST PLAATST13200 !--------------------------------------.-------------- --------- ----- -----.13210 I

13220 Inlt_.creen:13230 Clear_screen13250 60SUB Clear_I_ey.13260 PRINT TABXYI0.01,' •• • AUTDMATISCH BD06LAS5EN .....13270 RETURN13280 I13290 END

.'-,

Page 77: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

!------------------------------------------------------------------------!!------------------------------------------------------------------------

ISUB SenddetalINTEGER Module,Data)

ASSIGN @Gpio TO 121FORMAT OFFOUTPUT @Gplo USING ·.,W"IData t 256'ModuleASSIGN ~GpIO TO 0

SUBEND1----------------------------------------------------- ---------------------

SUBROUTINE PRINT MATEN1-------------------------------------------------------- -----.------------!SUB Print_MatenIINTEGER KI

COM IProfiell REAL YdI150I,Yt(150),ZdI150I,O(IS0)PRINT TABXYI0,18l;"DWARS OPPERVLIIK - MM"PRINT TABXY( 19,181 I

PRINT USING "3D.D";0(K)SUBEND

!-------------------------------------------------------------------------

I1----------------------------------------------------------! SUBROUTINE: SEND PARAH1---------------------------------------------------------1

SUB Send_paraM(REAL Voltage,Wire_,peed)I DEZE SUBROUTINE STUURT DE JUISTE WAARDE VOOR DE INSTELLING VAN! DE ANALOGE STUURSPIINNINGEN VOOR DE OPEN-CIRCUIT SPANNING (0--50 Vl! EN OE DRAIIDSNELHEID (0-18 M/Mlnl NAAH DE DAC'S"

INTEGER Oatal ,Data2IF Voltage/50 THEN Voltage Q 50IF Voltage<0 THEN Voltalle=0Data2-INTI1255*VoltageI/50+.51IF Wlre_speed>18 THEN Wire_speed n 18IF Wlre_speed<0 THEN Wire_speed-0Datal-INT«255.Wire_speed)/18+.S1Senddatal3,DatailSenddata(4,Data2 )

SUBENO1------------------------------------------------------ -----------------I! -------------------------------------------------------------------------! SUBROUTINE: TIJD!----------------------------------------------------- --------------------1

SUB TljdPRINT ,A8XY( 55.1 1,DATE$( TIMEOATE ), r IME$( TIHEOATE)

SUBENO1

19560i957019580195901960019610196201563019640196501966019670196801969019700197101972019730197413197501976019770197801979019800198101982019830198401985019860198701988019890199001991019920199301994019950

, 199601996119970199711997319980

100~ I!" ,Cha2

IF Duty_cycle/100 THENCha2~Cha2+1

DlJtl'_cycle-100OISP TABI50I,"Z: Duty Cycle

END IF

Outy_cycIe-INT(ABS(Ycorr)·200/Uy~.5)

IF Ycorr>0 THEN- Richtlng-0

ELSERlcht1ng~12B

ENO IF

Duly_cycle-iNTlABSCZcorrl·200/Vzt.51IF lcorT>0 THEN

Rlchting"'0ELSE

Rlehtlng~128

END IF

IF Duty_cycle>100 THENChel-Chel+10IJty_cycle~100

DISP TAB(20),"Y: Duty C,'de> 100% !I" ,ChalEND IF

Senddatal6,InhoudlSUB END

INTEGER IohoudInhoud-32'Robot_lnt+16oJMp3+8.Gas+4.Power_source+2'ToortslKl+Manlpulat

ISUB l_diaplace(REAL Zcorr)

COM IRobotvelocl VY,V!COM IChal INTEGER Chal ,Cha2

Senddata( 1 ,Rjeht ing+Outy__cye Ie)SUBEND

!

I1--------------------------------------------------------~---------------I SUBROUTINE: SEND SWITCHES1--------------------------------------------------------------------------ISUB Send_switches<INTEGER 1<)

COM ILasparaMI INTEGER Robot_lnt ,JMp3.Gas,Power_source,Toortsl' I.Manlp

Senddata(2,RJchtlng+Duty_cyclelSUBEND

1-------------------------------------------------------------------------

I····"·· .. ·· ............ ·- .. ·· .......... ~ ...... -.. ----------

I SUBROUTINE: Y_OISPlACE EN 1_0 I SPLACE1------------------------------------------------------------------------ISUB Y_diaplace(REAL Ycorrl

COM IRobotvelocl VY,VzCOM IChal INTEGER Ch.. 1 ,Cha2

Ill"',:)'"18940189501896018970189801899019000ulator1901019020

19030190401905019060190701908019090191001911019120191301914019150191601917019180191901920019210192201923019240192501926019270192801929019300193101932019330193401935019360193701938019390, 94001941019420 !194301844018450194601947019480194901950019510

or

•\,.)

Page 78: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

(positie hoog hoven het werkstuk)

(positie hoog hoven de naad)

(spatter cleaning)

Bij1age B, robot programma's

B.l, programma voor bet lassen van v1akke platen,

met besturing van de pende1beweging vanuit de procescomputer

Programma 0:

10 TCP 1

20 V=150 mmls Vmax=600 mmls

30 ROBOT COOR40 ENABLE INT

50 POS V=100%

60 RECTCOOR

70 POS V=50% (positie vlak hoven de naad)

80 V=80 mmls Vmax=300 mmls

90 POS V 100% VECTOR Sl (Y-eorrectie vector)

100 POS V 100% VECTOR S2 (Z-eorrectie vector)

110 POS V=O% CONTOUR Sl/50% S2/50% (naadzoek instruktie)

120 POS V=10% CONTOUR Sl/50% S2/50% (naadvolg instruktie)

125 DISABLE INT

130 POS V=600%

140 CALL PROG 300

145 WAIT UNTIL INP 99-1

150 RETURN

Deftnities:

TCP 1: X...-178.3 Y=60.4 Z--163.1

Sensor 1: Sl R 4B INP2 0.15 -7/7

Sensor 2: S2 R 4B INPll 0.15 -7/7

-t1--

e,.i

Page 79: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

(positie hoog hoven het werkstuk)

(positie hoog hoven de naad)

(spatter cleaning)

B.2 programma voor het lassen van v1akke platen,

met besturing van de pende1beweging vanuit de robot

10 TCP 1

20 V=150 mm/s Vmax=6oo mm/s

30 ROBOT COOR

40 ENABLE INT

50 POS V=100%

60 RECTCOOR

70 POS V=50% (positie vlak hoven de naad)

80 V=25 mm/s Vmax=4oo mm/s

90 POS V=100% VECTOR Sl (Y-correctie vector)

100 POS V=100% VECTOR S2 (Z-correctie vector)

110 POS V=O% CONTOUR S1/50% S2/50% (naadzoek instruktie)

120 POS V=10% CONTOUR S1/50% S2/50% WEAVE PROG 200 (naadvo1g instruktie)

125 DISABLE INT

130 POS V=600%

140 CALL PROG 300

145 WAIT UNTIL INP 99=1

150 RETURN

Definities:

TCP 1: X=-178.3 Y=60.4 Z=-163.1

Sensor 1: Sl R 4B INP2 0.15 -7/7

Sensor 2: S2 R 4B INP11 0.15 -7/7

Prog.2oo:

10 POS V=40% (587.6 , 184.0 , 722.3)

20 RESET OUTP 1

30 POS V=40% (590.0 . 184.0 • 722.4)

35 SET OUTP 1

40 POS V=40% (587.6 • 178.8 • 722.4)

50 RESET OUTP 1

60 POS V=40% (590.0 • 178.8 • 722.4)

65 SET OUTP 1

70 POS V=40% (587.6 • 184.0 .722.3)

80 RETURN

-18 -

Page 80: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

.. ~" + ISV

" ot- It f&AlABl£

10S (t1S8)

13~ ( ,f

~8 ( '1 ,,' ,l' ( 'It IS t, ( 's 1lt LS I~ fJ

S ( B ~l't ~ ~DAt-OB

c, f ., ,10

'1 ( ct S II

~ 3 .2 11. (l\8)I I. I

~,~

~

I 3 1

fhrf

1 0-I"V

100( IS C

I ( i-ts ( - If''/Ia( t31 ( + IS"'H--- ·U·V

1&4

I o'wf-------------_a

Schema Digltaal-Analoog Convertor

Page 81: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

ltV.

1

,________ I

-------

'1.-. ,I

~\

1

o

1'1. 6 r- '1.1)

0- 'OIU\

­.

Schema galvanische scheiding

Page 82: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

c

Aans1uitingen 32-po1ige printccnnector

Digitaa1-Ana100g Convertoren 1 en 2

DATA BUS

G:ND

Bit 0

Bit 1

Bi t 2

Bit 3

Bit 4Bit 5Bit 6

Bit 710 Output DAG 1 WIRE FEED

Latch Enable DAG 1

Latch Enable DAG 2

10 Output DAG 1 WELDING VOLTAGE

1

2

3

4

56

78

9

10

11

12

13

29

3031

32

-15 V

o V

+15 V

5 V

Page 83: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Aans1uitingen 32-po1ige printconnector

Ga1vanische scheiding 1 en 2

1 GND (interface)

10 I o AID converter WIRE FEED

12 Vuit 0-10,24 V WIRE FEED

14 +15 V (ESAB apparatuur)

16 GND (ESAB apparatuur)

18 -15 V (ESAB apparatuur)

20 Vuit 0-10,24 V WELDING VOLTAGE

22 I o AID converter WELDING VOLTAGE

31 +15 V (interface)

Page 84: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

Conector van Robot-Interface naar

ASEA IRb 6/2 Robot Controller

c

flatcable/ robot R.connaansl losse draden Welding ~quipment W.E.

1 GND bruin (rand) R. GND

2 Welding On rood W.E.

3 not used oranje

4 not used geel

5 not used groen

6 next robot instruction blauw R. Instruction Int.

7 not used paars

8 WIRE FEED (0,10,24 V) blauw/wit (dik) W.E.

9 WELDING VOLTAGE (0-10,24 V) lichtblauw (dik) W.E.

11 +15 V ESAB apparatuur read (los) W.E.

12 o V ESAB apparatuur zwart (los) W.E.

l~ -15 V ESAB apparatuur blauw (los) W.E.

20 GND blauw (rand) R. GND

21 Bi t 4 (MSB) groen R. input 522 Slave Y Bit ~ geel R. input 4 .2~ Bit 2 oranje R. input 3

24 Bit 1 (LSF) rood R. input 2

25 Bit 4 (MSB) bruin R. input 14

26 Slave Z Bit 3 zwart R. input 13

27 Bit 2 wit R. input 12

28 Bit 1 grijs R. input 11

Page 85: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

1000 1.**····.· •• ••••••••••••••·••••••••••••••••••• 1610 liDO II,R51010

"SOFTWARE VOOR DE SLIIVE-PROCESSOR MET DE 1620 MOV R5,II

'c-., _.1020 • MOGELIJKHEIO VIIN SNELHEIOSSTURING (4 BITS) 1630 I JMP NEXT ~

1030 I VAN DE ADAPTIVE CONTROL VAN DE A5EA ROBOT 1640 ! I ~1040 t······**······~*····························

16S0 !GIIMMII: MOV R4,H7 \47<106;4982 p1041 I VERsIE 8 1660 I MOV R6,Il1ll61042 UITGIIANOE VAN GEMETEN CORFlEKTIE sNELHEDEN VAN DE ROBOT 1661 I MOV R1 ,to fIl

1043 ALLEEN EEN I WOROT NIET GEBRUIKT ilLS UITSTURING 167\1 I MOV 11,#4 01-1)

1050 1680 ! ADD II,RS~1060 JMP VVOLG 1690 I MOV RS,A

1070 NOP 1700 I JMP NEXT ~

1080 JMP SERV ;INTERRUPT IIORES 1710 ! I ns1090 IVVOLG: CLR II 1720 IOELTII: MOV R4,#64 164·78~4!;92 <:1100 ! OUTL P2,II 1730 I MOV R6,#78 81110 , EN I 1731 I MOV RI,t0

1120 IHLOOP: JMP HLOOP ,IDLE LOOP 1740 MOV 11,15 "1

1130 ISERV: DIS .INTERRUPT SE.RVICE 1750 liDO II,R5 ~

1140 I INS II ,BUS ,ROUTINE 1760 ! MOV R5,A('I)

1150 I MOV RI,ll 1770 I JMP NEXT ~

1160 I ANL A,I7FH 1780 I, ~

<:1170 I MOV R2,A ,H2 IS DUTY CYCLE 1790 IEPSI: MOV R4,I82 ,82·61;5002 ('I);

1180 I MOV 1\ ,RI 1800 I MOV R6,#61 "d1190 I JB7 LEFT 1801 I MOV RI,#0 "1

1200 I MOV R5,I8 1810 MOV 11,#6 R1210 I JMP CONT 1820 liDO A,R5 ~1220 ILEFT: MOV R5,t0 1830 MOV R5,A ~

J 1230 I, 1840 JMP NEXT

CZ> 1240 ICONT: MOV II ,Ill dFR2;'11 IHI:N 1850 ,; ns1250 I CPL A IGOTO ALPHII 1860 IFULL: MOV . R4 ,11100 ;100<50~5000 =.r 1260 I ADD A,H2 1870 I MOV R6,#S0, 1270 I JNC ALPHA lR71 MOV RI,1I0

1280 II 1880 MOV A,#7

1290 ! MOV A,#29 ; IF R2~ 29 HIEN 1890 ADD II,R5

1300 I CPL II ;GOTO BElA 1900 MOV R5,II

1310 I ADD II,RZ 1910 II

1320 I JNC BETII 1920 !NEXT: MOV II,R4 ;R3=(R4-N)/Z

1330 II 1930 ! CPl. II

1340 ! MOV II ,H'1 ;IF R2;(47 THEN 1940 I liDO II,R2

1350 ! CPL A 16010 GAMMiI 1950 I CPL II

1360 I liDO A,R2 1960 I RR II1370 I JNC GArIMA 1970 I IINL II ,1l7FH1380 II 1980 I 110V R3,I\

1390 I MOV A,1I64 ;IF R2=(64 THEN 1990 I EN I1400 I CPL A ;6010 DELTA 2000 II

1410 I 1\00 A,R2 2010 IMOVE: CLR A ;IF R3~0 lHEN S~IP

1420 I JNC DELTA 2020 I liDO II,R3

1430 ! , 2030 I Jl MOVEZ

1440 ! MOl) A,#82 ,IF R2=<82 lHEN 2040 ! ,

1450 I CPL A ,GOTO EPSI 2050 1 CALL SUBI

1460 ! ADD II,R2 2060 II

1470 ! JNC EPSI 2070 IMOVE2: CLR A ,IF R2~0 THEN SKIP

1480 I, 2080 ! liDO II,R2

1490 I JMP FULL lELSE GOlD FUl.L 2090 1 JZ VVOLG

1500 I, 2100 I,

1510 IALPHII: MOV R4,#11 11<454~4994 2110 I ~IOV II,R2 IR3~R2

1520 I MOV R6,#227 2"=~27·4S4 I2120 I MOV R3,A

1521 I MOV Rl,#1 GEBRUIK DE "',.2 MS WIICH1LUs 2130 I MOV II,R5

1530 I MOV A,1I2 i 2140 ! SWAP II

1540 I ADO A,RS I 2150 I OUTL P2 ,II

1550 I MOV RS,/\ !i 2160 I,

1560 I JMP NEXT '! 2170 ! CIILL SUBI

1570 I, 2180 I,2190 I JMP 1)\)OL6

Page 86: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

TDR3*R6*0.2 MS. ALS RIDI

A.R6R4./\R7,#16/I/I .RID/I/IRR7,#32R7.01lARR4.HIERR3,5UBI

HOVHOVMOVCLRADDJZHOVDJNZDJNZDJNZRETR

DflAR:

II! ,* ••••••••••••• ,•••••••••••• * ••••••••••••••••••••! I

ISUB! :I!HIER:

222122302240225022602270227122722273227422802290230023102320

I

0:>V)I

Page 87: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

'--<-,

E

-+

..... -t-H· ~,

++"'- , .,+......i-H--:-lf''=-'+-r'- ,F

~--'- ~'-'--'-c:--+'

h~

--..-i-I-~ ~~ , -;.~_,....;_l.

.j....l+j.,'~,

,+~j.

" '.t- 4-'- ... 111 t r ·-;-f_~·I;-"'~.1.

~~-""""~I"''''-+-.;:~_:"I,.I! I I I,!II;,

i-t ....

Bij1age E.1

Pende1patroon bij real time besturing vanuit de procescomputer

1: BPENDEL =0

2: Bl'ENDEL = 1 mm

3: Bl'ENDEL =2 mm

4: BPENDEL =3 mm

5: Bl'ENDEL =6mm

-&6 -

Page 88: Eindhoven University of Technology MASTER Sensor ...manipulator (robot) en een bestuurbare lasmachine, sensoren en programmeerbare besturings-apparatuurnodig. De sensoren mooten in

•~'-,-T.

,H

--;- ' ...":"-',.

-

1-

" ., ,'" ... ""

Bij1age E.2

Pendelpatroon bij besturing vanuit het robotprogramma

1: BpENDEL = 3 mm (robotsubprogramma 210)

De naad ligt evenwijdig aan de geprogrammeerde baan

2: BpENDEL = 3 mm (robotsubprogramma 210)

De naad ligt scheef ten opzichte van de geprogrammeerde baan

3: BPENDEL = 5,6 mm (robotsubprogramma 200)

De naad ligt evenwijdig aan de 'geprogrammeerde baan

4: B PENDEL = 5,6 mm (robotsubprogramma 200)

De naad ligt scheef ten opzichte van de geprogrammeerde baan

-~~-