Paso 5: El código y probar sus luces
Antes de establecer rangos en su código, usted necesitará saber qué rangos son detectar los parches de papel de aluminio. En mi código, los rangos variaron de los 700s a casi 1000. Tamaño de los parches y la conductividad de su piel pueden variar los rangos de que detectan los parches.
Una vez que los parches se cosen bien y su Lilypad está conectado al equipo mediante un cable USB, puede probar las gamas de los parches haciendo clic en el botón de monitor serial en la parte superior derecha de su código de Arduino. Asegúrese de que el USB apropiado es identificado en herramientas -> Puerto serie y que la placa Lilypad correcta está seleccionada en herramientas -> tabla.
El código debe incluir lo siguiente para la prueba serial monitor trabajar:
int aluminumFoil = A2; (si tu parche positivo papel aluminio no está conectado al A2, reemplazar con su perno conectado correctamente)
En la sección configuración del vacío, incluyen:
Serial.Begin(9600); inicializar el puerto serie
pinMode (aluminumFoil, entrada); sistemas de aluminio hoja pin para entrada
digitalWrite (aluminumFoil, HIGH); Inicializa el sensor
En la sección de bucle vacío, necesitará su código:
sensorValue = analogRead(aluminumFoil); leer el valor del sensor
Serial.println(sensorValue); Enviar ese valor a la computadora
Ver el código completo para obtener más información. Una vez que el código está a la par, haga clic en monitor de la serie. Verás una serie de números. Toque los parches y ver cómo cambian los números. Encuentra la alta y baja de su gama y luego determinar qué rangos que desee incluir en el código. Por ejemplo, en mi código, explica que "si (sensorValue < 985 & & sensorValue > = 900)", la luz tendrá una duración de 8/10 de segundo. Si el valor del sensor es entre 800 y 900, las luces duran 5/10 de segundo... y así sucesivamente. Decidir qué rangos que desea efectuar el código y cómo.
______
Mi código completo:
int aluminumFoil = A2; Este es el pin que está conectado el positivo papel aluminio parche (el otro parche de papel de aluminio está conectado directamente a la negativa)
int sensorValue; variable para almacenar el valor que viene desde el sensor
int top1 = 2; top1 es el apodo de la estrella conectado al pin 2
top2 int = 3;
top3 de int = 9;
top4 int = 10;
int rtop1 = A4;
int rtop2 = 11;
void setup() / / ejecuta una vez, cuando comienza el bosquejo
{
Serial.Begin(9600); inicializar el puerto serie
pinMode (aluminumFoil, entrada); sistemas de aluminio hoja pin para entrada
digitalWrite (aluminumFoil, HIGH); Inicializa el sensor
pinMode (top1, salida); Si la luz no se dirigió a la salida, no va a funcionar
pinMode (top2, salida);
pinMode (top3, salida);
pinMode (top4, salida);
pinMode (rtop1, salida);
pinMode (rtop2, salida);
}
void loop() / / ejecuta una y otra vez
{
sensorValue = analogRead(aluminumFoil); leer el valor del sensor
Serial.println(sensorValue); Enviar ese valor a la computadora
Si (sensorValue < 985 & & sensorValue > = 900) //if el valor de los sensores es entre 900-985 cuando tocó, se producirá el siguiente patrón de luz:
{
digitalWrite (top1, HIGH); Encienda el LED (alto es el nivel de voltaje)
Delay(800); Esto indica cuánto tiempo la luz permanecerá encendida en milisegundos
digitalWrite (top1, LOW); Apagar el LED
digitalWrite (top4, HIGH);
Delay(800);
digitalWrite (top4, LOW);
digitalWrite (rtop2, HIGH);
Delay(800);
digitalWrite (rtop2, bajo);
digitalWrite (top2, HIGH);
Delay(800);
digitalWrite (top2, LOW);
digitalWrite (top3, HIGH);
Delay(800);
digitalWrite (top3, LOW);
digitalWrite (rtop1, HIGH);
Delay(800);
digitalWrite (rtop1, bajo);
Espere un segundo
}
else if (sensorValue < 900 & & sensorValue > 800)
{
digitalWrite (top1, HIGH); Encienda el LED (alto es el nivel de voltaje)
Delay(500);
digitalWrite (top1, LOW);
digitalWrite (top4, HIGH);
Delay(500);
digitalWrite (top4, LOW);
digitalWrite (rtop2, HIGH);
Delay(500);
digitalWrite (rtop2, bajo);
digitalWrite (top2, HIGH);
Delay(500);
digitalWrite (top2, LOW);
digitalWrite (top3, HIGH);
Delay(500);
digitalWrite (top3, LOW);
digitalWrite (rtop1, HIGH);
Delay(500);
digitalWrite (rtop1, bajo);
}
else if (sensorValue < 800 & & sensorValue > = 600)
{
digitalWrite (top1, HIGH); Encienda el LED (alto es el nivel de voltaje)
Delay(200);
digitalWrite (top1, LOW);
digitalWrite (top4, HIGH);
Delay(200);
digitalWrite (top4, LOW);
digitalWrite (rtop2, HIGH);
Delay(200);
digitalWrite (rtop2, bajo);
digitalWrite (top2, HIGH);
Delay(200);
digitalWrite (top2, LOW);
digitalWrite (top3, HIGH);
Delay(200);
digitalWrite (top3, LOW);
digitalWrite (rtop1, HIGH);
Delay(200);
digitalWrite (rtop1, bajo);
}
otro //the siguiendo el código es lo que se producirá si el sensor detecta un valor distinto de los mencionados
{
digitalWrite (top1, HIGH); Encienda el LED (alto es el nivel de voltaje)
Delay(1000);
digitalWrite (top1, LOW);
digitalWrite (top4, HIGH);
Delay(1000);
digitalWrite (top4, LOW);
digitalWrite (rtop2, HIGH);
Delay(1000);
digitalWrite (rtop2, bajo);
digitalWrite (top2, HIGH);
Delay(1000);
digitalWrite (top2, LOW);
digitalWrite (top3, HIGH);
Delay(1000);
digitalWrite (top3, LOW);
digitalWrite (rtop1, HIGH);
Delay(1000);
digitalWrite (rtop1, bajo);
}
}