Multi-Functional Star Wars Astromech Droid (9 / 15 paso)

Paso 9: programación.

Los próximos pasos irá a través de la programación básica y elaboración de la aplicación móvil. No realizar estos pasos demasiado largos, voy a compartir algunas de las secuencias de comandos para las funciones básicas que se pueden adaptadas para la mayoría robots utilizando la plataforma EZ-Robot.

E4-B4 programación y controles, usé EZ-constructor del EZ-Robot de software de Windows que usted puede obtener su propia copia de aquí. Aquí encontrarás todos los detalles de la utilización de la plataforma EZ-Robot, con tutoriales del uso de los controles y secuencias de comandos de escritura (algunos de los tutoriales que escribí yo mismo como una unidad de la comunidad para ayudar a otros). Así que aquí está programé B4 E4.

Después de abrir un nuevo proyecto de EZ-Builder, lo primero que tenía que hacer era configurar los servos. Como estoy utilizando el SSC-32, fue un poco de un procedimiento diferente de configurar directamente servos conectados a la EZ-B. Para empezar, una sola línea de script es necesario y tiene que ejecutar cuando el EZ-B v4 y SSC-32 se conecta a su proyecto de EZ-Builder...

#This es el script de inicialización para el ssc-32 conectado al puerto UART 0,

Esto sólo tiene que ejecutar una vez cada vez que el proyecto se abre y una conexión de #and se hace.

UARTInit(0,0,38400)

He añadido un "Script Manager" a mi proyecto que retituló "Menú de Control" y configurar los brazos retráctiles en el cuerpo. Por lo tanto, los brazos de la herramienta de utilidad utilizan el siguiente script...

IMPLEMENTAR #USB BRAZO

#Servo posiciones son P500 mínima que es igual a la posición del servo 1,

#and P2500 máximo que es igual a la posición del servo 180.

$pos = "P1400"

#The S700 es para velocidad de servo.

$m_speed = "S700"

UARTWrite(0,0,"#6"+$pos+$m_speed,13)

Nota: Usted verá un montón de los scripts que he publicado aquí, tienen un
# junto a algunos del código. Cualquier cosa que tiene este hash frente a ella, es una línea de guión que no funcionará y sólo se utiliza para hacer notas.

Debido a la forma que más servos digitales están diseñados, tienden a hacer un ruido de zumbido irritante cuando está en condiciones de explotación. Así que para combatir esto, he añadido algunas líneas adicionales de script que liberará un servo de su posición de celebración. Esencialmente, esto interrumpe la alimentación al servo y no tendrá ningún peso. Esto está bien para los brazos retractables horizontales y las aletas ya que no hay ningún peso para el servo mantener. Los scripts de liberación se utilizan principalmente en los comandos "Retraer el brazo" y "Cerrar solapa". Así que aquí está lo que la secuencia de comandos ahora parece...

Para el despliegue del brazo de utilidad...

#USB BRAZO RETRACCIÓN

#This retracción script se debe ejecutar primero para inicializar un servo después un comando servo.
$pos = "P600"

$m_speed = "S700"

control de velocidad #is

UARTWrite(0,0,"#6"+$pos+$m_speed,13)

Pequeño sueño de milisegundo 100 #A se agrega para la transición.

Sleep(100)

#Now el script DEPLOY puede funcionar con éxito.

IMPLEMENTAR #USB BRAZO

$pos = "P1400"

$m_speed = "S700"

UARTWrite(0,0,"#6"+$pos+$m_speed,13)

y para utilidad de brazo retractarse...

#USB BRAZO RETRACCIÓN
$pos = "P600"

$m_speed = "S700" #is control de velocidad

UARTWrite(0,0,"#6"+$pos+$m_speed,13)

#A sueño se añade para dar tiempo para que el brazo se retraiga.

SLEEP(4000)

LANZAMIENTO DE BRAZO #USB

#Notice "P0" abajo. Este es el único valor bajo P500 que pueden utilizarse. Esto libera el servo.

$pos = "P0"

$m_speed = "S700"

UARTWrite(0,0,"#6"+$pos+$m_speed,13)

La cúpula y el cuerpo también aletas uso scripts similares con sus posiciones mínimos y máximos ajustados para cada servo donde sea necesario. El primer director de la secuencia de comandos tiene cada escritura individual para cada acción individual, por ejemplo... La aleta abierta, aleta cerca, implementar herramienta, herramienta retraer y así sucesivamente. Esto también se hace para "encender" y "Off" y las lecturas del sensor de arranque y parada.

