Emotidora: Sombreros con emociones (6 / 6 paso)

Paso 6: Código de Arduino (como lo hicimos)

contador
int contador = 0; no usar este derecho ahora-intentan poner en práctica para cuando el sensor de efecto hall no estaba funcionando correctamente; es decir, su lectura fue fluctuando violentamente.

Fotoresistor
Apagado de int = A1; asignar la clavija de entrada de sensor de luz

int groundPin = A4;
int groundValue = 0;

Sensor de efecto Hall
int hallPin = A5; asignar la clavija de entrada de sensor de efecto hall
int hallValue = 0;

crear instancias de potenciómetro
int sensorPin = A0; asignar la clavija de entrada para el potenciómetro
int sensorValue = 0; variable para almacenar el valor que viene desde el sensor
int outputValue = 0;
int newSensorValue = 0;
int newOutputValue = 0;
int newerOutputValue = 0;

asignar pins LED cara componentes
sonrisa de int = 2;
int straightface = 3;
int triste = 4;
ojos de int = 5;
las cejas de int = 6;

cambiar la variable caso
cara int = 1;

emociones
const int ECSTATIC = 1;
const int feliz = 2;
const int recto = 3;
const int SAD = 4; const int enojado = 5;
const int sorpresa = 6;

PROGRAMA DE INSTALACIÓN
void setup() {}
Serial.Begin(9600);
Sensor de efecto Hall
pinMode (hallPin, entrada);
Potenciómetro de
pinMode(smile,OUTPUT);
pinMode(straightface,OUTPUT);
pinMode(sad,OUTPUT);
pinMode(eyes,OUTPUT);
pinMode(brows,OUTPUT);
}
FUNCIÓN DE CONMUTACIÓN DE CARA
void faceswitch() {}
{Switch(Face)}
extático
caso 1: digitalWrite (ojos, alto);
digitalWrite (sonrisa, alto);
digitalWrite (straightface, HIGH);
digitalWrite (triste, baja);
digitalWrite (cejas, LOW);
rotura;
feliz
caso 2: digitalWrite (ojos, alto);
digitalWrite (sonrisa, alto);
digitalWrite (straightface, bajo);
digitalWrite (triste, baja);
digitalWrite (cejas, LOW);
rotura;
recto
caso 3: digitalWrite (ojos, alto);
digitalWrite (sonrisa, baja);
digitalWrite (triste, baja);
digitalWrite (straightface, HIGH);
digitalWrite (cejas, LOW);
rotura;
triste
caso 4: digitalWrite (ojos, alto);
digitalWrite (sonrisa, baja);
digitalWrite (triste, alto);
digitalWrite (straightface, bajo);
digitalWrite (cejas, LOW);
rotura;
Angry
caso 5: digitalWrite (ojos, alto);
digitalWrite (sonrisa, baja);
digitalWrite (triste, alto);
digitalWrite (straightface, HIGH);
digitalWrite (cejas, HIGH);
rotura;
sorpresa
caso 6: digitalWrite (ojos, alto);
digitalWrite (sonrisa, alto);
digitalWrite (triste, alto);
digitalWrite (straightface, bajo);
digitalWrite (cejas, LOW);
rotura;
}
}

SI LAS DECLARACIONES EN EL FUNCIONAMIENTO DEL LAZO
void loop() {}

Fotoresistor
int lightLevel = analogRead(lightPin); Leer la
lightlevel
lightLevel = mapa (lightLevel, 900, 0, 0, 255);

lightLevel = restringir (lightLevel, 0, 255); //make seguro de la
valor está entre //0 y 255

Serial.println(lightLevel);
Delay(50);

hallValue = analogRead(hallPin);
Serial.println(hallValue);
Delay(50);

potenciómetro de
sensorValue = analogRead(sensorPin); leer el valor del sensor:
outputValue = mapa (sensorValue, 0, 1023, 0, 600);

Delay(50);

faceswitch();

