Programar el brazo Robot (6 / 7 paso)

Paso 6: La programa lógica

El bloque principal ("Loop") es realmente muy simple:

Busca mensajes en llegar al buffer serial, desde el dispositivo Android verifica si debe ser el modo de control Local o remoto (el valor predeterminado es Local). Compruebe si se utiliza un comando para ejecutar el "programa" (secuencia de pasos). Si es así, ejecútelo. De lo contrario, el "programa" no está completo y aún debe escribir nuevos pasos. Si se define una "nueva posición", agregar al programa de espalda al principio y realice el paso 1 nuevamente.

void loop)

{

checkBTcmd ();

defineLocalRemote ();

execTaskCmd = digitalRead (execTaskPin);

Si (execTaskCmd == || HIGH command == "runon")

{

RunProgram ();

}

otra cosa (de recArmPosition);

comando = "";

}

La función checkBTcmd () monta una cadena con los caracteres de individuos que llega desde el módulo de BT. Se pasa esta cadena a la variable "comando".

La función defineLocalRemote () considera la variable "comando" comprobar si se recibe un comando para cambiar el modo remoto o viceversa. El comando de la alarma también se analiza aquí. Para la lógica del programa, si la "alarma" se activa en el dispositivo Android, el brazo necesariamente debe ir al modo de control remoto.

La función RunProgram () realiza las preparaciones, encender LEDs de encendido / apagado, etc. y sobre todo invocar la función: (ExecuteTask). El último es la función que contiene la lógica de la ejecución de la secuencia de pasos. La función aumenta el envío de los datos de posición al brazo de uno a uno con la herramienta "positionIndex": armPosition (agarre, base, hombro, codo).

Por último, la función que realmente los servos de comandos y escribe los "pasos" es el (recArmPosition). Función de recibir el comando Android, esta función define el posicionamiento de los servos que pueden ser a través de las ollas, o a través de los "reguladores" de la aplicación para Android. Con el cambio de la posición, esta función envía las coordenadas a los servos usando la función armPosition (agarre, base, hombro, codo). La lectura de la posición real de las macetas o deslizadores y la correspondiente activación de servors produce cuando el comando "Guardar" o "Programa" se activa. En ese momento, se incrementa el índice de arrays'position y guarda el paso.

Para simplificar el entendimiento, el código se basaba en funciones específicas. El bloque de configuración, lazo y las funciones descritas son casi todas en el archivo:

MJRoBot_Arm_Robot_Task_Prgm.ino

Las funciones más generales como leer comando BT: void checkBTcmd (); generador de sonidos: anular pitido (pin int, int freq, ms largo) y contra rebotes: debounce booleano (int pin); Están en el archivo:

General_Functions.ino

Un hecho importante. Como el Arduino ejecuta instrucciones basadas en un reloj de 16Mhz, se espera que los botones de control se leen cientos o incluso miles de veces por segundo, por lo tanto, es importante hacer un botón "contra rebotes" que establece el paso de la grabación.

El cuarto y último archivo es:

Arm_Ctrl_and_Display.ino

En este archivo están las ollas de las funciones de la lectura: bool readPotenciometers (); lectura de Android deslizadores: bool readSliders (); colocación de los servos: void armPosition (int gripp, int base, int de hombro, codo int). Las demás funciones que se incluyen en el archivo son para Mostrar datos en la LCD Serial Monitor, alarmas, etc..

El código fuente completo del proyecto puede encontrarse en GITHUB:

https://github.com/Mjrovai/MJRoBot-Programmed-ARM

o aquí en este instructable

El video muestra el brazo robótico 4DOF "meArm" ser programado remotamente mediante la aplicación para Android.

Artículos Relacionados

Brazo Robot de 4 ejes DIY

Brazo Robot de 4 ejes DIY

Hice este proyecto principalmente a aprender utilizar servos con arduino. Por supuesto puedo comprar kit de brazo robot como el MeArm y empezar a programar, pero lo que desde el principio te enseñan más. Quería diseñar el brazo simple como sea posibl
Brazo Robot controlan por frambuesa Pi y Wiimote

Brazo Robot controlan por frambuesa Pi y Wiimote

recibí un brazo de robot como un regalo de cumpleaños, pero después sobre el primer día el controlador que vino con él se convirtió en algo soso a utilizar. Más tarde compré el controlador usb que se hizo para el robot, pero una vez más el software e
Construir un brazo Robot de 5 ejes con Arduino y DynamixShield

