RobotFix : Detecting Bugs On Variables In Robot Programs

Detalhes bibliográficos
Autor(a) principal: Tavares, Miguel Rodrigues
Data de Publicação: 2022
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Texto Completo: http://hdl.handle.net/10451/57666
Resumo: Tese de mestrado, Engenharia Informática, 2022, Universidade de Lisboa, Faculdade de Ciências
id RCAP_6e4d68a7677f25bdaeacd315472bff9f
oai_identifier_str oai:repositorio.ulisboa.pt:10451/57666
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling RobotFix : Detecting Bugs On Variables In Robot ProgramsRobot Operating SystemSistemas RobóticosDomain Specific LanguageVerificação estáticaSistemas de tiposTeses de mestrado - 2023Departamento de InformáticaTese de mestrado, Engenharia Informática, 2022, Universidade de Lisboa, Faculdade de CiênciasRobotic systems are everywhere (e.g., factories or medical surgeries) and are widely used with many real-world applications. However, programming robot systems is challenging, requiring domain-specific expertise. The Robot Operating System (ROS) is a flexible framework for writing software for large-scale robots, targeting a wide range of developers, from students to industry professionals. With ROS, developers can program robots to follow complex behaviors. However, due to its specificities, it is easy to introduce bugs in ROS projects through a typo or making wrong assignments to variables regarding their unit or objective. Developers need to detect these and then fix them, which takes time and reduces their productivity and motivation. Furthermore, there is a lack of tools that help in detecting and fixing bugs, as well as verifying the absence of domain-specific errors. Additionally, existing tools do not provide the desired assurance on unit values and units. This work aims to improve the robot programming process and help users make fewer mistakes while programming. This work created RobotFix tool to help programmers in finding errors related to variables. With RobotFix, developers can annotate the variable unit and intervals that variable value should respect. With our approach, developers will know that they are using the wrong unit (e.g., adding km/h and m/s) or a value that does not respect certain conditions (e.g., a programmer introducing negative seconds into a variable). This approach has the advantage of providing feedback about the correctness of the code before executing, saving time and cost in testing the robot both in simulation or in the field. Testing in robotics has its disadvantages, like the shortcomings of simulators and the infeasible cost of testing all combinations of inputs. The approach was implemented into a prototype called RobotFix. Then, I evaluated the approach on programs related to 20 bugs made by ROS programmers. RobotFix succeeded in finding the bugs and showed that it could be a helpful tool for robotic programmers in the future.Fonseca, Alcides Miguel Cachulo AguiarTimperley, Christopher StevenRepositório da Universidade de LisboaTavares, Miguel Rodrigues2023-05-30T09:33:54Z202320222023-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10451/57666TID:203499492enginfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2025-03-17T14:57:51Zoai:repositorio.ulisboa.pt:10451/57666Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-29T03:30:23.222204Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv RobotFix : Detecting Bugs On Variables In Robot Programs
title RobotFix : Detecting Bugs On Variables In Robot Programs
spellingShingle RobotFix : Detecting Bugs On Variables In Robot Programs
Tavares, Miguel Rodrigues
Robot Operating System
Sistemas Robóticos
Domain Specific Language
Verificação estática
Sistemas de tipos
Teses de mestrado - 2023
Departamento de Informática
title_short RobotFix : Detecting Bugs On Variables In Robot Programs
title_full RobotFix : Detecting Bugs On Variables In Robot Programs
title_fullStr RobotFix : Detecting Bugs On Variables In Robot Programs
title_full_unstemmed RobotFix : Detecting Bugs On Variables In Robot Programs
title_sort RobotFix : Detecting Bugs On Variables In Robot Programs
author Tavares, Miguel Rodrigues
author_facet Tavares, Miguel Rodrigues
author_role author
dc.contributor.none.fl_str_mv Fonseca, Alcides Miguel Cachulo Aguiar
Timperley, Christopher Steven
Repositório da Universidade de Lisboa
dc.contributor.author.fl_str_mv Tavares, Miguel Rodrigues
dc.subject.por.fl_str_mv Robot Operating System
Sistemas Robóticos
Domain Specific Language
Verificação estática
Sistemas de tipos
Teses de mestrado - 2023
Departamento de Informática
topic Robot Operating System
Sistemas Robóticos
Domain Specific Language
Verificação estática
Sistemas de tipos
Teses de mestrado - 2023
Departamento de Informática
description Tese de mestrado, Engenharia Informática, 2022, Universidade de Lisboa, Faculdade de Ciências
publishDate 2022
dc.date.none.fl_str_mv 2022
2023-05-30T09:33:54Z
2023
2023-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10451/57666
TID:203499492
url http://hdl.handle.net/10451/57666
identifier_str_mv TID:203499492
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833601723052064768