• No results found

Experiment med kollaborativ robot i testbädden DigiLog

N/A
N/A
Protected

Academic year: 2022

Share "Experiment med kollaborativ robot i testbädden DigiLog"

Copied!
28
0
0

Loading.... (view fulltext now)

Full text

(1)

EXAMENSARBETE INOM MASKINTEKNIK Robotik, högskoleingenjör 15 hp

SÖDERTÄLJE, SVERIGE 2021

Experiment med kollaborativ robot i testbädden DigiLog

Ali Hamid

SKOLAN FÖR INDUSTRIELL TEKNIK OCH MANAGEMENT INSTITUTIONEN FÖR HÅLLBAR PRODUKTIONSUTVECKLING

(2)
(3)

Experiment med kollaborativ robot i testbädden DigiLog

av Ali Hamid

Examensarbete TRITA-ITM-EX 2021:75 KTH Industriell teknik och management

Hållbar produktionsutveckling

Kvarnbergagatan 12, 151 81 Södertälje

(4)
(5)

Examensarbete TRITA-ITM-EX 2021:75 Experiment med kollaborativ robot i testbädden

DigiLog

Ali Hamid

Godkänt

2021-03-22

Examinator KTH

Claes Hansson

Handledare KTH

Lars Johansson

Uppdragsgivare

Jannicke Baalsrud Hauge

Företagskontakt/handledare

Jannicke Baalsrud Hauge

Sammanfattning

Maskiner och robotar utför idag komplicerade uppgifter i arbetsmiljöer där också människor arbetar. Kunskaper om logistik spelar stor roll för ett optimalt flöde av material mellan maskiner, robotar, människor och lager. För att möta behovet av en testbädd för digitalisering och automatisering av logistiken skapades Digilog, som är ett samarbetsprojekt mellan KTH, Scania och AstraZeneca. I Digilog kan man testa och experimentera med olika sätt att arrangera interaktion mellan robotar, människor, maskiner, truckar och andra logistiska komponenter i ett nätverk, sammanbundna med ett kommunikationsprotokoll (IoT).

Detta examensarbete går ut på att programmera en sexaxlig robot från Universal Robot att utföra en specifik uppgift, att vägledd av signaler från en videokamera, leta upp ett specifikt objekt och flytta objektet från en plats till en annan. Arbetssekvensen ska utföras på ett säkert sätt med hänsyn till att människor uppehåller sig och arbetar nära roboten. Detta system kommer att vara en del av logistiksystemet Digilog.

Arbetet har utförts med hjälp av Robotens bruksanvisning, seminarier på Universal robots hemsida och samarbete med den som programmerat positioneringsprogrammet för kameran. Kameran var med USB-kontakt kopplad till samma dator som

kommunicerade med roboten via lokalt nätverk.

Största problemet/begränsningen utgjordes av positioneringskameran. För våra behov visade den sig vara alltför begränsad hårdvarumässigt. Skall projektet utvecklas för att hantera andra, mer komplexa, objekt behövs en bättre kamera.

Roboten programmerades att med hjälp av kameran leta upp en blå låda, plocka upp den, och flytta den till ett annat bord för att slutligen ställa ner den. Sedan letar roboten upp nästa objekt. Roboten programmerades med hänsyn till de säkerhetsprotokoll som reglerar arbetet för robotar som utför ett arbete i en miljö där människor befinner sig i.

Systemet kan förbättras så att det klarar nya uppgifter. Med en bättre kamera möjliggörs utförande av ytterligare uppgifter: att ange Z-koordinaten (höjd över

marknivån), att ange objektens orientering, och att ange typ av objekt. Roboten skulle kunna bli mer flexibel, och hantera objekt av olika form och storlek om man

införskaffade en verktygsväxlare och ett antal verktyg (som till exempel ett tvåfingerverktyg) till roboten.

Nyckelord

Universal Robot Kollaborativt arbete transport logistik Digilog

(6)
(7)

Bachelor of Science Thesis TRITA-ITM-EX 2021:75

Experiment with collaborative robot testbed of DigiLog

Ali Hamid

Approved

2021-03-22

Examiner KTH

Claes Hansson

Supervisor KTH

Lars Johansson

Commissioner

Jannicke Baalsrud Hauge

Contact person at company

Jannicke Baalsrud Hauge

Abstract

