Sei sulla pagina 1di 116












void setup ( )

// usamos para establecer configuraciones de comunicaciones


// usamos para estaber configuraciones de puertos

void loop ( )

{
//usamos para establecer el cuerpo del programa
//todo lo que se indique dentro de esta función se aplica repetitivamente
//loop es un ciclo

}

pinMode(10, OUTPUT);
// estamos configurando el pin digital 13 como salida

digitalWrite(8, LOW);
// estamos configurando que el pin 8 se escribe en un nivel bajo de 0V

valor = digitalRead(10);
//lee el valor del pin 10 y lo guarda en la variable Valor

valor = analogRead(9);
analogWrite(pin,valor);
//escribe un valor analógico en un pin

ledPin=7
valor=analogWrite(ledPin,val/4);

delay(500);
//establecemos un retardo de 500 milisegundos


Serial.begin(9600);

If ( Serial.available( ) > 0 )

// realiza la lectura del puerto serie

}
int miArray[ ] = {valor0, valor1, valor2...}

int miArray[5];

miArray[3] = 10;

byte mac[]={0xDE,0xAD,0xBE,0xEF,0xFE,0xED};
//arreglo tipo byte cada valor hexadecimal es de 8 bits

if (x > 0 && x < 5)


// cierto sólo si las dos expresiones son ciertas

if (x > 0 || y > 0)
// cierto si una cualquiera de las expresiones es cierta

if (!x > 0)
// cierto solo si la expresión es falsa
if (inputPin == HIGH) // si el valor de la entrada inputPin es alto
{
instruccionesA; //ejecuta si se cumple la condición
}
Else // de lo contrario
{
instruccionesB; //ejecuta si no se cumple la condición
}

if (inputPin < 500)


{
instruccionesA; // ejecuta las operaciones A
}
else if (inputPin >= 1000)
{
instruccionesB; // ejecuta las operaciones B
}
else
{
instruccionesC; // ejecuta las operaciones C
}

If (temperatura <15) //si la temperatura es menor de 15


{
digitalWrite (ledport, HIGH);
//grabar el pin asignado como ledport un valor alto
}
Else //si no
{
digitalWrite (ledport,LOW); //grabar en el pin asignado como ledport un
valor bajo
}

for (valor inicial,valor final,incremento o decremento)


{
Ejecuta Instrucciones;
}

for (int i=0; i<30; i++)


// declara i, prueba que es menor que 30, incrementa en 1
{
digitalWrite(10, HIGH); // envía un 1 al pin 10
delay(250); // espera ¼ seg.
digitalWrite(10, LOW); // envía un 0 al pin 10
delay(250); // espera ¼ de seg.
}

While (condición)
{
Ejecución de instrucciones
}

While (unaVariable < 500) // testea si es menor que 500


{
instrucciones; // ejecuta las instrucciones entre llaves
unaVariable++; // incrementa la variable en 1
}

do
{
Instrucciones;
}
while (condición);

do
{
x = leeSensor(); //el valor capturado por el sensor con la función
leeSensor( );
// se guarda en la variable X
delay(100); // espera un retardo de 100 milisegundos
}
while (x < 300); // mientras el valor de X sea inferior a 300









int ledPin = 13; // LED en el pin digital 13. Creamos la
// variable de tipo entero
void setup( ) // configura el pin de salida
{
pinMode(ledPin, OUTPUT); // configura el pin 13 como salida
}
void loop( ) // inicia el bucle del programa
{
digitalWrite(ledPin, HIGH); // activa el LED conectado en el pin 13
delay(1000); // espera 1 segundo
digitalWrite(ledPin, LOW); // desactiva el LED conectado en el pin 13

delay(1000); // espera 1 segundo


}







int pinLed[8]={5,6,7,8,9,10,11,12};
// definimos las salidas de los leds
int tiempo = 200; // creamos un variable tiempo de valor 200
void setup(){
int i=0;
for(i=0;i<9;i++)
// creamos la variable i que será asignada a cada uno de los leds
{
pinMode(pinLed[i],OUTPUT); // configuramos los pin leds como salida
}
}
void loop (){
int i=0;
for(i=0;i<9;i++)
{
digitalWrite(pinLed[i],HIGH); //enciende led
delay(tiempo);
digitalWrite(pinLed[i],LOW); //apaga led
delay(tiempo);
}
}






//Datos del Sensor


