Proximidad de colega de Arduino Ping (4 / 6 paso)

Paso 4: Código de Arduino

Este es el código de Arduino para un análisis de proximidad de colega por Sander van Haperen

Se ha actualizado última en agosto de 2014. Se basa originalmente en un código para el proyecto de alimentación de Arduino RSS, por buñuelo

int startstring = 0; reconocimiento del principio de la nueva cadena int charcount = 0; seguimiento de total de caracteres en pantalla

const int ledPin = 6; el pin que el LED está conectado a int incomingByte; variable para leer los datos entrantes en serie en

readString de cadena #include, incPinInit, incPin1, incPin2, incPin3, incPin4, incPin5, incPin6;

Servo myservo; crear objeto servo para controlar un servo / / se puede crear un máximo de ocho objetos de servo

#include / / importación el lcd LiquidCrystal librería LiquidCrystal (12, 11, 5, 4, 3, 2);

void setup() {Serial.begin(9600); / / abre el puerto serie, establece la tarifa de datos a 9600 bps lcd.begin(16,2); / / inicializar el tamaño de la LCD 16 x 2. Cambio si se utiliza una lcd.setCursor(0,0) más grande del LCD; Establecer la posición del cursor a la parte superior izquierda esquina

myservo.Attach(6); se fija el servo en el pin 9 al objeto servo para (int thisPin = 2 thisPin < 13; thisPin ++) {//init pernos de 2 a 6 como salida pinMode (thisPin, salida);}}

void loop() {char c = 0; / / para datos entrantes seriales mientras (Serial.available()) {delay(5); //delay para permitir que el tampón llenar

Si (Serial.available() > 0) {}

char c = Serial.read(); Obtiene un byte del buffer serial readString += c; hace la cadena readString}

Serial.println(readString);

Si (readString.length() > 0) {}

digitalWrite (13, HIGH); configurar el LED pin 13 como indicador de la recepción de datos en serie / / esperan recibir una cadena como 07002100 que contiene el pin Estados incPinInit = readString.substring (0, 1); obtener el primer carácter para buscar símbolo init

Serial.println(readString); ver lo que fue recibido, si (incPinInit == "*") {//check para marcador / 'cabecera' que significa ping Estados incPin1 = readString.substring (2, 3); //get el siguiente incPin2 de carácter = readString.substring (4, 5); //get el siguiente carácter incPin3 = readString.substring (6, 7); //get el siguiente carácter incPin4 = readString.substring (8, 9); //get el siguiente incPin5 de carácter = readString.substring (10, 11); //get el siguiente carácter incPin6 = readString.substring (12, 13); //get el siguiente carácter

int n1 = incPin1.toInt(); int n2 = incPin2.toInt(); int n3 = incPin3.toInt(); n4 int = incPin4.toInt(); n5 int = incPin5.toInt(); int n6 = incPin6.toInt(); para (int thisPin = 2 thisPin < 13; thisPin ++) {//reset estado predeterminado para todos los pernos baja digitalWrite (thisPin, LOW);}

ahora Verifique todos los 6 Estados del perno y escribir alta si Estado de ping es positivo si (n1 == 1) {digitalWrite (10, HIGH);} si (n2 == 1) {digitalWrite (9, alto);} si (n3 == 1) {digitalWrite (8, HIGH);} si (n4 == 1) {digitalWrite (7, alto);} si (n5 == 1) {digitalWrite (5, alto);} si (n6 == 1) {digitalWrite (1, alto);}

} Si (incPinInit == "~") {//check para marcador / 'cabecera' que significa ping Estados startstring = 0; / / configurar la impresión en off delay(5000); / / esperar 5 segundos lcd.clear(); / / Limpie la pantalla charcount = 0; / / restablecer el recuento de caracteres lcd.setCursor(0,0) 0; / / reset el cursor en 0,0 si (startstring == 1) {/ Compruebe si la cadena ha comenzado a si primer ' ~' ha sido leído Si (charcount < = 30) {/ / comprobar si charcount es bajo o igual a 30 lcd.print(incomingByte); / / imprimir el byte actual en la serie Serial.print(incomingByte); charcount = charCount ++; Incrementar la charcount en 1 sí sé que es difícil}} si (charcount == 31) {/ si la charcount es igual a 31 también conocido como la pantalla es completa delay(500); lcd.clear(); / claro el lcd.setCursor(0,0) de la pantalla; / / cursor para lcd.print(incomingByte) 0,0; / / continuar impresión charcount de datos = 1; / / establecer charcount en 1} si (incomingByte == ' ~') {/ / Compruebe si el byte es marcador ~ para iniciar la impresión startstring = 1; / / comenzar la impresión}} digitalWrite (13 BAJA); int pos = 90; variable para almacenar el myservo.write(pos) de posición del servo; Dile el servo a la posición en la variable 'pos' delay(10);

}

} readString = ""; }

Artículos Relacionados

Arduino Ping pong con matriz de punto de 8 * 8 y Max7219

Arduino Ping pong con matriz de punto de 8 * 8 y Max7219

Hay un montón de tutorial de Arduino ping pong por internet. Pero la mayoría de ellos son para dos jugadores. Como no queda otra que jugar conmigo así que me encontrar un tutorial que es para un solo jugador. Por suerte he encontrado uno pero es no q
Sensor de proximidad infrarrojo simple con Arduino

Sensor de proximidad infrarrojo simple con Arduino

Hola chicos! En este instructable yo te enseño como hacer un sensor de proximidad muy simple usando infrarrojos LEDs y Arduino.Después de varias veces tratando de optimizarlo, finalmente surgió algo que es bastante sencillo e preciso. Al igual que mi
Obstáculo evita el Robot usando Arduino Uno y Sensor de proximidad de infrarrojos

Obstáculo evita el Robot usando Arduino Uno y Sensor de proximidad de infrarrojos

Siga los pasos para crear un obstáculo evitar Robot usando Arduino Uno y IR Sensor de proximidadPaso 1: Piezas necesarias1) Arduino Uno R3 (clon hará)2) sensores de proximidad de IR (2 recomendado)3) chasis con motores4) tablero de5) Junta de control
Guía de iniciación a Arduino

