Show Menu
Cheatography

programación de arduino para manejo de sensores

Sensores

Un sensor es todo aquello que tiene una propiedad sensible a una magnitud del medio, y al variar la magnitud también varía con cierta intensidad la propiedad, manifiesta la presencia de dicha magnitud, y su medida también.

Sensores de Temper­atura (LMR35)

float leerGradosC(){
int d;
float c;
//se leen los datos analógicos del sensor
d=analogRead(A0);
//convertimos el dato de entrada a grados celsious
c= (400.0*d/1024)
return c;
}

Sensor Ultras­ónico HC-SR04

const int Trigger = 2;   //Pin digital 2 para el Trigger del sensor
const int Echo = 3;   //Pin digital 3 para el echo del sensor

void setup() {
  Serial.begin(9600);//iniciaiLIamos la comunicación
  pinMode(Trigger, OUTPUT); //pin como salida
  pinMode(Echo, INPUT);  //pin como entrada
  digitalWrite(Trigger, LOW);//Inicializamos el pin con 0
}

void loop()
{

  long t; //timepo que demora en llegar el eco
  long d; //distancia en centimetros

  digitalWrite(Trigger, HIGH);
  delayMicroseconds(10);          //Enviamos un pulso de 10us
  digitalWrite(Trigger, LOW);
  
  t = pulseIn(Echo, HIGH); //obtenemos el ancho del pulso
  d = t/59;             //escalamos el tiempo a una distancia en cm
  
  Serial.print("Distancia: ");
  Serial.print(d);      //Enviamos serialmente el valor de la distancia
  Serial.print("cm");
  Serial.println();
  delay(100);          //Hacemos una pausa de 100ms
}

Sensor IR LM393 (detector de obstác­ulos)

const int sensorPin = 9;
 
void setup() {
  Serial.begin(9600);   //iniciar puerto serie
  pinMode(sensorPin , INPUT);  //definir pin como entrada
}
 
void loop(){
  int value = 0;
  value = digitalRead(sensorPin );  //lectura digital de pin
 
  if (value == HIGH) {
      Serial.println("Detectado obstaculo");
  }
  delay(1000);
}
 

Sensor de Humedad FC-28

onst int sensorPin = 10;
 
void setup()
{
   Serial.begin(9600);
   pinMode(sensorPin, INPUT);
}
 
void loop()
{
   int humedad = digitalRead(sensorPin);
 
   //mandar mensaje a puerto serie en función del valor leido
   if (humedad == HIGH)
   {
      Serial.println("Encendido");   
      //aquí se ejecutarían las acciones
   }
   delay(1000);
}

Fotore­sis­tencia LDR

int valorl=0;
int pinL=A0;

void setup()
{
Seral.begin(9600);
}

void loop() 
{
valorL=analogRead(pinL);
Serial.println(valorL);
}

Sensor de Movimiento PIR

const int LEDPin= 13;
const int PIRPin= 2;
 
void setup()
{
  pinMode(LEDPin, OUTPUT);
  pinMode(PIRPin, INPUT);
}
 
void loop()
{
  int value= digitalRead(PIRPin);
 
  if (value == HIGH)
  {
    digitalWrite(LEDPin, HIGH);
    delay(50);
    digitalWrite(LEDPin, LOW);
    delay(50);
  }
  else
  {
    digitalWrite(LEDPin, LOW);
  }
}
 

Potenc­iómetro

//Variable donde almacenaremos el valor del potenciometro
long valor;
 
void setup() {
  //Inicializamos la comunicación serial
  Serial.begin(9600);
  
  //Escribimos por el monitor serie mensaje de inicio
  Serial.println("Inicio de sketch - valores del potenciometro");
 
}
 
void loop() {
  // leemos del pin A0 valor
  valor = analogRead(A0);
 
  //Imprimimos por el monitor serie
  Serial.print("El valor es = ");
  Serial.println(valor);
  delay(1000);
 
}

Bluetooth

El bluetooth es una especi­fic­ación industrial para Redes Inalám­bricas de Área Personal (WPAN) que posibilita la transm­ición de voz y datos entre diferentes dispos­itivos mediante un enlace por radiof­rec­uencia en la banda ISM de los 2,4 GHz.

Conexión Bluetooth

const int led= 13;
int opc;

void setup(){
Serial.begin(9600);
pinMode(led,OUTPUT);
}

void loop(){
if(Serial.available()>0){
//leer la opcion
char opc=Serial.read();

if(opc >= '1' && opc<= '9')
opc= '0';
for(int i=0;i<opc;i++)
{
digitalWrite(led,HIGH);
delay(100);
digitalWrite(led,LOW);
delay(200);
}
}
}
}
}

Internet de las Cosas

 

Internet de las Cosas

El internet de las cosas es un concepto que se refiere a una interc­onexión digital de objetos cotidianos con internet.
 

Pasos para IoT en Arduino

1. Conseguir una Ethernet shield compatible con arduino uno
2. Crear una base de datos
3. Programar un servidor
4. Programar la tarjeta Arduino

Ejemplo IoT con sensor de temper­atura

#include <Ethernet.h>
#include <SPI.h>
 
byte mac[ ] ={0XDE, 0XAD, 0XBE, 0XEF, 0XFF, 0XEE}; //direcion mac
byte ip[ ] ={ 192,168,1,100 }; //direccion ip del arduino
byte server[ ]= { 192,168,1,6 };//direccion ip del servidor
EthernetClient Client;
float temp;
int analog_pin =0;

void setup(void){
  Ethernet.begin(mac, ip); // inicializar  el ethernet shield
  delay(1000);//esperamos 1 seg
}

void loop(void) {
  temp= analogRead(analog_pin);
  temp= 5.0temp100.0/1024.0;
  Serial.print(temp);
  Serial.println(" 0C");
  Serial.println("Connecting...");
  if(client.connect(server, 80)>0) {
    client.print("GET /tutoiot/iot.php?valor=");//enviamos los datos por GET
    client.print(temp);
    client.println( "HTTP/1.0");
    client.println("USER-Agent: Arduino 1.0");
    client.println();
    Serial.println("conectado");
 }else{ 
    Serial.println("Fallo en la conexion");
 }
 if(!client.connected()) {
    Serial.println("Disconnected!");
 }
 client.stop();
 client.flush();
 delay(60000);//esperar un min antes de tomar otra muestra
}

Datos

Nombre: Haro Rodríguez Perla Beatriz
Matrícula: 1253616
Fecha: 25 de Mayo del 2020
 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          Related Cheat Sheets

          ArduinoNetworks - Arduino Cheat Sheet
          Programación en Arduino Cheat Sheet