Machines and robots today perform complex tasks in work environments where people also work. Knowledge of logistics plays a major role in an optimal flow of materials between machines, robots, people, and warehouses. To meet the need for a test bed for digitization and automation of logistics, Digilog was created, which is a collaborative project between KTH, Scania and AstraZeneca. In Digilog, you can test and experiment with different ways of arranging interaction between robots, humans, machines, forklifts, and other logistical components in a network, connected by a communication protocol (IoT).

This thesis involves programming a six-axis robot from Universal Robot to perform a specific task, being guided by signals from a camera, locating a specific object and moving the object from one place to another. The work sequence must be performed in a safe manner with regard to people staying and working close to the robot. This system will be part of the Digilog logistics system.

The work has been carried out with the help of the Robot's operating instructions, seminars on Universal Robot's website and collaboration with the person who programmed the positioning program for the camera. The camera was connected via USB to the same computer that communicate with the robot via a local network.

The biggest problem / limitation was the positioning camera. For our needs, it turned out to be very limited in terms of hardware. If the project is to be developed to handle other, more

complex, objects, a better camera is needed.

The robot was programmed to use the camera to locate a blue box, pick it up, and move it to another table and put it down. Then the robot looks for the next object. The robot was

programmed with regard to the safety protocols that regulate the work of robots that perform work in an environment where people are.

The system can be improved to handle new tasks. With a better camera, it is possible to perform additional tasks such as: to provide the Z-coordinate (height above ground level), to specify the orientation of the objects, and to specify the type of object. The robot could become more flexible, and handle objects of different shapes and sizes if you acquired a tool changer and several tools (such as a two-finger tool) for the robot.

Key-words

Universal Robot collaborative work transport logistics Digilog

(8)
(9)

Ali Hamid

Innehåll

Bakgrund ... 1

Utrustning i projektet och dess placering ... 1

Mål ... 2

Avgränsningar ... 2

Specifikationer ... 3

Standarder och säkerhet ... 3

SS-EN ISO 10218-1:2011 ... 3

ISO 10218-2 och ISO/TS 15066 ... 4

Kortfattad sammanfattning av tre standarder ... 4

Metod och utförande ... 4

Programstruktur och skript ... 5

Beskrivning av programmet ... 7

Beskrivning av arbetssekvensen i huvudprogrammet (Robot program) ... 7

Resultat och potentiella problem ... 11

Problem som dykt upp ... 11

Resultat ... 13

Att testa vilka möjliga objekt som kan flyttas och behandlas av roboten ... 13

Att följa relevant säkerhetsstandard ... 13

Konfigurera ett vakuumverktyg (griparen) och sensorer till UR-roboten ... 15

Programmera UR roboten att genomföra pick and place program och eventuellt andra program ... 16

Systemets potentiella möjligheter ... 16

Appendix ... 1

UWB ... 1

Referenser ... 17

(10)

Ali Hamid

(11)

Ali Hamid

1

Bakgrund

Världen är i ständig utveckling när det gäller produktion, och alltmer digitalisering sker. Fortfarande kan man emellertid konstatera att inom logistik och behandling av material, inom och nära

produktion, råder en stor andel manuellt arbete och liten andel digitalisering. Digitalisering har förändrat mycket inom produktionen, men inte lika mycket inom logistiken. Det behövs en testmiljö för att testa och hitta optimala och hållbara lösningar inom materialhantering och logistik. För att möta detta behov skapades Digilog (Hauge, 2017).

Digilog är ett projekt, initierat av KTH Södertälje, Scania och Astra Zeneca. Projektets avsikt att erbjuda en testmiljö för digitalisering av logistikmetoder och att kombinera fysiska och digitala modeller. Testmiljön är tillgänglig för studenter, forskare och företag. (Hauge, 2017)

Testmiljön ger en möjlighet till optimering av logistik genom att testa olika nivåer av digitalisering och automation. Detta åstadkommes genom att testa olika konfigurationer av människor,

transportrobotar, truck, arbetsstationer, UR-robot (en sexaxlig robot från Universal Robots) osv.

Komponenterna (människor, datorer, sensorer, robotar med mera) kopplas ihop med hjälp av IoT (internet of Things protocol). (Fanny Platbrood, 2018)

Ett annat syfte är att stödja en stegvis övergång från analog till digitaliserad logistik till olika slags kunder, till exempel fabriker, sjukhus, lager osv. Företag och användare kan hitta rätt