Para combinar los movimientos para la apertura de una aleta de luego implementar una herramienta de utilidad, un segundo administrador de script se agrega al proyecto de EZ-Builder. Voy a utilizar la herramienta de hub USB por ejemplo. En el administrador de script nuevo, que retituló "Menú de Control del maestro", se podía copiar y pegar los comandos de secuencia de comandos en el "Menú de Control", pero hay una manera más fácil. Cada vez que agregue una nueva secuencia de comandos de control, esto automáticamente genera algo que se llama un "comando de Control" también se llama un comando "Cheat Sheet". Estos son comandos de acceso directo para iniciar, detener, pausar y reanudar un script específico. Por lo tanto, para implementar el hub USB, yo uso el siguiente script...

ControlCommand ("Control menú", ScriptStart, "USB aleta abierta")

#This comando de sueño permite la aleta abrir antes de que el brazo se despliega.

Sleep(2000)

ControlCommand ("Control menú", ScriptStart, "el despliegue del brazo USB")

Y para retraer el hub USB, se utiliza...

ControlCommand ("Control menú", ScriptStart, "retracción del brazo USB")

Sueño de #This da tiempo suficiente para que la herramienta se retrae antes de la aleta se cierra.

Sleep(4000)

ControlCommand ("Control menú", ScriptStart, "Cerrar solapa USB")

El mismo se utiliza con todas las otras herramientas de utilidad, con la longitud de los comandos convencionales ajustadas para cada herramienta. (Para ser seguro y no correr el riesgo de dañar algo, sugiero para quitar la piel frontal para configurar y probar la combinación de scripts).

El servo de la cúpula está configurado diferentemente se conecte directamente a la
EZ-B, así que usa un guión diferente y más simple de los comandos de SSC-32 UART para el control manual. Para hacer un simple giro de la bóveda, puede utilizar el siguiente script...

#This comando ajusta la velocidad del servo.

#Servo velocidades van desde "0" que es el más rápido y "10" que es más lento.

#This ejemplo asume que el servo se conecta al puerto digital "D0".

Servospeed(D5,2)

#This comando indica cuánto grados deberá girar el servo.

#Servo centro posición es "90" con "1", siendo mínima

#and "180" siendo máxima.

Servo(D5,120)

En la interfaz móvil que puede utilizarse en un PC de dispositivo móvil, tengo un script que convierte a la cúpula de 10 grados en cada pulsación. Esto es útil si desea ver a través de cámara de E4-B4 en una PC o dispositivo móvil...

if(getservo(D13) > 10)
servodown(D13,7)

endif

Sleep(100)

Para alternar el parpadeo rojo y azul del LED, usar un script de bucle simple que parpadea entre rojo y azul cada dos segundos hasta que detener manualmente el script, yo utilizo un comando de control para hacer lo...

#This se supone que el LED rojo esté conectado al puerto digital D22 y D23 azul.

: lazo
Set(D22,on)

Sleep(2000)

Set(D22,OFF)

Sleep(30)

Set(D23,on)

Sleep(2000)

Set(D23,OFF)

Sleep(30)

Set(D22,on)

Sleep(2000)

Set(D22,OFF)

Sleep(30)

Set(D23,on)

Sleep(2000)

Set(D23,OFF)

Sleep(30)

Goto(Loop)

Uso del sensor de distancia ultrasónico en la garra de cerveza para reconocer cuando alguien esta cerca para dar o recoger un objeto. Esto disparará una secuencia de comandos de control para abrir y cerrar la pinza...

ControlCommand ("Tablero de charla al azar", Track_14)
Sleep(1500)

ControlCommand ("Master Control menú", ScriptStart, "El despliegue del brazo de cerveza")

Sleep(5000)

: lazo

# obtener la distancia del sensor ping

$distance = getping (d19, d20)

Si ($distance < 6)

ControlCommand ("Control menú", ScriptStart, "Garra de cerveza abierta")

Sleep(2000)

ControlCommand ("Control menú", ScriptStart, "Garra de cerveza cerca")

Sleep(2000)

ControlCommand ("Master Control menú", ScriptStart, "Retracción del brazo de cerveza")

ControlCommand "(la prueba de la cerveza del, ScriptStop)

endif

# Un retardo para evitar que la secuencia de comandos ejecuta demasiado rápido

Sleep(50)

goto(Loop)

Un script similar se utiliza para la evitación del objeto usando los sensores de ping en los pies cuando E4 se mueve. Si se detecta un objeto tal como una pared en el pie izquierdo, él pare y gire a la derecho, luego continuar moviéndose hacia adelante. Y si el pie derecho detecta algo, se pare, gire a la izquierda y avanzar.

Para algo diferente, te voy a dar un ejemplo del sensor de detección de humo y gas...