Guía de iniciación a Arduino

Después de algunos años de experimentar con Arduino, he decidido que ha llegado el momento de compartir el conocimiento que he adquirido. Así aquí va, una guía de Arduino, con los fundamentos desnudos para principiantes y algunas explicaciones más av
Conmutación automática de la luz con sensor de proximidad infrarrojo

Conmutación automática de la luz con sensor de proximidad infrarrojo

Este es uno de lo método más simple para encender y apagar la luz de una habitación. El método utiliza dos sensores de proximidad conectado a la puerta que actúa un s un contador si una persona ha entrado en una habitación o no. Arduino está conectad
Fanduino - Cool ventilador automático de Arduino

Fanduino - Cool ventilador automático de Arduino

Mientras en el hemisferio norte disfrutamos del frío invierno, no podemos ayudar pero siento pena por aquellos menos afortunados sufren el calor horrible en el hemisferio sur... :-DAsí, en el verdadero espíritu de la Navidad, decidí compartir algunas
Pong con matriz de Led 8 x 8 en Arduino

Pong con matriz de Led 8 x 8 en Arduino

juego Pong creado con 8 x 8 Led matriz el Arduino Diecimila (microcontrolador Atmel ATMega 168). Para más del informaciones http://blog.bsoares.com.br/arduino/ping-pong-with-8x8-led-matrix-on-arduino
Impresionante aventura de Arduino

Impresionante aventura de Arduino

se te entusiasma acerca de Arduino!     Así usted ha venido al lugar correcto!!!!!! Mi hermana y yo hemos hecho un metro de distancia sensor aparcamiento garaje! El propósito de este dispositivo es ayudar a tratar de aparcar el coche en el garaje, co
Pie robótico

Pie robótico

Este instructable fue creado en cumplimiento de la exigencia de proyecto de la Makecourse de la Universidad de South Florida (www.makecourse.com). El requisito del proyecto era crear un proyecto que utiliza al menos una parte impresa 3-d, y que usand
Cuadrado de humo (detectores de humo GSM)

Cuadrado de humo (detectores de humo GSM)

FONDOHumo tradicional están limitadas en su función, porque son capaces de indicar la presencia de humo y enviar una alarma que suena a los alrededores. Sin embargo, qué pasa si nadie está presente en el ambiente donde el fuego ha comenzado. Humo de
Infinito del espejo reloj

Infinito del espejo reloj

Desde mi direccionables tiras de LED RGB (WS2812B) de Aliexpress, he estado fascinado con proyectos de LED. Seguimiento a mi éxito con mi reloj LED Charlieplexed, quería crear algo con el Jazz más...Durante la exploración de imágenes de google, me en
Detector con zumbador y LED medidor de distancia.

Detector con zumbador y LED medidor de distancia.

Resumen:Se trata de un circuito de detección de distancia simple con el uso de un sensor de ultrasonidos, un zumbador, una fila de LEDs, y 2 relés (opcional).El sensor de distancia ultrasónico encenderá una fila de LEDs dependiendo de distancia. Si s
DIY Keyless piano

DIY Keyless piano

Hola amigos soy Dushyanta y hoy que estoy aquí para decirte cómo hacer un piano sin llave. Así que a partir del nombre puede conseguir una idea justa acerca de él. Es como un piano sencillo que no tiene ninguna tecla. En un teclado piano o musical no
¿Sensor de proximidad infrarrojo DIY (Arduino Compatible)

¿Sensor de proximidad infrarrojo DIY (Arduino Compatible)

siempre miraba en Sparkfun o Adafruit para algunas partes de robot fresco y vio esos costosos sensores de proximidad infrarrojos y ultrasonido? Tengo y realmente quería uno, pero son tan caros ($30-$40 o más) así que decidí que yo podría hacer uno yo