IFPB - Campus J Pessoa
Curso de Arduino Básico para Docentes
Semestre:
2016.2
Prof. Ilton L Barbacena
O participante deste curso poderão acessar esta página
nos seguintes links:
------------------------------------------------------------------------------------------------
Os arquivos a seguir, serão básicos para consulta durante o curso:
1 - Introdução a Sistemas Embarcados
2 - Tudo sobre arduino:
Lojas, kits, tutoriais, esquemas eletrônicos, etc
3 - Baixar e instalar o Proteus 7.10 / Versão instalada no Laboratório:
4 - Livros sobre Arduino em Portugues: 1 / 2 / 3 / 4 /
5 / 6 - Outros livros (1,3GB)
5 - Processing: Introducao a programacao grafica usando
Processing: 1 / 2
6 - Matlab: Básico / Matlab + arduino: 1 / 2 / 3 / 4 / 5 / 6 / 7
7 - Robótica aplicada: Livro básico
8 - Linguagem Python (Beaglebone e arduino): 1 / 2 / 3 / 4 / 5 / 6
/ 7 / 8
9- Tudo sobre Beaglebone
Black
10- Linguagem Lua (linguagem usada em jogos e na
ESP8266): 1
/ 2 / 3 / 4 / 5 / 6
11 - Plataforma ESP8266 / Wemos D1 / wemos D1 mini
- Livros sobre ESP8266
- ESP8266-01 a precussora da família: 1 / 2
- ESP8266 - placa compatível com a IDE do Arduino: 1 / 2 / 3 / 4 / 5 / 6
- Como usar o arduino apenas como um conversor USB - Serial TTL
para a ESP-01: 1 / 2
/ 3
- Ainda não comprou o ESP-01? 1 + 2 (ou cabo USB - Serial TTL )
+ 3 + 4 + 5 + 6
- Veja também estes preços de placas no mercado internacional: 1 / 2 / 3 / 4 / 5 / 6
- Veja um kit para um robô básico:(a) wifi 1 / 2 / 3 / (b) bluetooth
- Veja uma avaliação das ferramentas
para a ESP8266
12 - Desenvolvimento de aplicativos para celular
(Android)
- Utilizando a ferramenta oficial (Android Studio): download / tutoriais: 1 / 2 / 3 / 4 / 5 / 6
- Utilizando o App Inventor 2:
- Minicurso em video com 3 aulas: 1 / 2 / 3
- Como fazer um jogo no App Inventor: 1 / 2
- Novo curso em vídeo do App Inventor 2: 1 / 2
- Ferramenta paga para criar um Aplicativo para
Qualquer Plataforma
- Conheça o Elipse Mobile: 1 / 2 / 3 / 4
13 - Cursos Básicos de Arduino: Básico
14 - Algumas novidades serão colocadas aqui
-----------------------------------------------------------------------------------------------
Aula dia 28/09/2016: Introdução a Sistemas Embarcados
- Kit recomendado para compra imediata para seguirem
este curso: 1
- Cada participante deverá comprar seu kit
- As aulas práticas começarão em 40 dias (tempo para
chegar os kits)
- Introdução a Sistemas Embarcados
- Evolução do arduino: Placas / Plataforma IDE
- Outras apresentações: 1 / 2 / 3 / 4 / 5 / 6
- Video sobre a origem do Arduino
- Atividade para 05/10/2016:
- Baixar e ler os conteúdos deste material desta aula
- Elaborar um programa que pisque 8 leds, simultaneamente
Atenção: Local das aulas (todas as quarta-feiras)
- Grupo1: 7-9h30 / Lab. A-128 (eletrônica industrial - bloco da
eletrônica) - Próximo ao cafezinho
- Grupo2: 13h30-16h / Lab 5 do ambiente de automação (bloco de
mecânica - piso superior)
- Estas turmas somente se efetivarão, se existir pelo menos 6 alunos
frequentando.
Aula dia 05/10/2016: Uso do Proteus
- Veja na aula anterior, o local e o horários das aulas
- Básico sobre o Proteus
- Exemplo de simulação usando transistores: 1 / 2 / 3 /
4 / 5 / 6
/ 7
- Antes de iniciar as simulações no Proteus - Isis,
configure para mostrar a tensão e corrente. Para isso vá em System
/ Set Animation Option e configure assim.
- Primeiros
passos com o Arduino e Proteus
- Setup( ) / Loop ( )
na IDE do arduino / main ( )
Atividade em sala:
Atenção:
- Quer completar seu kit com diversos sensores, clique aqui
Aula dia 19/10/2016: projeto: Controle de Acesso
- Descrição: Este projeto consiste de um teclado, um display LCD e uma
fechadura magnética de 12V. O usuário digita uma senha no teclado, e
quando, acertar a senha, é acionado uma fechadura magnética que abre a
porta de acesso.
- Elementos básicos do projeto:
- Placa do Arduino UNO / ATmega328 + cristal 16MHz + Capacitores
22pF
- Display LCD 2x16:
- Teclado
telefônico ou de membrana: 1 / 2 / 3 / 4 / 5 / 6
/ 7 / 8 / 9
- Transistor + Relé: 1
/ 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13
/ 14
- Fonte de alimentação: 1 / 2 / 3 / 4 / 5 / 6
- Conectores, caixa plástica e acessórios: 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13
- Software embarcado
- Diferença entre delay() e millis()
- Comunicação serial do arduino com o bloco serial monitor usando
o Proteus / biblioteca AltSoftSerial
- Comunicação serial acionando um motor servo
- Display
de 7 segmentos
- Como gravar bootloader no arduino (ATmega328 -
DIP): 1 / 2 / 3 / 4
Exemplo de projetos desenvolvidos por alunos: Sensor de ré e Cálculo
do IMC
Breve explanação sobre o projeto de Controle de Acesso: funcionamento
do Relé e do LCD
- Atividade em sala, incluindo, a utilização da biblioteca do LCD,
existente, através dos exemplos: 1 / 2
- Atividade para casa: acessar e ler todos os conteúdos dos
links, desde a aula do dia: 28/09/2016. Na próxima
aula vamos tirar todas as dúvidas até aqui.
Aula dia 26/10/2016: Teclados
- Atividades em sala, incluindo, a instalação da
biblioteca do teclado: G1 / G2
- Atividades para casa, a ser entregue até o dia anterior, a próxima
aula:
- Converter esta simulação
com saída serial, para saída somente no LCD
- Estudar as 3 funcoes, disponíveis no código fonte, para
leitura de um número real
- Utilizando somente Teclado + LCD, elaborar programa para solução
de raizes de equação de segundo graus
com as seguintes modificações:
- Utilizar apenas um teclado 4x4 e um display LCD 16x2;
- Na versão final, não utilizar saida serial. Usar somente
teclado e LCD;
- Os coeficientes a, b, c e as raizes, quando existirem, deverão
ser do tipo float ou real;
- O sistema deverá ser configurado para ler as teclas numéricas,
e, também, os seguintes caracteres: "." / "-" / <enter>
- "." ponto decimal, aceitando como entrada somente uma vez, em
qualquer posição do cursor no LCD => usar a tecla "ON";
- "-" ou negativo, sempre quando pressionado, mostrar o negativo
sempre na mesma coluna a esquerda => usar a tecla '-';
- Durante a entrada, pode-se pressionar o negativo, a qualquer
momento
- Neste caso, deve-se controlar a posição do cursor nas
colunas, durante a entrada, veja na simulação
- <ENTER> ou tecla para encerramento de uma entrada do
número => usar a tecla "+" do teclado
Novidade do mês de Setembro: Placa Arduino 101 e Placa NodeMCU32 => 1 / 2 / 3 / 4 / 5
Atenção:
- Para o projeto de controle de acesso, será necessário adiquirir um
teclado, além do kit do curso.
- Estou colocando aqui algumas opções de compra (melhor compra
coletiva): 1 / 2
/ 3 / 4 / 5 / 6 / 7 / 8 / 9
- Opcionalmente, poderá encontrar o módulo de teclado, em alguma sucata
de telefone
- Veja este exemplo de automação residencial
Aula dia 09/11/2016: Revisão
- Revisão de aulas anteriores: G1 / G2 ==> Turma
- Para quem ainda não fez, permanece a atividade: elaborar programa para
solução de
raizes de equação de segundo graus conforme descrito na aula
anterior. Se usar teclado de 12 teclas, não usar o ponto decimal,
aceitar a tecla ON para sinal negativo, e a tecla "=" para
<enter>.
Aula dia 16/11/2016: Avançar no Projeto de Controle de
Acesso
- Elaborar o esquemático usando o Proteus
- Elaborar o programa para entrar com senha e acionar o relé
- Elaborar o layout da PCI
- Estudar a disposição das placas no gabinete ou caixa do projeto
Novidade do mês: Guia para Projeto de
Placa Base
- Arquivos desenvolvidos em sala: Elaboração do
esquemático e do layout da PCI
- Terminei a placa e veja como ficou.
Aula dia 22/11/2016, Terça, 7h: Conclusão da PCI
- Elaboração de uma nova versão da PCI (placa3)
- Como adicionar um novo componente na biblioteca do Proteus
Atenção:
Aula dia 01/12/2016, Quinta: 14hs
- Arduino + sensor ultrassonico
- Local: Lab. 10 / Corredor do curso de Eletrônica / Próximo ao cafezinho / 3o Lab
Novidade do mês => Família de microcontroladores RZ/H1 - Renesas: 1 / 2
Conheça os detalhes da alimentação da Placa Arduino MEGA
Conversão ADC usando o arduino
/ Mudando o clock interno
- Atividades em sala:
Fonte de alimentação para o arduino: 1 / 2
Aula dia 07/12/2016, Quarta: 13h30, Lab. 10
- Display de 7 segmentos: teste o display de seu kit / Exercício em sala / Programas 8 e 9 do minicurso
- Contador com mais de 1 dígito: 0000 a 9999
- Atividade para o dia 14/12: Contador de 00 a 99 / UP DOWN, com 2 botões
- Utilizar a função millis( ) ao invés de delay( )
Atenção:
- Penso que cada participante do curso tem algum objetivo para utilização do arduino, desta forma, é aconselhável que já pensem em adquirir alguma eventual placa de interface para seus projetos, agora;
- Exemplos: 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / etc
- Veja este artigo: Controle de GPIO da Raspberry Pi utilizando a linguagem C
Aula dia 14/12/2016, Quarta: 13h30, Lab. 10
Feliz Natal e muita alegria e saúde na passagem do ano.
Retornamos somente em 2017.
ESP32: Vale a pena? (Diferente da NodeMCU32, ESP8266-12): 1 / 2 / 3 / 4 / 5 / 6
Aula dia 25/01/2017: Retomando as atividades
- Atividades realizadas em sala:
- TimerOne uma alternativa ao millis( ): 1 / 2 / 3 / 4
- Atividade vem sala: Elaborar um programa utilizando timerOne.h, com estouro de tempo de 1ms, e piscando um LED a cada 200ms.
- Uso do 74lS164
- Veja outros exemplos: 1 / 2 / 3 / 4 / 5 / 6
- Atividade: Usando 2 CIs74LS64 fazer um contador 00 a 99 - UP / DOWN
Aula dia 01/02/2017: 74LS595
- Uso do CI 74LS595
- Estudar o datashet deste CIs:
- Possui quantos flip-flops tipo D?
- Em qual pino onde se deve dar um pulso, para transferir 8 bits para a saída?
- O que o ocorre se aterrarmos o pino 13?
- Quantos pinos do arduino são necessários para comunicar-se com este CI?
- Este CI liga em cascata? Se sim, podemos controlar 40 pinos de saídas com apenas 3 pinos do arduino com 5 CIs deste? Como?
- Vejam exemplos de utilização deste CI: 1 / 2 / 3 / 4 / 5 / 6 / 7
- Atividade:
- Utilize um CI 74HC595 do kit para ligar nos segmentos de 2 display de 7 segmentos, e, fazer um contador de 200ms, UP / DOWN, de 00 a 99. Não esquecer de colocar os resisores limitadores de corrente nos segmentos dos displays.
- Esta atividade pode ser feita com ou sem o uso de transistores adicionais. Se não adicionar os transistores devemos usar 2 CIs 74LS595 e não haverá multiplexação. Se utilizar os transistores, para fazer a multiplexação, pode-se usar apenas 1 CI 74LS595 e ligar os pinos de saída do CI nos 2 display de 7 segmentos.
Aula 08/02/2017: MAX7219
Atenção:
- Hoje, pela manhã, resolvi dar uma geral no site do arduino, baixar a última versão, e ver algumas novidades nos sites de vendas ebay e aliexpress, onde normalmente aparecem as novidades mais recentes. Enumerei alguns itens interessantes:
- É sempre interessante fazermos isso, periodicamente, para se atualizar
Aula 15/02/2017:Comunicação Infra-vermelho (Infared)
- Exemplos práticos com MAX na turma 2016.1 (Videos): 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 - 2016.2
- Vejam este livro com diversos experimentos com arduino
- Protocolos de comunicações: 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17 / 18 / 19 / 20 / 21 / 22
- Atividade em sala: Trazer o kit e um controle remoto (AR ou TV), levantar os códigos correspondente a cada tecla pressionada, e montar no protoboard, 3 leds com resitores, um receptor infra-red (3 terminais), e elaborar um software que associei 6 teclas pressionadas do controle remoto, aos leds (acender e apagar). Exemplo de atividade feita em sala.
- Vejam este livro com diversos experimentos com arduino
Aula 22/02/2017:ESP8266 / Sugestão para compra de ESP-12: 1 ou 1a / 2 / 3 ou 4
- ESP8266 - módulo compatível com a IDE do Arduino, 32bits, wi-fi, porém Vcc = 3,3V: 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9
- Internet das coisas (IOT): 1 / 2 / 3 / 4
- Veja as características dos módulos ESP8266 / Platform espressif
- Videos em português: 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8
- Vídeos de ESP8266 com o arduino: 1 / 2 / 3
- ESP8266-01 a precussora da família: 1 / 2 / 3 / 4
- Módulos ESP8266 mais utilizadas: ESP-01 e ESP-12 ( NodeMCU / Wemos D1 / wemos D1 mini)
- Exemplo de UNO + ESP-01, como ponte wifi, lendo temperatura e umidade: 1 / 2
- Recomenda-se a aquisição de um gravador para a placa ESP-01, se for utilizá-la
- Como usar o arduino apenas como um conversor USB - Serial TTL para a ESP-01: 1 / 2 / 3
- Ainda não comprou o ESP-01? 1 + 2 (ou cabo USB - Serial TTL ) + 3 + 4 + 5 + 6
- Veja também estes preços de placas no mercado internacional: 1 / 2 / 3 / 4 / 5 / 6
- Livros sobre ESP8266
Veja este circuito para explicar o funcionamento do 74LS595
Atividade: Utilizando a IDE do arduino e uma placa ESP-12, conectada via USB, fazer:
- Montar o circuito que pisque um led, a cada 300ms
- Montar o circuito com 1 led e 2 pushbottom: 1 acende e o outro apaga o led
- Montar o circuito, com um display de 7 segmentos, catodo comum, com resistores de 220 em séries e ligados diretamente nos pinos da ESP. O software deve ficar mostrando no display, em loop, valores decimais sequenciais em ordem crescente, a cada 200ms.
- Cada atividade deve ser mostrada ao professor quando concluída
- A atividade 3 deve ser enviada, ao final da aula, toda documentada, nos comentários
Atividade enviada por Marco Meira e Marcílio: vídeo + código fonte
Atenção:
Aula 08/03/2017: App Inventor II
Aula 15/03/2017:
- Vamos aderir ao movimento contra a reforma da previdencia, saindo de nossa sala as 13h45, em direção ao INSS
- Venha conosco, esta reforma é uma sacanagem com as futuras gerações
- Atividade para a próxima semana:
- Elaborar o programa fonte, usando o APP INVENTOR, deste aplicativo
- Fazer downlod do aplicativo, no seu celular
- Configurar o celular para permitir instalar outras fontes
- instalar o aplicativo e executar
- Agora, elaborar o programa fonte correspondente
- Colocar seu nome na barra de título, substituindo o meu nome
- Mostrar o aplicativo funcionando, e salvar os arquivos fontes do aplicativo (.aia) no seu computador
- Criar o instalador do aplicativo (*.apk) e enviar para o seu email
- Entre 27/02 e 01/03/2017 aconteceu a Embedded World 2017
Aula 22/03/2017: Motores + APP INVENTOR
Aula 29/03/2017:
- Durante a aula foi desenvolvido um aplicativo para controle de motor DC, conforme atividade existente no final do texto sobre Motores.
- Ficou definido que o curso de interromperia, para que os alunos elaborassem um atividade completa em duplas.
- Proposta de atividade para conclusão do curso: Controle para acionamento de lampada Ultravioleta, via aplicativo
- Na placa deve existir uma ESP, utilizando apenas 2 pinos para acionamento: buzzer e relé para ligar a lampada ultravioleta (220VCA)
- No Aplicativo deve ser disponibilizado as seguintes interfaces:
- Entrada do tempo em que a lampada deve ficar acesa:
- horas (0-23) - box de texto e 2 pushbotton p/ aumentar e diminuir o valor
- minutos (0-59) - box de texto e 2 pushbotton p/ aumentar e diminuir o valor
- segundos(0-59) - box de texto e 2 pushbotton p/ aumentar e diminuir o valor
- Entrada do tempo de retardo para ligar a lampada, em minutos (0-10), com um box de texto e 2 pushbotton p/ aumentar e diminuir o valor
- Botão para transferir os dados para a ESP, pré-programados na interface, via wifi
- Controle de acesso a ESP: conexão a rede e senha
- Opcionalmente cada dupla, poderá propor outra atividade diferente, a exemplo dos trabalhos dos alunos de Engenharia
- Haverá apenas mais um encontro para que as duplas apresentasse o trabalho desenvolvido
- Data pré-estabelecida do encontro: 03/05
- Esta data poderá ser ajustada em função do andamento dos trabalhos e de outros fatores
- Todos os alunos estão convidados a assistirem as apresentações dos trabalhos finais alunos de Engenharia, dia 03/04, 7h15, Lab. 6 de automação.
Aula 03/05/2017, 7h15: Apresentação dos trabalhos finais pelos grupos
- Esta data poderá sofrer alteração, através de discussões, pelo whatapps
Atividades Finais:
- Placa de Automação Residencial UV C/Temporizador / Profa Rossana e profa Andrea / Video
Mais dicas sobre a ESP8266:
- Mais bibliotecas do arduino compatíveis com ESP8266
- Conheça estas ferramentas de hospedagem na net: Thingspeak, ifttt , adafruitIO, Wheather Underground, openweathermap, losant, ngrok, freeboard, homeautomationserver, IBM Bluemix e exosite
- Lendo temperatura e utilizando a biblioteca ThingerWifi
- Aplicativos de celular para wifi: Touchosc / RC Car / App Inventor / Blynk
- Para trabalhar com ESP8266-01, devemos trabalhar com um gravador, a placa ou cabo de conversão USB - Serial TTL ou utilizar a placa UNO para fazer esta conversão.
- Alguns exemplos de aplicação usando a ESP8266: 1 / 2 / 3 / 4 / 5 / 6
- Como criar um web server com a ESP8266 e ser acionada por um celular: 1 / 2
- Curso em vídeo com 5 lições: 1 / 2 / 3 / 4 / 5
- Expandindo a quantidade de entradas analógicas (ADC)
- Usando o pino ADC da ESP-01, não disponível no conector
- Uso de placa UNO ou MEGA com ESP-01 como ponte wi-fi
- Gostaram da ESP? vejam este lançamento: https://www.cytron.com.my/p-NANO32
- Controle em ambiente wi-fi é desejável que o usuário programe em html.
- Transistores:
- Como funciona o transistor usando Proteus: 1 / 2 / 3
- Como funciona o Tiristor: scr, diac e triac
- Dimmers: 1 / 2 / 3 / 4 / 5 / 6 / 7 / 8
- Algumas ferramentas para acessar arquivos de seu computador, via internet, remotamente: 1 / 2 / 3 / 4
- Algumas opções de como acessar o celular de outra pessoa: 1 / 2 / 3 / 4
- Algumas opções de módulos fontes para projetos de Sistemas Embarcados: 1 / 2 / 3 / 4