Wussten Sie, dass Rumba gesteuert werden kann? Rumba ist standardmäßig mit einer seriellen Schnittstelle ausgestattet, und es scheint, dass Sie diese Schnittstelle verwenden können, um Rumba wie programmiert auszuführen (es scheint seit langem eine berühmte Geschichte zu sein).
Ich habe vor kurzem eine Rumba bekommen, also habe ich beschlossen, damit herumzuspielen. Ich hoffe du kannst bis zum Ende mit mir mithalten.
In diesem Artikel besteht das Ziel darin, Rumba remote zu betreiben. Die Artikel sind in [Hardware] und [Software] unterteilt. Dieses Mal werden wir die Vorbereitungen zusammenfassen, bevor wir Rumba steuern. Selbst wenn Sie aufgrund eines bestimmten Virus nicht nach Hause gehen können, können Sie mit Rumba problemlos aus der Ferne nach Hause gehen.
1.Roomba Rumba, die gesteuert werden kann, ist begrenzt. Grundsätzlich gibt es nur serielle Schnittstellen bis zur Serie ** 500, 600, 700, 800 **. Es scheint jedoch, dass die 900er-Serie anstelle der seriellen Schnittstelle mit microUSB ausgestattet ist. Übrigens, die oben genannte Rumba ist eine kleine alte Serie, so dass es in letzter Zeit möglich ist, sie mit Yahoo! Wenn Sie keine haben, warum nutzen Sie diese Gelegenheit nicht, um eine zu bekommen?
[[IRobot Roomba770] Junk Essay](https://furuya-base.net/home/2020/09/09/%e3%80%90irobot-roomba770%e3%80%91%e3%82%b8%e3% 83% a3% e3% 83% b3% e3% 82% af% e3% 82% a8% e3% 83% 83% e3% 82% bb% e3% 82% a43 /) Sie können es auch dann verwenden, wenn es sich um ein Junk-Objekt wie ↑ handelt.
2.Raspberry Pi Himbeerkuchen wird zur Kontrolle verwendet. Grundsätzlich ist jeder Typ in Ordnung, solange Sie über GPIO verfügen. ** 3 ** wird jedoch empfohlen, wenn Sie remote arbeiten möchten. Der Grund dafür ist, dass High-End-Modelle wie 3 Modell B + und 4 mehr Strom verbrauchen, sodass es sehr wahrscheinlich ist, dass sie nicht mit mobilen Batterien betrieben werden.
Zum Fahren von Raspeltorte. USB Typ A muss eine Versorgungskapazität von ** 2,4 [A] ** oder höher haben.
Ich benutze es, weil ich das Bild sehen möchte, wenn ich es aus der Ferne bediene. Ich denke, dass jede USB-Verbindung in Ordnung ist. Es kann zweckmäßig sein, eine Autofokusfunktion zu haben.
Es wird verwendet, um Rumba und Raspeye zu verbinden. Grundsätzlich wird dieses Kabel jedoch nicht verkauft, daher müssen Sie ** Ihr eigenes ** erstellen. Also habe ich unten beschrieben, wie man es macht. Wenn Sie sich hinsichtlich des Aussehens nicht besonders auskennen, können Sie Überbrückungsdrähte zwischen Stecker und Buchse verwenden.
Zuerst machen wir das Kabel. Bereiten Sie einen Mini-DIN 7Pin-Stecker vor. In Akihabara erhalten Sie es für etwa 150 Yen im 2. Stock des Sengoku Tsusho. Gemäß den von iRobot offiziell herausgegebenen Rumba-Spezifikationen werden die Pins 3 und 4 für das serielle Senden und Empfangen verwendet. Da der Signalpegel der seriellen Kommunikation als 0-5 [V] beschrieben wird, scheint es, dass eine Kommunikation auf TTL-Ebene anstelle des ** RS232C-Signalpegels ** erforderlich ist. Daher kann es ohne Pegelwandler nicht direkt vom Computer aus gesteuert werden. Daher werde ich dieses Mal GPIO von Raspeye und Rumba verbinden, um zu kommunizieren. Insbesondere Draht wie in dieser Abbildung gezeigt. ** Bitte so verdrahten, dass TX und RX miteinander verbunden sind **. Bitte beachten Sie, dass Sie nicht mit TX-TX oder RX-RX kommunizieren können. Abgesehen davon empfehlen wir für das Kabel das 3,5-φ-Stereo-Ministecker-Kabel des 300-Yen-Lautsprechers von Daiso, das sowohl in der Dicke als auch in der Länge optimal ist. (Der Lautsprecher kann jedoch nicht verwendet werden.)
Es wird auch empfohlen, das Schrumpfrohr des Daiso-Produkts zu verwenden, da es gut aussehen kann.
Ich werde die Raspeltorte setzen. Ich denke, Raspberry Pi OS ist sicher wie das Betriebssystem.
Verbinden Sie Raspeye mit einem beliebigen WLAN. In diesem Fall ist es in Ordnung, wenn Sie über die GUI etwas einstellen können. Da Sie jedoch später vom Host-Computer aus darauf zugreifen möchten, wird empfohlen, eine feste IP-Adresse anzuhängen.
Legen Sie eine feste IP-Adresse für das WLAN von Raspberry Pi 3 (Raspbian Jessie) fest ↑ Ich denke, die Erklärung dieser Person ist leicht zu verstehen und hilfreich.
Danach möchte ich es über die Befehlszeile steuern, also SSH aktivieren.
Methode zum Einstellen der SSH-Verbindung von außerhalb des LAN von Raspberry Pi 3 ↑ Ich denke, die Erklärung dieser Person ist leicht zu verstehen und hilfreich. In diesem Fall wird ausführlich erläutert, wie eine Verbindung von außerhalb des lokalen Bereichs hergestellt wird, sodass die Fernbedienung ideal ist. Wenn Sie jedoch nur den Vorgang überprüfen und ihn zuerst genießen möchten, können Sie nur SSH aktivieren.
Alles ist in Ordnung, solange das Terminal mit Raspeye verbunden werden kann. Wir verwenden Tera Term. Wenn Sie eine Verbindung herstellen können, indem Sie den Benutzernamen und das Kennwort in eine beliebige IP-Adresse eingeben, aktualisieren Sie diese vorerst.
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade
Bei Rasppie ist die serielle Kommunikation standardmäßig deaktiviert und muss aktiviert sein.
UART mit Raspberry Pi + serieller Kommunikation aktivieren ↑ Ich denke, die Erklärung dieser Person ist leicht zu verstehen und hilfreich.
Was mich vorerst interessiert, wenn ich hierher komme, ist, ob das Kabel richtig hergestellt ist. Senden wir also tatsächlich ein Signal und empfangen es selbst. Wenn es gut funktioniert, sollten Sie es korrekt empfangen können.
$pip3 install PySerial
Fügen Sie die obige Bibliothek mit pip zu python3 hinzu.
test_serial.py
import serial
def main():
#'/dev/serial0'
#'/dev/ttyAMA0'
port = '/dev/ttyAMA0'
ser = serial.Serial('COM3', 115200, timeout=0.1)
while True:
tx = bytes([128])
ser.write(tx)
print("tx:", tx)
rx = ser.readline()
print("rx: ", rx)
if __name__ == '__main__':
main()
Die verwendete Sprache ist Python 3.7. Tun Sie dies an der Raspeltorte und schließen Sie die Mini-DIN-Stifte 3 und 4 mit einem Clip oder etwas anderem kurz. Hoffentlich erhalten Sie den Wert "rx: b" \ x80 "nur, wenn Sie einen Kurzschluss haben.
Wenn der Wert "rx: b" ist, besteht eine hohe Wahrscheinlichkeit, dass der Draht irgendwo gebrochen ist. Wenn Sie die Meldung "Port konnte nicht geöffnet werden" / dev / ttyAMA0 "erhalten, ist UART möglicherweise nicht aktiviert. Überprüfen Sie dies daher dort.
Außerdem wird 2.7 standardmäßig aufgerufen, wenn Python mit Raspeye ausgeführt wird. Stellen Sie daher sicher, dass Sie es mit Python3 ausführen. ** (Python2 sollte keine Funktion namens "Bytes" haben, daher scheint es sich um einen Fehler zu handeln.)
Es ist eine Seite von hier. Das Platzieren jedes Geräts auf der Rumba bei der Steuerung der Rumba ist unordentlich und sieht nicht sehr gut aus. Daher ist es eine Einführung, die ich so mache. Dies ist ein Stativ und eine Einheitsband, die an Daiso verkauft werden. Die Webkamera, die ich verwendet habe, hat ein Schraubenloch zum Befestigen des Stativs, deshalb habe ich dieses Stativ verwendet, weil ich dachte, es sei billig und genau richtig. Da es einfach ist, den Blickwinkel der Kamera anzupassen, ist es ideal, um in Zukunft Systeme wie die Bildverarbeitung hinzuzufügen. Darüber hinaus sind alle Geräte an diesem Stativ befestigt. Bei normaler Verwendung von Rumba muss nur das Stativ entfernt werden. Für die Raspeltorte selbst habe ich mit dem Befestigungsloch im angebrachten Gehäuse ein Loch in einen Kunststoffwagen geeigneter Größe und Dicke gemacht und es mit einem Bindeband am Stativ befestigt. An häufig entfernten Geräten, z. B. mobilen Batterien, ist ein Klebeband angebracht.
Wenn dies abgeschlossen ist, ist das Hardware-Setup vorerst abgeschlossen. Dies funktioniert jedoch nicht. Daher können Sie beim nächsten Mal Lassen Sie uns eine Remote-Rumba [Software], eine grundlegende Rumba-Steuerung und eine Remote-Kamera verwenden Ich möchte ein System bauen.
1.iRobot Roomba 500 Open Interface (OI) Specification 2. Legen Sie eine feste IP-Adresse für das WLAN von Raspberry Pi 3 (Raspbian Jessie) fest 3. UART für Raspberry Pi + serielle Kommunikation aktivieren
Recommended Posts