Verificação funcional de controladores Arduino
Autor(a) principal: | |
---|---|
Data de Publicação: | 2018 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | https://hdl.handle.net/1822/79709 |
Resumo: | Dissertação de mestrado integrado em Engenharia Informática |
id |
RCAP_ab13ceaf785f78f02e21db0bd5ef0281 |
---|---|
oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/79709 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Verificação funcional de controladores ArduinoArduinoSafety-critical embedded systemsFormal verification of softwareCommunication protocolsFrama-CFrama-ClanVerificação formal de softwareProtocolos de comunicaçãoEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaDissertação de mestrado integrado em Engenharia InformáticaIn some contexts, namely in the development of autonomous vehicles in robotics, the exploitation of the Arduino platform for the development of embedded systems allows a simpler and faster implementation of the desired functionality than would be possible using the devices known as Programmable Logic Controllers (PLCs), typically used. However, the soft ware certification is a much more complicated task than the PLCs certification, due mainly to the complexity of the software and its difficult analysis. Although the software testing is the most used technique to validate it, it can not be used to prove the absence of errors. On the other hand, the formal verification of software is usually used to demonstrate the correctness of critical systems as, for example, aerospace industry and banking industry, where a failure means the loss of human lives or high monetary values. As the embedded systems are increasingly used in robotic systems, whose criticality is increasingly high, it is important to ensure their correctness. With this, the intervention area focused on the communication protocols because they have an appropriate dimension given the scope of the dissertation. These are quite impor tant, particularly in the context of robotic, since embedded systems are in constant commu nication with several peripherals, being fundamental the correction of the communication protocols. This dissertation aims at the application of formal verification tools to commu nication libraries of the Arduino platform. The adopted verification process comprises the application of the Frama-C tool, together with the WP plug-in, to perform a static analysis of annotated ANSI-C code with ACSL properties. Furthermore, another objective is the exploration of the experimental Frama-Clang plug-in because of the widespread interest in achieving C++ code certification.Em alguns contextos, nomeadamente no desenvolvimento de veículos autónomos em robó tica, a exploração da plataforma Arduino para desenvolvimento de embedded systems possi bilita uma implementação mais simples e rápida da funcionalidade desejada do que seria possível utilizando os dispositivos conhecidos como Programmable Logic Controllers (PLCs), tipicamente utilizados. Contudo, a certificação de software é uma tarefa bastante mais com plicada do que a certificação de PLCs, devido principalmente à complexidade do software e à sua difícil análise. Embora o teste de software seja a técnica mais utilizada para o validar, esta não pode ser utilizada para provar a ausência de erros. Por outro lado, a verificação formal de software é normalmente utilizada para demonstrar a correção de sistemas críticos como, por exemplo, indústria aeroespacial e indústria bancária, onde uma falha significa a perda de vidas humanas ou de valores monetários elevados. Como os embedded systems são cada vez mais utilizados em sistemas robóticos, cuja criticalidade é cada vez mais elevada, é importante garantir a sua correção. Com isto, a área de intervenção incidiu sobre os protocolos de comunicação porque estes apresentam uma dimensão adequada dado o âmbito da dissertação. Estes são bastante importantes, em particular no contexto da robótica, uma vez que os embedded systems estão em constante comunicação com diversos periféricos, sendo fundamental a correção dos protocolos de comunicação. Esta dissertação tem como objetivo a aplicação de ferramentas de verificação formal a bibliotecas de comunicação da plataforma Arduino. O processo de verificação adotado compreende a aplicação da ferramenta Frama-C, em conjunto com o plug-in WP, para realizar uma análise estática de código ANSI-C anotado com propriedades ACSL. Para além disso, é ainda objetivo a exploração do plug-in experimental Frama-Clang devido ao interesse generalizado em alcançar a certificação de código C++.Pinto, Jorge SousaLourenço, Cláudio Filipe Belo SilvaUniversidade do MinhoBarbosa, Rafael Alexandre Antunes2018-12-122018-12-12T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://hdl.handle.net/1822/79709por203006658info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-11-04T01:17:12Zoai:repositorium.sdum.uminho.pt:1822/79709Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T19:20:05.739193Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Verificação funcional de controladores Arduino |
title |
Verificação funcional de controladores Arduino |
spellingShingle |
Verificação funcional de controladores Arduino Barbosa, Rafael Alexandre Antunes Arduino Safety-critical embedded systems Formal verification of software Communication protocols Frama-C Frama-Clan Verificação formal de software Protocolos de comunicação Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
title_short |
Verificação funcional de controladores Arduino |
title_full |
Verificação funcional de controladores Arduino |
title_fullStr |
Verificação funcional de controladores Arduino |
title_full_unstemmed |
Verificação funcional de controladores Arduino |
title_sort |
Verificação funcional de controladores Arduino |
author |
Barbosa, Rafael Alexandre Antunes |
author_facet |
Barbosa, Rafael Alexandre Antunes |
author_role |
author |
dc.contributor.none.fl_str_mv |
Pinto, Jorge Sousa Lourenço, Cláudio Filipe Belo Silva Universidade do Minho |
dc.contributor.author.fl_str_mv |
Barbosa, Rafael Alexandre Antunes |
dc.subject.por.fl_str_mv |
Arduino Safety-critical embedded systems Formal verification of software Communication protocols Frama-C Frama-Clan Verificação formal de software Protocolos de comunicação Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
topic |
Arduino Safety-critical embedded systems Formal verification of software Communication protocols Frama-C Frama-Clan Verificação formal de software Protocolos de comunicação Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
description |
Dissertação de mestrado integrado em Engenharia Informática |
publishDate |
2018 |
dc.date.none.fl_str_mv |
2018-12-12 2018-12-12T00: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 |
https://hdl.handle.net/1822/79709 |
url |
https://hdl.handle.net/1822/79709 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.none.fl_str_mv |
203006658 |
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ório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799132662697295872 |