IoT: Frambuesa Pi Robot con control remoto de cámara Video Streamer y Pan/Tilt Internet (4 / 10 paso)

Paso 4: Instalación de ServoBlaster

Una biblioteca de greta que se utilizará para el control de servos es ServoBlaster

Se trata de software para el RaspberryPi, que proporciona una interfaz para controlar varios servos a través de los pines GPIO. Controlar la posición del servo enviando comandos al conductor diciendo: Qué ancho de pulso debe usar una salida de servo particular. El controlador mantiene ese ancho de pulso hasta que usted envíe un comando nuevo solicitando alguna otra anchura.

Por defecto se se configura para servos de la unidad 8, aunque se puede configurar para conducir a 21. Servos normalmente necesitan un pulso alto activo de en algún lugar entre los 0.5ms y 2.5ms, donde el ancho de pulso controla la posición del servo. El pulso debe repetirse aproximadamente cada 20 MS, aunque la frecuencia del pulso no es crítico. La anchura de pulso es crítica, ya se traduce directamente en la posición del servo.

Además de manejar servos, ServoBlaster puede configurarse para generar anchuras de pulso entre 0 y 100% del tiempo de ciclo, lo que es adecuado para controlar el brillo del LED de hasta 21, por ejemplo.

El controlador crea un archivo de dispositivo, / dev/servoblaster, a la que puede enviar comandos. El formato del comando es

[número de servo] = [posición de servo]

(ej.: Eco P1 - 11 = 80% >/dev/servoblaster)

o

P [encabezado]-[pin] = [posición de servo]

(ex: echo P0 = 80% >/dev/servoblaster)

Primero, vamos a clonar Richardghirst proyecto en GITHUB:

CD

sudo git clone https://github.com/richardghirst/PiBits

Cambie dir:

CD PiBits

CD ServoBlaster

usuario CD

El contenido de la lista y verificar si el directorio contiene el archivo "servod.c"

LS

Compilar e instalar el archivo served.c:

sudo make servod

sudo hacer instalar

En este momento, debe instalarse el programa servod. Cambiar los permisos y ejecutar el programa para probarlo:

sudo chmod 755 servod

sudo. / servod

Si todo está bien, se puede ver en el monitor, la siguiente información:

 Board model: 2 GPIO configuration: P1 (40 pins) Using hardware: PWM Using DMA channel: 14 Idle timeout: Disabled Number of servos: 8 Servo cycle time: 20000us Pulse increment step size: 10us Minimum width value: 50 (500us) Maximum width value: 250 (2500us) Output levels: Normal Using P1 pins: 7,11,12,13,15,16,18,22 Servo mapping: 0 on P1-7 GPIO-4 1 on P1-11 GPIO-17 2 on P1-12 GPIO-18 3 on P1-13 GPIO-27 4 on P1-15 GPIO-22 5 on P1-16 GPIO-23 6 on P1-18 GPIO-24 7 on P1-22 GPIO-25 

Nota el servo asignación anterior. Sólo necesitamos 2 servos, por lo que debemos restringir los pines a utilizar. Vamos a considerar:

  • GPIO.17 (P1-11) se utilizará para la inclinación
  • GPIO.23 (P1-16) se utiliza para PAN

Para definir los pines a utilizar, se utilizarán los siguientes parámetros:

sudo. / servod--p1pins = 11, 16

Ejecutar el comando anterior, el monitor ahora se mostrará en su parte inferior:

Con pernos que P1: 11,16

Mapeo de servo:

0 a P1-11 GPIO-17

1 en P1-16 GPIO-23

También tenga en cuenta que si reinicia el IPC, la configuración voluntad l perder, así que. es importante incluir el último comando en /etc/rc.local

sudo nano /etc/rc.local

...

CD /home/pi/PiBits/ServoBlaster/user

sudo. / servod--p1pins = 11, 16

CD

...

También es importante cambiar el siguiente script:

sudo nano /etc/init.d/servoblaster

...

Case "$1" en
Inicio)

/usr/local/sbin/servod $OPTS >/dev/null

cambiar a:

/usr/local/sbin/servod --p1pins = 11, 16 $OPTS >/dev/null

...

 ;; ;;#!/bin/sh ### BEGIN INIT INFO # Provides: servoblaster # Required-Start: hostname $local_fs # Required-Stop: # Should-Start: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start/stop servod. # Description: This script starts/stops servod. ### END INIT INFO PATH=/sbin:/usr/sbin:/bin:/usr/bin . /lib/init/vars.sh OPTS="--idle-timeout=2000" STATUSFILE="/tmp/servoblaster-status" if [ $( id -u ) != 0 ]; then echo "ERROR: Must be run as root" exit 1 fi case "$1" in start) /usr/local/sbin/servod --p1pins=11,16 $OPTS >/dev/null<br> ;; restart|reload|force-reload) killall servod /usr/local/sbin/servod $OPTS >/dev/null ;; stop) killall servod ;; status) if [ ! -e /dev/servoblaster ]; then echo "ERROR: /dev/servoblaster does not exist" exit 2 fi rm -f $STATUSFILE echo "status $STATUSFILE" > /dev/servoblaster sleep 0.2 if [ ! -e $STATUSFILE ]; then echo "ERROR: servod not responding" exit 3 elif grep -q "^OK" $STATUSFILE; then echo "OK" exit 0 elif grep "^ERROR:" $STATUSFILE; then exit 4 else echo "ERROR: No status from servod" exit 5 fi ;; *) echo "Usage: servoblaster [start|stop|status]" >&2 exit 6 ;; esac exit 0 

ahora reinicie el sistema, por lo que los cambios pueden ser permanentes

sudo reboot

