O projeto Arduino foi criado para tornar fácil o desenvolvimento de projetos com micro controladores e certamente um dos grandes responsáveis por essa facilidade sãos as às placas de expansão de hardware conhecidas como "Shields". Esta placas de circuito se encaixam na placa Arduino principal, onde podemos adicionar novos elementos ao nosso projeto sem a necessidade de grandes conhecimentos em eletrônica. Os circuitos contidos nos diversos "Shields" comerciais contém um circuito eletrônico que adiciona funções que a placa principal não possui. Nesta postagem irei apresentar o "Multi-Funcion Shield".
Os Circuitos do Shield Multi-funções estão conectados aos pinos conforme mostrado na tabela 01: Preto – Reset: 1 (Reset); Marrom – Potenciômetro (10 kOhm): A0; Vermelho – Display e drive D4 (Latch), D7 (Clock) e D8 (Data); Laranja – 3 botões: A1, A2, A3; Amarelo – Soquete para Sensores: A4 (Temperatura), D2 (IR); Verde – 4 Led's indicadore: D10, D11, D12, D13; Azul – Buzzer (On/Off): D3; Violeta – Pinos livres (PWM); D5, D6, D9 e A5 e Cinza - Soquete APC220 (GND, +5v) e D0 (Rx) e D1 ( Tx).
Circuitos do Shield Multi-funções | Pinos # |
---|---|
Preto – Reset | P1 (Reset) |
Marrom – Potenciômetro (10 kOhm) | A0 |
Laranja – 3 botões | A1, A2, A3 |
Amarelo – Soquete para Sensores | A4 (Temperatura), D2 (IR) |
Cinza - Soquete APC220 (GND, +5v) | D0 (Rx) e D1 ( Tx) |
Azul – Buzzer (On/Off) | D3 |
Vermelho – Display e drive | D4 (Latch), D7 (Clock) e D8 (Data) |
Violeta – Pinos livres (PWM) | D5, D6, D9 e A5 |
Verde – 4 Led's indicadores | D10, D11, D12, D13 |
Para teste do "Multi-Funcion Shield", desenvolvi algumas aplicação que estão disponíveis no link após a descrição de cada componente instalado.
Aplicação para Potenciômetro: O pino central do Potenciômetro esta conectado na porta analógica
A0 de entrada no Arduino. O capacitor de 0,1 micro Farads serve para limitar ruídos elétricos na leitura de tensão. A tensão no POT poderá variar entre +5V e 0V. Como o conversor ADC do Arduino tem 10 bits, os valores digitais serão de zero a 1023. O programa de teste do Potenciômetro. O valor digital correspondente à tensão, será mostrado no display de 4 dígitos. Gire a cabeça do parafuso do POT com uma pequena chave de fenda e o valor mostrado será entre zero e 1023.
A0 de entrada no Arduino. O capacitor de 0,1 micro Farads serve para limitar ruídos elétricos na leitura de tensão. A tensão no POT poderá variar entre +5V e 0V. Como o conversor ADC do Arduino tem 10 bits, os valores digitais serão de zero a 1023. O programa de teste do Potenciômetro. O valor digital correspondente à tensão, será mostrado no display de 4 dígitos. Gire a cabeça do parafuso do POT com uma pequena chave de fenda e o valor mostrado será entre zero e 1023.
- Potenciômetro: Será utilizado para enviar um sinal analógico ao Arduino. Por permitir variar a resistência, teremos uma variação da tensão, logo o potenciômetro deve ser ligado a porta analógica do Arduino. No caso do kit "Multi-Funcion Shield" o potenciômetro está ligado a porta analógica A0. No programa de teste será medido o valor na entrada A0 que será ajustada pelo potenciômetro e será enviado o valor para a porta serial. O arquivo do código fonte - Potenciômetro Serial está disponível em: 21_03_01_Potenciômetro_Serial_SRG (PDF).
Aplicação para Display 7 Segmentos: O circuito do Display usa um módulo com 4 dígitos ( 7 segmentos – anodo comum). Os segmentos são ativados através da multiplexação realizada pelos dois chips de Registradores de deslocamento (Shift registers) 74HC595.
Os bits são recebidos serialmente através do pino 14 (SER) do Chip U2. A porta digital D8 do Arduino envia esses bits. O sincronismo dos bits é feito através do clock do pino 11 (SRCLK), pela porta D7. O pino 12 (RCLK) é usado para armazenar os bits nos registradores – pino digital D4 do Arduino. A sequência dos bits é enviada de um chip 74HC595 para o outro através do pino 9 do U2 – QH’ .
- Conjunto de 4 Displays de sete segmentos e drive 74HC595: Displays são usados em eletrônica para de exibir uma informação alfanumérica (binário, decimal ou hexadecimal), devido a simplicidade e fácil configuração seu uso é muito popular. O display é composto de sete LEDs (com anodo comum), os quais podem ser ligados individualmente. O catodo de cada LED receberá um nome (A, B, C,...), assim para formação dos dígitos, basta seguir a "tabela do decodificador" mostrada na figura 2. O Multi function Shield possui um registrador de descolamento com o circuito integrado drive 74HC595 onde os valores e o display que será utilizado é controlado por codificação em hexadecimal. Os código a seguir irá mostrar os numero 0 1 2 3 no display. O arquivo do código fonte - Display e 74HC595 está disponível em: 21_03_02_Display_74HC595_SRG (PDF).
Aplicações para Botões: O circuito dos botões. Todos os botões tem resistores de Pullup de 10K , isto é, o nível de tensão nas portas será de 5V (HIGH). Quando o botão for acionado, o nível de tensão será zero (LOW). O botão de RESET serve para reiniciar o programa no Arduino. Os botões SW1 , SW2 e SW3 estão conectados nas portas analógicas de entrada A1, A2 e A3, respectivamente.
- Botões: Os botões no kit "Multi-Funcion Shield" foram implementados de maneira onde quando pressionado, a entrada do Arduino que o botão estão ligado recebera o sinal LOW. No programa a seguir temos um exemplo onde usamos dois botões para acender e apagar os Leds do shield. O arquivo do código fonte - Botões e Led's está disponível em: 21_03_03_Botões_Led's_SRG (PDF).
Aplicação para medição de Temperatura – Neste shield é possível conectar facilmente um sensor de temperatura DS18B20.
Esse é o diagrama do soquete para sensores de temperatura. A parte chanfrada do DS18B20 deve estar virada para a frente. Mantenha o jumper J1 conectado.
Esse é o programa para uso do sensor DS18B20. A temperatura do sensor é medida e mostrada no display de 4 dígitos. O valor da temperatura tem uma casa decimal, mas se quiser, poderá ter até duas casas. Para funcionar, instale essas duas bibliotecas – OneWire e Dallas Temperature , usando o procedimento já descrito.
Aplicações para LED"s: O circuito dos LED's são simples, oss 4 LEDs , estão conectados nas portas digitais de saída D13, D12, D11 e D10. Resistores de 1K ohm limitam a corrente nos LEDs. Esse é um programa para teste dos Leds. Veja que na Biblioteca Multifunção , existem comandos para ligar, apagar e piscar os LEDs. Facilitam bastante o controle dos LEDs.
- Led's: Os botões no kit "Multi-Funcion Shield" foram implementados de maneira onde quando pressionado, a entrada do Arduino que o botão estão ligado recebera o sinal LOW. No programa a seguir temos um exemplo onde usamos dois botões para acender e apagar os Leds do shield. O arquivo do código fonte - Botões e Led's está disponível em: 21_03_03_Botões_Led's_SRG (PDF).
Aplicações para Buzzer: O circuito do Buzzer (campainha) é controlado por um transistor, para não sobrecarregar a corrente na porta digital do Arduino.
Se a porta D3 estiver em HIGH, o transistor não aciona o Buzzer. Mas se a porta estiver em LOW, a campainha toca.
O programa de teste do Buzzer toca um bip curto e depois de um segundo, toca 4 sequencias de bips por três vezes consecutivas. Programando a função MFS.beep, poderá criar inúmeras opções de bips.
- Buzzer: Para testar o buzzer no "Multi-Funcion Shield", a aplicação será usada para emitir sons de alerta, o buzzer pode também pode ser configurado para tocar melodias que pode ser acessado clicando através do código fonte - Buzzer que está disponível em: 21_03_04_Buzzer_SRG (PDF).
Aplicação para Header PWM: Esse é o diagrama do Header PWM – conjunto de pinos. Todos pinos da esquerda (3) estão conectados ao terra (GND).
Os pinos centrais (2) estão conectados aos 5V. E os pinos da direita (1) estão conectados nas portas digitais de saídas D5, D6 e D9 (podem ser usadas com PWM) e na porta de entrada analógica A5. Não recomendo o uso direto dessas portas para controlar motor servo, pois poderão provocar excesso de corrente no regulador do Arduino. Se for usar servo motor, use uma fonte externa de 5V. Nessas portas poderá conectar uma grande variedade de dispositivos, desde que use cabos para conectá-los. Por exemplo, sensor infra-vermelho de presença, sensor Ultra-sônico, etc. Mas fique atento para o consumo de corrente – o regulador do Arduino suporta no máximo 1 ampere.
Aplicação para soquete APC220: Na placa do Shield Multi-Funções tem mais um soquete na parte superior do lado esquerdo, onde está escrito na placa, o nome de alguns módulos que podem ser usados nesse soquete: Módulo APC220 (transceptor de comunicação por rádio), Módulo Bluetooth e Módulo de Reconhecimento de Voz.
Manual com referências para o Shield Multi-funções está disponível em: 21_03_01_Manual_Shield_Multifuntion.
Diagrama elétrico do Shield Multi-funções Shield está disponível em: 21_03_01_Diagrama_Multi_Funtion_Shield.
© Direitos de autor. 2020: Gomes; Sinésio Raimundo. Última atualização: 02/03/2021
Nenhum comentário:
Postar um comentário