11 de novembro de 2023

Jogo Passa ou Repassa

O famoso circuito do jogo da torta na cara!

Quando um botão é pressionado, o outro é desativado. Quem apertar mais rápido leva o direito de responder a pergunta do jogo!

26 de agosto de 2023

ButtonControl - Controlando os cliques dos botões

Em diversos projetos precisamos agilizar o controle de cliques em push buttons e, então, fiz essa biblioteca para me auxiliar.

Com a ButtonControl é possível controlar cliques rápidos e também cliques duplos, triplos, longos e sequenciais. Além de retornar os tempos dos cliques em milissegundos.

22 de junho de 2023

Cipher Code - Cifrando Textos

 Vamos ver exemplos de técnicas para cifrar textos.

As Cifra de Vigenere, Cifra de Espelhamento, Cifra Matemática e a Cifra de César são algumas das quais apliquei na biblioteca CipherCode.

São técnicas para cifrar mensagens e envia-las de forma segura aos seus destinatários. E montar esses algoritmos são uma excelente maneira para estudos de lógica de programação.

9 de abril de 2023

Contador de Passagem com Entrada e Saída

Dois sensores infravermelho trabalhando em conjunto para identificar o sentido da passagem.


O projeto utilizou o sensor reflexivo TCRT5000, que é composto por um LED infravermelho e um fototransitor. E o módulo display TM1637.

18 de março de 2023

Semáforo com RGB WS2812

Um exemplo de semáforo utilizando a barra de leds RGB WS2812.

Através do controle da intensidade do brilho dos leds controlamos a cor que estará em evidência.

14 de janeiro de 2023

Timebomb Game - Bomba Relógio para jogos

Vamos explodir algumas coisas!


Para desarmar a bomba, tem que acertar o fio que deve ser cortado. O fio errado pode acelerar o timer ou explodir na hora!

É legal para utilizar em jogos de Airsoft, Paintball e Escape Rooms.

6 de novembro de 2022

Caixa Cofre

Para abrir a caixa é necessário digitar a senha.

 
Se errar a senha por três vezes, por segurança, a caixa ficará bloqueada por 5 minutos.
É possível alterar a senha utilizando o botão localizado dentro da caixa.

10 de outubro de 2022

Teste de rede com PING no ESP32

Realizando testes de conexão com o comando Ping no ESP32.

Para monitorarmos a comunicação com outros equipamentos e realizarmos a verificação se a conexão com a internet e/ou rede interna estão ativas.

1 de abril de 2022

Cartão de memória Micro SD no Arduino

Salvar todas as informações em arquivo de log em cartão Micro SD é muito importante para determinados projetos.

Um arquivo mantendo o histórico de retorno de todos os sensores do circuito e outro com as informações dos atuadores são exemplos úteis.

1 de março de 2022

Relógio e Temperatura no Arduino - RTC DS3231

Quando é necessário que o projeto tenha um controle de data/hora, utilizamos o circuito RTC (Real-time clock).


O módulo DS3231 possui uma bateria externa para manter o relógio em atividade quando o circuito estiver desligado e um sensor de temperatura ambiente integrado.

18 de fevereiro de 2022

Visão Meteorológica com sensores DHT22 e LDR

Visualizando a temperatura, umidade e luminosidade ambiente através de um display LCD.

A umidade e a luminosidade são exibidas em porcentagem, e a temperatura em graus celsius.

30 de setembro de 2021

Nervo Teste

O clássico jogo Nervo Teste é para testar a coordenação motora e a habilidade de concentração.

O objetivo é passar a argola pelo arame até a outra extremidade. A cada contato o alarme é acionado e a falta é registrada na barra de leds. Com três faltas o jogador é eliminado!

Um jogo interessante e divertido para feira de ciências.

4 de julho de 2021

Cifra de César

Uma das técnicas mais antigas para cifrar mensagens, utilizada por Júlio César durante o império Romano, para se comunicar com suas tropas durante as guerras.

A técnica de substituição das letras que chamamos de Cifra de César.

3 de junho de 2021

Gravar Arquivos no ESP32 - SPIFFS

SPI Flash File System é o sistema de arquivos do ESP32. É possível acessar a memória flash para ler, gravar, renomear e excluir arquivos.

Um sistema de monitoramento gerando arquivos de log em txt, o html de uma página, ou um arquivo com parâmetros de configurações são bons exemplos para uso.

1 de maio de 2021

Calculadora de Cores de Resistores

O valor de um resistor é indicado através de um código cores. Vamos criar uma calculadora onde poderemos informar o valor do resistor e verificarmos quais são as suas cores.

Esse é um bom exemplo para estudos de lógica de programação.
Trabalharemos com os tipos de variáveis String, long e int, e utilizaremos substring e conversão de variáveis.

25 de abril de 2021

