„Marvin“ ist lizensiert und „iRP“ ist ein eingetragenes Warenzeichen von „JM3 Engineering“. „AREXX“ ist
eine eingetragenes Warenzeichen von AREXX Engineering. Alle anderen Warenzeichen stehen im Besitz
ihrer jeweiligen Eigentümer. Wir sind nicht verantwortlich für den Inhalt von externen Webseiten, auf die
in dieser Anleitung verlinkt wird!
Hinweise zur beschränkten Garantie und Haftung
Die Gewährleistung von AREXX Engineering beschränkt sich auf Austausch oder Reparatur des
Roboters und seines Zubehörs innerhalb der gesetzlichen Gewährleistungsfrist bei nachweislichen
Produktionsfehlern, wie mechanischer Beschädigung und fehlender oder falscherBestückung elektronischer
Bauteile, ausgenommen aller über Steckverbinder/Sockel angeschlossenen Komponenten.
Es besteht keine Haftbarkeit für Schäden, die unmittelbar durch, oder in Folge der Anwendung des
Roboters entstehen. Unberührt davon bleiben Ansprüche, die auf unabdingbaren gesetzlichen Vorschriften
zur Produkthaftung beruhen.
Sobald Sie irreversible Veränderungen (z.B. Anlöten von weiteren Bauteilen, Bohren von Löchern etc.) am
Roboter oder seinem Zubehör vornehmen oder der Roboter Schaden infolge von Nichtbeachtung dieser
Anleitung nimmt, erlischt jeglicher Garantieanspruch!
Es kann nicht garantiert werden, dass die mitgelieferte Software individuellen Ansprüchen genügt oder
komplett unterbrechungs- und fehlerfrei arbeiten kann. Weiterhin ist die Software beliebig veränderbar
und wird vom Anwender in das Gerät geladen. Daher trägt der Anwender das gesamte Risiko bezüglich
der Qualität und der Leistungsfähigkeit des Gerätes inklusive aller Software. Bitte beachten Sie auch die
entsprechenden Lizenzvereinbarungen auf der SD-Karte bzw. Info-Box im Browser!
WICHTIG! - Vor dem ersten Gebrauch dieses Roboters lesen Sie bitte zuerst die Gebrauchsanleitung
aufmerksam durch! Sie erklärt die richtige Handhabung und informiert Sie über mögliche Gefahren. Zudem
enthält sie wichtige Informationen, die nicht allen Benutzern bekannt sein dürften.
Diese Bedienungsanleitung ist urheberrechtlich geschützt.
Der Inhalt darf ohne vorherige schriftliche Zustimmung des
Herausgebers auch nicht teilweise kopiert oder übernommen
werden!
Änderungen an Produktspezifikationen und Lieferumfang
vorbehalten. Der Inhalt dieser Bedienungsanleitung kann
jederzeit ohne vorherige Ankündigung geändert werden.
Neue Versionen dieser Anleitung erhalten Sie kostenlos auf
http://www.arexx.com/
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: ii
Sicherheitshinweise
• Prüfen Sie die Polung von der Spannung.
• Halten Sie die Elektronik stets trocken. Wenn das Gerät einmal nass geworden ist, entfernen Sie sofort die
Batterien oder die Stromversorgung.
• Bei längerem Nichtgebrauch die Batterien entfernen bzw. die Stromversorgung trennen.
• Bevor Sie das Modul in Betrieb nehmen, prüfen Sie stets seinen Zustand sowie auch den der Kabel.
• Wenn Sie meinen, dass das Gerät nicht länger sicher betrieben werden kann, trennen Sie es sofort von der
Stromversorgung und stellen Sie sicher, dass es nicht unabsichtlich benutzt werden kann.
• Befragen Sie einen Fachmann, wenn sie sich der Bedienung, Sicherheit oder Anschluss des Moduls nicht
sicher sind.
• Niemals das Modul in Räumlichkeiten oder unter ungünstigen Bedingungen betreiben.
• Das Modul besitzt hochempfindliche Bauteile. Elektronische Bauteile sind sehr gegen statische
Elektrizität empfindlich. Fassen Sie das Modul nur an den Rändern an und vermeiden Sie direkten
Kontakt mit den Bauteilen auf der Platine.
Normaler Gebrauch
Dieses Produkt wurde als Experimentierplattform für alle an Robotik interessierten Personen entwickelt. Das
Hauptziel besteht darin zu lernen, wie man das Gerät in C/C++-Sprache programmieren kann. Das Gerät ist
kein Spielzeug! Es eignet sich nicht für Kinder unter 14 Jahren.
Das Gerät ist nur für den Gebrauch in Innenräumen bestimmt. Es darf weder feucht noch nass werden. Bitte
achten Sie auch auf Kondenswasser, das sich bei einem Wechsel von einem kalten in einen warmen Raum
entwickeln kann. Warten Sie eine Weile, bis sich das Gerät an die neuen Umgebungsbedingungen angepasst
hat, bevor Sie es in Betrieb nehmen. Jede andere Einsatzart als oben beschrieben kann zu Schäden und
Risiken wie Kurzschluss, Brand, Stromschlag usw. führen Eine Verwendung des gesamten Produkts ist nur in
geschlossenen, trockenen Innenräumen erlaubt. Das Produkt darf nicht feucht oder nass werden.
Eine andere Verwendung als zuvor beschrieben führt zu Beschädigungen dieses Produkts, außerdem ist dies
mit Gefahren wie z.B. Kurzschluss, Brand, elektrischer Schlag etc. verbunden.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: iii
Laser Sicherheitshinweise Proxi Sensor
VL6180X 80/87 DocID026171 Rev 7
Der VL6180X Proximitiy Sensor beinhaltet eine Laserlichtquelle und die zugehörige Ansteuer- schaltung. Die
Laserlichtausgangsleistung wurde so festgelegt das diese immer unter allen angemessenen und erdenklichen
Bedingungen den Sicherheitsgrenzen eines Class 1 Lasers entspricht. Dies beinhaltet auch Einzelfehler gemäß IEC 60
825-1:2007. Die Laserlichtleistung bleibt in den spezifizierten Grenzen so lange die von ST Microelectronics
empfohlenen Einstellungen und Betriebsbedingungen wie im Datenblatt spezifiziert eingehalten werden.
Die Laser Ausgangsleistung darf unter keinen Umständen erhöht und keine optischen Linsen zur Bündelung verwendet
werden!
Es wird zur Sicherheit empfohlen nicht in die Laserlichtquelle zu schauen.
Complies with 21 CFR 1040.10 and 1040.11 except for deviations pursuant to Laser Notice No.50, dated June 24, 2007.
Marvin - iRP WebIDE - für Browser auf PC, Notebook und Tablet
Abbildung 0.2 Welcome-Screen
*1) *2)
Abbildung 0.3 Program-Screen
Abbildung 0.4 Remote Control und Status Display
*1) Apple iPAD oder MacBook kann Programme nur auf dem Roboter, nicht lokal, speichern.
*2) Firefox, Google Chrome (PC/Notebook/Samsung Galaxy Tab A) und Safari (iPad Pro/MacBook Air) sind getestet – Internet Explorer oder Edge werden nicht unterstützt.
AREXX Engineering & JM³ Engineering
8. März 2017Seite: 1
Version: 1.20
1Einleitung
Der JM3 IoT-Roboter, genannt Marvin, besticht durch seine Ausstattung und Leistungsfähigkeit.
Hauptbestandteile sind der TIVA TM C- Mikrokontroller mit ARM Cortex-M4F und 512KByte Flash,
256KByte SRAM, 6KB EEPROM und dem CC3100 WI-FI ® Networkcontroller der die Standards 802.11
b/g/n mit bis zu 16Mbit/s Datenrate, Multi-Connection, TCP und UDP unterstützt. Optimal angepasste
PCB-Antenne, Infrastruktur- & Ad-Hoc Mode und eine Reichweite > 25m unter normalen Bedingungen.
Außerdem ist der Marvin mit High-Tech Sensorik, ein 9D Gyro / Kompass, und Proximity- Sensoren, die
nahezu unabhängig vom Reflektionsgrad der Oberfläche arbeiten, ausgestattet. Diese können auch die
Umgebungshelligkeit messen. Eine Batterie gepufferte Real-Time-Clock und der Arduino kompatible
Erweiterungs-Header gehören ebenfalls zur Ausstattung. Es können hier weitere Sensorik (GPS oder
Barometer-Modul), eigene H/W oder andere Arduino Shields (Software muss hier selbst entwickelt werden)
angeschlossen werden.
Die kraftvollen Mikro-Getriebemotoren mit hochauflösender Odometrie garantieren eine hohe
Geschwindigkeit des Roboters mit seinem Gummikettenantrieb. Die Spannungsversorgung erfolgt über 6
Standard AA Batterien oder NiMH Akkus.
Ein virtuelles Display kann auf im Browser (Firefox, Google Chrome, Safari) auf einem PC, Mac oder Tablet
PC dargestellt werden. Außerdem kann der Marvin Roboter ferngesteuert werden.
Die grafische Programmieroberfläche „Marvin – iRP“ ermöglicht den Einstieg in die Welt der
Programmierung auf einfache Weise – die insbesondere für Schüler und Jugendliche gedacht ist, da man
nicht erst eine Programmiersprache erlernen und eine Software Entwicklungsumgebung installieren muss.
Die Option C/C++ ist für fortgeschrittene Programmierer und Experten gedacht. Die Programmierung erfolgt
unter C/C++ mit FreeRTOS und einer kompletten Library aller Hardware- Komponenten (virtuelles Display,
Taste, UART, SPI, I2C, DMA, ADC und Timer etc.). Für das laden des Hex-Codes wird das JM3
–Robot-Tool für Linux und Windows bereitgestellt.
Marvin bietet alle Möglichkeiten einen Roboter zu programmieren und zu steuern, entweder über die
grafische iRP Oberfläche oder aber mit C++.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 2
Zubehör (nicht Enthalten)
• AA Batterien (Ultra Power ) oder Akkus NiMH z.B. Ansmann HR06 Typ 2700
• RTC mit Puffer-Akku (lädt automatische während dem Betrieb)
• 1 x RGB Status LED
• Status LEDs für Wi-Fi®
• 2 x LEDs USB (Rx, Tx)
• 2 x Head-Scheinwerfer (weiß) und 2x Rücklichter (Rot)
• USB-Programmierung / Wi-Fi Konfiguration (Micro USB Stecker)
• Micro SD-Card Reader
• SMD-Taste
• Arduino Erweiterungsstecker - separate UART, SPI, I2C; 6 ADC, bis zu 8 GPIOs
• Interrupt fähig, bis zu 4 PWM Kanäle für Servos
• 6 Zellen Spannungsversorgung für AA-Batterien oder Akkus für lange Betriebszeiten
• Schiebeschalter und AUX- Batterie Eingang
• Schaltregler für hohe Effizienz der Stromversorgung
• Kraftvolle Mikro-Getriebemotoren mit hochauflösender Odometrie für hohe Geschwindigkeit
• Gummikettenantrieb
• Anwendungsbeispiele für Marvin – iRP und Fernsteuerung über Firefox oder Google Chrome Browser
(PC, Notebook oder Tablet (Android))
• Robot Programmier-Tool (unterstützt alle AREXX Roboter) und USB-Treiber für Linux und
Windows 7
• C++ Software Entwicklungspaket (GCC ARM Compiler (Linux), C++ Software Library,
Anwendungsbeispiele)
• Micro SD Karte (Roboter Dokumentation, iRP Software und Firmware: RobotTool, Beispiel
Programme)
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 5
2.2.2 Erfassungsbereich der Proximity-Sensoren
Die Sensoren haben einen Erfassungsbereich (FoV) von 25° und einer Reichweite von ca. 30 cm. Distanzen
kleiner als 10 cm werden als ‚Null‘ angezeigt. Damit ist sichergestellt dass der Roboter den Hindernissen
noch gut ausweichen kann ohne rückwärts zu fahren zu müssen.
Die beiden äußeren Sensoren sind mit +15° bzw. -15° zur Roboter-Nullachse verdreht um eine breiteren
Erfassungswinkel zu erzielen. Die Darstellung des resultierenden Erfassungsbereiches zeigt ein leichtes
Überlappen der einzelnen Sensoren. Hierdurch wird sichergestellt dass alle Hindernisse im Fahrweg erkannt
werden. Analog gilt das Bild auch für die optionalen Sensoren für hinten.
FoV Proximity-Sensoren (Darstellung mit allen drei Sensoren):
Abbildung 2.2 Field of View der vorderen Proxi Sensoren
Die Sensoren haben ein Rastermaß von 1,27mm – also halb so viel wie üblich. Deshalb sollte man einen
Lötkolben mit feiner Spitze und einer Leistung von ca. 50 W Leistung besitzen.
Achten Sie auf senkrechten Sitz der Sensoren und das sie nicht schief stehen. Es wird empfohlen zunächst
nur einen Pin anlöten, dann den Sensor auszurichten und dann erst alle anderen Pins anlöten. Die Details zum
aktivieren der Sensoren finden Sie in ??.
Hinweis:Vergessen Sie nicht die Sensoren noch per Software aktivieren!
Abbildung 2.3 Marvin mit hinteren Proximity-Sensoren
Hinweis:Am besten üben Sie das Löten vorher an einer Lochraster - Leiterplatte und
seien Sie sparsam mit dem Lötzinn. Zu viel Zinn kann Kurzschlüsse zwischen
den PINs verursachen!
2.3 Inbetriebnahme
2.3.1 Dokumentation und Software
Die komplette Dokumentation und die Marvin – iRP Web IDE Software befinden sich auf der beigelegten
Micro-SD Karte und kann über das Marvin Web-Interface heruntergeladen werden und befindet sich dann im
entsprechen Order für Downloads des Computers.
Die SD Karte verwendet das von Linux bekannte ext4-Dateisystem und kann nicht von Windows PCs oder
MacBooks ohne spezielle Hilfsprogramme gelesen werden. Eventuelle Updates werden über
Datenträgerabbilder verteilt, die mit einem Hilfsprogramm auf die Micro SD-Karte geschrieben werden.
Dazu ist ein passender Micro SD-Kartenadapter auf USB beigelegt.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 7
Hinweis:Im Auslieferzustand ist der Roboter auf den WiFi AdHoc-Mode eingestellt
damit sie direkt mit einem PC mit Wifi-Interface kommunizieren können
(z.B. Notebook, Tablet etc.).
Es gibt eine Vielzahl von Micro SD Karten die unterschiedliche Eigenschaften
besitzen und die im Marvin eventuell nicht ordnungsgemäß funktionieren.
SD-XC Karten sowie SanDisk Ultra Karten werden generell nicht unterstützt!
Marvin Software updates bestehen aus dem Datenträgerabbild mit der
iRP Software. Außerdem ist darin auch die passende Firmware (hex-file)
enthalten.
Die Versionen von iRP Software und Firmware sind immer identisch!
2.3.2 iRP WebIDE
Die Web Interface Software und die Marvin Dokumentation befinden sich schon auf der beigelegten Micro
SD Karte. Falls die Micro SD-Karte nicht schon im Roboter eingesteckt ist, tun sie dies nun vorsichtig.
Abbildung 2.4 Marvin mit eingesetzter SD Karte
Hinweis:Die Micro SD-Karte muss in der Regel nicht aus dem Roboter entnommen
werden. Sie ist geschützt verbaut damit sie vor Beschädigungen geschützt ist.
Jedoch sollte man den Roboter nicht so anfassen das die Micro SD-Karte
beschädigt wird!
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 8
2.3.3 iRP mit dem PC/Tablet verbinden
Es gibt generell zwei unterschiedliche Betriebsmodi wie der Marvin Roboter mit dem PC/Notebook über
WiFi verbunden werden kann:
• WiFi - Infrastruktur Mode: Marvin mit einen Netzwerk verbinden (WiFi-Router oder Access-Point)
• WiFi - AdHoc Mode: hier können sie den Marvin direkt mit dem Notebook oder Tablet-PC verbinden.
– SSID: Marvin
– IP: 192.168.1.1
– Passwort: IoT-Robot
Hinweis:Groß- / Kleinschreibung beachten!
Nur im AdHoc Mode ist die SSID des Marvin Roboters sichtbar, da ja im
Infratruktur-Mode sich der Marvin zu Ihrem Router verbindet und diese seine
eigene SSID hat.
Bitte löschen Sie den Browser Cache falls der iRP Bildschirm nicht richtig
geladen wird!
2.3.3.1 WiFi - AdHoc Mode
Dieser Modus ist bei Auslieferung des Roboters eingestellt. Er stellt die schnellste Möglichkeit dar den
Roboter zu programmieren oder zu steuern.
Um den Roboter mit dem PC/Notebook zu verbinden führen Sie folgende Schritte aus:
1. PC/Notebook mit WiFi Interface einschalten
2. Roboter einschalten - die grüne WiFi Staus LED leuchtet
3. Am PC/Notebook im WiFi Menü nach Funknetzwerken suchen - hier sollte der SSID Eintrag „Marvin“
zu sehen sein.
4. Koppeln Sie den Roboter mit dem PC indem sie das Passwort eingeben und die Verbindung aktivieren.
5. Browser öffnen und die IP 192.168.1.1 eingeben. Sie sollten nun Abbildung 2.5 im Browser sehen.
Das war es schon – Sie können sich jetzt mit dem Menü vertraut machen und ein erstes kleines
Programm laden und ausführen!
6. Laden Sie das Beispielprogramm „Lauflicht“
7. Sie sollten jetzt die Zustands LED verschieden Farben leuchten sehen die jeweils nach 1sec wechseln.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 9
2.3.3.2 WiFi - Infrastruktur Mode
Dieser Modus muss zunächst am Roboter mit dem JM3 Robot Tool konfiguriert werden und am WiFi Router
angemeldet werden. Der Marvin unterstützt DHCP – d.h. eine IP-Adresse wird automatisch zugewiesen.
Hinweis:Falls nötig - ändern Sie die Firewall-Einstellungen damit der Marvin Roboter
sich mit dem Netzwerk verbinden kann!
Bitte löschen Sie den Browser Cache falls der iRP Bildschirm nicht richtig
geladen wird!
Hier der Ablauf zu Umstellung auf Infrastruktur-Mode:
1. Installieren Sie das JM3-Robot Tool (Installation - siehe Kapitel 4)
2. Verbinden Sie den Roboter mit dem Rechner (Micro USB Kabel)
3. Öffnen Sie das Robot Tool, schalten Sie den Roboter Ein und stellen Sie eine Verbindung her.
4. Gehen Sie wie folgt vor:
a) Roboter über USB verbinden
b) Wechseln sie in das Terminal Fenster (Tab)
c) Senden Sie folgende Kommandos an den Roboter:
• wlan DEFAULT - „Enter“
• Schalten Sie den Roboter AUS und EIN wenn es im Fenster angezeigt wird
• wlan STA addprofile „SSID-Ihres Routers“ „Passwort Ihres Routers“ - „Enter“
Hinweis:Achten Sie darauf das beim Absenden des „addprofile“
Befehls die Terminal History ausgeschaltet ist.
Ansonsten wird Ihr Passwort im Klartext auf dem PC
gespeichert!!!
Hinweis:Weitere Informationen über die Kommandos sowie
die über die Eingabe von Leerzeichen finden Sie in
Abschnitt 2.5
• wlan STA MODE - „Enter“
• Schalten Sie den Roboter AUS und EIN wenn es im Fenster angezeigt wird
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 10
d) Überprüfen Sie die zugewiesene IP Adresse (DHCP Router) für den Marvin Roboter
• wlan getIP - „Enter“
Die aktuelle IP Adresse wird nun im Terminalfenster angezeigt.
5. Danach öffnen Sie den Browser und geben die IP Adresse ein, zum Beispiel: 192.168.1.120
Sie sollten nun Abbildung 2.5 im Browser sehen.
Das war es schon – Sie können sich jetzt mit dem Menü vertraut machen und ein erstes kleines
Programm laden und aufführen!
6. Laden Sie das Beispielprogramm „Lauflicht“
7. Sie sollten jetzt die Zustands LED verschieden Farben leuchten sehen die jeweils nach 1 sec wechseln.
Abbildung 2.5 Marvin WebIDE Willkommensbildschirm
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 11
2.3.4 Status LEDs
Zur Zustandsanzeige des Roboters (RGB-LED):
•Blau-normale Funktion
•Lila (blinken)-Batteriespannung niedrig
•Gelb-keine SD Karte oder Funktionsbeeinträchtigung,
Hinweise auf USB Interface.
•Grün-beschäftigt (SD recovery)
•Blau/Grün (blinken)-Keine Firmware
•Gelb/Rot (blinken)-Programmiert Firmware
•Rot-Funktionsstörung - bitte ein und ausschalten
Zur Zustandsanzeige des WIFI Subsystems gibt es zusätzlich drei LEDs:
•Rot-Verbindungsproblem mit WiFi Netzwerk
•Gelb (blinken)-Daten werden übertragen
•Gelb (dauer)-WiFi Verbindung hängt
•Grün-mit WiFi Netzwerk verbunden, dies ist im AdHoc Modus immer der Fall
und ist unabhängig von der HTTP Verbindung.
2.4 Kalibrierung der Sensoren und stellen der Systemzeit
Der Marvin Roboter unterstützt das Kalibrieren von Kompass, Gyro (Drehratensensor) und den
Abstandssensoren. Diese Funktionen werden im Fenster Fernsteuerung und Display (siehe auch
Unterabschnitt 3.1.1) mit den Kommando-Buttons bzw. über das Kommando-Interface eingeleitet
(Abbildung 2.6). Außerdem kann die Real Time Clock des Roboters mit der Systemzeit des PC/Notebooks
synchronisiert werden.
Hinweis:Die Kalibrierung ist normalerweise nur ein einziges mal notwendig, dabei
werden alle aufgenommenen Kalibrierdaten im Roboter gespeichert.
2.4.1 RTC - Systemzeit stellen
Das stellen der Real Time Clock im Marvin Roboter erfolgt durch ein drücken des Buttons „RTC Stellen“.
Damit ist das stellen der Uhr abgeschlossen.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 12
Abbildung 2.6 Kommandointerface
Hinweis:Die Uhrzeit läuft nun auch bei ausgeschaltetem Marvin für mehrere Monate
weiter. Durch einschalten des Roboters wird die Batterie wieder aufgeladen.
2.4.2 Kalibrierung des 3D Kompass
Im folgenden ist die Prozedur zur Kalibrierung des 3D Kompasses beschrieben. Die Ausrichtung nach
NWSE wird automatisch erkannt. Es muss nur zum starten/stoppen eine Taste gedrückt bzw. ein Kommando
ausgeführt werden.
Hinweis:Die Hinweise auf die Himmelrichtung erleichtern eine vollständige Kalibrierung
- sind aber nicht zwingend erforderlich. Wichtig ist es einen vollständigen Kreis
zu durchlaufen!
2.4.2.1 Schritt 1 - Vorbereitung
Schalten sie den Marvin Roboter an und verbinden Sie den Roboter mit dem Web-Interface im Browser.
Nehmen sie einen Kompass und ermitteln die Himmelrichtungen für Nord, Ost, Süd und West – merken sie
ich die Punkte.
2.4.2.2 Schritt 2 - Kalibriermodus einschalten
Gehen sie zur Fernsteuer- und Display Seite und klicken sie den Button‚ „Kalibriere Kompass‘“ an.
Im Bild sehen sie die gedachten Achsen bezogen auf den Marvin. Die x-Achse ist rot, die y-Achse grün und
die z-Achse blau dargestellt. Gelb ist der Inklinationsvektor dessen Winkel nicht genau bekannt ist und vom
Standort auf der Erde abhängt. Liegen der Inklinationsvektor und die x-Achse auf einer Linie kann man das
Maximum an Messwert erwarten. Dies ist für eine gute Kalibrierung notwendig.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 13
Abbildung 2.7 Himmelsrichtungen und Inklinationsvektor
2.4.2.3 Schritt 3 - Ablauf
• Halten sie dem Roboter nun nach Norden und kippen ihn jeweils um 90° nach oben und dann nach
unten.
• Halten sie dem Roboter ungefähr horizontal in Richtung Norden und kippen ihn jeweils um 90° nach
links und dann nach rechts.
• Wiederholen sie dies analog für Ost, Süd und West bzw. einen vollständigen Kreis - möglichst auch
mit Zwischenwerten - was die Genauigkeit erhöht.
Hinweis:Kippen sie den Marvin während der Kalibrierung nicht zu schnell !
2.4.2.4 Schritt 4 - Abschliessen der Kalibrierung
Nachdem Sie die Prozedur durchgeführt haben beenden Sie den Kalibriermodus durch Klick auf den
entsprechenden Button (‚Kalibrierung Abgeschlossen‘) und überprüfen Sie das Ergebnis indem Sie den
Roboter auf die entsprechende und bekannte Himmelrichtung ausrichten.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 14
2.4.3 Kalibrierung des 3D Gyroskops
Das Kalibrieren des Gyros erfolgt durch ein drücken des Buttons „Kalibriere Gyro Offset“. Im Button wird
nun „Kalibriere - bitte warten“ angezeigt - dies erfolgt solange bis der Vorgang abgeschlossen ist.
Hinweis:Die Kalibrierung läuft selbstständig ab. Dabei darf natürlich der Roboter nicht
bewegt werden.
2.4.4 Aktivierung der Proximity Sensoren
Das aktivieren oder deaktivieren der Proximity Sensoren erfolgt mittels Kommandozeilenbefehl - dem „conf“
Befehl. Details sind in Tabelle 2.1. Um zum Beispiel den Sensor in der Mitte hinten zu aktivieren, geben Sie
in die Kommandozeile folgendes ein:
• conf add RM „Enter“ und anschliessend
• conf save RM „Enter“
Damit hätten Sie den Sensor RM (Hinten Mitte) hinzugefügt und die Konfiguration dauerhaft gespeichert
und der Sensor ist betriebsbereit.
2.4.5 Kalibrierung der Abstandssensoren
Im Folgendem wird die Kalibrierung der Abstandssensoren beschrieben. Hierzu muss ein iRP
Hilfsprogramm ausgeführt und die Messwerte für jeden Sensor notiert werden. Außerdem benötigt man ein
Lineal mit 30 cm bis 50 cm Länge. Anschliessend werden die Werte mit dem Kommando-Interface
Abbildung 2.6 in den Roboter geschrieben und dort gespeichert.
Hinweis:Die Kalibrierung der Abstandssensoren ist nicht zwingend erforderlich und
stellt eine Option dar genauere Messergebnisse zu erhalten.
Anfänger sollten das erst einmal nicht tun.
2.4.5.1 Schritt 1 - Vorbereitung
Schalten sie den Marvin Roboter an und verbinden Sie den Roboter mit dem Web-Interface im Browser.
• Legen sie das Lineal vor den jeweiligen Sensor, so dass die gedachte Sichtlinie des Sensors mit dem
Lineal deckungsgleich sind.
• Starten Sie das iRP Programm „Abstandssensorkalibrierung“
• Gehen sie zur Fernsteuer- und Display Seite.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 15
Im unteren Display Abbildung 2.8 werden die Abstandsrohwerte angezeigt:
•FM (Vorne Mitte)0 - 255
•FL (Vorne links)0 - 255
•FR (Vorne rechts)0 - 255
•RM (Hinten Mitte)0 - 255
•RL (Hinten links)0 - 255
•RR (Hinten rechts)0 - 255
Hinweis:Sie können die weiße Marvin Box zur Abstandsmessung verwenden!
2.4.5.2 Schritt 2 - Ablauf
Messen Sie nun den jeweiligen minimal und maximal Wert des Erfassungsbereiches aus.
• Dazu nähern Sie das Hindernis (Marvin Box) von ca. 35 cm aus an bis sich im Display der Rohwert
auf einen kleineren Wert als 255 einstellt.
• Suchen sie den exakten Punkt und schreiben Sie den Rohwert und den gemessenen Abstand am Lineal
auf.
• Nähern Sie das Hindernis (Marvin Box) weiter an bis sich im Display der Rohwert nicht mehr ändert
(Minimalwert).
• Suchen sie den exakten Punkt und schreiben Sie den Rohwert und den gemessenen Abstand am Lineal
auf.
In diesem Beispiel würde der Sensor (FM) Front Mid mit dem unteren Rohmesswert von „23“, dem
gemessenen Abstand „13.5“ und dem gemessenen Abstand „300“ mit dem oberen Rohmesswert von
„170“ zur Kalibrierung verwendet werden.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 16
Hinweis:Alle Abstände sind in „mm“ einzugeben!
2.4.5.3 Schritt 3 - Überprüfen der Kalibrierung
Nachdem Sie die Prozedur durchgeführt überprüfen Sie nun das Ergebnis für den linke, rechten und mittig
sitzenden Sensor. Bei:
• ca. 13 cm muss 0
• ca. 30 cm muss 30
• > 30 cm muss 255 angezeigt werden.
2.5 Kommandozeileninterface (CLI)
Im Tabelle 2.1 sind alle Kommandos mit Syntax beschrieben die zur Verfügung stehen.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 17
Tabelle 2.1 CLI Kommandos
KommandoBeschreibung
cal cmpsAktiviert/Deaktivert Kompass Kalibriermodus.
cal gyro [--state]Kalibriert Gyro Offsets. Wenn der Parameter „–state“ angegeben
light „on/off“Schaltet Fahrlichter an/aus.
setrtc „H_M_S_W_D_M_Y“Setzte Marvin Uhrzeit.
wlan AP ssid „SSID“Setzt SSID im AdHoc Modus auf „SSID“.
wlan AP passwd „passwd“Setzt Passwort im AdHoc Modus auf „passwd“.
wlan AP txpwr „pwr“Setzt Sendeleistung im AdHoc Modus auf „pwr“.
„pwr“ ist eine Zahl zwischen 0 und 15. 0 ist maximale
Sendeleistung. Maximale Effizienz ist bei „pwr“ = 4.
wlan AP channel „ch“Setzt den WLAN Kanal im AdHoc Modus.
„ch“ ist eine Zahl zwischen 0 und 13.
„ch“ = 0 für automatische Kanalauswahl.
wlan AP MODESchaltet Marvin in den AdHoc Modus.
wlan STA addprofile
„SSID“ „passwd“
Registriert das Netzwerk mit der SSID „SSID“ und dem Passwort
„passwd“. In Zukunft wird automatisch versucht sich mit diesem
Netzwerk zu Verbinden.
wlan STA delprofile „ID“Löscht das WLAN Profile mit der ID „ID“. Die ID -1 löscht alle
Profile.
wlan STA txpwr „pwr“Setzt Sendeleistung im Infrastruktur Modus auf „pwr“.
„pwr“ ist eine Zahl zwischen 0 und 15. 0 ist maximale
Sendeleistung. Maximale Effizienz ist bei „pwr“ = 4.
wlan STA ipcfg
„DHCP“ | „IP“ „mask“
„gw“ „dns“
Aktiviert im Infrastrukturmodus DHCP oder setzt eine statische
IP-Adresse.
„IP“, „mask“, „gw“ und „dns“ sind IPv4 Adressen.
wlan STA MODESchaltet Marvin in den Infrastruktur Modus.
wlan STA SCANScant nach verfügbaren WLAN Netzwerken.
wlan DEFAULTSetzt das WLAN Modul zurück auf Werkseinstellungen.
wlan getIPGibt die Aktuelle IP Adresse aus.
versionGibt die Firmware Versionsnummer aus.
security updatekey
Kopiert HTTPS Schlüssel von der SD-Karte in das WiFi Modul.
„key.der“
security updatecert
Kopiert HTTPS Zertifikat von der SD-Karte in das WiFi Modul.
„cert.der“
security htpasswd
Setzte Web Server Benutzername und Passwort.
„user:passwd“
Die „security“ Befehle sind nur im C++ Modus unter Linux verfügbar.
AREXX Engineering & JM³ Engineering
8. März 2017Seite: 18
Version: 1.20
3Programmieren mit iRP
Programm-Menü
(Arbeitsblatt)
Hilfe-Menü
(Glühlampe)
Sprach-Menü
Tabs
Link-Status
Die grafische Programmiersprache Marvin - iRP ist einfach zu erlernen und bedarf keiner Vorkenntnisse
einer Programmiersprache wie z.B. C/C++.
Die verschiedenen Funktionsblöcke erlauben es auf einer logischen Ebene Programme zu erstellen und
auszuführen.
3.1 Einführung in iRP
3.1.1 Grundlegende Bedienung
Die Bedienung von PC und Browser wird vorausgesetzt.
Der Link-Indikator befindet sich links neben dem Sprach-Menü.
3.1.1.1 Das Spracheinstellungs-Symbol
Abbildung 3.1 Marvin WebIDE Menüleiste
• Ein grünes Licht zeigt eine gute Verbindung an.
• Ein rotes Licht zeigt eine kurzfristige Unterbrechung oder Benutzung der gesamten Bandbreite zum
Download von Dokumenten von der SD-Karte an.
• Falls eine längere Störung vorliegt wird eine Meldung (Pop-up) auf dem Bildschirm angezeigt.
• Die Sprache können Sie einfach über das Sprachauswahlfeld einstellen.
• Außerdem sieht man unten rechts die Zoom und Pan Buttons.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 19
Einzelschritt
Zoom
Löschen /
Mülltonne
Programm
speichern
Programm
starten
Abbildung 3.2 Marvin WebIDE Programmbuttons
Hinweis:Weitere Sprachen wie Spanisch, Italienisch, Französisch und Chinesisch
(vereinfacht) werden unterstützt. Die Online-Hilfe ist neben Deutsch zur Zeit
nur in Englisch verfügbar.
3.1.1.2 Das Glühlampen-Symbol
• Hier finden Sie die Hilfefunktion zu den iRP Blöcken mit kurzen Erklärungen.
• Hinweise zur Dokumentation und Software.
• Allgemeine Hinweise zum Programm (Info) und können sich den Startbildschirm nochmal anzeigen
lassen.
3.1.1.3 Das Arbeitsblatt-Symbol
• Hier können Sie ihre Programme bearbeiten, z.B. laden, speichern etc..
• Marvin SD-Karten Programme (Menue zum laden und speichern)
• Außerdem können Sie hier den iRP-Modus (Beginner, Fortgeschrittener, Experte) einstellen. Die
dunkelgraue Farbe zeigt die Auswahl an.
3.1.1.4 Fernsteuerung und Display Tab
• Hier gibt es zwei Displays, einen Fernsteuerfeld und ein Plotter-Bereich.
• Die zwei virtuellen Displays unterteilen sich in einen festen Bereich in dem Systemwerte angezeigt
werden (z.B. die Batteriespannung) und ein Benutzer Bereich (User Display) auf. Hier kann man selbst
Werte aus seinem Programm heraus anzeigen.
AREXX Engineering & JM³ Engineering
8. März 2017Seite: 20
Version: 1.20
• Außerdem kann man hier Einstellungen vornehmen und Kommandos senden (siehe Abschnitt 2.5).
3.1.1.5 Programm Tab
• Hier können Sie ihre Programme bearbeiten, z.B. laden, speichern etc. .
• Außerdem finden sie hier iRP-Modus (Beginner, Fortgeschrittener, Experte) einstellen.
3.1.2 iRP Hilfe
Eine Hilfe zu den iRP Blöcken ist immer einfach im Browser aufrufbar.
• Klicken auf das Glühlampensymbol (Bild - oben links gezeigt) und dann auf Hilfe oder
• Klicken Sie auf das Fragezeichensymbol am rechten Bildschirmrand.
Die Hilfe scrollt automatisch immer zum gerade verwendeten Block (Abbildung 3.3).
Abbildung 3.3 Der Marvin WebIDE Helpbrowser
3.1.3 Mein erstes Programm
• Ein neues Programm wird einfach aus den iRP Blöcken zusammen gefügt.
• Passen Blöcke logisch nicht zusammen kann man sie nicht an den anderen Block anhängen. Im
Beispiel passt der Block „Reelle Zahl“ logisch nicht zu einer „Ganzen Zahl“ (Abbildung 3.4).
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 21
Abbildung 3.4 Nicht passende Blocktypen in iRP
3.1.4 Programm ausführen
• Ein Programm kann man über das Menü im Programm Tab oder den Start Button erfolgen.
• Neben dem Start Button befindet sich von ein Step Button (Schrittweise Ausführung des Programms
bis zum Haltepunkt (BreakPoint), der Speicher Button, die Zoom Funktion und die Mülltonne – für
nicht mehr benötigte Blöcke.
3.1.5 Programm laden und speichern
• Hier können Sie ihre Programme laden oder speichern. Der Speicherort kann wie gewohnt ausgewählt
werden.
• Interessant ist auch die Möglichkeit schon erstellte Programmteile einzufügen. So kann man aus
verschiedenen Programm-Modulen ein umfangreicheres Programm erstellen - siehe Beispiel: „Ein
Quadrat nach Kompass fahren“.
3.1.6 Programmfehler beheben (Debugging)
Tritt bei der Programmerstellung ein Fehler auf so wird ein Hinweis gegeben und der entsprechende Block
hervorgehoben (siehe Abbildung 3.5)
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 22
Hinweis:Ein sehr nützliches Feature ist die Möglichkeit Breakpoints zu setzen um das
Programm anzuhalten und einen interessanten Wert oder Zustand im virtuellen
Display anzuzeigen. Das vereinfacht das Debuggen sehr da so leicht interne
Zustande der Software dargestellt werden können!
Abbildung 3.5 Beispiel für einen Compiler Fehler
3.1.7 Programmcode (Quelltext) anzeigen
Zum weiteren Debuggen kann es hilfreich sein sich den Quelltext anzusehen – ist aber eher etwas für
Fortgeschrittene und Experten. Die Auswahl erfolgt über Programm Tab Quelltext - dabei sind Ausgaben als
C++ Source, C++ Header and Assembler möglich (Abbildung 3.6).
Abbildung 3.6 Beispiel für generierten C++ Code
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 23
4JM3 Robot-Tool 2.0
4.1 Linux
• Kopieren sie das JM3 Robot Tool in einen Ordner und führen sie das Programm „launch_robotTool.sh“
aus!
Hinweis:Details siehe install.txt
• Klick auf das „Add Robot“ Icon - geben sie den Namen (frei wählbar), den Hostnamen z.B. den
verwendeten USB Port ein und gehen zum nächsten Schritt.
• Wählen sie den Roboter-Typ, z.B. „Marvin“, aus. Den richtigen USB Port können sie im System
nachsehen - üblich ist der USB Port „/dev/ttyACM0“.
Als Interface muss „UART“ mit einer Baudrate „0“ (default) eingestellt werden.
• Klick OK
• Klick auf „Add File“ um das hex-file mit dem neuen Programm auszuwählen. Die Suche geht einfach
über den Pfad mit Select File. Wählen sie das hex-file aus dass sie in den Mikro Controller laden
möchten. Als weiteren Schritt noch den Typ, z.B. „Marvin“, aus.
• Klick OK.
• Wähle der Roboter und das Programm in den Listen Links aus.
• Klick „Upload program“ (oben in der Toolbar)
• Klick auf „Save“ (oben in der Toolbar) falls Sie die angelegten Roboter und Programme speichern
wollen.
4.2 Windows 7
• Kopieren sie das JM3 Robot Tool in einen Ordner und führen sie die Datei „robottool.exe“ aus.
• Klick auf das „Add Robot“ Icon - geben sie den Namen (frei wählbar), den Hostnamen, den USB Port
z.B. „COM5“ ein und gehen zum nächsten Schritt.
• Wählen sie den Roboter-Typ, z.B. „Marvin“, und als Serial Port „UART“ aus. Die Baudrate sollte auf
„0“ stehen (default). Unter Windows können Sie den richtigen COM Port im Device Manager
nachsehen.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 24
• Klick OK
• Klick auf „Add File“ um das hex-file mit dem neuen Programm auszuwählen. Die Suche geht einfach
über den Pfad mit Select File. Wählen sie das hex-file aus dass sie in den Micro Controller laden
möchten. Als weiteren Schritt noch den Typ, z.B. „Marvin“, aus.
• Klick OK.
• Wähle der Roboter und das Programm in den Listen links aus.
• Klick „Upload program“ (oben in der Toolbar)
• Klick auf „Save“ (oben in der Toolbar) falls Sie die angelegten Roboter und Programme speichern
wollen.
4.3 Laden von eigenen Programmen die unter C/C++ erstellt wurden
Um ein selbst geschriebenes Programm (hex-file) in den Mikro-Kontroller zu laden muss vorher das JM3
Robot Tool installiert worden sein (Abbildung 4.1).
4.3.1 Upload (Marvin Applikation)
• Starten sie das JM3 Robot Tool Es wird davon ausgegangen, dass das Robot Tool schon wie vorher
beschrieben vorbereitet ist.
• Klick auf „Add File“ um das hex-file mit dem neuen Programm auszuwählen. Die Suche geht einfach
über den Pfad mit „Select File“. Wählen sie das hex-file aus dass sie in den Mikrokontroller laden
möchten. Als weiteren Schritt wählen Sie noch den Typ, z.B. „Marvin“, aus.
• Klick OK.
• Wählen sie nun den Roboter-Eintrag aus der Liste aus z.B. „Marvin“ und das hex-File aus indem sie es
nacheinander anklicken (werden leicht hellgrau hervorgehoben) und klicken sie auf „Upload“.
• Klick auf „Save“ (oben in der Toolbar) falls Sie die angelegten Roboter und Programme speichern
wollen.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 25
4.3.2 Upgrade Firmware (Bootloader)
Die Firmware des Marvin Roboters erlaubt es auch den Bootloader auf eine neue Version zu flashen.
Dazu sind folgende Schritte notwendig.
• Neues Bootloader (hex-File) wie oben beschrieben auswählen.
• Klick auf „Upgrade Firmware“ führt den Update aus.
Abbildung 4.1 Das JM3 Robot-Tool
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 26
4.4 Terminal Fenster
Das Terminal im JM3 RobotTool erlaubt es serielle Daten zu empfangen und zu senden. Außerdem kann es
Daten aufzeichnen und in eine Datei speichern. Verschiedene Einstellmöglichkeiten stehen zu Verfügung
„Settings“:
• Verbindung mit Roboter herstellen „Connect“ erlaubt es Daten zu empfangen.
• Verbindung mit Roboter trennen „Disconnect“.
• Daten zum Roboter senden „Rechte Seite - unteres Fenster“ - Kommandos können hier jederzeit
eingegeben werden. Bitte Zeilenende Zeichen auf „LF“ (Linefeed) einstellen.
• Das Programm unterstützt „undo“ mit den Pfeiltasten (up und down) und „refresh“ mit F5.
Abbildung 4.2 Das JM3 Robot-Tool - Terminal Fenster
4.5 Firmware und iRP Micro SD-Karten update
Im folgenden wird die Vorgehensweise eines Software Update beschrieben.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 27
Firmware update:
Das Firmware update erfolgt mit dem JM3 Robot Tool. Details sind in Kapitel 4 beschrieben.
• Stellen Sie eine Verbindung mit dem PC/Notebook mit einem USB Kabel (Mirco-B / TypeA) her.
• Starten Sie das JM3 Robot Tool und wählen sie die „Firmware.hex“ Datei aus.
• Schalten Sie den Marvin Roboter ein und verbinden sich mit den PC/Notebook.
• Starten Sie den mit eine Click auf das „Upload Icon“.
Micro SD-Karten update (Windows):
Das SD-Karten Abbild wird mit dem Tool „win32DiskImager“ durchgeführt.
• Starten Sie das Programm und wählen das neue SD-Karten Abbild aus.
• Starten Sie den Sie den Abbild-Update.
• Warten Sie bis das Abbild vollständig kopiert wurde.
• Bitte Laufwerk „auswerfen“.
Micro SD-Karten Update (Ubuntu-Linux):
Das SD-Karten Abbild wird mit einem Click auf die Abbild-Datei (*.img) gestartet. Danach geht ein Fenster
„Laufwerksabbild wiederherstellen“ auf.
• Wählen Sie Ihre Micro SD-Karte aus.
• Starten Sie den Abbild-Update mit „Wiederherstellung starten ...“
• Warten Sie bis das Abbild vollständig kopiert wurde.
Hinweis:Firmware und iRP SD-Karten Abbild gehören immer zusammen!
Nach einem Update immer den Browser Cache löschen!
In anderen Linux Distributionen kann der Expertenbefehl „dd“ zum
Imageschreiben verwendet werden.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 28
5Option: C/C++ Software
Die C++ Programmiersprache ist aus der C-Sprache hervorgegangen und stellt eine Erweiterung und
Verbesserung von C dar.
Alles im allen die modernere Sprache die einen bessere Lesbarkeit des Codes und eine deutlich besseren
Schutz vor Seiteneffekten bietet (e.g. enums / namespaces anstelle von unübersichtlichen #define
Anweisungen). Assembler- und C-Programmteile können leicht mit eingebunden werden.
Spezielle Vorteile und Reduzierung von Program-Code wird bei der Verwendung von mehreren Instanzen
einen H/W Treiber erreicht – z.B. zwei UART Treiber. Eine leichtere Portierbarkeit des entwickelten
Programmcodes stellt einen weiteren Vorteil dar.
Die verwendete Extended Embedded C++ Implementation verbietet die folgenden C++ Features die Sie evtl.
von PC-Programmierung her kennen – welche aber nicht sinnvoll für Embedded Systeme sind:
• RTTI
• Exceptions
Die zur Erstellung von Programmen benötigten Libraries (H/W Treiber etc.) und ein paar Bespielprogramme
werden mit dem Paket geliefert.
Hinweis:Diese Option ist für Fortgeschrittene und Experten gedacht.
C/C++ Softwareentwicklung und das Realtime Operating System FreeRTOS
sind nicht für Beginner geeignet!
Das Wissen zum aufsetzen der gesamten Linux basierten Toolchain und
GCC Compiler inklusive deren Konfiguration wird vorausgesetzt.
5.1 Software Paket für Marvin
Das Marvin Software Paket besteht aus der Web-Interface Software, den Betriebssystem (FreeRTOS) mit
API Funktionen und einer Library mit allen Hardware Treibern wie z.B. das virtuelle Display, ADC, Timer,
I2C, UART, LED und Keypad. Für weitere Informationen und Möglichkeiten lesen sie bitte in den
Beschreibungen der Module und in den entsprechenden Datenblättern nach!
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 29
5.1.1 Toolchain
Als Compiler muss der GCC für ARM (arm-none-eabi-gcc) unter Linux verwendet werden. Ausserdem
werden die folgenden Pakete benötigt: make, newlib, arm-none-eabi-gcc und python. Es kann ein beliebiger
Editor für den Source-Code verwendet werden.
Die Programmierung erfolgt über den USB Anschluss und dem JM3 Robot Tool. Ihr Programm kann damit
schnell und effektiv in den TIVA C geladen werden. Wer den vollen Zugriff auf den Mikrokontroller benötigt
braucht noch ein TIVA JTAG Interface (z.B.: TM4C1294 „Connected-Launch-Pad“ EK-TM4C1294XL).
Außerdem muss man den 8 PIN JTAG Header (RM1.27) selbst einlöten und ein Verbindungskabel erstellen.
5.1.2 Software-Library
Die Software-Library enthält auch Funktionen wie Kompass, Neigungsmesser, Real Time Clock,
Motorsteuerung und ein User Interface für die Konfiguration der WiFi Schnittstelle.
Das Webinterface kann verschiedene Werte auf dem virtuellen Display im Browser anzeigen.
Alle aus iRP bekannten Funktionen (Blöcke) und weitere sind in der Library verfügbar. C++ Code der mit
iRP generiert wurde kann exportiert werden und in ein C++-Projekt übernommen werden.
Dies ist auch einer Erleichterung für den Umstieg von iRP auf C++.
5.1.3 Marvin Funktionstasten
Die Marvin Funktionstasten im Tab Fernsteuerung und Display Abbildung 5.1 können nur mit eigenen C++
Programmen verwendet werden.
Abbildung 5.1 Marvin Funktionstasten Im Fernsteuer und Display Tab
5.2 Demo Software Beschreibung
Die Demoprogramme von iRP können exportiert werden und im ihren C++ Programm verwendet werden.
Als virtuelles Display kann weiterhin die iRP Web-IDE - „Fernsteuerung und Display“ verwendet werden.
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 30
6Technische Daten
6.1 Abmessungen und Gewicht
Breite:125 mm
Länge:148 mm
Höhe:50 mm
Gewicht:195 g (ohne Batterien)
6.2 Spannungsversorgung und Strombedarf
VCC= 8.4 V± 5%=> 6 AA Zellen
Hinweis:Das absolute Maximum liegt bei 10.0 V !!!
ICC
AVR
Hinweis:Batterielaufzeit:
= 160mA+40.0 mA / -20.0 mA=> ohne Arduino Extension
ca. 5 h (Fahrbetrieb - Motoren 50%) ca. 10 h bei Programmierung mit iRP
6.3 Versorgungsspannungen Experimentierboard
VDD_3V3:Iout,max≤50 mA
VDD_5V0:Iout,max≤50 mA
VBat_M (VSS):Iout,max≤200 mA
6.4 Weitere Daten
Alle anderen Daten sind aus den folgenden IC Datenblättern zu entnehmen!
Controller:Texas InstrumentsTM4C1294KCPDT
Motor Driver:Texas InstrumentsDRV8833CPWP
9D-Sensor:ST MicroelectronicsLSM9DS1TR
Proxi-Sensor:ST MicroelectronicsVL6180X
AREXX Engineering & JM³ Engineering
Version: 1.20
8. März 2017Seite: 31
7Schaltungsdetails
7.1 Arduino Extension Board
Arduino Shields werden hier von den H/W Anforderungen unterstützt. Alle gängigen Schnittstellen wie I2C,
SPI, UART ADC und GPIO bzw. Verschiedene Timer-Ausgänge ermöglichen die Frequenzausgabe oder eine
PWM Generierung z.B. für Servo-Ansteuerung. Zur Messung von Frequenzen und Tast-Verhältnissen steht
eine Input-Capture-Funktion zur Verfügung.
Tabelle 7.1 Pinout des Arduino kompatiblen Steckers