Arduino, Internet das Coisas e Computação vestível |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Shield Arduino Multifunções com Sensores e I/O´sDescrição
|
Portas utilizadas por componente:
|
Para programar o display utilize a bilioteca abaixo:
Informa temperatura, umidade e luminosidade com Shield Arduino MultifunçõesO projeto utiliza Arduino Uno R3, Módulo display Oled 0,96 128x64 e Shield Arduino Multifunções com Sensores e I/O´s para informar a temperatura, umidade e luminosidade do meio-ambiente.
/* Programa: Informa temperatura, umidade e luminosidade através do Shield Arduino Multifunções Autor: André Luis Marques da Silveira Data: 23/03/2019 Objetivo: Manipular sensores 1. Sensor de temperatura e umidade DHT11 (porta D4) 2. Sensor de temperatura LM35 (A2) 3. Sensor de Luz LDR (A1) */ #include "Wire.h" // Biblioteca para enviar e receber dados TWI/I2C #include "Adafruit_GFX.h" // Biblioteca para processamento gráfica #include "Adafruit_SSD1306.h" // Biblioteca do controlador SSD1306 (128x64 e 128x32) #include "DHT.h" // Biblioteca sensor DHT11 // Variáveis de luminosidade, temperatura, etc. float luminosidade = 0; float temperatura = 0; float DHT11_temperatura = 0; float DHT11_umidade = 0; int PINO_DTH11 = 4 int PINO_LDR = A1; int PINO_LM35 = A2; Adafruit_SSD1306 display = Adafruit_SSD1306(); // Cria objeto Adafruit_SSD1306 DHT dht(PINO_DTH11, DHT11); // Cria objeto para sensor DHT11T void setup() { pinMode(PINO_DTH11, INPUT); // Define pino do Sensor DHT11 pinMode(PINO_LM35, INPUT); // Define pino do Sensor LM35 pinMode(PINO_LDR, INPUT); // Define pino do Sensor LDR dht.begin(); // Inicializa biblioteca WIRE Wire.begin(); // Inicializa biblioteca sensor DHT11 display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // Inicializa dysplay com endereço I2C 0x3C display.setTextColor(WHITE); // Define cor do texto display.setTextSize(1); // Define tamanho da fonte do texto display.clearDisplay(); // Limpa as informações do display } void loop() { display.setCursor(0,0); // Posição do cursor na tela display.clearDisplay(); // Limpa display display.print("Sistema"); // Escreve texto no display // --- lê sensor LM35 - temperatura --- temperatura = ( 5.0 * analogRead(A2) * 100.0) / 1024.0; // --- lê sensor DHT11 - temperatura e umidade --- DHT11_temperatura = dht.readTemperature(); DHT11_umidade = dht.readHumidity(); display.setCursor(10,8); // Posição do cursor na tela display.print("Temp.:"); // Escreve texto no display display.setCursor(55,8); // Posição do cursor na tela display.print(DHT11_temperatura); // Escreve texto no display display.setCursor(10,16); // Posição do cursor na tela display.print("Umid: "); // Escreve texto no display display.setCursor(55,16); // Posição do cursor na tela display.print(DHT11_umidade); // Escreve texto no display // --- lê sensor LDR - Luminosidade --- luminosidade = map(analogRead(PINO_LDR), 0, 1023, 255, 0); display.setCursor(10,24); // Posição do cursor na tela display.print("Lumis: "); // Escreve texto no display display.setCursor(55,24); // Posição do cursor na tela display.print(luminosidade); // Escreve texto no display display.display(); // Mostra texto no display delay(1500); // Aguarda intervalo de 1,5 segundos }
Projeto potenciômetro regula luminosidade do LED RGBEste projeto utiliza Shield Arduino Multifunções e uma placa Arduino Uno R3.
Através da manipulação do potenciômetro do Shield altera-se a luminosidade do LED.
/* Projeto: Multifunções - potenciômetro regula luminosidade do LED RGB Autor: André Silveira Data: 07/05/2019 */
int pinopot = A0; // Pino ligado ao potenciometro int valorpot = 0; // Armazena valor lido do potenciometro float luminosidade = 0; // Valor de luminosidade do led void setup(){ Serial.begin(9600); // Inicializa serial pinMode(pinoled, OUTPUT); // Define o pino do led como saída pinMode(pinopot, INPUT); // Define o pino do potenciometro como entrada } void loop() { // Le o valor - analogico - do pino do potenciometro valorpot = analogRead(pinopot); // Converte o valor lido do potenciometro (0 até 1023) luminosidade = map(valorpot, 0, 1023, 0, 255); Serial.print("Valor lido do potenciometro : "); // Mostra o valor lido do potenciometro no monitor serial Serial.print(valorpot); Serial.print(" / Luminosidade : "); // Mostra o valor da luminosidade no monitor serial Serial.println(luminosidade); // Envia sinal analogico para a saída do led, com luminosidade variavel analogWrite(9, luminosidade); analogWrite(10, luminosidade); analogWrite(11, luminosidade); }
[Voltar] |
[Avançar] |