if(outputValue<100) {}
cara = 1; extático
}

else if (outputValue > 100 & & outputValue < 200) {}
cara = 2; feliz
}

else if (outputValue > 200 & & outputValue < 300) {}
cara = 3; recto
}

else if (outputValue > 300 & & outputValue < 400) {}
cara = 4; triste
}

else if (outputValue > 400 & & outputValue < 500) {}
cara = 5; Angry
}

else if (outputValue > 500 & & outputValue < 600) {}
cara = 6; sorpresa
}

Si (lightLevel > 70
){

newOutputValue = map(analogRead(sensorPin), 0, 1023, 0, 600); leer el valor del sensor:
newOutputValue = restringir (newOutputValue, 0, 600);

while((ABS(MAP(analogRead(sensorPin), 0, 1023, 0, 600)-newOutputValue)) < 50) {}

Si (cara! = 5 & & cara! = 6 & & cara! = 1) {}
cara-= 1;
faceswitch();
while((ABS(MAP(analogRead(sensorPin), 0, 1023, 0, 600)-newOutputValue)) < 50) {}
Delay(1000);
}
Serial.println ("cambio de cara");
}

Si (cara == 5) {}
cara-= 2;
faceswitch();
while((ABS(MAP(analogRead(sensorPin), 0, 1023, 0, 600)-newOutputValue)) < 50) {}
Delay(1000);
}
Serial.println ("cambio de enojado");
}
}
}

Si (hallValue < 5) {}

newOutputValue = map(analogRead(sensorPin), 0, 1023, 0, 600); leer el valor del sensor:
newOutputValue = restringir (newOutputValue, 0, 600);

while((ABS(MAP(analogRead(sensorPin), 0, 1023, 0, 600)-newOutputValue)) < 50) {}

Si (cara! = 5 & & cara! = 6 & & cara! = 1) {}
cara-= 1;
faceswitch();
while((ABS(MAP(analogRead(sensorPin), 0, 1023, 0, 600)-newOutputValue)) < 50) {}
Delay(1000);
}
Serial.println ("cambio de cara");
}

Si (cara == 5) {}
Serial.println ("cambio de enojado");
cara-= 2;
faceswitch();
while((ABS(MAP(analogRead(sensorPin), 0, 1023, 0, 600)-newOutputValue)) < 50) {}
Delay(1000);
}

}

}
}

}

Artículos Relacionados

Moosehide sombrero con guarnición Polar del paño grueso y suave

Moosehide sombrero con guarnición Polar del paño grueso y suave

hice algunos diferentes tipos de sombreros de piel y pensamiento de este sombrero sin la piel ya que es versátil cuando haciendo trabajos ocasionales fuera o tomando cortos viajes dentro y fuera de las situaciones del tipo de vehículo.  Es caliente p
Sombrero con cuentas

Sombrero con cuentas

