Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Um pouco sobre mim ● Técnico em Automação Industrial
● Engenharia de Computação
● Missão Espacial Internacional QB50
● Projeto de Monitoramento
Microssísmico
● Projeto Relâmpago COVID-19
● Pólo de Inovação Campos dos
Goytacazes
● Eneltec
AGENDAProblema: Dificuldades no teste de drivers
Método Proposto - Arquitetura
ESP32 e Micropython - Por que essa escolha?
Implementação
Desafios encontrados e próximos passos
BÔNUS: O que eu aprendi com prototipação e Inovação. (EXCLUSIVO)
Dificuldades no teste de drivers de microcontroladores● Forte Interação Hardware e Software;● Hardware Indisponível
○ Ciclos de desenvolvimento Paralelos;○ Hardware inacessível - preço, importação, etc;
● Testes Automatizados○ Falta de controle sobre o ambiente externo. Como testar uma ISR de uma DI? Como testar se a
configuração da ISR está correta? Como testar se o pino é sensível a uma borda e se dispara uma
interrupção? Um driver de GPS em local com dificuldade de sinal?
● Por que não o teste manual?○ Retrabalho, tempo, custo, baixa produtividade, baixa qualidade, baixa exatidão (exemplo tempo
do led piscando), impossibilidade de realização de teste de estresse, etc.
Método Proposto
Método Proposto
ESP32 e Micropython
Implementação
● GitHub ○ https://github.com/saramonteiro/micropython_test_lib
● GPIO● I2C● UART● SPI● BLE
GPIO
I2C
UART
SPI
SPI
BLE
BLE
Desafios Encontrados e Pŕoximos Passos
● Propôr a arquitetura● Falta de API SPI no modo escravo ● Instabilidade BLE
● Criar novos cases● Explorar novos protocolos● Acompanhar as instabilidades● Aprimorar
BÔNUS: O que eu aprendi com prototipação e Inovação
● Se você já sabe exatamente como fazer,
então não é Inovação;
● Incertezas
● Comece já para antecipar os problemas
(que VÃO existir - n se iluda)
Discovery Science - Prototype this!;
● Faça com o que você tem - ñ espere
condições favoráveis nem ferramentas
complexas;
● Cuidado com o “overengineering”;
● KISS.
● Sugestão de filme: Fome de Poder
● Modularize Software e Hardware.
● Integração ASAP;
● Diálogo contínuo com cliente - Sugestão
documentário: IDEO Cart Project - em Português;
● Deixe claro o grau de maturidade do
projeto com o cliente.
● Pergunte-se como irá testar isso antes
mesmo de implementar;
● Mantenha o caderninho dos aprendizados e
use no ciclo PDCA;
● Acostume-se com a ideia de não
dominar as tecnologias que precisará usar;
● Coloque tudo isso em prática!!!
Referências● INTRODUÇÃO
○ BECK, K. Test driven development: By example addison-wesley. The Addison-Wesley Signature Series, 2002.○ BANERJEE, A.; CHATTOPADHYAY, S.; ROYCHOUDHURY, A. On testing embedded software. In: Advances in
Computers. [S.l.]: Elsevier, 2016. v. 101, p. 121–153.○ GRENNING, J. W. Test Driven Development for Embedded C. [S.l.]: Pragmatic bookshelf, 2011.○ MALDONADO, J.; DELAMARO, M.; VINCENZI, A. M. R. Automatização de teste de software com ferramentas de
software livre. [S.l.]: Elsevier Brasil, 2018.● MISSÃO QB50
○ http://portal1.iff.edu.br/nossos-campi/polo-de-inovacao-campos-dos-goytacazes/noticias/artigo-sobre-satelite-desenvolvido-pelo-iffluminense-e-apresentado-em-simposio-internacional
○ https://crseaiff.wixsite.com/site● IMAGEM PDCA
○ https://www.thinkleansixsigma.com/article/pdca-cycle