IoT: Raspberry Pi-Roboter mit Video-Streamer und Pan/Tilt Kamera-Fernsteuerung über Internet (4 / 10 schritt)


Schritt 4: ServoBlaster Installation

Eine Greta-Bibliothek verwendet werden, um Servos zu steuern ist ServoBlaster

Dies ist Software für die RaspberryPi, bietet eine Schnittstelle, um mehrere Servos über die GPIO-Pins zu fahren. Sie steuern die Servo-Positionen durch Senden von Befehlen an den Fahrer sagen welche Impulsbreite ein bestimmtes Servo-Ausgang verwenden sollten. Der Fahrer behält die Impulsbreite, bis Sie einen neuen Befehl einige andere breite anfordern senden.

Standardmäßig ist es Laufwerk 8 Servos, konfiguriert, obwohl Sie es um bis zu 21 fahren konfigurieren können. Servos benötigen in der Regel eine aktive high-Pulse von irgendwo zwischen 0. 5ms und 2.5ms, wo die Impulsbreite die Position des Servos steuert. Der Puls sollte etwa alle 20ms, wiederholt werden, obwohl Pulsfrequenz nicht kritisch ist. Die Pulsbreite ist kritisch, da das direkt an die Servoposition übersetzt.

Neben dem Servos fahren, kann ServoBlaster konfiguriert werden, Impulsbreiten zwischen 0 und 100 % der Zykluszeit generieren eignet sich somit für die Steuerung der Helligkeit von bis zu 21 LEDs, zum Beispiel.

Der Treiber erstellt eine Gerätedatei, / Dev/Servoblaster, im schicken Befehle. Das Befehlsformat ist entweder

[Servo-Nummer] = [Servoposition]

(Bsp.: Echo P1 - 11 = 80 % >/Dev/Servoblaster)

oder

P [Header]-[Pin] = [Servoposition]

(ex: echo P0 = 80 % >/Dev/Servoblaster)

Erstens Mal Klonen Richardghirst Projekt von GITHUB:

CD

Sudo Git clone https://github.com/richardghirst/PiBits

Dir zu ändern:

CD PiBits

CD ServoBlaster

CD-Benutzer

Liste der Inhalte und überprüfen, ob das Verzeichnis die Datei "servod.c enthält"

LS

Kompilieren Sie und installieren Sie die Datei served.c:

Sudo Make servod

Sudo machen installieren

In diesem Moment muss das Programm Servod installiert werden. Ändern Sie die Berechtigungen, und führen Sie das Programm um es zu testen:

Sudo Chmod 755 servod

Sudo. / Servod

Wenn alles in Ordnung ist, sehen Sie auf den Monitor, die folgenden Informationen:

 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 

Beachten Sie das Servo Mapping oben. Wir benötigen nur 2 Servos, sodass wir die Stifte verwendet werden einschränken müssen. Betrachten wir:

  • GPIO.17 (P1-11) wird für TILT verwendet werden
  • GPIO.23 (P1-16) wird verwendet für PAN

Um die Stifte verwendet werden zu definieren, müssen die folgenden Parameter verwendet werden:

Sudo. / Servod--p1pins = 11, 16

Den obigen Befehl ausführen, zeigt der Monitor nun in seinem unteren Teil:

Mit Hilfe der P1-Pins: 11,16

Servo-Mapping:

0 auf P1-11 GPIO-17

1 auf P1-16 GPIO-23

Beachten Sie auch, dass wenn Sie RPi neu starten, die Konfiguration wird l, so verloren werden. Es ist wichtig, den letzten Befehl in /etc/rc.local aufnehmen

Sudo Nano /etc/rc.local

...

CD /home/pi/PiBits/ServoBlaster/user

Sudo. / Servod--p1pins = 11, 16

CD

...

Auch ist es wichtig das Skript unten:

Sudo Nano /etc/init.d/servoblaster

...

Case "$1" in
Start)

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

ändern Sie:

/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 

jetzt starten Sie Ihr System neu, damit die Änderungen dauerhaft sind

Sudo reboot

Das war's. Servo-Blaster ist installiert. Beachten Sie, dass an dieser Stelle ServoBlaster nur zwei Servos erkennt:

Servo 0 == > p1-11

Servo 1 == > 01-16

Der Echo-Befehl kann auf eine von den Balg-Formaten, mit gleichen Ergebnis durchgeführt werden:

Echo P1 - 11 = 40 % >/Dev/Servoblaster

Echo P1 - 16 = 60 % >/Dev/Servoblaster

oder

0 = 40 % Echo >/Dev/Servoblaster

Echo 1 = 60 % >/Dev/Servoblaster

In Verbindung stehende Artikel

Internet-Steuerelement hinzufügen Raspberry Pi-Roboter mit Runmyrobot.com

Internet-Steuerelement hinzufügen Raspberry Pi-Roboter mit Runmyrobot.com

Wie Sie Ihren Roboter mit der Welt teilen und lassen andere Menschen mit ihm mit runmyrobot.com zu spielen. Diese Seite ist Beta-Tests, aber es sollte funktionieren. Wenn Sie irgendwelche Probleme haben, lassen Sie es uns wissen Sie, durch Veröffentl
Bauen Sie einen einfachen Roboter mit einem Arduino und L293 (H-Bridge)

Bauen Sie einen einfachen Roboter mit einem Arduino und L293 (H-Bridge)

Hey Leute, das ist meine erste instructable, und ich bin hier zu zeigen wie man baut einen einfachen Roboter mit einer Prise Arduino Programmierung Mach dir keine Sorgen, ich habe die Codedatei unten angebracht, können Sie es als Referenz.Diejenigen,
Baldroid v3 Balancing Roboter mit Actobotics teilen und IOIO-OTG