Eso es todo. Blaster de servo está instalado. Tenga en cuenta que en este momento ServoBlaster se reconocen sólo dos servos:

servo 0 == > p1-11

servo 1 == > 01-16

El comando echo se puede hacer en cualquiera de los formatos de abajo, con el mismo resultado:

echo P1 - 11 = 40% >/dev/servoblaster

echo P1 - 16 = 60% >/dev/servoblaster

o

Eco 0 = 40% >/dev/servoblaster

echo 1 = 60% >/dev/servoblaster

Artículos Relacionados

Robot de Control remoto de carga

Robot de Control remoto de carga

Control remoto Robot de cargaEN PRIMER LUGAR QUIERO BORRAR TU TODAS LAS DUDAS ANTES DE EMPEZAR. YO NO SOY NINGÚN EXPERTO TÉCNICO Y MECÁNICO EN LA MÁQUINA POR LO QUE NO NECESITARÁ GASTAR 100 DÓLARES EN ESTE PROYECTO ES PROYECTO TAN BARATO Y CONVENIENT
Basados en ARDUINO robot de control remoto IR

Basados en ARDUINO robot de control remoto IR

Hola todo el mundo. Este mi nuevo robot de control remoto proyecto IR utilizando arduino. Se trata de un robot de simple diseño, que usted puede construir fácilmente.Paso 1: requisitos:Requerimientos del proyecto:Arduino uno Tsop1738 (receptor ir)H p
Brazo de Robot de Control remoto

Brazo de Robot de Control remoto

este es el siglo secundaria ciencia Olimpiada brazo del Robot que compitieron en el torneo de la Olimpíada de Ciencias de Minnesota 2012 estado con 32 otros equipos. Construí y funcionó este brazo de robot de control remoto para el torneo, colocando
Robot de control remoto

Robot de control remoto

Has mirado alguna vez en un robot real y fue, ' Wow! Ojalá pudiera construir un robot como ese para mí, pero sería tan duro!» Bueno, con esta guía, será estúpidamente fácil y muy barato. Y aún no necesita ser un geek de electrónica para hacerlo.Paso
Aviones de papel con control remoto TV

Aviones de papel con control remoto TV

Me encanta todo lo que vuela. En mi infancia hice un montón de aviones de papel, pero tienen un gran problema. Después de algunos minutos caen. Así que ahora he diseñado un pequeño dispositivo que permite controlar la velocidad y la altura de su avió
Control de servomotor con control remoto

Control de servomotor con control remoto

Si buscas comodidad y controlar remotamente sus dispositivos electrónicos, usted encontrará su necesidad en este instructable.En este instructivo vamos a aprender cómo controlar un servomotor con control remoto, esto le dará un concepto general acerc
Control remoto para cámaras compactas Canon

Control remoto para cámaras compactas Canon

muy breve instructivo para dar un circuito que hace que un simple buen control remoto para cámara compacta de canon.Para uso con CHDK.Lo que hace:Permite tanto un obturador botón así como lo que es para que puede utilizar cualquier control remoto (po
Configurar OSMC(KODI) con control remoto en frambuesa Pi 2

Configurar OSMC(KODI) con control remoto en frambuesa Pi 2

Hola a ver el video y prácticamente resume cómo configurar cualquier mando a distancia en su casa con la OSMC.Este tutorial le mostrará cómo instalar OSMC(Kodi) en frambuesa Pi 2 uso masilla y cómo configurar cualquier mando para navegar OSMC.Este tu
Control de tus electrodomésticos con control remoto de TV!!

Control de tus electrodomésticos con control remoto de TV!!

Ver el proyecto salida vídeo aquí.He encontrado que algunas personas son muy perezosos para levantarse ir a la Junta y pulse el interruptor para encender la luz o ventilador o cualquier otro aparato pero Hey!, ahora hay una solución más fácil. Ahora
Aplicaciones de IoT industrial - calidad del aire control remoto + Sensor de CO2 control

Aplicaciones de IoT industrial - calidad del aire control remoto + Sensor de CO2 control

** Actualización: El siguiente artículo es de nuestra aplicación Android obsoleta! VALARM es Industrial IoT. Ayudaremos a sus equipos y su empresa con aplicaciones de IoT Industrial utilizando Herramientas de nube de Valarm.Se recomienda utilizar dis
Arduino robot Android control remoto II

Arduino robot Android control remoto II

Cuando compré mi Complubot hace un año, no pensé en lo divertido que podría ser, tengo práctica con seguir Vehículo de línea, coche del cepillo, pero al leer leer el artículo en instructables relacionadas con bluethooth rc, empecé a pensar que sería
Inteligente Robot con control de voz y visión

Inteligente Robot con control de voz y visión

Cómo hacer un robot inteligente con visión artificial, control de voz, síntesis de voz y más, usando tu teléfono Android!Paso 1: partesHardware1. un teléfono Android que soporte OTG con Android KitKat o posterior instalado. Los teléfonos más modernos
Cómo hacer un coche robótico con control remoto.  (Ashwini sinha).

Cómo hacer un coche robótico con control remoto. (Ashwini sinha).

control remoto coche robot con brazo...Paso 1: Cosas necesarias you need-4 ruedas de juguete-1 motoreductor-4 de acero barra (fina como en la foto)-1motor-6 reducción de engranaje-alambre 20 cmPaso 2: Organizar el equipo como en pic.then fijar el mot
Brazo robótico inteligente con control remoto

Brazo robótico inteligente con control remoto

El objetivo de este proyecto era construir un brazo robótico simple que puede ser controlado remotamente. Este brazo robótico se unirá a mi robot móvil. Además, este diseño ha sido equipado con una pantalla OLED que ofrece información sobre el contro