4. Pra quê serve um arduíno?
Serve para criação de projetos de pequena e
grande escala que exijam a integração e a
programação de itens eletrônicos, ou seja, é uma
ponte entre o seu código e o seu circuito
eletrônico, seja ele qual for.
21. ● ATmega32u4
● 7 saídas PWM
● 12 pinos analógicos
● Permite uso de
fonte externa
simples
● Comunicação por
usb mini
22. ● ATmega32u4
● Arduino UNO +
controlador de
motores(chip
L298)
● 2 motores de
2A cada
● Pinos para
servomotores
com
alimentação
independente
RoMeo AIO/
Robótica
30. Resistor
● Age como uma resistência à passagem de
corrente elétrica.
● Serve para diminuir a intensidade da corrente
ou a tensão num determinado ponto.
● Medido de ohms.
32. Potenciômetro
● Resistência variável (de 0 a o valor no seu corpo)
● Quando 2 terminais são utilizados: resistor comum
Existência de 2 resistores:
● R1: Uma extremidade ao centro
● R2: Outra extremidade ao centro
● Quando um aumenta o outro diminui
34. const int pot = A0;
const int led = 11;
const int led2 = 10;
int sensorValue = 0; // leitura do potenciômetro
int outputValue = 0; // leitura da saida PWM (analógica)
void setup() {
// inicializa a comunicacao serial
Serial.begin(9600);
pinMode(led,OUTPUT);
pinMode(led2,OUTPUT);
}
1º parte do código
https://circuits.io/circuits/3269553-variacao-de-luminosidade-com-potenciometro
35. void loop() {
// faz a leitura da entrada analógica
sensorValue = analogRead(pot);
// converte uma faixa de valores de entrada em uma faixa de valores de saída
/*como funciona
long map(long x, long in_min, long in_max, long out_min, long out_max){
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}
*/
outputValue = map(sensorValue, 0, 1023, 0, 255);
// muda o valor da saída analógica
if(outputValue >= 127){
analogWrite(led, outputValue - 127);
digitalWrite(led2,LOW);
}
else{
analogWrite(led2, outputValue);
digitalWrite(led,LOW);
}
// imprime o resultado no monitor serial:
Serial.print("sensor = " );
Serial.print(sensorValue);
Serial.print("t output = ");
Serial.println(outputValue);
// Aguarda 2 milissegundos antes do próximo loop:
delay(2);
}
2º parte do código
37. Sensor LDR
● Resistor dependente de luz ou fotoresistor
● Sua resistência aumenta à medida que a
intensidade da luz aumenta
● É construído a partir de material semicondutor com
elevada resistência elétrica.
● Quando a luz que incide sobre o semicondutor tem
uma frequência suficiente, os fótons que incidem
sobre o semicondutor liberam elétrons para a
banda condutora que irão melhorar a sua
condutividade e assim diminuir a resistência.
● Traduzindo, quando tem pouca luz ele é mais
isolante e quando tem muita luz ele é mais
condutor.
38. Push Button
● Botão acionador ou chaveador eletrônico
● Do inglês: push = empurrar
button = botão, fundo
● Circuito com mola que permite a
passagem de corrente de acordo com o
acionamento do botão
39. Sensor de Temperatura
LM35
● Circuito integrado que mede a temperatura
ambiente em ºC (graus Celsius)
● Tensão lida do sensor varia linearmente com a
temperatura
● Sua faixa de medição vai de -55ºC até 150 ºC
● Tolerância: +/- 0,5 ºC
● Suporta tensão de até 1,5 V
41. //Declaração das constantes
const int led = 8; //constante led refere-se ao pino digital 8.
const int botao = 7; //constante botão refere-se ao pino digital 7.
const int ldr = A0; // Entrada analógica para o Resistor dependente de luz.
const int TPM_Sensor = A1;
//Variável que conterá os estados do botão (0 LOW, 1 HIGH).
int estadoBotao = 0;
int chaveador = 0;
//Método setup, executado uma vez ao ligar o Arduino.
void setup() {
Serial.begin(9600);
pinMode(led,OUTPUT); //Definindo pino digital 8 como de saída.
pinMode(botao,INPUT); //Definindo pino digital 7 como de entrada.
//Alterar tensão de referência do pino para 1,1V. É necessário pq o
//Sensor de temperatura só consegue atingir 1,5V na temperatura máxima que é de 150ºC
//caso esteja usando o Arduino Mega 2560 substituir por INTERNAL1V1
//O Arduino Leonardo não aceita esse comando
analogReference(INTERNAL);
}
https://circuits.io/circuits/2924501-acionador-eletronico-com-sensor-ldr-e-sensor-de-temperatura-lm35
1º parte do código
42. //Método loop, executado enquanto o Arduino estiver ligado.
void loop() {
//Lendo o estado do pino 7, constante botao, e atribuindo
//o resultado a variável estadoBotao.
estadoBotao = digitalRead(botao);
int estadoLDR = analogRead(ldr);
int sensorTemp = analogRead(TPM_Sensor);
int temperatura = sensorTemp * 0.1075268817;
Serial.print("Botao:");
Serial.println(chaveador);
Serial.print("LDR:");
Serial.println(estadoLDR);
Serial.print("Temperatura = ");
Serial.print(temperatura);
Serial.println(" *C");
2º parte do código
43. //Verificando o estado do botão para definir se acenderá ou
//apagará o led.
if (estadoBotao == HIGH)
{
digitalWrite(led, LOW);
chaveador = !chaveador;
delay(500);
}
else if (chaveador == 1)
{
if (temperatura > 30)
{
digitalWrite(led, HIGH);
}
else { digitalWrite(led, LOW); }
}
else if (chaveador == 0)
{
if (estadoLDR > 800)
{
digitalWrite(led, HIGH);
}
else
{
digitalWrite(led, LOW);
}
}
}
3º parte do código