Preparación de cámara - prototipo (5 / 5 paso)

Paso 5: La magia (código)

Se relaciona el Arduino procesamiento a través de la serie, con la intención de tener el bosquejo de procesamiento se muestran los datos en el tiempo para que podamos ver cómo está progresando la cerveza.

Esto puede interactuar con un dibujo de procesamiento vía comunicación serial.

#include < OneWire.h >

#include < DallasTemperature.h >

#include < Wire.h >

#include < Adafruit_MPL3115A2.h >

/ / Energía conectando Vin a 3-5V, GND a GND

Utiliza I2C - conectar el pin SCL, SDA a pin SDA SCL

Ver el tutorial cable de pines para cada Arduino

http://Arduino.CC/en/Reference/WIRE

Baro de Adafruit_MPL3115A2 = Adafruit_MPL3115A2();

flotador de pascales;

flotador altm;

Float chamberTemp;

presión del flotador = 0;

Float idealPressure = 14.45; Este caso PSI. depende de que medida de presión, es decir, pascales; PSI; maxPressure de flotador etc. = 14.81; hace clic en int psi = 0;

Cable de datos esté conectado al puerto 2 de Arduino

#define ONE_WIRE_BUS 2

#define TEMPERATURE_PRECISION 9

Configurar una instancia de oneWire para comunicarse con cualquier dispositivos (no sólo temperatura de Maxim/Dallas ICs) OneWire OneWire oneWire(ONE_WIRE_BUS); Pasar nuestra referencia oneWire a temperatura de Dallas.

DallasTemperature sensors (& oneWire);

int numberOfDevices; Número de dispositivos de temperatura encontrado

DeviceAddress tempDeviceAddress; Usaremos esta variable para almacenar una dirección de dispositivo encontrado

Float yeastTemp;

Float idealTemp = 24;

Float tempTol = 1.1;

calefacción boolean = false;

lastHeatState Boolean;

*** PERNOS y cables ***

SCL es en hilo blanco

SDA es el cable amarillo débil

Sensor de temperatura Dallas está en el Pin 2. Cable amarillo

const int solenoide = 4; Solenoide en el Pin 4. Cable marrón

const int buttonPin = 6; Pin del pulsador. Cable morado

const int bluePin = 9; Cable azul

const int greenPin = 10; Cable verde

const int redPin = 11; Cable rojo

Otros:

+ 5v en el cable de Red largo

GND es el alambre negro largo

Vin (entrada 12vDC) está en tiempo débil hilo amarillo

// *********************************

int redValue;

greenValue int;

int blueValue = 0;

endTime int;

void setup() {Serial.begin(9600);

BARO.Begin(); Iniciar el sensor de presión barométrica, que también tiene a bordo el sensor de temperatura

Wire.Begin(); Iniciar la librería OneWire, necesario para la comunicación con el sensor de presión barométrica.

dallasSetup(); Esto inició el termómetro Digital resistente al agua de Dallas

pinMode (solenoide, salida);

pinMode (buttonPin, entrada);

pinMode (redPin, salida);

pinMode (greenPin, salida);

pinMode (bluePin, salida);

Serial.Print("Initiated*");

}

void loop() {}

int startTime = millis();

baroRun();

Altímetro de presión barométrica

dallasRun();

Serial.Print("Send"); Inicio de la señal, se excluirán 'Enviar', actuará como amortiguador

Serial.Print(Pascals);

Serial.Print("a");

Serial.Print(chamberTemp);

Serial.Print("b");

Serial.Print(yeastTemp);

Serial.Print("c");

String rgb_s = String(redValue) + "," + String(greenValue) + "," + String(blueValue);

Serial.Print(rgb_s);

Serial.Print("_"); Final de la señal '_' redValue = 33; greenValue = 16; blueValue = 100; setRGB (redValue, greenValue, blueValue);

}

void control() {}

Si (presión > = maxPressure) {/ / idealPressure

digitalWrite (solenoide, HIGH); libera la válvula de solenoide que permite gas(CO2) a escapar a través de la esclusa de aire setRGB (redValue, greenValue, blueValue);

}

Si (presión < = idealPressure) {}

código alternativo al uso de releaseCount. Puede sustituir minGRADO como no puede nunca llegar y pruebas requeridas. digitalWrite (solenoide, LOW);

Se cierra la válvula solenoide

setRGB (0, 0, 0); } }

void testControl() {}

Si (clics < 10) {}

digitalWrite (solenoide, HIGH);

Serial.println ("solenoide ha abierto");

setRGB (redValue, greenValue, blueValue);

}

else if (clics > 10) {}