automatiseringsnivå för sin logistik och välja teknik som leder till en hållbar verksamhet (Hauge, 2019).

Detta examensarbete är ett delprojekt i Digilog, och handlar om att programmera UR-roboten och dess tillbehör, som griparen och kameran. Roboten ska på ett säkert sätt utföra ett kollaborativt och automatiskt arbete med människor närvarande i samma område.

Utrustning i projektet och dess placering

I projektet kommer följande utrustning att användas:

• En sexaxlig robot från Universal Robot (”UR-roboten”) som är placerad på en meterhög plattform.

• Gripverktyg med sugkoppar som är kopplade till robotensarm Figur 8. Verktyget fäster objekt genom att suga ut luft och skapa vakuum mellan kopparna och objektet. Sugkopparna är indelade i två delgrupper, A och B, som kan opereras av roboten samtidigt eller

individuellt.

(12)

Ali Hamid

2

• En Manöverenhet (Teach Pendant) kopplad till robotens kontroller dator via kabel.

Figur 1. Manöverenhet(Teach Pendant)

• Ett bord framför roboten och ett annat bord bredvid den.

• En blå låda Figur 9. Färgen har ingen större betydelse, men det ska vara mörk så att det program som analyserar bilden kan skilja lådan från bordet som har ljus färg. Den blå lådan används ofta av Scania.

• En kamera placerad i taket ovanför det bord som står framför roboten. Kameran är riktad rakt ner mot bordet och kopplad till en dator via USB kabel.

• Ett bildanalysprogram i datorn som behandlar bilden från kameran och ger X- och Y- koordinater för den blå lådan på bordet.

Mål

• Att testa vilka möjliga objekt som kan flyttas och hanteras av roboten.

• Att följa relevanta säkerhetsstandarder.

• Konfigurera ett vakuumverktyg (griparen) och sensorer till UR-roboten både mjukvaru- och hårdvarumässigt enligt griparens bruksanvisningar (onrobot, 2019) (bifogade i

referensermappen).

• Programmera UR roboten att utföra ”pick and place” -rutiner och eventuellt andra uppgifter.

Avgränsningar

• Mjukvaran till kameran ska programmeras och implementeras av en annan person1.

• Datorn med bildanalysprogram och dess hantering och koppling till roboten ska implementeras av annan person.

1 Wajid Ali Khilji

(13)

Ali Hamid

3

Specifikationer

Det program som skrivs för UR-roboten ska fungera på följande sätt: roboten ska vänta på

koordinater för ett objekt (den blå lådan) på plockbordet från positioneringskameran. Sedan plockar roboten upp objektet och placerar det på ett annat bord. När arbetssekvensen är klar väntar UR- roboten åter på koordinater för ett nytt objekt… osv.

Programmet ska uppfylla ett säkerhetsprotokoll som presenteras senare i rapporten.

Standarder och säkerhet

Det finns tre relevanta standarder gällande kollaborativt arbete mellan människor och robotar:

SS-EN ISO 10218-1:2011, ISO 10218-2 och ISO/TS 15066. Dessa beskrivs i det följande, och därefter kommer det en sammanfattning.

SS-EN ISO 10218-1:2011

Standarden SS-EN ISO 10218-1:2011 specificerar krav och riktlinjer för en säker robotsystemdesign, och åtgärder vid farliga situationer. Den beskriver risker associerade med robotar, och ger riktlinjer för att reducera eller eliminera dessa. (Anon., 2011).

SS-EN ISO 10218-1:2011 är en internationell standard. Enligt CENELEC(European Committee for Electrotechnical Standardization) ska bland annat EU länder som Sverige följa denna standard.

I det följande beskrivs relevanta delar av SS-EN ISO 10218-1:2011.

Standarden bygger på att systemets konstruktion och programmering ska vara säker redan vid design, istället för att säkerhetslösningar implementeras efteråt. Med andra ord: observera vilka risker som är för handen och implementera program och hårdvara så att riskerna minimeras eller elimineras, istället för att implementera systemet (mjukvaran och hårdvaran) och sedan upptäcka riskerna och vidta åtgärder. (section 5.2.1)

Om strömavbrott sker, ska roboten vara säker i sig själv, eller med hjälp av externa delar eller instrument. (section 5.2.2)