float tempC;
//Temperatura en Celsius
int LM35 = 0;
//Pin Analógico A0 del Arduino
void Setup ( ) {
//Inicia la comunicación por puerto serial
Serial.begin(9600);
//velocidad de la transmisión 9600 baudios por segundo
Serial.println(“##### INTERNET DE LAS COSAS IDAT ####”);
Serial.println(“Sensado de Temperatura con el LM35 por WEB”);
delay(1000);
//Espera 1 segundo para que se inicie la tarjeta Ethernet
}
Void loop ( )
{

tempC = analogRead(LM35);
//lee el valor desde el sensor
tempC = (5.0 * tempC * 100.0) / 1024.0;
// convierte valor a temperatura
serial.print(tempC);
//envía el dato al puerto serial
serial.print(“grados Celsius\n”);
delay(5000);
//espera 5 segundos para repetir el loop
<html>
<head>
<title> </title>
</head>
<boby>
“Contenido que se mostrará en la página web”
</body>
</html>

<html>
<head>
<title>internet de las cosas</title>
</head>

<! La siguiente línea estamos indicando>


<! que la página web que el navegador mostrará>
<! será de color azul>
<body bgcolor="0000ff">

<! La página mostrará el título y el texto estará centrado en formato de título h1


>
<! El siguiente texto estará centrado en h2>
<! Y el tercer texto estará centrado en h3>
<h1 style="text-align: center;"> CURSO INTERNET DE LAS COSAS CON ARDUINO Y nodeMCU
</h1>
<h2 style="text-align: center;"> TECNOLOGÍAS IOT </h2>
<h3 style="text-align: center;"> MILLONES DE OBJETOS ESTARÁN CONECTADOS EN EL
FUTURO </h3>

<! en las siguientes 4 líneas de código estamos haciendo hipervínculos>


<! en decir que cuando desde el navegador se haga clic a cualquiera de las
imagenes>
<! el navegador se enlazará con otra página web de idat>
<a href="https://www.idat.edu.pe"> <img src="1.jpg" ALT=" iot " width=300
height=300 border=50></a>
<a href="https://www.idat.edu.pe"> <img src="2.jpg" ALT=" iot " width=300
height=300 border=50></a>
<a href="http://www.idat.edu.pe"> <img src="3.jpg" ALT=" iot " width=300
height=300 border=50></a>
<a href="https://www.idat.edu.pe"> <img src="4.jpg" ALT=" iot " width=300
height=300 border=50></a>

<font color="#ff00ff"></font>
</body>
</html>
TITULO: Control de un LED desde un servidor WEB con el Ethernet Shield W5100.
// Librerías
#include <SPI.h>
#include <Ethernet.h>

// Declaración de las direcciones MAC, IP, GATEWAY y SUBNET.


Byte mac[]={0xDE,0xAD,0xBE,0xEF,0xFE,0xED};
// Dentro del cdm de Windows ponemos ipconfig y buscamos en adaptador de LAN
inalámbrica
IPAddress ip(192,168,10,14);
// 192.168.1.XX donde XX es una dirección que no esté en uso
IPAddress gateway(192, 168, 10, 1);
IPAddress subnet(255, 255, 255, 0);

// Creamos un servidor Web con el puerto 80 que es el puerto HTTP por defecto
EthernetServer server(80);

Int LED = 8; // Pin digital para el LED

String estado = "OFF"; // Estado del LED inicialmente "OFF"

void setup()
{
Serial.begin(9600); // Comienzo de la comunicación serie

// Inicializamos la comunicación Ethernet y el servidor


Ethernet.begin(mac, ip, gateway, subnet);
server.begin();
Serial.print("La IP del servidor local es: ");
Serial.println(Ethernet.localIP()); // Nos devuelve la IP del Ethernet Shield

pinMode(LED,OUTPUT); // Pin digital 8 como salida


}

void loop()
{
EthernetClient client = server.available(); // Creamos un cliente Web
// Cuando detecte un cliente a través de una petición HTTP
if (client)
{
Serial.println(); // Salto de línea
Serial.println("Nuevo cliente");
Serial.println();
boolean currentLineIsBlank = true;
// Una petición HTTP acaba con una línea en blanco
String cadena=""; // Creamos una cadena de caracteres vacía
while (client.connected())
{
if (client.available())
{
char c = client.read();// Leemos la petición HTTP carácter por carácter
Serial.write(c);// Visualizamos la petición HTTP por el Monitor Serial
cadena.concat(c);// Unimos el String 'cadena' con la petición HTTP (c).
// De esta manera convertimos la petición HTTP a un String

// Ya que hemos convertido la petición HTTP a una cadena de caracteres, ahora


//podremos buscar partes del texto.
int posicion=cadena.indexOf("LED="); // Guardamos la posición de la
instancia //"LED=" a la variable 'posicion'

if(cadena.substring(posicion)=="LED=ON")
// Si en la posición 'posicion' hay //"LED=ON"
{
digitalWrite(LED,HIGH);
estado="ON";
}
if(cadena.substring(posicion)=="LED=OFF")
// Si en la posición 'posicion' hay //"LED=OFF"
{
digitalWrite(LED,LOW);
estado="OFF";
}

// Cuando reciba una línea en blanco, quiere decir que la petición HTTP ha acabado
//y el servidor Web está listo
// para enviar una respuesta
if (c == '\n' && currentLineIsBlank)
{
// Enviamos al cliente una respuesta HTTP
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();

// Página web en formato HTML


client.println("<html>");
client.println("<head>");
client.println("</head>");
client.println("<body style='background-color: #40E0D0;'>");
client.println("<br/><br/>");
client.println("<h1 align='center'>LED controlado por Servidor Web con
Arduino</h1>");
// Creamos los botones.
// Para enviar parámetros a través de HTML se utiliza el método URL encode.
// Los parámetros se envían a través del símbolo '?'
client.println("<div style='text-align:center;'>");
client.println("<button onClick=location.href='./?LED=ON\' style='margin:auto;
background-color: #84B1FF; color: snow; padding: 10px; border: 1px solid #3F7CFF;
width:85px;'>");
client.println("ON");
client.println("</button>");
client.println("<button onClick=location.href='./?LED=OFF\' style='margin:auto;
background-color: #84B1FF; color: snow; padding: 10px; border: 1px solid #3F7CFF;
width:85px;'>");
client.println("OFF");
client.println("</button>");
client.println("<br/><br/>");
client.println("<b>ESTADO DEL LED = ");
client.print(estado);
client.println("</b><br/>");
client.println("</b></body>");
client.println("</html>");
break;
}
if (c == '\n')
{
currentLineIsBlank = true;
}
else if (c != '\r')
{
currentLineIsBlank = false;
}
}
}
// Dar tiempo al navegador para recibir los datos
delay(1);
client.stop();// Cierra la conexión
}
}


























msg.color = (msg.payload === "1")?"green":"red"; return msg;

<font color={{msg.color}} ><i class="fa fa-circle" style="font-size:24px;"></i>


</font>








<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login para varios usuarios</title>
</head>

<body>
<h1>Ingresa Tus Datos
</h1>
<form name="login">
<table width="200" border="0">
<tr>
<th scope="row"><h2>Usuario</h2></th>
<td><span class="cnt">
<input name="usuario" type="text" class="Input" value="" size="20" />
</span></td>
</tr>
<tr>
<th height="33" scope="row"><h2>Clave</h2></th>
<td><span class="cnt">
<input name="password" type="password" class="Input" value="" size="20" />
</span></td>
<td><span class="cnt">
<input value="Entrar" target="_parent" onclick="Login()" type="button"
class="boton"/>
</span></td>
</tr>
<tr>
<th scope="row"><input type="reset" name="Borrar" id="Borrar" value="Reset"
class="boton" /></th>
</tr>
</table>
</form>

<script language="JavaScript">
function Login(){
var done=0;
var usuario=document.login.usuario.value;
var password=document.login.password.value;
if (usuario=="IOT" && password=="REDESIOT") {
window.location="paginaweb1.html";
}
if (usuario=="USUARIO2" && password=="CONTRASEÑA2") {
window.location="paginaweb1.html";
}
if (usuario=="" && password=="") {
window.location="errorpopup.html";
}
}

</script>
</center>
<script language="Javascript">
<!-- Begin
document.oncontextmenu = function(){return false}
//End -->
</script>
</body>
</html>








#include <Ethernet.h>
#include <SPI.h>

//Configuracion del Ethernet Shield


byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFF, 0xEE}; // Direccion MAC
byte ip[] = { 192,168,1,100 }; // Direccion IP del Arduino
byte server[] = { 192,168,1,6 }; // Direccion IP del servidor
EthernetClient client;
float temperatura;
int analog_pin = 0;
void setup(void) {
Ethernet.begin(mac, ip); // Inicializamos el Ethernet Shield
delay(1000); // Esperamos 1 segundo de cortesía }
void loop(void) {
temperatura = analogRead(analog_pin);
temperatura = 5.0*temperatura*100.0/1024.0;
//Display in Serial Monitor
Serial.print(temperatura); //Return temperature to Monitor
Serial.println(" oC");
// Proceso de envio de muestras al servidor
Serial.println("Connecting...");
if (client.connect(server, 80)>0) { // Conexion con el servidor
client.print("GET /tutoiot/iot.php?valor="); // Enviamos los datos por GET
client.print(temperatura);
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); // Espero un minuto antes de tomar otra muestra
}



<?php
// config.php
// Credenciales
$dbhost = "localhost";
dbuser = "user";
$dbpass = "pass";
$dbname = "sensores";
// Conexión con la base de datos
$con = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);
?>

/////////////////////////////////////////////////////////////////////////////

<?php
// iot.php
// Importamos la configuración
require("config.php");
// Leemos los valores que nos llegan por GET
$valor = mysqli_real_escape_string($con, $_GET['valor']);
// Esta es la instrucción para insertar los valores
$query = "INSERT INTO valores(valor) VALUES('".$valor."')";
// Ejecutamos la instrucción
mysqli_query($con, $query);
mysqli_close($con);
?>






 Link-Local:





















import RPi.GPIO as GPIO
# Modo BOARD // en este modo usamos los números de los pines

GPIO.setmode(GPIO.BOARD)

# Modo BCM // en este modo usamos los puertos GPIO

GPIO.setmode(GPIO.BCM)

GPIO.setup(Puerto/pin , GPIO.IN)


GPIO.setup(23,GPIO.IN)

GPIO.input(Puerto/pin)

GPIO.input(23)

GPIO.setup(Puerto / Pin , GPIO.OUT)


import RPi.GPIO as GPIO # Utilizaremos GPIO
GPIO.setmode(GPIO.BOARD) # nomenclatura pines
GPIO.setup(13, GPIO.OUT) # establecemos el pin 13 como salida

GPIO.output(13, 1) #fijamos la salida a 1/true/high


GPIO.output(13, 0) #fijamos la salida a 0/false/low

GPIO.cleanup( )

import RPi.GPIO as GPIO


# Aquí definimos la nomenclatura de los puertos, inicializamos variables, etc.
try:
Aquí introducimos nuestro código principal (lo que queramos que haga RP)
except KeyboardInterrupt:
# Esta interrupción se corresponde al evento cuando tecleamos Ctrl+C
except:
# Este apartado recogerá el resto de excepciones
finally:
GPIO.cleanup()
#Limpiamos los puertos que hayamos utilizado








sudo apt-get install git-core

sudo apt-get install build-essential python-dev


sudo python setup.py install

mkdir proyectos
cd proyectos
git clone https://github.com/internetdelascosas/RaspberryPi-DHT11.git
cd RaspberryPi-DHT11

#!/usr/bin/python
# Internet de las Cosas - http://internetdelascosas.cl
#
# Descripcion : Programa que permite obtener la lectura
de un sensor DHT11
# Lenguaje : Python
# Autor : Jose Zorrilla <jzorrilla@iot.cl>
# Dependencias : Libreria de Adafruit
https://github.com/adafruit/Adafruit_Python_DHT
# Web : http://internetdelascosas.cl/

# Importa las librerias necesarias


import time
import datetime
import Adafruit_DHT

# Log file
log_path = "/var/log/iot/"

# Configuracion del tipo de sensor DHT


sensor = Adafruit_DHT.DHT11

# Configuracion del puerto GPIO al cual esta conectado


(GPIO 23)
pin = 23

# Escribe un archivo log en log_path con el nombre en el


formato yyyy-mm-dd_dht.log
def write_log(text):
log = open(log_path +
datetime.datetime.now().strftime("%Y-%m-%d") +
"_dht.log","a")
line = datetime.datetime.now().strftime("%Y-%m-%d
%H:%M:%S") + " " + text + "\n"
log.write(line)
log.close()

# Intenta ejecutar las siguientes instrucciones, si falla


va a la instruccion except
try:
# Ciclo principal infinito
while True:
# Obtiene la humedad y la temperatura desde
el sensor
humedad, temperatura =
Adafruit_DHT.read_retry(sensor, pin)

# Si obtiene una lectura del sensor la


registra en el archivo log
if humedad is not None and temperatura is not
None:
write_log("DHT Sensor - Temperatura:
%s" % str(temperatura))
write_log("DHT Sensor - Humedad: %s" %
str(humedad))
else:
write_log('Error al obtener la lectura
del sensor')

# Duerme 10 segundos
time.sleep(10)

# Se ejecuta en caso de que falle alguna instruccion


dentro del try
except Exception,e:
# Registra el error en el archivo log y termina la
ejecucion
write_log(str(e))

import RPi.GPIO as GPIO


from time import sleep # Librería para poder poner tiempos de
espera
GPIO.setmode(GPIO.BOARD) # nomenclatura de número de pines
GPIO.setup(7,GPIO.IN) # pin número 7 será la entrada del sensor
try:
while True:
if GPIO.input(7): # si el sensor devuelve 1
print(GPIO.input(7)) # imprime el valor que devuelve el sensor
print("Hay movimiento")
else:
print(GPIO.input(7)) # imprime el valor que devuelve el sensor
print("No hay movimiento")
sleep(1) # tiempo de espera de 1 segundo
except KeyboardInterrupt:
print ("Paramos el programa")
except:
print ("Ha habido un error y el programa se ha cerrado")
finally:
GPIO.cleanup()
    

Potrebbero piacerti anche