digitalWrite (solenoide, LOW);

Serial.println ("solenoide ha cerrado");

setRGB (0, 0, 0);

}

clicks ++; Si (hace clic en > = 20) hace clic = 0;

}

void baroRun() {}

Si (! {baro.begin())}

Serial.Print ("Couldnt find sensor.");

digitalWrite (solenoide, HIGH);

Serial.println ("solenoide ha abierto");

retorno;

}

pascales = baro.getPressure(); Devuelve pascales

presión = Pascal / 6894.75729; pressurePSI = pascales / 6894.75729; Pascal se convierte en PSI

pascales = round(pascals); Número de rondas por lo que no decimal cuando se envía al proceso a través de la serie chamberTemp = baro.getTemperature(); Devuelve grados Celsius

}

void setRGB (int r, int g, int b) {}

analogWrite (redPin, r);

analogWrite (greenPin, g);

analogWrite (bluePin, b);

}

void dallasRun() {}

Llame al sensors.requestTemperatures() para emitir una temperatura global

solicitar a todos los dispositivos en el bus

Serial.Print ("solicitando temperaturas...");

sensors.requestTemperatures(); Enviar el comando para obtener las temperaturas

Serial.println("Done");

Responde casi de inmediato. Vamos a imprimir los datos

printTemperature(tempDeviceAddress);

Utilizar una función simple para imprimir los datos

yeastTemp = sensors.getTempC(tempDeviceAddress);

Serial.Print(yeastTemp);

}

void dallasSetup() {}

Puesta en marcha de la biblioteca

Sensors.Begin();

Un recuento de los dispositivos en el alambre del gancho agarrador

numberOfDevices = sensors.getDeviceCount();

ubicar los dispositivos en el bus

Serial.Print ("localización de dispositivos...");

Serial.Print ("encontrado");

Serial.Print (numberOfDevices, DEC);

Serial.Print ("dispositivos.");

Informe requisitos de energía del parásito

Serial.Print ("es de energía parásito:");

Si (sensors.isParasitePowerMode()) / / Serial.println("ON");

Else / / Serial.print ("OFF");

Bucle a través de cada dispositivo, imprimir dirección

para (int i = 0; i < numberOfDevices; i ++) {}

El cable de dirección de búsqueda

Si (sensors.getAddress(tempDeviceAddress, i)) {}

Serial.Print ("device Found");

Serial.Print (i, DEC);

Serial.Print ("dirección:");

printAddress(tempDeviceAddress);

Serial.println();

Serial.Print ("configuración de resolución"); Serial.Print (TEMPERATURE_PRECISION, DEC);

establece la resolución en bits TEMPERATURE_PRECISION (Dallas/Maxim cada dispositivo es capaz de varias resoluciones diferentes)

sensors.setResolution (tempDeviceAddress, TEMPERATURE_PRECISION);

Serial.Print ("resolución realmente establecida en:");

Serial.Print(Sensors.getResolution(tempDeviceAddress), DEC); Serial.println(); } else {/ / Serial.print ("encontrado fantasma dispositivo en"); Serial.Print (i, DEC); Serial.Print ("pero no se pudo detectar la dirección. Comprobar cableado y energía"); } }

}

función para imprimir un printAddress vacío de dirección de dispositivo (DeviceAddress deviceAddress) {para (uint8_t i = 0; i < 8; i ++) {si (deviceAddress [i] < 16) Serial.print("0"); Serial.Print (deviceAddress [i], hexagonal); } }

Artículos Relacionados

Barato DSLR contra los elementos de protección

Barato DSLR contra los elementos de protección

muy bien, así me voy a acampar en dos días, y he estado posponiendo mi preparación de cámara hasta el último minuto.Tendré que acampar en la playa, y no quiero obtener mi preciosa cámara llena de horrible atrocidad arena.Originalmente planeaba simple
URL: Una manera más inteligente de Parque (Wifi Webcam con Edison)

URL: Una manera más inteligente de Parque (Wifi Webcam con Edison)

Esta semana tuve el placer de participar en la IoT Intel Roadshow de Seattle. Ayudó a construir una cámara prototipo para un coche. Colocamos 3 y ahora soy adicto a hackathons. Estas instrucciones le permitirán reproducir el proceso. Apoyó mucho en d
"Robot de plataforma de lanzamiento de proyecto" parte 1 - la cabeza

"Robot de plataforma de lanzamiento de proyecto" parte 1 - la cabeza

Introducción;Estoy en proceso de construir un robot que puedo adjuntar a algunos de mis muchos proyectos a y tiene la función de la robusteza sí mismo. En lugar de una cama plana en pistas, pensé que podría utilizar alguna personalidad. Este bot será
Abejón del cohete