Konstruktioner som avger elektromagnetiskt strålning ska vara implementerade för att eliminera negativa konsekvenser av att det inträffar någon elektromagnetisk störning, radiofrekvensstörning eller en elektrostatisk urladdning. (section 5.2.6)

Roboten måste ha en statusindikation. (section 5.3.3)

“Robotens styrsystem ska vara konstruerat så att när roboten styrs av en lokal handkontroll (Teach Pendant) eller annan anordning för inlärning, förhindras initiering av rörelse eller ändring av styralternativ från varje annan källa.” (section 5.3.5)

Varje robotsystem måste ha två stoppfunktioner: nödstopp (emergency stop) och skyddsstopp (protective stop). (section 5.5)

Nödstopp: initieras manuellt av operatör. Det måste överskrida all annan robotkontroll, och måste vara i kraft till dess nollställning skett manuellt. (section 5.5.2)

(14)

Ali Hamid

4

Skyddsstopp: detta stop kan initieras manuellt eller av annan logikkontroll. Roboten ska ha åtminstone ett skyddsstopp. Detta stopp ska stoppa robotens rörelse genom att bryta eller kontrollera kraften till robotens ställdon. (section 5.5.3)

Om en person går in i den kollaborativa arbetsplatsen, ska roboten stanna och följa section 5.4 och 5.5.3, och fortsätta den automatiska sekvensen när personen lämnar det kollaborativa området.

(section 5.10.2)

ISO 10218-2 och ISO/TS 15066

Enligt ISO 10218-2 och ISO/TS 15066 ska roboten kunna användas i ett av fyra lägen av kollaborativt arbete, eller en kombination av dem (Fanny Platbrood, 2018).

De fyra lägen är:

• Monitored safe stop

Om en person går in i det kollaborativa område stoppas roboten med ett ”protective stop”, där roboten kan starta och fortsätta arbeta när personen lämnar området.

• Manual control

Roboten styrs manuellt när personen går in i det kollaborativa området.

• Force and power limitation

Roboten körs i ett begränsat läge (kraft, hastighet, acceleration) när en person går in i det kollaborativa området. Med UR roboten i begränsat läge har programmeraren bestämt olika parametervärden (hastighet, kraft osv.). Påbjudna parametervärden vid begränsat läge är listade i ISO/TS 15066.

• Distance and speed monitoring

hastighet och rörelseriktning hos roboten bevakas och ändras beroende på hastigheten och positionen hos personen i området nära roboten, som bevakas av sensorer eller

positioneringskamera.

Vilket läge eller en kombination av lägen ska användas beror på typ av robot, uppgiften, kollaborativa området och risknivå.

Kortfattad sammanfattning av tre standarder

UR roboten måste stanna om en person kommer in i det kollaborativa området2 och återuppta arbetet när personen lämnar det kollaborativa området.

För att kunna uppfylla de säkerhetsstandarder som nämnts tidigare, måste positionskoordinater för personer i området, eller deras avstånd från roboten, levereras av positionskameror i rummet eller sensorer som är installerade nära UR roboten. På det sättet kan roboten stanna om en person kommer för nära.

Metod och utförande

Med hjälp av UR robotens handbok3 och utbildningsmaterial på URs hemsidan (Universal robots, 2020) utförs följande:

• Genomförande av tester för att hitta rätt vakuumnivå och konfiguration till varje objekt som ska lyftas.

2 (section 3.5) i standarden SS-EN ISO 10218-1:2011

3 Handbok och skripthandbok är bifogade med i referens mapp

(15)

Ali Hamid

5

• Programmering av UR roboten så att den inte rör sig utanför det område som är definierat enligt säkerhetsstandarden.

• Koppling av sensorn4 och användning av dess signal i programmet.

• Skapa ett robust5 och flexibelt6 program så att UR roboten kan genomföra en helautomatisk operation som plockar objekten från en viss plats till en annan.

• Optimering av programmet för säkra och snabba rörelser, med minimalt slitage på roboten och dess verktyg.

Programstruktur och skript

Programmet heter enkel_pick_and_place_program. Programmet utför en enkel arbetssekvens som går ut på att från en kamera ta emot koordinater för ett objekt, och därefter plocka upp objektet och placera det på ett annat ställe. I framtiden när Digilog ansvariga personer skaffar en bättre

