Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Componentes e Materiais

Componente Quantidade
Arduino UNO 1
Microchip ATtiny85 1
Capacitor Eletrolítico Desacoplador 10uF/25V 1
Jumpers Macho/Macho 1

Sobre o Projeto

Estou trabalhando em um projeto que requer leitura de dados de múltiplos sensores em diferentes locais. Eles precisam apenas de poucos pinos PWM, então usar múltiplos Arduino Uno seria caro e desnecessário. Decidi usar o microcontrolador ATtiny85 no lugar das placas de desenvolvimento Arduino Uno. O ATtiny85 é uma alternativa barata e poderosa quando não se precisa de muitos pinos PWM. Como o ATtiny85 é apenas um microcontrolador, precisamos de um Arduino Uno para programá-lo. Neste projeto explicarei como fazer isso. Abaixo está a configuração de pinos do ATtiny85 e o datasheet pode ser encontrado aqui.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Configurando Arduino Uno como ISP (Programação In-System)

Para programar o ATtiny85, primeiro precisamos colocar o Arduino Uno no modo ISP. Conecte seu Arduino Uno ao PC. Abra a Arduino IDE e abra o arquivo de exemplo ArduinoISP (Arquivo → Exemplos → ArduinoISP) e faça o upload.

Adicionando Suporte ao ATtiny85 na Arduino IDE

Por padrão, a Arduino IDE não suporta ATtiny85, então devemos adicionar as placas ATtiny. Abra Arquivo → Preferências e em "URLs Adicionais do Gerenciador de Placas" adicione: https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Após isso, abra Ferramentas → Placa → Gerenciador de Placas.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Role a lista até encontrar "attiny by Davis A. Mellis". Clique e instale.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Após instalar, você verá uma nova entrada no menu Placa.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Conectando ATtiny85 com Arduino Uno

Com tudo pronto, vamos programar o ATtiny85. Conecte o Arduino Uno ao ATtiny85 usando protoboard conforme abaixo:

Arduino Uno ATtiny85
5V Vcc
GND GND
Pino 13 Pino 2
Pino 12 Pino 1
Pino 11 Pino 0
Pino 10 Reset
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Adicione um capacitor de 10uF entre RESET e GND no Arduino. Isso evita que o Arduino reinicie automaticamente quando enviamos o programa ao ATtiny85. Se usar capacitor eletrolítico, certifique-se que o ânodo vai no GND do Uno.

Enviando Programa para ATtiny85

Volte à Arduino IDE. Selecione ATtiny em Ferramentas → Placa. Depois ATtiny85 em Ferramentas → Processador. E 8 MHz (interno) em Ferramentas → Clock.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Certifique-se que "Arduino as ISP" está selecionado em Ferramentas → Programador.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Por padrão o ATtiny85 roda a 1MHz. Para rodar a 8MHz, selecione Ferramentas → Gravar Bootloader.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Você verá a mensagem acima se a gravação foi bem-sucedida.

Agora abra o exemplo Blink dos exemplos do Arduino e mude o número do pino de 13 para 0 e faça upload.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Agora carregamos o programa blink no ATtiny85. Vamos testá-lo.

Testando Blink no ATtiny85

Hora de testar. Remova todas as conexões do Arduino e use uma fonte de alimentação. Aqui usarei uma bateria de moeda para alimentar o ATtiny85.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Lá está o programa blink rodando no ATtiny85 com apenas uma célula de bateria. Você pode fazer muitos projetos com baixo custo, baixo consumo e pouco espaço. Só sua imaginação é o limite (e o número de pinos PWM, claro).

Transformando em Shield

Convertei o circuito acima em um shield compatível com Arduino Uno.

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

(Nota: Sendo desenvolvedor de software, este é meu primeiro projeto em eletrônica. Por favor, deem sugestões para me ajudar a fazer mais.)

Código

Programa Blink

/* Blink
   Liga um LED por um segundo, depois desliga por um segundo, repetidamente.
   A maioria dos Arduinos tem um LED on-board no pino digital 13.
   Este código é de domínio público.
   Modificado em 8 Maio 2014 por Scott Fitzgerald
*/
void setup() {
  pinMode(0, OUTPUT); // Pino 0 no ATtiny85
}

void loop() {
  digitalWrite(0, HIGH);
  delay(1000);
  digitalWrite(0, LOW);
  delay(1000);
}

Esquemáticos

Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo
Programe ATtiny85 Eficientemente com Arduino Uno: Solução Multi-Sensor de Baixo Custo

Processo de manufatura

  1. Programação de Extensões Python com C: Criando Módulos Nativos Rápidos
  2. Relógio em Tempo Real com Arduino para Horários de Oração Islâmica
  3. Mealheiro Inteligente: Controlar Aceitador de Moedas com Arduino Nano
  4. Controlar um LED via Bluetooth com Arduino – Guia DIY Simples
  5. Construa uma Calculadora Básica com Arduino UNO – Projeto Fácil
  6. Como Exibir Imagens em LCD TFT 1.17" com Arduino UNO
  7. Display Portátil de Persistência da Visão com Arduino UNO e ATtiny85
  8. Controlando Matriz de LED 8×8 com Arduino Uno: Guia Passo a Passo
  9. Construa um Cubo de LED 4x4x4 com Arduino Uno e 1Sheeld – Projeto Interativo de LED
  10. Controle de Ventoinha PWM 4 Pinos 25 kHz com Arduino Uno – Montagem, Código e Teste