: lazo
$smoke=getADC(adc2)

if($Smoke>40)

saywait ("yo soy ahora de detección de humo o gases de humos en la zona.")

Sleep(10000)

elseif($Smoke>60)

saywait ("ADVERTENCIA. Yo ahora estoy detección de un aumento en el nivel de humo o gases de humos en la zona.")

endif

Sleep(100)

goto(Loop)

Este es otro ejemplo de secuencia de comandos. Cuando se alcanza un cierto tiempo, E4 se le recuerdan a alguien para tomar sus píldoras, entonces dispensarlos...

#The nombre de este script se llama "Pastillas".

waituntiltime (16, 35)
decir ("es 4 35 pm y el tiempo para su medicamento por la tarde.")

ControlCommand ("Tablero de charla al azar", Track_14)
Sleep(1500)

ControlCommand ("Master Control menú", ScriptStart, "El despliegue del brazo de cerveza")

Sleep(5000)

: lazo

$distance = getping (d19, d20)

Si ($distance < 6)

ControlCommand ("Control menú", ScriptStart, "Garra de cerveza abierta")

Sleep(2000)

ControlCommand ("Control menú", ScriptStart, "Garra de cerveza cerca")

Sleep(2000)

ControlCommand ("Master Control menú", ScriptStart, "Retracción del brazo de cerveza")

#This se detendrá esta secuencia de comandos de ejecución cuando se completa la acción.

ControlCommand ("Píldoras", ScriptStop)

endif

Sleep(50)

goto(Loop)

Sleep(2000)

Esta secuencia particular puede Agregar a una navegación y escritura reconocimiento de cara, E4 puede navegar y encontrar a la persona (siempre que cara de las personas ha sido añadido a la biblioteca de reconocimiento facial de E4-B4), luego dispensar las pastillas a la hora establecida.

Reconocimiento de voz es un sistema bastante sencillo de configurar para ejecutar secuencias de comandos. Esto se puede utilizar para ejecutar prácticamente cualquier script o comando en proyecto de E4. Mientras el equipo su uso ha sido configurar correctamente y entrenado para el reconocimiento de voz, y utiliza un buen micrófono, simplemente escribe en una frase lo que sería decir al robot, luego añadir el scrip comando a ejecutar cuando se reconoce esa frase. Aquí, puedes escribir la que necesita de la escritura de comandos, o use los comandos de control.

Como se mencionó, estos son sólo unos cuantos ejemplos de script simple que utiliza E4-B4, pero también tiene toneladas más como reconocimiento de objetos y color, programa traductor chatbot y texto y un generador de personalidad que ayuda a da capacidades autónomas de E4. Más detalles de qué controles y habilidades disponibles a utilizar y con muchos ejemplos de secuencia de comandos que pueden ser utilizados, cambiados o adaptados para la mayoría de los robots, se pueden encontrar en la Web de EZ-Robot. Estoy construyendo en programa autónomo de E4-B4 poco a poco, así que un día que será capaz de auto muelle y cargar sus baterías y hacer barridos de seguridad al azar de la casa. Ya tiene un sistema de seguridad para el hogar en el lugar, donde puede tomar acción (como alertas me en Twitter y streaming de un video live feed, o sonido de inicio una alarma y tomar y enviar fotos) si se detecta un ruido, una luz se enciende cuando no se espera que, o su sensor PIR se dispara.

Como he dicho, yo pude ir en el listado todos los scripts aquí en este Instructable, pero esto haría que el Instructable muy largo como B4 E4 tiene toneladas de código programado. Recuerde, si usted tiene alguna pregunta sobre cualquier cosa sobre construcción o programación E4-B4, no dude en preguntar y yo haremos mi mejor para responder a usted. También puede tener un vistazo a uno de los proyectos de E4-B4 por haciendo clic aquíy abrir el archivo con el EZ-constructor. Estos proyectos fueron hechos disponibles para compartir con nadie y contienen una gran cantidad de los controles y programación de secuencias de comandos que se utilizan, incluyendo el objeto y el reconocimiento facial de programación se ve en los videos.

Artículos Relacionados

La creación de la Star Wars Hailfire Droid; Introducción

La creación de la Star Wars Hailfire Droid; Introducción

, Wolfgang, Braxton y Tyler son estudiantes de secundaria que están trabajando en un proyecto de diseño 3D. Por qué elegimos hacer el droide Hailfire era nuestra inspiración de Star Wars, y es simple de construir algunas de las piezas 3D. Empezamos p
Star Wars origami: droide de batalla diseño

Star Wars origami: droide de batalla diseño