positioneringskamera som kan identifiera olika objekt med deras X, Y och Z koordinater, kommer det att skapas ett mer avancerat program som gör att roboten kan plocka olika objekt och placera dem på olika platser enligt användarens önskemål.

4 sensor som ska ge signal om att person kommit för nära roboten enligt säkerhetsstandarden.

5 Robusthet: systemet kan hantera ovanliga eller oväntade händelser t.ex. att objekten är fel orienterade eller ett oväntade elavbrott.

6 Flexibilitet: programmet är konstruerat så att det i framtiden blir lätt att ändra det, och passar det till en annan arbetssekvens.

(16)

Ali Hamid

6

Figur 2. Hela programmet

(17)

Ali Hamid

7

Beskrivning av programmet

Funktioner är skrivna med fetstilt text. Variabler med orange text. Positionsvariabel med grön text.

Rad 1 till 3:- körs en gång vid programstart. Movej skickar roboten till punkten safe_home, vilket är en punkt som ligger ca 70 cm ovanför plockbordet.

Huvudprogrammet, Robot Program, som loopar hela tiden, utgörs av raderna 4 till 21.

• Huvudprogrammet kallar funktionerna som ligger i raderna 22, 29 och 78.

Beskrivning av arbetssekvensen i huvudprogrammet (Robot program)

Obs: alla koordinatvärden är räknade från robotbasen som är c:a en meter ovanför golvet. Se Figur 3. Det vill säga att X-, Y- och Z-koordinaternas värde är noll vid robotfoten i bilden.

Figur 3. Uppställningen

(18)

Ali Hamid

8

Obs. mappen return_joint_data, är ett block av fyra programrader. Programraderna gömdes under return_joint_data eftersom de inte är relevanta för detta examensarbete och det är lättare att kopiera och klistra dem efter varje rörelse. Programraderna från 19 till 21, 66 till 68 och 115 till 117, har funktionen att skicka robotaxlarnas positionsvärden till den dator som är kopplad till kameran.

Detta är ett annat delprojekt som är relaterat till Digilog projektet, men ligger utanför detta examensarbete. Roboten kommer att utföra den arbetssekvens som beskrivs här även om nämnda rader tas bort.

BeforeStart körs en gång. Roboten rör sig till en säker punkt (safe_home) och är redo för start.

Figur 4. Huvudprogrammet

Figur 5. Vision programmet

(19)

Ali Hamid

9

Figur 6. Pick programmet

(20)

Ali Hamid

10

Figur 7. Place programmet

Robot program Figur 4 anropar funktionen vision_for_ali där roboten får koordinater för de objekt som ska lyftas. Därefter anropar programmet funktionen Pick som gör att roboten lyfter objekten och flyttar objekten ovanför plockbordet. Sedan flyttar roboten objekten till en punkt

(pick_to_place) mellan punkterna ovanför plock- och placeringsbordet. Slutligen anropar programmet funktionen Place som gör att roboten ställer objekten på placeringsbordet.

vision_for_ali Figur 5 är en funktion där roboten får koordinater för den blå lådan (objektet) från kameran. Variabeln (open) tilldelas värdet False. Loopen från rad 24 till 26 loopar tills värdet på (open) blir true. På rad 25 blir (open) true när programmet i datorn, som är kopplat till kameran, identifierar den blå lådan och öppnar porten ”130.229.152.49”,8001 via LAN (local access network) för att skicka koordinater. Array integer variabeln (gdata) erhåller koordinatvärden för X och Y till de första två elementen, gdata[1] och gdata[2]. Elementet gdata[3] ska utgöra Z-koordinatens värde, men det bestämmer programmeraren, eftersom kameran inte klarar det. I det här fallet är värdet på Z 100 mm från robotfoten, där Z-axeln har sin origo. Rotationsvärdena läggs i de tre andra elementen gdata[4], gdata[5] och gdata[6]. Element gdata[0] används inte. Värdet på (gdata) överförs till positionsvariabeln (posi) och omvandlas till meter från mm.

Pick Figur 6 från rad 78 till 129. Roboten rör sig till punkten above_pick vilket är en punkt ovanför plockbordet. Roboten rör sig till punkten posi vilket är en punkt med X- och Y-koordinater för den blå lådan och i höjdled ca 10 cm ovanför lådan. Roboten rör sig ner med låg fart till punkten below_pick vilket är en punkt som har samma X- och Y-koordinater som posi och samma Z som posi minus 40 cm. Roboten stannar när den känner en kraft riktad uppåt på griparen vilket betyder att