aquí es un sombrero con cuentas que hice para mis niñas. Ellos aman. Encontré el patrón en la Página Web de provocraft. Usé los kniffty knitter telares. He utilizado hilo de Jiffy amarillo pastel. Para el sombrero tiene púrpura. Usé una hebra de Jiff
PATRÓN del ganchillo, sombrero con adjunta bufanda, (Carlitto # 113)

PATRÓN del ganchillo, sombrero con adjunta bufanda, (Carlitto # 113)

patrón, para un sombrero de invierno muy elegante, con un pañuelo atado, para que pueda mantenerse cálido y acogedor!¿Quieres aprender a hacer ganchillo?  ¡No hay problema!  Tengo videos de lección de ganchillo así!
Reloj de sombrero con múltiple soporte de zona horaria y la funcionalidad GPS

Reloj de sombrero con múltiple soporte de zona horaria y la funcionalidad GPS

Yo quería un reloj. Pero no cualquier reloj! Quería ser capaz de cambiar la zona horaria se muestra en la tapa de un interruptor. Y también quería utilizar en Burning Man, para mostrar mi ubicación no en tiempo, sino en el sistema de direccionamiento
Animación de Zoetrope en tu sombrero con engranaje de acción

Animación de Zoetrope en tu sombrero con engranaje de acción

la historia es un zoetrope portátil que se esconde en un sombrero. Qué es un zoetrope que pides, pues es una máquina antigua timey que permitía ver animaciones cortas ilustradas. Este instructable le explicará cómo construir su sombrero y funcionamie
Tim el sombrero de mago con cuernos reales de Ram

Tim el sombrero de mago con cuernos reales de Ram

este instructable documentos mi opinión sobre cómo hacer un Tim realista el sombrero de mago, como se ve en la película todo tiempo gran Python de Monty y el Grail santo.  Tim es el mago escoc "cachondo" que disfruta al azar la voladura de árbol
Sombrero de súbdito con un boca que relampaga

Sombrero de súbdito con un boca que relampaga

Originalmente solo iba a hacer un sombrero con un look de cara sonriente pero con un bolsillo con cremallera boca. Cuando tenía la mayoría de ellos forma acabada pensé el sombrero parecía llano un poco y luego al instante en mi cabeza, me puse la ima
Flared Mini sombreros superiores con puntos de anclaje versátil

Flared Mini sombreros superiores con puntos de anclaje versátil

Esta versión de mini sombreros superiores permite el uso temporal de horquillas de plástico, elásticos o correas de cinta, así como una variedad de clips de pelo para asegurarlos a la cabeza (o donde sea que va a los USA). Porque el punto de fijación
Sombrero Derby apropiado para una boda de verano con estilo

Sombrero Derby apropiado para una boda de verano con estilo

Si usted necesita un sombrero adecuado para las razas, o incluso un sombrero llamativo para una boda extravagante, apuesta en este caso. Hacen su propio eligiendo únicas plumas y accesorios.Paso 1: Lo que necesitaráAquí es lo que necesitarás...Un plá
Tardis vestido con un sombrero de

Tardis vestido con un sombrero de

mi Tardis vestido con un sombrero. Puede ver más detalles en mi blog: http://elfka.pl/?p=6074Paso 1: inspiración Médico que los fans no hay nada realmente para explicar, pero para la otra poco le explicará lo que es la Tardis y el infierno por qué al
EL sombrero de alambre: Secuenciado y sonido activado con mando a distancia-con Arduino y Sparkfun

EL sombrero de alambre: Secuenciado y sonido activado con mando a distancia-con Arduino y Sparkfun

Bienvenidos a la guía del instructivo de mi sombrero EL alambre con algo de diversión características.El concepto es un sombrero EL cable con los cables EL 8 secuenciados controlado por un mando a distancia alámbrico. Múltiples modos de secuencia con
Hacer tus propios sombreros de fiesta DIY para un cumpleaños u ocasión especial con retrato silueta

Hacer tus propios sombreros de fiesta DIY para un cumpleaños u ocasión especial con retrato silueta

¿Que no le gusta un sombrero de cumpleaños? En vez de dar a sus partido-goers regulares ' ol sombrero del partido, por qué no les permiten crear sus propios en su lugar. Les dará algo divertido que hacer y añadir un elemento de creatividad a tu fiest
Sombrero de verano Soda con construido en ventilador

Sombrero de verano Soda con construido en ventilador

El sombrero de Soda de verano le ofrece con dos fríos y sin el problema de tener que sostener y levantar constantemente la bebida a la boca. Disfrutando de su mismo lado en un día de verano que podría comenzar a más calor a pesar de te tener refresco
Sombrero lino con rosas

Sombrero lino con rosas

este sombrero Cloche de 1920 no es demasiado difícil de hacer pero es un poco lento. El costo es mínimo ya que puede hacer de ropa vieja de la tienda de segunda mano.  Encontré una falda de lino blanco preciosa que estaba en buena forma, pensé que se