Paso 9: Configuración rutina
Esta sección discutirá la rutina de configuración utilizada en esta unidad de control.
analogReference(EXTERNAL);
El primer paso en la rutina de instalación es ajustar la tensión de referencia analógica. Este paso ayuda a darle una línea de base para la cantidad de ruido en las lecturas del sensor. Sin ella, los pines analógicos no leer cualquier cambio en la lectura.
A continuación, la pantalla LCD debe ser ajustado y aparece un mensaje de bienvenida.
LCD.Begin (16, 2);
LCD.Print ("Bienvenido a la");
lcd.setCursor(0,1);
LCD.Print("HCRP");
lcd.setBacklight(GREEN);
Delay(3000);
El comando lcd.begin(16,2) se utiliza para inicializar el LCD y dar el tamaño de las columnas de 16 LCD con 2 filas. A continuación, el comando lcd.print() se utiliza para escribir mensajes en la pantalla LCD. lcd.setCursor(n,m) se utiliza a st punto de inicio para el mensaje. El primer número es la columna y la segunda es la fila. Contar desde 0. lcd.setBacklight() establece el color de fondo para la pantalla LCD.
A continuación, la rutina de instalación entra en la fase de calibración del código. Aquí, se inicializa el estado inactivo de los controlados. El estado inactivo se define como acostado. Esto es necesario porque el movimiento se define por las desviaciones del estado de inactividad. El estado por defecto está inactivo.
LCD.Clear();
lcd.setCursor(0,0); LCD.Print ("calibración");
lcd.setCursor(0,1); LCD.Print ("Lay flat");
Delay(5000);
idleX = ReadAxis(xInput); idleY = ReadAxis(yInput); idleZ = ReadAxis(zInput);
idlemaxX = idleX + 15; idlemaxY idleY = 15; idlemaxZ = idleZ + 15;
idleminX = idleX-15; idleminY = idleY-15; idleminZ = idleZ-15;
LCD.Clear();
lcd.setCursor(0,0); LCD.Print ("todo hecho!");
lcd.setCursor(0,1); LCD.Print ("Begin Control");
Delay(3000);
El comando lcd.clear() se borra la pantalla LCD de cualquier escritura anterior. A continuación, el código indica al usuario que el código está a punto de entrar en la fase de calibración y que el controlador debe ser plano. El código entonces le dará 5 segundos para obtener el controlador en posición. Después de que el controlador está en la posición correcta, el código lee el acelerómetro y establece el estado de inactividad. También establece un intervalo para el estado de inactividad. El valor predeterminado es (+-) 15. Esto está establecido en cuenta para el ruido en las lecturas. Dadas las circunstancias, este valor puede necesitar ser ajustado. Con el fin de detectar el movimiento, los valores de acelerómetro tendrá supere el valor máximo o mínimo para el estado de inactividad. Por último, el código indica al usuario que haya terminado la calibración y control de la rover está a punto de comenzar.