sugkopparna har nått lådan. Griparen suger lådan på rad 114 tills föreskrivet tryck uppnåtts vilket

(21)

Ali Hamid

11

betyder att griparen har fått tag i lådan. Roboten lyfter lådan till punkten posi. Roboten rör sig till punkten above_pick.

Place Figur 7 Roboten rör sig till punkten above_place vilket är en punkt ovanför placeringsbordet, och därefter till punkten ready_to_place som ligger ca 30 cm ovanför den nivå där roboten ska placera lådan. Med låg fart närmar sig roboten nu punkten below_place, som ligger 40 cm under punkten ready_to_place. När roboten känner en kraft på griparen, uppåt längs Z axeln, stannar den.

På rad 65 släpper roboten lådan genom att sluta suga och släppa luften till kopparna. Roboten rör sig därefter till punkten above_place.

Resultat och potentiella problem

Problem som dykt upp

Vakuumgriparen Figur 8 passar inte bra för att plocka små objekt från lådan Figur 9 eftersom griparen är stor och sugkoppen passar inte bra om objekten är långa och smala. För detta

examensarbete används ett objekt som är enkelt att plocka (blå lådan). I början av examensarbetet när målet diskuterades fanns önskemålet att plocka andra objekt än blå lådan, men det gick inte.

Därför omformulerades målet att bara plocka den blå lådan. En möjlig lösning för framtiden är att använda en gripare med två fingrar.

(Hand, 2019)

Figur 8. Griparen

(22)

Ali Hamid

12

Figur 9. Den blå lådan med små objekt

UR-roboten sitter inte fast på golvet. Det betyder att om man av misstag utsätter roboten, eller plattformen den sitter på, för en tillräcklig kraft, så glider plattformen. Det vill säga, det enda som håller robotplattformen på plats är robotens och plattformens tyngd. Detta gör att referenspunkten mellan positioneringskameran och roboten måste ändras.

En lösning för framtiden är att fixera robotplattformen på golvet med skruvar eller fixera kameran i förhållande till robotplattformen, så att båda rör på sig samtidigt.

En tillfällig lösning som har implementerats är att markera golvet och plattformen så att man kan föra den tillbaka till samma plats.

Kameran kan bara detektera den blå lådan. Den klarar inte Små objekt placerade i lådan. Det är ytterligare en anledning till att vi fick nöja oss med att plocka bara den blå lådan. för framtiden planerar Digilogs ansvariga att köpa en bättre kamera.

I projektet har vi inte haft tillgång till någon sensor kapabel att detektera en person som går in i robotens arbetsutrymme. Kameran kan inte heller kunnat detektera detta. Två förslag

presenterades under examensarbetes omgång.

1. Det finns fyra signalmottagare för UWB (se appendix för UWB) installerade på rummet. Förslaget är att förse personer som befinner sig på rummet med tagbrickor

(23)

Ali Hamid

13

som sänder UWB signal. På detta sätt detekteras alla som befinner sig på rummet och då kan ett skyddandestopp ske.

2. Det går att installera en matta med en sensor på golvet under robotens plattform.

Sensorn skickar en signal när en person står på mattan. En skyddsstopp kan åstadkommas när signalen skickas till roboten.

Resultat

Följande är de resultat som uppnåtts.

Att testa vilka möjliga objekt som kan flyttas och behandlas av roboten

Ett av målen från början var att skapa ett program som styr roboten att plocka upp olika slags objekt och förflytta dem till olika platser. Två omständigheter förhindrade roboten att plocka olika objekt från lådan (se Figur 9). Griparen kan inte lyfta små objekt, och kan bara klara objekt med plana ytor.

Det andra problemet är att positionskameran och bildanalysprogrammet inte klarar av att känna igen små objekt utan bara enkla fyrkantiga objekt, enligt information från uppdragsgivaren. Den klarar bara X- och Y-position. Kameran klarar inte heller av att fastställa mått i djupled (Z-position), utan bara X- och Y-position. Därför faller det på programmeraren att ange Z-koordinater av objektet.

