Hostname: page-component-74656f9884-2dmjx Total loading time: 0 Render date: 2026-11-10T09:47:25.193Z Has data issue: false hasContentIssue false

Modelling reversible execution of robotic assembly

Published online by Cambridge University Press:  11 January 2018

Johan Sund Laursen*
Affiliation:
The Maersk Mc-Kinney Moller Institute, University of Southern Denmark, Denmark. E-mails: lpe@mmmi.sdu.dk, ups@mmmi.sdu.dk
Lars-Peter Ellekilde
Affiliation:
The Maersk Mc-Kinney Moller Institute, University of Southern Denmark, Denmark. E-mails: lpe@mmmi.sdu.dk, ups@mmmi.sdu.dk
Ulrik Pagh Schultz
Affiliation:
The Maersk Mc-Kinney Moller Institute, University of Southern Denmark, Denmark. E-mails: lpe@mmmi.sdu.dk, ups@mmmi.sdu.dk
*
*Corresponding author. E-mail: josl@mmmi.sdu.dk
Rights & Permissions [Opens in a new window]

Summary

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the 'Save PDF' action button.

Programming robotic assembly for industrial small-batch production is challenging; hence, it is vital to increase robustness and reduce development effort in order to achieve flexible robotic automation. A human who has made an assembly error will often simply undo the process until the error is undone and then restart the assembly. Conceptually, robots could do the same. This paper introduces a programming model that enables robot assembly programs to be executed in reverse. We investigate the challenges in running robot programs backwards and present a classification of reversibility characteristics. We demonstrate how temporarily switching the direction of program execution can be an efficient error recovery mechanism. Moreover, we demonstrate additional benefits arising from supporting reversibility in an assembly language, such as increased code reuse and automatically derived disassembly sequences. As a default approach to reversibility, we use program inversion and statement-level inversion of commands, but with a novel override option providing alternative sequences for asymmetric reverse actions. To efficiently program for this model, this paper introduces a new domain-specific language, SCP-RASQ (Simple C++ Reversible Assembly SeQuences). In initial experiments, where 200 consecutive assemblies of two industrial cases were performed, 18 of 22 errors were corrected automatically using only the trial-and-error capabilities that come from reverse execution.

Information

Type
Articles
Copyright
Copyright © Cambridge University Press 2018