skip to main content
10.1145/3597503.3623329acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article
Open access

Block-based Programming for Two-Armed Robots: A Comparative Study

Published: 06 February 2024 Publication History

Abstract

Programming industrial robots is difficult and expensive. Although recent work has made substantial progress in making it accessible to a wider range of users, it is often limited to simple programs and its usability remains untested in practice. In this article, we introduce Duplo, a block-based programming environment that allows end-users to program two-armed robots and solve tasks that require coordination. Duplo positions the program for each arm side-by-side, using the spatial relationship between blocks from each program to represent parallelism in a way that end-users can easily understand. This design was proposed by previous work, but not implemented or evaluated in a realistic programming setting. We performed a randomized experiment with 52 participants that evaluated Duplo on a complex programming task that contained several sub-tasks. We compared Duplo with RobotStudio Online YuMi, a commercial solution, and found that Duplo allowed participants to solve the same task faster and with greater success. By analyzing the information collected during our user study, we further identified factors that explain this performance difference, as well as remaining barriers, such as debugging issues and difficulties in interacting with the robot. This work represents another step towards allowing a wider audience of non-professionals to program, which might enable the broader deployment of robotics.

References

[1]
ABB Ltd. 2015. RobotStudio Online YuMi. URL: https://apps.microsoft.com/store/detail/9NBLGGH2SQFM.
[2]
ABB Ltd. 2023. Robotstudio suite. URL: https://new.abb.com/products/robotics/robotstudio.
[3]
ABB Ltd. 2023. Yumi - irb 14000 collaborative robot. URL: https://new.abb.com/products/robotics/robots/collaborative-robots/yumi/irb-14000-yumi.
[4]
ABB Robotics. 2014. Technical reference manual: rapid instructions, functions and data types. ABB Robotics.
[5]
Gopika Ajaykumar and Chien-Ming Huang. 2020. User needs and design opportunities in end-user robot programming. In Companion of the 2020 ACM/IEEE International Conference on Human-Robot Interaction, 93--95.
[6]
Gopika Ajaykumar, Maureen Steele, and Chien-Ming Huang. 2021. A survey on end-user robot programming. ACM Computing Surveys (CSUR), 54, 8, 1--36.
[7]
Peter K Allen. 2012. Robotic object recognition using vision and touch. Vol. 34. Springer Science & Business Media.
[8]
Brenna D Argall, Sonia Chernova, Manuela Veloso, and Brett Browning. 2009. A survey of robot learning from demonstration. Robotics and autonomous systems, 57, 5, 469--483.
[9]
Barbara Rita Barricelli, Fabio Cassano, Daniela Fogli, and Antonio Piccinno. 2019. End-user development, end-user programming and end-user software engineering: a systematic mapping study. Journal of Systems and Software, 149, 101--137.
[10]
Johannes Baumgartl, Thomas Buchmann, Dominik Henrich, and Bernhard Westfechtel. 2013. Towards easy robot programming-using DSLs, code generators and software product lines. In ICSOFT. Citeseer, 548--554.
[11]
Geoffrey Biggs and Bruce MacDonald. 2003. A survey of robot programming systems. In Proceedings of the Australasian conference on robotics and automation, 1--3.
[12]
Andrzej Burghardt, Dariusz Szybicki, Piotr Gierlak, Krzysztof Kurc, Paulina Pietruś, and Rafał Cygan. 2020. Programming of industrial robots using virtual reality and digital twins. Applied Sciences, 10, 2, 486.
[13]
J Edward Colgate, J Edward, Michael A Peshkin, and Witaya Wannasuphoprasit. 1996. Cobots: robots for collaboration with human operators. In Proceedings of the 1996 ASME International Mechanical Engineering Congress and Exposition. ASME, 433--439.
[14]
Stephen Cooper, Wanda Dann, and Randy Pausch. 2000. Alice: a 3D tool for introductory programming concepts. Journal of Computing Sciences in Colleges, 15, 5, 107--116.
[15]
Juliet M. Corbin. 2015 -- 2015. Basics of qualitative research : techniques and procedures for developing grounded theory. eng. (Fourth edition. ed.). SAGE, Thousand Oaks, California. isbn: 1412997461.
[16]
[n. d.] Epson rc+ express manual. https://files.support.epson.com/far/docs/epson_rc_express_6-axis_rev.5_en.pdf. Accessed: 2023-03-01. ().
[17]
Annette Feng, Eli Tilevich, and Wu-chun Feng. 2015. Block-based programming abstractions for explicit parallel computing. In Proceedings of the 2015 Blocks and Beyond Workshop. IEEE, 71--75.
[18]
Manish Kumar Goel, Pardeep Khanna, and Jugal Kishore. 2010. Understanding survival analysis: kaplan-meier estimate. International journal of Ayurveda research, 1, 4, 274.
[19]
Beate Jost, Markus Ketterl, Reinhard Budde, and Thorsten Leimbach. 2014. Graphical programming environments for educational robots: OpenRoberta - yet another one? In Proceedings of the 2014 International Symposium on Multimedia. IEEE, 381--386.
[20]
Amy J Ko, Brad A Myers, and Htet Htet Aung. 2004. Six learning barriers in end-user programming systems. In 2004 IEEE Symposium on Visual Languages-Human Centric Computing. IEEE, 199--206.
[21]
Soenke Kock, Timothy Vittor, Björn Matthias, Henrik Jerregard, Mats Källman, Ivan Lundberg, Roger Mellander, and Mikael Hedelind. 2011. Robot concept for scalable, flexible assembly automation: a technology study on a harmless dual-armed robot. In Proceedings of the 2011 International Symposium on Assembly and Manufacturing (ISAM). IEEE, 1--5.
[22]
Konstantinos Lotsaris, Christos Gkournelos, Nikos Fousekis, Niki Kousi, and Sotiris Makris. 2021. Ar based robot programming using teaching by demonstration techniques. Procedia CIRP, 97, 459--463.
[23]
John Maloney, Mitchel Resnick, Natalie Rusk, Brian Silverman, and Evelyn Eastmond. 2010. The scratch programming language and environment. ACM Transactions on Computing Education (TOCE), 10, 4, 1--15.
[24]
Christoph Mayr-Dorn, Mario Winterer, Christian Salomon, Doris Hohensinger, and Rudolf Ramler. 2021. Considerations for using block-based languages for industrial robot programming-a case study. In 2021 IEEE/ACM 3rd International Workshop on Robotics Software Engineering (RoSE). IEEE, 5--12.
[25]
Siti Nor Hafizah Mohamad, Ahmed Patel, Rodziah Latih, Qais Qassim, Liu Na, and Yiqi Tew. 2011. Block-based programming approach: challenges and benefits. In Proceedings of the 2011 International Conference on Electrical Engineering and Informatics. IEEE, 1--5.
[26]
Francis Sahngun Nahm. 2016. Nonparametric statistical tests for the continuous data: the basic concept and the practical use. Korean journal of anesthesiology, 69, 1, 8--14.
[27]
João Neves, Diogo Serrario, and J Norberto Pires. 2018. Application of mixed reality in robot manipulator programming. Industrial Robot: An International Journal.
[28]
Zengxi Pan, Joseph Polden, Nathan Larkin, Stephen Van Duin, and John Norrish. 2010. Recent progress on programming methods for industrial robots. In ISR 2010 (41st International Symposium on Robotics) and ROBOTIK 2010 (6th German Conference on Robotics). VDE, 1--8.
[29]
Marco Piccinelli, Andrea Gagliardo, Umberto Castellani, and Riccardo Muradore. 2021. Trajectory planning using mixed reality: an experimental validation. In 2021 20th International Conference on Advanced Robotics (ICAR). IEEE, 982--987.
[30]
[n. d.] PolyScope manual. https://s3-eu-west-1.amazonaws.com/ur-support-site/44018/Software_Manual_en_Global.pdf. Accessed: 2023-03-01. ().
[31]
Camilo Perez Quintero, Sarah Li, Matthew KXJ Pan, Wesley P Chan, HF Machiel Van der Loos, and Elizabeth Croft. 2018. Robot programming through augmented trajectories in augmented reality. In 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 1838--1844.
[32]
Marina S Reshetnikova, Irina A Pugacheva, Elena G Popkova, and Inna V Andronova. 2022-3-30. The Global Industrial Robotics Market: Development Trends and Volume Forecast. Current Problems of the World Economy and International Trade. Jai Press, Greenwich, Conn. : isbn: 978-1-80262-090-0.
[33]
Nico Ritschel, Vladimir Kovalenko, Reid Holmes, Ron Garcia, and David C Shepherd. 2020. Comparing block-based programming models for two-armed robots. IEEE Transactions on Software Engineering.
[34]
Nico Ritschel et al. [n. d.] Training industrial end-user programmers with interactive tutorials. Software: Practice and Experience.
[35]
Gregory F Rossano, Carlos Martinez, Mikael Hedelind, Steve Murphy, and Thomas A Fuhlbrigge. 2013. Easy robot programming concepts: an industrial perspective. In 2013 IEEE international conference on automation science and engineering (CASE). IEEE, 1119--1126.
[36]
Mazyar Seraj, Serge Autexier, and Jan Janssen. 2018. Beesm, a block-based educational programming tool for end users. In Proceedings of the 10th Nordic Conference on Human-Computer Interaction, 886--891.
[37]
Donna Spencer. 2009. Card sorting: Designing usable categories. Rosenfeld Media.
[38]
Maj Stenmark and Pierre Nugues. 2013. Natural language programming of industrial robots. In IEEE ISR 2013. IEEE, 1--5.
[39]
Ricardo Tellez. 2017. The ros development studio by the construct. URL: https://www.theconstructsim.com/the-ros-development-studio-by-the-construct/.
[40]
D. Weintrop, D.C. Shepherd, P. Francis, and D. Franklin. 2017. Blockly goes to work: block-based programming for industrial robots. In Proc. of Blocks and Beyond Workshop (B&B), 29--36.
[41]
David Weintrop. 2019. Block-based programming in computer science education. Communications of the ACM, 62, 8, 22--25.
[42]
David Weintrop, Afsoon Afzal, Jean Salac, Patrick Francis, Boyang Li, David C Shepherd, and Diana Franklin. 2018. Evaluating coblox: a comparative study of robotics programming environments for adult novices. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems, 1--12.
[43]
David Weintrop, Afsoon Afzal, Jean Salac, Patrick Francis, Boyang Li, David C. Shepherd, and Diana Franklin. 2018. Evaluating CoBlox: a comparative study of robotics programming environments for adult novices. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems Article 366. ACM, 366:1--366:12.
[44]
David Weintrop and Uri Wilensky. 2017. Comparing block-based and text-based programming in high school computer science classrooms. ACM Transactions on Computing Education (TOCE), 18, 1, 1--25.
[45]
David Weintrop and Uri Wilensky. 2017. How block-based languages support novices. Journal of Visual Languages and Sentient Systems, 3, 92--100.
[46]
David Weintrop and Uri Wilensky. 2015. To block or not to block, that is the question: students' perceptions of blocks-based programming. In Proceedings of the 14th International Conference on Interaction Design and Children. ACM, 199--208.
[47]
Stefan Wellek. 1993. A log-rank test for equivalence of two survivor functions. Biometrics, 877--881.
[48]
Enes Yigitbas, Ivan Jovanovikj, and Gregor Engels. 2021. Simplifying robot programming using augmented reality and end-user development. In HumanComputer Interaction-INTERACT 2021: 18th IFIP TC 13 International Conference, Bari, Italy, August 30--September 3, 2021, Proceedings, Part I 18. Springer, 631--651.
[49]
Minhaz Fahim Zibran. 2007. Chi-squared test of independence. Department of Computer Science, University of Calgary, Alberta, Canada, 1, 1, 1--7.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '24: Proceedings of the IEEE/ACM 46th International Conference on Software Engineering
May 2024
2942 pages
ISBN:9798400702174
DOI:10.1145/3597503
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the owner/author(s).

Sponsors

In-Cooperation

  • Faculty of Engineering of University of Porto

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 06 February 2024

Check for updates

Author Tags

  1. two-armed
  2. robots
  3. end-users
  4. block-based
  5. programming

Qualifiers

  • Research-article

Funding Sources

Conference

ICSE '24
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 415
    Total Downloads
  • Downloads (Last 12 months)415
  • Downloads (Last 6 weeks)58
Reflects downloads up to 27 Jan 2025

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media