Data e Hora no ESP32 - NTP

O NTP (Network Time Protocol) é o protocolo que permite a sincronização do relógio do circuito com a internet. Mantendo a data e a hora sempre atualizadas em tempo real.


Um circuito com a data e a hora sempre atualizadas, principalmente para projetos IoT (Internet das Coisas), é muito importante.

2 de março de 2021

Validador de CPF

Validar números de CPF utilizando um Arduino UNO.


O algoritmo de validação de números de CPF é interessante para trabalharmos o aprendizado em lógica de programação.

Vamos trabalhar essa lógica no Arduino UNO, montando um validador com display LCD e um teclado numérico.

20 de novembro de 2020

Luz Rítmica RGB

As luzes piscam e alteram as cores ao som da música!

10 de julho de 2020

Semáforo com botão para pedestre

Como realmente funciona o botão de pedestre nos semáforos e como fazer funcionar sem utilizar a função delay no projeto.


Existem algumas lógicas que podem ser aplicadas aos semáforos com botão para o pedestre e, as mais comuns são:
  • Sinal verde para veículos possui o tempo programado para determinados horários e, quando o botão de pedestre é pressionado, o tempo é reduzido.
  • Sinal verde para veículos sempre ativo até que o botão de pedestre seja pressionado.

8 de junho de 2020

Delay com Millis() - Multitarefas

Quando é necessário executarmos várias tarefas ao mesmo tempo, precisamos limitar a utilização do delay() no código fonte, e utilizarmos mais a função millis().


A função millis() retorna o tempo que o microcontrolador está ligado, em milissegundos.
Guardando o valor de tempo que o processo foi executado e comparando com o valor de tempo atual, poderemos calcular quando deve ser executado novamente.

Para facilitar a lógica, fiz a biblioteca MillisTimerLib que faz o gerenciamento das variáveis para cada processo que for utilizar.

17 de maio de 2020

Comunicação Python com Arduino

Através da comunicação serial, o Arduino troca informações com um programa Python no computador.


O Python pode receber informações de sensores conectados ao Arduino e enviar comandos para serem executados.

8 de maio de 2020

Saídas PWM no ESP32 - Biblioteca

Utilizar as saídas PWM no ESP32 é um pouco diferente do Arduino.
É necessário configurar os canais, a resolução e a frequência que será utilizada por cada pino.


Para facilitar o uso, fiz a biblioteca PWMOutESP32 que permite que o uso seja simplificado.
Utilizando a biblioteca para controlar as saídas PWM, usa-se somente o analogWrite() como é no Arduino.

30 de abril de 2020

Trava Analógica

Como nos cofres mecânicos, é necessário selecionar a combinação dos números girando o disco.


O projeto faz a simulação do "38 para direita, 21 para esquerda" como nos cofres de discos.

A combinação fica armazenada na memória EEPROM e é possível utilizar uma senha entre 1 e 5 números, sendo cada um entre 01 e 99.
No vídeo, a trava é aberta com a combinação 38 - 21 - 54.

25 de abril de 2020

Sequencial de LEDs com Fade

Com controle de brilho e estruturas de repetições vamos acionar seis leds em um sequencial.


Utilizamos a modulação por largura de pulso, o PWM (Pulse-Width Modulation), para controlar a intensidade dos leds.

22 de abril de 2020

BadUSB - Digispark Attiny85

Veremos um exemplo de ataque por hardware e como pode ser perigoso.


O BadUSB é um dispositivo que ao ser conectado na porta USB do computador já efetua o ataque.
Não é necessário que o usuário execute e nem clique em nada.

7 de dezembro de 2019

Relógio Binário de Mesa

Vamos visualizar as horas em um relógio binário.


As horas são exibidas na primeira linha de leds, os minutos na linha do centro e os segundos na linha de baixo.

24 de agosto de 2019

Watchdog Timer - ESP32

Um sistema de Watchdog é responsável por reiniciar o circuito caso ocorra travamentos.
Vamos ver como configurá-lo no ESP32.


Na postagem Watchdog Timer - Reset Automático do Circuito foi detalhado melhor como funciona um watchdog e, utilizamos um Arduino.

Nesse exemplo veremos como utilizar no ESP32.

3 de agosto de 2019

WiFi Scan com ESP32 - Buscando e conectando em redes abertas

O circuito permanece verificando as redes WiFi disponíveis e, quando encontrar redes abertas efetua a conexão na que estiver com o melhor sinal.


Quando já conectado, continua verificando se existem redes abertas com um melhor sinal e, caso exista, faz a conexão na nova rede.

9 de julho de 2019

Loterias

Vamos ver o funcionamento da função random() sorteando números da loteria.

16 de fevereiro de 2019

Dado Eletrônico com Attiny85

Pequeno projeto com o microcontrolador Attiny85.