Aula Prática Sistemas embarcados
ROTEIRO DE AULA PRÁTICA 1
NOME DA DISCIPLINA: Sistemas Embarcados
Unidade: 3 – Configurações relacionadas aos sistemas
Aula: 2 – Carregador de inicialização de sistemas embarcados
OBJETIVOS
Definição dos objetivos da aula prática:
Compreender o funcionamento de um sistema embarcado que opera baseado em um sistema
operacional em tempo real, implementando tarefas e avaliando o seu funcionamento.
SOLUÇÃO DIGITAL:
Plataforma Wokwi
O site Wokwi (https://wokwi.com/) permite a simulação online de sistemas embarcados variados
como ESP32, STM32 e Arduino. Permite ainda a interação entre os dispositivos e sensores
variados, permitindo a montagem de um sistema IoT completo.
PROCEDIMENTOS PRÁTICOS E APLICAÇÕES
Procedimento/Atividade nº 1
Trabalhando com tasks
Atividade proposta: elaborar algoritmos para sistemas embarcados operando com sistemas
operacionais em tempo real
Procedimentos para a realização da atividade:
Na plataforma de simulação Wokwi é possível montar um algoritmo que opere sobre o FreeRTOS.
Um exemplo de implementação desse tipo que aciona 3 LEDs está disponível no seguinte link:
Um sistema embarcado normalmente opera sobre um sistema operacional. O sistema
operacional mais comum de ser utilizado nesse tipo de aplicação é o FreeRTOS. O ESP-32
possui esse sistema operacional como padrão em seu funcionamento e saber como criar e utilizar
diferentes tarefas (tasks) é fundamental para o profissional que trabalha com sistemas
embarcados.
2
Público
https://wokwi.com/projects/322609470223942226. Para saber mais sobre como é realizada a
simulação do ESP-32 no Wokwi, acesse: https://docs.wokwi.com/pt-BR/guides/esp32.
Para executar cada um dos procedimentos propostos, inicie um novo projeto utilizando o ESP-32
baseado no conjunto de bibliotecas ESP-IDF no Wokwi. Para isso, basta acessar o seguinte link:
https://wokwi.com/projects/new/esp-idf-esp32. Na tela inicial, é possível visualizar duas áreas: a
esquerda fica o editor de texto e a direita a área de simulação onde é feita a montagem de
hardware. Nas simulações é possível adicionar elementos variados ao seu sistema, como LEDs
e sensores. Para isso, aperte o + na área de simulação e selecione o item que deseja adicionar.
Feita montagem virtual do hardware, o código a ser executado no ESP-32 pode ser elaborado na
área relativa ao sketch. Para realizar a simulação, aperte o ‘Play’ na área de simulação.
Antes de elaborar os algoritmos, você deve montar no simulador um push-button e um LED
(com resistor para limitar a corrente), para serem interfaceados com o ESP-32. Você pode ligar
o botão e o LED nos pinos que preferir.
3
Público
Procedimento 1
Faça um programa, utilizando tasks, que ao manter o botão pressionado o LED pisca em uma
frequência de 2 Hz e quando solto em 1 Hz.
Procedimento 2
Faça um programa, utilizando tasks, que ao pressionar o botão uma vez o led fica piscando e
ao pressionar o botão novamente o led fica pemanentemente ligado. O LED deve alternar entre
esses dois estados toda vez que o botão for pressionado.
Procedimento 3
Faça um programa, utilizando tasks, que à medida que o botão é pressionado aumente a
intensidade do LED. Ao atingir o valor máximo de brilho, a intensidade deve voltar a zero. O
brilho deve possuir 6 níveis (0%, 20%, 40%, 60%, 80% e 100%). Para essa atividade você deve
configurar e utilizar o periférico PWM do ESP-32.
Avaliando os resultados:
Você deve entregar um relatório contendo os prints e/ou vídeos de cada procedimento. Além
disso, apresente todos os algoritmos desenvolvidos, comentados linha a linha, em sua
integralidade. O relatório deve conter informações detalhadas sobre o funcionamento do
algoritmo desenvolvido, a simulação e seus resultados.
Checklist:
✓ Faça a montagem de hardware no ambiente virtual corretamente.
✓ Elabores os algoritmos conforme indicado nos 3 procedimentos.
✓ Simule o sistema para verificar se o requisito de cada etapa foi atendido.
4
Público
RESULTADOS
Resultados do experimento:
Ao final dessa aula prática, você deverá enviar um arquivo em word contendo as informações
obtidas no experimento, os cálculos realizados, em conjunto com um texto conclusivo a respeito
das informações obtidas. O arquivo não pode exceder o tamanho de 2Mb.
• Referências bibliográficas ABNT (quando houver).
Resultados de Aprendizagem:
Ao final da prática, o estudante será capaz de programar sistemas embarcados utilizando tasks
no ESP-32, configurando entradas e saídas digitais e controlando a intensidade de um LED com
periférico PWM. O estudante aprenderá a alternar estados de operação e a manipular frequências
de pisca e níveis de brilho em resposta ao acionamento de um push-button, demonstrando
competência na programação de estados e temporizações em dispositivos de IoT.
5
Público
ROTEIRO DE AULA PRÁTICA 2
NOME DA DISCIPLINA: Sistemas Embarcados
Unidade: 4 – Sistemas de tempo real, sensores e atuadores
Aula: 3 – Sensores e atuadores embarcados
OBJETIVOS
Definição dos objetivos da aula prática:
Compreender o funcionamento de um sistema embarcado que opera baseado em um sistema
operacional em tempo real, implementando o envio de dados via wifi.
SOLUÇÃO DIGITAL:
Plataforma Wokwi
O site Wokwi (https://wokwi.com/) permite a simulação online de sistemas embarcados variados
como ESP32, STM32 e Arduino. Permite ainda a interação entre os dispositivos e sensores
variados, permitindo a montagem de um sistema IoT completo.
PROCEDIMENTOS PRÁTICOS E APLICAÇÕES
Procedimento/Atividade nº 1
Comunicação wifi
Atividade proposta: elaborar algoritmos para sistemas embarcados com comunicação wifi.
Procedimentos para a realização da atividade:
Um sistema embarcado normalmente opera sobre um sistema operacional. O sistema
operacional mais comum de ser utilizado nesse tipo de aplicação é o FreeRTOS. O ESP-32
possui esse sistema operacional como padrão em seu funcionamento e saber como criar e utilizar
diferentes tarefas (tasks) é fundamental para o profissional que trabalha com sistemas
embarcados.
Por mais que o ESP-32 opere baseado no FreeRTOS, também é possivel programa-lo utilizando
a estrura Arduino (setup/loop), o que pode ser mais simples em alguns casos. Para saber mais
sobre como é realizada a simulação do ESP-32 no Wokwi, acesse: https://docs.wokwi.com/pt
BR/guides/esp32.
6
Público
Para executar o procedimento proposto, inicie um novo projeto utilizando o ESP-32. Ele pode ser
baseado no conjunto de bibliotecas ESP-IDF ou esquema Arduino. Para isso, basta acessar um
dos
links
a
seguir:
https://wokwi.com/projects/new/esp-idf-esp32 ou
https://wokwi.com/projects/new/esp32. Na tela inicial, é possível visualizar duas áreas: a
esquerda fica o editor de texto e a direita a área de simulação onde é feita a montagem de
hardware. Nas simulações é possível adicionar elementos variados ao seu sistema, como LEDs
e sensores. Para isso, aperte o + na área de simulação e selecione o item que deseja adicionar.
Feita montagem virtual do hardware, o código a ser executado no ESP-32 pode ser elaborado na
área relativa ao sketch. Para realizar a simulação, aperte o ‘Play’ na área de simulação.
Agora que você já está familiarizado com a plataforma Wokwi e com o módulo ESP-32, iremos
conectar o dispositivo em um wifi e realizar o envio de dados. O modo e código necessário para
conectar virtualmente o ESP-32 na rede wifi da plataforma de simulação está descrito no
seguinte link: https://docs.wokwi.com/pt-BR/guides/esp32-wifi.
Assim, você deve criar um sistema utilizando o ESP-32 que se conecte ao wifi, obtenha a data e
hora atuais de um servidor NTP e as exiba em uma tela LCD. Deve ser exibida a hora e a
indicação de online em uma linha e data completa na outra. Crie uma lógica para que a data e
hora sejam atualizados a cada 250 ms. A montagem da simulação e resultado esperado estão
apresentados figura abaixo:
7
Público
Como dica, elabore o seu código por partes e realize várias simulações de funcionamento para
cada uma delas. Recomenda-se inicialmente testar o funcionamento correto do display, depois
a conexão com o wifi e na sequencia o acesso ao servidor NTP. Além disso, a utilização da
estrutura Arduino torna a implementação mais simples.
Avaliando os resultados:
Você deve entregar um relatório contendo os prints e/ou vídeos de cada procedimento. Além
disso, apresente todos os algoritmos desenvolvidos, comentados linha a linha, em sua
integralidade. O relatório deve conter informações detalhadas sobre o funcionamento do
algoritmo desenvolvido, a simulação e seus resultados.
Checklist:
✓ Faça a montagem de hardware no ambiente virtual corretamente.
✓ Elabores os algoritmos conforme indicado.
✓ Simule o sistema para verificar se o requisito de funcionamento foi atendido.
RESULTADOS
Resultados do experimento:
Ao final dessa aula prática, você deverá enviar um arquivo em word contendo as informações
obtidas no experimento, os cálculos realizados, em conjunto com um texto conclusivo a respeito
das informações obtidas. O arquivo não pode exceder o tamanho de 2Mb.
• Referências bibliográficas ABNT (quando houver).
Resultados de Aprendizagem:
Ao final da prática, o estudante será capaz de desenvolver um sistema IoT básico utilizando o
ESP-32 na plataforma Wokwi, conectando-o a uma rede Wi-Fi, obtendo dados de data e hora de
um servidor NTP e exibindo essas informações em uma tela LCD. O estudante demonstrará
habilidade em configurar a comunicação com redes, realizar acesso a servidores de tempo, e
8
Público
manipular displays em simulação, aplicando uma lógica de atualização contínua de dados e
consolidando conhecimentos sobre programação em ambientes de simulação virtual.
Aula Prática Sistemas embarcados