Griparen rör sig till en position som är ca 10 cm ovanför objektet för att plocka det. Griparen rör sig nedåt med låg fart, och när roboten känner tryck från objektet så stannar den.

Att följa relevant säkerhetsstandard

Tyvärr var det inte möjligt att följa alla säkerhetsstandarder. Enligt de standarder som här redovisats ska roboten stanna när en person kommer nära den. Detta kunde inte uppnås eftersom det saknas instrument för detektering av personer nära roboten. Positionskameran kan bara avkänna ett litet område på bordet framför roboten. UWB mottagarna behöver tagsändare för att fungera. I övrigt saknades sensorer som skulle kunna detektera personer.

Enligt ISO 10218-2 och ISO/TS 15066 implementerades tredje punkten (Force and power limitation) enligt följande:

• Robotens hastighet, acceleration och kraft ställdes till lägsta möjliga nivåer (Most Restricted) Figur 10 . På så sätt minskas skaderisken i händelse att roboten kolliderar med en person. I säkerhetsfönstret på robotens Manöverenhet finns det fält för begränsningar (Robot limits).

Högst upp finns ett skjutreglage med fyra steg, och vid dess ändpunkt finns valen ”mest begränsad” och ”minst begränsad”. Därunder kan man se värden på parametrar som

hastighet, acceleration, kraft o.s.v. Det alternativ som valdes i detta examensarbete är ”mest begränsad”. Den inställningen gör att om roboten krockar med en person så kommer den att göra det med låg hastighet och liten kraft. Det finns även en funktion i roboten som gör att den stannar direkt när den krockar med en person eller ett objekt.

(24)

Ali Hamid

14

Figur 10. Säkerhet/prestanda skala

• Virtuella plan skapades så att roboten stannar när en del av roboten kolliderar med planen i Figur 11 .

Virtuella plan är plan som låter sig definieras under "Safety" i ett inställningsfönster i

robotprogrammet. Man anger koordinater för planet med tre punkter, och då skapas ett plan. I detta examensarbete skapades två plan, ett som hindrar roboten att krocka med taket och ett som hindrar roboten att krocka med väggen Figur 11 . När en del av roboten når något av planen, så stannar roboten direkt.

Figur 11. Säkerhetsplan

(25)

Ali Hamid

15

Roboten uppfyller inte alla säkerhetskrav i de protokoll som presenterades tidigare, utan bara ISO 10218–2 och ISO/TS 15 066. Ett förslag till lösning av problemet är att man inrättar ett UWB (ultra wide band) system. Ett sådant system består av mer än tre ultrabredbandsmottagare (anchor) och sändare (tag) som placeras på personer och objekt. Systemet kan räkna ut positionen med 5 till 10 centimeters noggrannhet (Marcellino, 2018). En fördel är att det redan finns fyra mottagare installerade i den aktuella lokalen. Systemet kan också utnyttjas till att följa objekt och personer i lokalen för att optimera arbetet och materialflödet.

Konfigurera ett vakuumverktyg (griparen) och sensorer till UR-roboten

Vakuumnivån som har används är 40% av griparens maximala sugkraft. Anledningen är att lådan inte sugs under 10%, och över 50% är onödigt starkt som leder till förlust av energi och onödigt slitage i griparen. Med hjälp av Robotens bruksanvisningen avsnitt 16.1.1 (Robot, u.d.) som är befogade med referens mappen7, konfigurerades griparen med hjälp av en ”wizard”, som man kommer åt via robotens Manöverenhet. Man matar in tyngdpunktens vikt och position, och därefter koordinaterna till griparens grippunkt8 Figur 12. Koordinaterna är räknade från yttersta punkten på robotarmen Figur 13.

Figur 12. Griparens grippunkt

7 En mapp som innehåller referensfiler till examensarbetet

8 I detta fall ligger grippunkten i centrum där kopparna kontaktar objektensyta.

(26)

Ali Hamid

16

Figur 13. Robotarmens yttersta punkt.

Programmera UR roboten att genomföra pick and place program och eventuellt andra program

Uppdragsgivaren krävde från början ett program där roboten utför en rutin som går ut på att plocka olika slags objekt och placera dem på varierande ställen nära roboten beroende på vad för slags objekt det är. Till exempel frågar programmet användaren vilka objekt A, B eller C som ska ligga på vilken låda och hur stort antal av varje. Användaren väljer åtgärd, som roboten därefter verkställer.