Construir un brazo Robot de 5 ejes con Arduino y DynamixShield

En este instructable le enseñará a rápidamente y fácilmente crear un brazo robot de 5 ejes usando componentes estándares comerciales y control utilizando un Arduino con un DynamixShield. El DynamixShield es un nuevo Add-on para el Arduino debido, cer
Modificaciones al brazo Robot de Opto acoplador retroalimentación, OWI 535, borde etc.

Modificaciones al brazo Robot de Opto acoplador retroalimentación, OWI 535, borde etc.

para aquellos de ustedes en la robótica y robóticos especialmente brazos, muchos de ustedes han visto el barato pero impresionante brazo robótico que se encuentra actualmente en el mercado para menos entonces $30 (£30 en el Reino Unido) estas armas t
Brazo robot de 20 € controlada por arduino

Brazo robot de 20 € controlada por arduino

En este intrsuctable voy a mostrarte cómo hacer un brazo robot simple. Los créditos para el brazo del robot va a este chico: allí se puede ver cómo montar el brazo robot, desgraciadamente él utiliza un 25 €, - polulu driver para controlar su robot br
Joystick control brazo Robot utilizando un Arduino

Joystick control brazo Robot utilizando un Arduino

Propósito y descripción de esta guíaEste instructable es una mano para un proyecto escolar que hemos hecho. El propósito de este proyecto era crear un control de brazo robot utilizando thumbsticks. Tuvimos que utilizar un Arduino Uno para el control
Cómo hacer brazo robot basado en Adunio de una impresora 3D y iphone 6s en una camara PTZ

Cómo hacer brazo robot basado en Adunio de una impresora 3D y iphone 6s en una camara PTZ

Después de día y trabajo de noche, finalmente hicimos Dobot una impresora 3D de alta precisión del brazo! Es diferente de la tradicional impresora 3D Delta y XYZ. Puede ser el primer brazo robótico escritorio que puede utilizarse para la impresión 3D
Brazo robot

Brazo robot

Diseño y tecnologíaNivel 2Andrew MurtonPaso 1: El briefDeclaración conceptualMáquinas se necesitan para mover las cosas bajo control humano o computadora. Generalmente son necesarios para permitir que los seres humanos para mover objetos pesados/difí
La aplicación de Arduino brazo robot

La aplicación de Arduino brazo robot

Necesitábamos una plataforma para probar nuestra nuevas MICILE / interfaz de usuario de Arduino. La mano del robot y el brazo parecían como algo lo suficientemente complejo como para dar realmente todo el concepto de un entrenamiento integral. El pro
Construir un Laser de corte y soldadura con brazo Robot Dobot

Construir un Laser de corte y soldadura con brazo Robot Dobot

En este proyecto instructable, construimos un laser de corte y soldadura con brazo Dobot. La alta precisión Dobot brazo de robot se compone de marco 6061 y fabricada con CNC. Su precisión de maquinaria es de 0,02 mm y precisión de la repetición es 0,
Brazo robot con Servo motores

Brazo robot con Servo motores

parte de mi investigación de doctorado en Universidad de Nueva York-Poly consiste en predecir el consumo de energía en sistemas robóticos, así que necesitaba un sistema robótico para trabajar con una plataforma de investigación para validar los resul
Tamaño de bolsillo MeArm de brazo Robot V0.4

Tamaño de bolsillo MeArm de brazo Robot V0.4

El MeArm es un brazo de Robot de tamaño de bolsillo. Es un proyecto iniciado en febrero de 2014, que ha tenido un viaje muy rápido a su estado presente gracias a su desarrollo abierto como un proyecto de Hardware abierto. Versión 0.3 apareció en Inst
3D impreso brazo Robot

3D impreso brazo Robot

Este brazo robot está conformada casi en su totalidad a 3D piezas impresas que juntos. Tiene tres articulaciones servo-controlado, además de una base giratoria y pinza. El brazo es controlado por una serie de botones que se conectan a un Arduino Uno
Brazo robot controlado por Arduino voz

Brazo robot controlado por Arduino voz

¿Te has sentido fustrated haciendo cosas que tenía un lado más?Bien, esto le ayudará.Se trata de un robot que puede hacer lo que quieres solo habla que por ejemplo se puede decir "arriba" y el robot hará un poco de movimiento hacia el lado que d