Baldroid v3 Balancing Roboter mit Actobotics teilen und IOIO-OTG

Hallo, nach ein paar Prototypen mit einem Android-Handy + IOIO + OTG Modul entwerfen ich beschlossen, ein fertiges Produkt mit Teile und Komponenten von Actobotics / Servocity.com... Neben der Qualität der Actobotics Produkte machte die breite Palett
Hindernis Avoider Roboter mit Arduino Uno und IR Näherungssensor

Hindernis Avoider Roboter mit Arduino Uno und IR Näherungssensor

Die Schritte zum Erstellen Sie ein Hindernis zu vermeiden Roboter verwenden Arduino Uno und IR NäherungssensorSchritt 1: Benötigte Teile(1) Arduino Uno R3 (Klon tun wird)(2) IR Näherungssensoren (2 empfohlen)(3) Chassis mit Motoren(4) Steckbrett(5) L
Pan Tilt Kamera mit Arduino und Joystick

Pan Tilt Kamera mit Arduino und Joystick

wie erstelle ich eine Pfanne mit einem alten Psx-Stick und Arduino-Kamera-System zu kippen.Dieses System können Sie legen Sie die Einstellung zum Beispiel eines Cam, laser oder was auch immer Sie anhängen möchten.Finden Sie den Code und die Beschreib
IoT - Controlling ein Raspberry Pi Roboter über Internet mit HTML und Shell-Skripte nur

IoT - Controlling ein Raspberry Pi Roboter über Internet mit HTML und Shell-Skripte nur

(Wer gerne diese Instructables, vergessen Sie bitte nicht darüber abstimmen (oben: rechten Eckfahne). es ist auf INTERNET der Dinge und Automatisierung Wettbewerben konkurrieren. Vielen Dank! ;-)In diesem Instructables lernen wir wie erstelle ich ein
JabberBot! Der Arduino Roboter mit einem ATMega Gehirn und Bluetooth-Braun! :-)

JabberBot! Der Arduino Roboter mit einem ATMega Gehirn und Bluetooth-Braun! :-)

JabberBot wird über eine serielle Bluetooth-Verbindung über eine Android-Anwendung gesteuert.Die Eingeweide davon basieren auf eine I2C-Adaption von Adafruit WaveShield und MotorShield.Das Bluetooth-Modul ist ein Bluetooth-Mate Silber von Sparkfun.Wa
Fügen Sie 6 Ultraschall Abstandssensor zu bestehenden Raspberry Pi Roboter

Fügen Sie 6 Ultraschall Abstandssensor zu bestehenden Raspberry Pi Roboter

Dies ist kein Tutorial zu einem Raspberry Pi-Roboter mit 6 Ultraschall-Sensoren.Dies ist ein Tutorial zeigt die beste Methode, 6 Ultraschall-Sensoren direkt in eine Himbeere pi ohne den Einsatz von jeder Mikrocontroller wie Arduino.NIVEAU: FORTGESCHR
Sehr einfach, Arduino Bluetooth Spion Roboter mit Android RemoteControl app erstellen

Sehr einfach, Arduino Bluetooth Spion Roboter mit Android RemoteControl app erstellen

In diesem Projekt werden Sie sehen, wie einfache Mischung verschiedener Technologien und Drittanbieter-apps erlaubt um eine recht komplexe Spielzeug zu erstellen.Der Roboter macht zwei Dinge:(1) basierten Arduino Spion Roboter bewegt sich entsprechen
ARD-e: der Roboter mit einem Arduino als Gehirn

ARD-e: der Roboter mit einem Arduino als Gehirn

wie erstelle ich einen open-Source-Arduino gesteuert-Roboter für unter $100.Hoffentlich werden nach der Lektüre dieses instructable Sie Ihren Einstieg in die Robotik nehmen können. ARD-e Kosten ungefähr $90, $130 je nachdem, wieviel Freizeit Elektron
Raspberr Pi-Roboter-A Hybrid-Roboter mit erweiterten Funktionen

Raspberr Pi-Roboter-A Hybrid-Roboter mit erweiterten Funktionen

Ein Roboter kann kein menschliches Wesen verletzen oder durch Untätigkeit ermöglichen ein Mensch zu Schaden gekommen. Ein Roboter muss gehorchen sie von menschlichen Wesen außer wo solche Aufträge zum ersten Gesetz Widerspruch würde. Ein Roboter muss
UVC-Video-Streaming

UVC-Video-Streaming

Wir haben in einem anderen Instrcutables ( wie Sie UVC (USB Videl Klasse) Ausrüstung verwenden, um Bild und Setup Ameba Arduino-Board gezeigt, um das Bild über wireless-Schnittstelle zu versenden. Mit dem gleichen Setup mit verschiedenen Skizze, zeig
Arduino-basierte Linie Anhänger Roboter mit Zeilensensor Pololu QTR-8RC

Arduino-basierte Linie Anhänger Roboter mit Zeilensensor Pololu QTR-8RC

UPDATE FEB 2012: Diese Anleitung ist auf Adafruit Blog vorgestellthttp://www.Adafruit.com/Blog/2012/02/14/Arduino-based-Line-Follower-Robot/Dies ist Faz3a II, meine erste Zeile-nach-Roboter, die hoffentlich auch für die Labyrinth-Lösung verwenden. Fr
Linie nach Roboter mit PID-Algorithmus

Linie nach Roboter mit PID-Algorithmus

Zeile folgende Roboter mit Solidworks konzipiert und umgesetzt mit Arduino, Ardumoto für die Kontrolle der Räder und eine Sensor-Bar mit 8 Infrarot-Sensoren. Hinterlassen Sie für Fragen zu dieser Linie folgen Sie bitte einen Kommentar oder Nachricht