Soy nuevo en Instructables, y este es mi primer diseño de origami que he publicado. Hice algunas investigaciones en internet y descubrí que no cualquier diseño de droide de batalla fácilmente asequible que pude encontrar, por lo que surgió con uno mi
Q5 una temática de Star Wars droide astromecánico Driod

Q5 una temática de Star Wars droide astromecánico Driod

Así que usted es un fan del universo Star Wars y desea construir su propia representación de un trabajo Astomech Driod. Si usted está preocupado no con exactitud pero solo quiero algo que se ve bien y funciona entonces este Instructable es para usted
Escala completa mouse droid de star wars

Escala completa mouse droid de star wars

Me encanta star wars y siempre han querido construir cosas de la franquicia de la película. Tengo mi propia armadura de soldado de asalto, después de visitar un día de galaxias en nuestro centro de Ciencia local, que decidí que quería hacer un droide
Star Wars el Mié Tredwell droide

Star Wars el Mié Tredwell droide

en este Instructable fina muestra cómo hacer un droide de star wars escala Tredwell "de star wars. la construcción es moderadamente difícil y es una larga y también es un R/C Si eliges que sea.El droide Tredwell fue un puntal en star wars episodio 4:
Papercraft escala 1:1 Star Wars droide de batalla.

Papercraft escala 1:1 Star Wars droide de batalla.

Una vez en una galaxia lejos muy lejos... puedes droides de batalla de papel!!!!!!Sé que muchos de ustedes se están preparando para halloween... bueno... aunque no lo puede hacer usted mismo un futurista vida tamaño droide de batalla! Star wars siemp
Star Wars droide de ratón "Mouse Droid"

Star Wars droide de ratón "Mouse Droid"

en este Instructable fina mostrará cómo hacer una escala mitad star wars droide ratón o "mouse droid" de star wars. la construcción es creativa rápida y barata (alrededor de $40).Primero: limpiar un área para su trabajo. usted necesitará un banc
Punto de Cruz de Star Wars: Droides botines

Punto de Cruz de Star Wars: Droides botines

Punto de cruz patrón (en excel y forma del cuadro) con el BB-8, R2-D2 y C-3PO de Star Wars. Los botines fueron comprados de Jo-Ann tela. El diseño se podría hacer también en una tela plana normal.Paso 1: materialesColores (número de color de seda est
BB8 construido con piezas de Lego Star Wars... Y sin embargo se mueve al final de este tutorial:

BB8 construido con piezas de Lego Star Wars... Y sin embargo se mueve al final de este tutorial:

He presentado este modelo a las Ideas de Legohttps://ideas.LEGO.com/projects/127584Si te gusta esta versión de Lego de BB8, por favor voten por este proyecto.Iniciar sesión con su cuenta de medios de comunicación socialy votar por él.Gracias 1 millón
GLOBO de nieve BB8 STAR WARS

GLOBO de nieve BB8 STAR WARS

Hola todos,Este Instructable le mostrará cómo hacer tu propia bola de nieve personalizada razonablemente barato. Estos pueden realmente hacer a cualquier diseño, pero obviamente fui con el diseño del droid de Star Wars BB8...Información de fondo:Desp
Adorno de Navidad DIY Star Wars

Adorno de Navidad DIY Star Wars

Con una nueva película de Star Wars que sale esta Navidad todo el mundo incluido yo que tiene una obsesión sobre esta saga es todo decoración de Navidad de Star Wars. En este tutorial te voy a mostrar cómo hice este droide BB8 ornamento del árbol de
Zapatos pintan Star Wars C3PO y R2D2!

Zapatos pintan Star Wars C3PO y R2D2!

Star Wars C3PO y R2D2 pintan tacones!Sí, son los zapatos que buscas!Me inspiré por estos tacones de R2D2 que Mikeasaurus!No añadir la tecnología y que les mezclé un poco... pero¿Quién no quiere zapatos droide???Me encanta la forma que estos resultaro
BB-8 y R2-D2 - disfraces de Halloween niño Star Wars

BB-8 y R2-D2 - disfraces de Halloween niño Star Wars

¿Tal vez son los droides buscas? Nos acaban de hacer estos para nuestros hijos (5 y 3 años). Mi hija es una princesa verdadera. Me casé con un chico de tom así que es definitivamente una naturaleza sobre situación de la educación. Todo lo que ella po
Star Wars Han Solo cinturón pistolera del arma

Star Wars Han Solo cinturón pistolera del arma

aquí es una manera barata y fácil de hacer una impresionante funda de pistola de Han Solo. Mi novio y yo vamos a Leia y Han para Halloween y su traje no estaría completa sin la firma pistolera del arma de Han Solo. Yo soy un gran fan de Star Wars per