Abejón del cohete

Te llevaré a través de los pasos para hacer posiblemente el drone peor en la historia.Paso 1: Modelo cohete puesta en marchaCon todos los kits ofrecidos por Estes, hay demasiadas opciones para la lista. Recomiendo un cohete tamaño mediano, 12-18". Si
Prototipo de estación móvil para captura de datos ambientales ("un emulador de la Mars Rover")

Prototipo de estación móvil para captura de datos ambientales ("un emulador de la Mars Rover")

General Descripción:Este proyecto tiene el derecho para el desarrollo de un prototipo completamente funcional móvil "la estación de Rover", responsable de la captura de datos ambientales como temperatura, humedad y luminosidad. La idea es en la
Hacer una cámara de teléfono celular polarización el filtro de las gafas de sol

Hacer una cámara de teléfono celular polarización el filtro de las gafas de sol

Por lo que he estado jugando alrededor con la idea de usar lentes de gafas de sol para un filtro de la cámara de teléfono celular desde que juega con la tapa del tablero DIY y tomó una foto a través de unas gafas de sol para ilustrar cómo las gafas d
Cómo fabricar, configurar e instalar una cámara de sistema de copia de seguridad en una silla de ruedas

Cómo fabricar, configurar e instalar una cámara de sistema de copia de seguridad en una silla de ruedas

sistemas de cámara de vista posterior usados en automóviles pueden fabricados, configurados e instalados en sillas de ruedas de manera que los usuarios pueden aumentar su campo de visión. Nuestro objetivo es diseñar a una guía paso a paso que permite
Que él sea, invernadero hidropónico, Lois Lee y Rachael Marie

Que él sea, invernadero hidropónico, Lois Lee y Rachael Marie

esto es un invernadero hecho por mi solo y está en la memoria de mi madre y mi hija. Es principalmente de 110 año: windows viejos obtenidos de la orilla oriental del Virginia.The puertas se obtuvieron por el camino en una casa que estaba siendo remod
Radio control Cable Dolly para cámaras de formato pequeño

Radio control Cable Dolly para cámaras de formato pequeño

usando algunas técnicas de construcción relativamente simple y las plataforma RC piezas, usted puede hacer un carro de cable pequeño, rápido y confiable para llevar una cámara de pequeño formato y conseguir material como este:y esto: y esto:A velocid
El estanque de Koi (prototipo 1)

El estanque de Koi (prototipo 1)

Para la mayor parte de mi vida he sido cautivar con la luz y la iluminación, pero recientemente he empezado a explorar más vídeo técnicas proyección y gran número de accesorios LED distribuidos. En muchos de mis esfuerzos de mapeo de proyección yo he
DIY escáner de libro de alta velocidad de cámaras baratas y basura

DIY escáner de libro de alta velocidad de cámaras baratas y basura

encantan los libros. Hay algunos verdaderamente fantástico conocimiento e información escondida por ahí en duro encontrar, rara y libros no comercialmente viables. Me parece que quiero que mis libros conmigo en todas partes. Pero es donde empiezan lo
Construir su propio controlador de cámara inalámbrica de múltiples funciones (¡ barato!).

Construir su propio controlador de cámara inalámbrica de múltiples funciones (¡ barato!).

Introduction¿Siempre creyó su propio controlador de cámara de la construcción?Nota importante: Condensadores para la MAX619 son 470n o 0.47u.  El esquema es correcto, pero la lista de componentes era incorrecto - actualizado.Es una entrada en el conc
Técnica rápida para la fabricación de cámaras térmica disponible ser utilizado en la prueba de baja temperatura USB powered Thermofoils y elementos de calefacción

Técnica rápida para la fabricación de cámaras térmica disponible ser utilizado en la prueba de baja temperatura USB powered Thermofoils y elementos de calefacción

Siderits R., Malik A., Roche MEn este proyecto se describen los pasos que utilizamos para hacer una cámara térmica experimental.Se utilizó esta cámara térmica para probar resistencias que se conectan a un puerto USB.Este proyecto fue realizado en la
Detección Digital Cámara y alarma de movimiento (también conocido como el Critter Cam)

Detección Digital Cámara y alarma de movimiento (también conocido como el Critter Cam)

¡ Bienvenido a mi instructable sobre cómo hacer un movimiento controlado por Arduino sensor cámara y alarma!La motivación detrás de este proyecto, que trabajaba en mi clase de electrónica en Pomona College, fue la necesidad de mantener lejos alimañas