Paso 6: Gran unificación código
PARA MULTIPLEXACIÓN
James en él otra vez, esta vez alrededor, tratando de unificar todos
los sensores que trabajan por un objetivo común. Impresionante cosas aquí!
const int trig = 2; PIN donde se conecta pin trig ultrasónico
const int eco = 3; PIN donde se conecta el pin eco ultrasónico
const int a = 4; LSB del código de selección del mux
const int b = 5; 2 LSB de la línea de selección del mux
const int c = 6; 2 MSB de la línea select para el mux
const int d = 7; MSB de la línea select para el mux
const int generador = 9; línea de datos para el generador
const int zumbador = 10; salida de sonido utilizar el zumbador
const int greenLed = 11; led verde conectado a este pin
const int rojo = 12; Aquí conectado led rojo
const int ventilador = 13; ventilador está conectado a este pin
const int muxdata = A0; salida de la línea de datos del multiplexor
const int rftransmitter = A1; entrada del transmisor de radio frecuencia
#include / / llamar a la biblioteca de motor servo
Servo servo; Dar un nombre a la clavija de conexión para servo
int lighthreshold = 500; Umbral para el sensor LDR
int magneticthreshold = 500; Umbral para el sensor de efecto Hall (A1325)
const float tempethreshold = 25.0; Temperatura de referencia para el sensor de temperatura LM35
switchState int = 0; Comprobar el estado del interruptor como un sensor de presión
int soilmoisturethreshold = 500; Comprobar el contenido de humedad del suelo analógico
int smcState = 0; Comprobar el estado del contenido de humedad digital
irdistance int = 30; Ajuste la gama de los sensores de inrared
int maxRange = 200; Alcance máximo en centímetros
int minRange = 0; Rango mínimo en centímetros
de larga duración; Sabio de pulso de la señal enviada
larga distancia; distancia recorrida
int muxVal, rfVal; Leyendo el estado de las entradas
int hora = 500;
void setup()
{
servo.Attach(8); Colocar mi motor servo pin a pin 88
Serial.Begin(9600); velocidad en baudios para la comunicación entre el portátil y el arduino
pinMode (trig, salida); declarar un pin de salida
pinMode (eco, entrada); declarar un pin de entrada
pinMode (una, salida); declarar un pin de salida
pinMode (b, salida); declarar un pin de salida
pinMode (c, salida); declarar un pin de salida
pinMode (salida d,); declarar un pin de salida
pinMode (generador, de salida); declarar un pin de salida
pinMode (zumbador, salida); declarar un pin de salida
pinMode (greenLed, salida); declarar un pin de salida
pinMode (rojo, salida); declarar un pin de salida
pinMode (ventilador, salida); declarar un pin de salida
pinMode (muxdata, entrada); declarar un pin de entrada
pinMode (rftransmitter, entrada); declarar un pin de entrada
Serial.println ("Zvaunondiita así!"); Sólo un mensaje de bienvenida para mi frambuesa Pi
digitalWrite (un, bajo);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
}
void loop()
{
digitalWrite (un, bajo);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
Delay(Time); no estoy seguro si este retraso es estrictamente necesario
int readInZero = analogRead(muxdata); leer que es utilizando la clavija de entrada de arduino el Dg526
flotador solRad = (readInZero*1000.0/1023.0);
Serial.Print ("radiación Solar es");
Serial.Print(solRad); utilizar el resultado
Serial.println ("watts por metro cuadrado");
digitalWrite (a, alto);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
Delay(Time); no estoy seguro si este retraso es estrictamente necesario
int readInOne = analogRead(muxdata); leer el pin de entrada analógica arduino
flotador de presión = (readInOne*1012.2/1023.0);
Serial.Print ("lecturas de la presión atmosférica");
Serial.Print(Pressure); utilizar el resultado
Serial.println ("kPa");
digitalWrite (un, bajo);
digitalWrite (b, alto);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
Delay(Time);
int readInTwo = analogRead(muxdata);
temp de flotador = (readInTwo*500.0/1203.0);
Serial.Print ("temperatura ambiente lecturas");
Serial.Print(Temp); utilizar el resultado
Serial.println ("grados Celsius");
digitalWrite (a, alto);
digitalWrite (b, alto);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
Delay(Time);
int readInThree = analogRead(muxdata);
Serial.Print ("la velocidad del viento es");
Float velocidad del viento = (readInThree*2.0/1023.0);
Serial.Print(windspeed);
Serial.println ("metros por segundo"); utilizar el resultado
digitalWrite (un, bajo);
digitalWrite (b, LOW);
digitalWrite (c, HIGH);
digitalWrite (d, LOW);
Delay(Time);
int readInFour = analogRead(muxdata);
flotador de smc = (readInFour*100.0/1023.0);
Serial.Print ("contenido de humedad de suelo es");
Serial.Print(SMC);
Serial.println ("%"); utilizar el resultado
}