Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores

Detalhes bibliográficos
Autor(a) principal: Trombin, Raul Victor
Data de Publicação: 2023
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UFSC
Texto Completo: https://repositorio.ufsc.br/handle/123456789/253619
Resumo: TCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Engenharia Elétrica.
id UFSC_c6c410fc1079020829e0365ed72f86d6
oai_identifier_str oai:repositorio.ufsc.br:123456789/253619
network_acronym_str UFSC
network_name_str Repositório Institucional da UFSC
repository_id_str 2373
spelling Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadoresROVRustSistemas EmbarcadosTCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Engenharia Elétrica.Este trabalho explora o desenvolvimento de uma biblioteca robusta e multiplataforma para Veículos Operados Remotamente (ROVs) usando a linguagem de programação Rust, além de disponibilizar bibliotecas para C++ e Python. Com foco no hardware Navigator – um acessório de Raspberry Pi e componente do submarino BlueROV da empresa BlueRobotics – realizou-se um estudo para a integração dos diferentes sensores que o compõe. Destaca-se que a sua integração foi realizada em uma sintaxe acessível, de forma a facilitar o uso da biblioteca pelas abstrações possíveis. Além disso, desenvolveu-se a solução para diferentes arquiteturas de processador ARM: armv7 e aarch64. Explorou-se também a compatibilidade com musllinux e manylinux, padrões que garantem a portabilidade dos binários para diferentes sistemas operacionais, como Raspbian e Alpine. Ao longo do trabalho, abordam-se os desafios da compilação multiplataforma, o processo da criação da biblioteca em Rust até a sua publicação e a criação de sua portabilidade para Python e C++. A implantação e o processo de integração contínua/entrega contínua (CI/CD) são criados por meio do GitHub Actions, o que permitiu o avanço do trabalho com códigos consistentes, testados e organizados.This work deals with the development of a robust and cross-platform library for Remotely Operated Vehicles (ROVs) using the Rust programming language, with additional libraries provided for C++ and Python. Focusing on the Navigator hardware – a Raspberry Pi accessory and a component of the BlueROV submarine by BlueRobotics Company– a study was conducted to integrate its various sensors. The integration was performed with an accessible syntax, aiming to facilitate the library's usage through possible abstractions. Additionally, solutions were developed for different ARM processor architectures: armv7 and aarch64. Compatibility with musllinux and manylinux was also explored, adhering to standards that ensure binary portability across various operating systems such as Raspbian and Alpine. Throughout the work, challenges of cross-platform compilation are addressed, covering the process of library creation in Rust to its publication and the establishment of portability for Python and C++. Deployment and continuous integration/continuous delivery (CI/CD) processes are implemented through GitHub Actions, enabling the advancement of the project with consistent, tested, and organized code.Florianópolis, SC.Leite, Jean VianeiUniversidade Federal de Santa Catarina.Trombin, Raul Victor2023-12-20T15:48:11Z2023-12-20T15:48:11Z2023-12-15info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesis74application/pdfhttps://repositorio.ufsc.br/handle/123456789/253619Open Access.info:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UFSCinstname:Universidade Federal de Santa Catarina (UFSC)instacron:UFSC2023-12-20T15:48:21Zoai:repositorio.ufsc.br:123456789/253619Repositório InstitucionalPUBhttp://150.162.242.35/oai/requestopendoar:23732023-12-20T15:48:21Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)false
dc.title.none.fl_str_mv Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
title Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
spellingShingle Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
Trombin, Raul Victor
ROV
Rust
Sistemas Embarcados
title_short Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
title_full Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
title_fullStr Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
title_full_unstemmed Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
title_sort Desenvolvimento de uma biblioteca multiplataforma em rust para veículos remotamente controlados: integração de sensores e atuadores
author Trombin, Raul Victor
author_facet Trombin, Raul Victor
author_role author
dc.contributor.none.fl_str_mv Leite, Jean Vianei
Universidade Federal de Santa Catarina.
dc.contributor.author.fl_str_mv Trombin, Raul Victor
dc.subject.por.fl_str_mv ROV
Rust
Sistemas Embarcados
topic ROV
Rust
Sistemas Embarcados
description TCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Engenharia Elétrica.
publishDate 2023
dc.date.none.fl_str_mv 2023-12-20T15:48:11Z
2023-12-20T15:48:11Z
2023-12-15
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ufsc.br/handle/123456789/253619
url https://repositorio.ufsc.br/handle/123456789/253619
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Open Access.
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Open Access.
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 74
application/pdf
dc.publisher.none.fl_str_mv Florianópolis, SC.
publisher.none.fl_str_mv Florianópolis, SC.
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFSC
instname:Universidade Federal de Santa Catarina (UFSC)
instacron:UFSC
instname_str Universidade Federal de Santa Catarina (UFSC)
instacron_str UFSC
institution UFSC
reponame_str Repositório Institucional da UFSC
collection Repositório Institucional da UFSC
repository.name.fl_str_mv Repositório Institucional da UFSC - Universidade Federal de Santa Catarina (UFSC)
repository.mail.fl_str_mv
_version_ 1808651947132059648