University of Oulu

Integration of a robotic arm into test automation

Saved in:
Author: Kangas, Iiro1
Organizations: 1University of Oulu, Faculty of Technology, Mechanical Engineering
Format: ebook
Version: published version
Access: open
Online Access: PDF Full Text (PDF, 1.5 MB)
Pages: 63
Persistent link: http://urn.fi/URN:NBN:fi:oulu-202301201063
Language: English
Published: Oulu : I. Kangas, 2023
Publish Date: 2023-01-20
Thesis type: Master's thesis (tech)
Tutor: Louhisalmi, Yrjö
Reviewer: Louhisalmi, Yrjö
Alatalo, Juho
Description:

Abstract

The aim of this thesis work is to implement and integrate a Universal Robots’ UR5e arm robot into test automation. A six-axis arm robot was needed by test automation processes to solve a problem of including various physical products to test automation pipelines. The goal is to build a stable system, that fills all requirements set for this work. The final system needed to be easily integrated to an existing test automation body, without needing any large-scale changes to test automation’s architecture. The robot also needed to be operational around the clock, ready to receive tasks from external test automation software. This means the system needed to remain in a ready state for long periods of time without a need to manually start the robot’s test runs. As the most important requirement, the robot needed to be able to execute tasks given by the test software. Tasks may include complex movement patterns, that would include testing dependencies and functionalities between multiple different products.

This thesis introduces industrial robot models, compares industrial robots and cobots with their functionalities, and reviews their current markets and future projections. In addition, common test automation tools are introduced, most of which are used in this implementation. With the current test automation structure and tools introduced, the solution for this work was planned and built. Before final implementation, multiple possible methods for connecting the robot to test automation pipelines were evaluated.

This thesis works solution links the robot with test automation tools using a Python API, that uses Universal Robots’ RTDE module. With RTDE, a real-time connection was established between the robot and its control PC. With these methods, all movement logic could be moved from the robot’s own controller into an external control PC where the Python API is executed. Through this, the responsibility of deciding the robot’s next tasks could be passed to an external test software. The result was a dynamic testing system that was easily integrated to existing processes.

After building safety systems, solving mechanical challenges, and establishing a functional RTDE connection, the final solution was tested against various error scenarios. The final implementation was a versatile, easy to use, and externally controlled robot API, that could be expanded into other use cases outside test automation.

Käsivarsirobotin integrointi testiautomaatioon

Tiivistelmä

Tämän työn tarkoitus on implementoida ja integroida Universal Robotsin UR5e käsivarsirobotti testiautomaation käyttöön. Käsivarsirobottia tarvittiin testiautomaatioon ratkaisemaan monien fyysisten tuotteiden liikuttelun tarvetta. Työn tavoite on rakentaa stabiili systeemi, joka saavuttaa kaikki työlle annetut vaatimukset. Lopullisen ratkaisun piti olla helposti testiautomaatioon integroitava, jolloin suuria muutoksia testiautomaation olemassa olevaan rakenteeseen ei vaadittaisi. Robotin piti myös olla saatavilla ja valmiina suorittamaan testiautomaation ohjelmistoilta tulevia käskyjä ympäri vuorokauden. Järjestelmän piti siis pysyä vastaanottavassa tilassa pitkiä aikoja ilman, että robottia pitäisi käynnistää testiajoa varten manuaalisesti. Tärkeimpänä vaatimuksena robotin tuli kyetä suorittamaan testiohjelmiston käskystä monipuolisia liiketoimintoja, jotka sisältävät useiden eri tuotteiden keskinäisten riippuvuuksien testaamista.

Työssä tutustutaan tuotannon robotiikkaan, tuotantorobottien ja cobottien toimintamalleihin, sekä niiden kaupallisiin lukemiin ja näkymiin. Lisäksi esitellään yleiset ja tässä työssä käytetyt testiautomaation työkalut. Työkalujen ja testiautomaation komponenttien avulla selvitetään nykyisen testiautomaation rakenne ja suunnitellaan ratkaisua ongelmaan. Ennen lopullista toteutusta tutkitaan erilaiset mahdollisuudet robotin ja testiautomaation yhteyden rakentamiseen.

Työssä toteutetaan robotin ja testikomponenttien linkitys rakentamalla Python APIrajapinta, joka käyttää Universal Robotsin tukemaa RTDE-moduulia. RTDE:n avulla robotin ja sen ohjaustietokoneen välille saadaan rakennettua jatkuvan reaaliaikaisen datansiirron väylä. Näillä menetelmillä kaikki ohjauslogiikka voitiin siirtää robotin kontrollerista ulkoiselle ohjaustietokoneelle, jossa Python rajapintaa ajetaan. Tätä kautta vastuu robotin liikuttamisesta saatiin siirrettyä testiohjelmistolle, jolloin saavutettiin dynaaminen integroitu systeemi.

Turvajärjestelmien rakentamisen, mekaanisten haasteiden ratkaisemisen ja valmiin RTDE-yhteyden saavuttamisen jälkeen lopullista tuotetta testattiin erilaisten vikatilanteiden varalta. Lopullisen implementaation tulos oli monipuolinen ja helposti käytettävä ulkoisesti ohjattava robottirajapinta, jonka käyttöä voitaisiin helposti laajentaa myös muihin tehtäviin testiautomaation ulkopuolella

see all

Subjects:
Copyright information: © Iiro Kangas, 2023. Except otherwise noted, the reuse of this document is authorised under a Creative Commons Attribution 4.0 International (CC-BY 4.0) licence (https://creativecommons.org/licenses/by/4.0/). This means that reuse is allowed provided appropriate credit is given and any changes are indicated. For any use or reproduction of elements that are not owned by the author(s), permission may need to be directly from the respective right holders.
  https://creativecommons.org/licenses/by/4.0/