Svårigheterna visade sig när den tillgängliga kamerans begränsningar stod klara för oss. Den klarar bara av att avkänna lådan. Programmet utformades då med hänsyn till begränsningarna hos positioneringskameran. Programmet kan lyfta lådan från ett bord och ställa den på ett annat bord.

Därefter väntar programmet på att en ny låda skall ställas på plockbordet. Beskrivning av programmet finns i avsnittet ”Programstruktur och skript”.

Systemets potentiella möjligheter

• Det är enkelt att koppla och konfigurera verktyg till UR roboten, vilket gör att roboten kan utföra olika uppgifter i framtiden.

• Man kan montera verktygsväxlare9, och om den möjligheten utnyttjades skulle flexibiliteten ökas.

• UWB sändare och mottagare kan implementeras för att följa objekt och personer i laboratoriet, vilket i sin tur kan göra det möjligt att optimera flödet i systemet och implementera alla säkerhetsstandarder.

9 Tillgänglig på UR hemsidan

(27)

Ali Hamid

17

Referenser

Anon., 2011. 3 ed. s.l.:s.n.

Fanny Platbrood, O. G., 2018. SAFE ROBOTICS – SAFETY IN COLLABORATIVE ROBOT SYSTEMS. p. 6.

Hand, A., 2019. automation world. [Online]

Available at: https://www.automationworld.com/article/technologies/robotics/cobot-tooling- company-grows-its-innovative-technologies

[Accessed 10 2019].

Hauge, J. B., 2017. DIGILOG - DIGITAL AND PHYSICAL TESTBED FOR LOGISTIC OPERATIONS IN PRODUCTION. s.l.:s.n.

Hauge, J. B., 2019. DigiLog - Digital och fysisk testbädd för produktionslogistik. s.l.:KTH.

Marcellino, D., 2018. airfinder. [Online]

Available at: https://www.airfinder.com/blog/ultra-wideband-positioning-location-tracking [Accessed 2020].

onrobot, 2019. User_Manual_For_UR_Robots_HEX-E_H_QC_VG10_v1.2.2_EN. v1.2.2 ed. s.l.:s.n.

Pozyx, 2020. How does ultra-wideband work?. [Online]

Available at: https://www.pozyx.io/technology/how-does-uwb-work [Accessed oktober 2020].

Robot, U., n.d. UR10e_User_Manual_en_Global. s.l.:Universal Robot . Universal robots, 2020. UNIVERSAL ROBOTS ACADEMY. [Online]

Available at: https://academy.universal-robots.com/

[Accessed 2019].

(28)

Ali Hamid

Appendix

UWB

En UWB tag är en signalgivare som skickar radiosignaler med korta pulser över en stor bandbredd.

Mottagaren tar emot pulssignalen och skickar den tillbaka. Med hälp av den tid det tar för signalen att färdas fram och tillbaka kan avståndet mellan UWB tag och mottagare beräknas. Med hjälp av mer än två mottagare kan systemet beräkna UWB taggens position. (Pozyx, 2020)

References

Related documents

Det gör Stallberg Lantbruk utanför Vara till en toppmodern gård.. Text & foto:

Då vår studie visat sig vara tidigt ute när det kommer till digitala medarbetare och att medvetenheten om dem inte riktigt finns skulle vi även i framtiden vilja göra en

Det är intressant med tanke på de likheter som uppenbarar sig deras studie är jämfört med den här studien att eleverna samtalar om sekven- sering i samband med programmering men

Med projektet ”Attraktiva arbetsplatser genom Industri 4.0” vill forskarna skapa en vision för framtidens industriarbete tillsammans med företag och anställda vid SSAB Luleå..

resultat jag förväntar mig att få genom forskningen jag utför. Upplevelsen technoentusiasten får och hur den påverkas av diverse faktorer i en klubbmiljö är det jag i

Att förskollärarna hävdade att det sällan sker någon slags kränkning mellan en vuxen och barn, eller att det knappt skulle vara någonting som sker i förskolans vardag

För att maximera antalet olika paletter varje robot kan nå anpassades konceptet till flera våningar där roboten utför förflyttningar av

Då detta projekt inte är ett simuleringsprojekt kommer gruppen inte utarbeta en fullständig simulering till alla kopplingar med de specialfall som det skulle innebära.. Istället