Seite 2
Sicherheitshinweise HITEC/MULTIPLEX – ROBONOVA-I –Baukästen/RTW unterliegen während der Produktion einer ständigen Materialkontrolle. Wir hoffen, dass Sie mit dem Inhalt zufrieden sind. Wir bitten Sie, den Inhalt vor Verwendung zu prüfen. Sie bekommen als unsere Kunden automatisch den Email Helpdesk Service und es ist der schnellste Weg mit uns Kontakt aufzunehmen.
Seite 3
GmbH & Co. KG. Dies gilt nicht, soweit die Firma MULTIPLEX Modellsport GmbH & Co. KG nach zwingenden gesetzlichen Vorschriften wegen Vorsatzes oder grober Fahrlässigkeit unbeschränkt haftet. CE-Konformitätserklärung Die Firma MULTIPLEX Modellsport GmbH & Co. KG erklärt für ROBONOVA-I die Übereinstimmung mit folgenden harmonisierten Richtlinien der EU: Schutzanforderungen in Bezug auf die elektromagnetische Verträglichkeit...
ROBONOVA-I Montageanleitung ROBONOVA-I Montageanleitung ..................1 Allgemeine Hinweise ........................2 Stückliste ..........................2 Anmerkung zu den Servos..................... 5 Was wird für die Montage benötigt? ..................5 Links oder rechts?........................5 Tipps zum Akku........................6 Montage der Einzelteile ........................7 Aufbau der Beine ........................7 2.1.1...
Achten sie unbedingt darauf, dass die unterschiedlich langen Schrauben an der richtigen Stelle wieder eingeschraubt werden, da sonst die Elektronik oder die Mechanik im Servo beschädigt werden kann. Die folgenden Servos kommen bei ROBONOVA-I zum Einsatz: Nr. 1, HSR-8498HB 1R 200 (1 Stück) Nr. 2, HSR-8498HB 1R 300 (3 Stück) Nr.
1.5 Tipps zum Akku Damit Sie nach erfolgreicher Montage sofort mit der Inbetriebnahme weitermachen können, sollte als erstes der Akku geladen werden. Da eine direkte Verbindung von Akku und Ladegerät nicht vorgesehen ist, muss der Akku (136010) mit der Controller Leiterplatte MR-C3024 (136000) verbunden werden.
Montage der Einzelteile 2.1 Aufbau der Beine 2.1.1 Linker und rechter Fuß: Benötigte Bauteile: zwei Fußteile HR1B-00012 (130011) ein Servo Nr.6 (134007, linker Fuß) ein Servo Nr.8 (134006, rechter Fuß) Montieren Sie die Servos so, wie auf den Bildern zu sehen ist (Das Servokabel auf der Oberseite, achten Sie auf die freien Löcher in den Fußteilen).
2.1.2 Verbindungen Sprunggelenk und Oberschenkel: Benötigte Bauteile: vier U-Bleche mit Gewinde HR1B-0001 (130000) vier U-Bleche ohne Gewinde HR1B-0002 (130001) 16 Schrauben M2 x 4mm (132002) Achtung: die beiden U-Bleche sind sich sehr ähnlich. Neben dem Hauptunterschied, den Gewinden, ist bei dem U-Blech mit Gewinde HR1B-0001die seitlich hochgebogene Kante höher! Verschrauben Sie jeweils ein Blech vom Typ HR1B-0001 mit einem Blech HR1B-0002, wie im Bild zu sehen...
2.1.3 Sprunggelenk: Benötigte Teile: 2 Fußbaugruppen aus Schritt 2.1.1 2 Sprunggelenksverbindungen aus Schritt 2.1.2 16 Schrauben 2 x 4mm (132007) 2 Kabelbefestigungen (133001) 2 Unterlegscheiben 6 x 2,2 x 0,5mm (132001) zwei Fußabdeckungen (131007, 131008) 8 Schrauben M2 x 4mm (132002) Als nächstes verbinden Sie zwei der gerade verschraubten Bleche mit den zuvor verschraubten „Fuß-Servos“.
Seite 13
Zum Schluss platzieren Sie die Fußabdeckungen wie im Bild zu sehen über die montierten Baugruppen (131007 - rechter Fuß, Servo Nr. 8, 131008 - linker Fuß, Servo Nr. 6, Prägung auf der Innenseite der Abdeckung) und verschrauben sie mit jeweils vier Schrauben M2x4mm. Die Fußabdeckungen sind zueinander symmetrisch.
2.1.4 Schienbein: Benötigte Bauteile: 4 I-Bleche HR1B-0003 (130002) ein Servo Nr.4 (134002) ein Servo Nr.2 (134003) Das I-Blech HR1B-0003 (130002) hat produktionsbedingt zwei Seiten. Die eine Seite hat leicht abgerundete Kanten, die andere Seite ist relativ scharfkantig. Um einen sichereren Betrieb zu gewährleisten, sollte es immer so montiert werden, dass die leicht abgerundete Seite nach Außen (vom Servo weg zeigt).
2.1.6 Montage des rechten Beins Es kommen die folgenden vormontierten Servos zum Einsatz: Fußgelenk-Servo Nr. 8 Schienbein-Servo Nr. 2 Unteres und oberes Knie-Servo Nr. 2, bzw. Nr.3 Verbindung von Oberschenkel und Knie (Servo Nr. 3) Verbindung von Knie und Schienbein (Servo Nr.
Seite 17
Verbindung von Fuß und Schienbein: Befestigen Sie das Schienbein-Servo Nr. 2 so an dem U - Blech ohne Gewinde HR1B-0002 (130001) des rechten Fußes (Servo Nr. 8), dass das Servokabel nach vorne zeigt (siehe Bild oben). Dazu muss das Blech wieder leicht auseinander gebogen werden, damit es über die Schrauben gleiten kann Achten Sie auf die im Abtriebsrad eingeprägten Nummern.
2.1.7 Montage des linken Beins Die Montage des linken Beins erfolgt auf die selbe Weise wie oben beschrieben und unterscheidet sich lediglich bei den Nummern der Servos, sowie den eingeprägten Positionen auf den Abtriebsrädern. Es kommen die folgenden vormontierten Servos zum Einsatz: Fußgelenk-Servo Nr.
Seite 19
Die fertig montierten Beine müssen so aussehen wie auf dem Bild unten zu sehen:...
Seite 20
Wenn Sie die Beine nicht wie auf dem Bild gezeigt zusammenfalten können, dann kontrollieren Sie bitte die vorausgegangen Montageschritte, besonders die Positionen der in den Abtriebsrädern eingeprägten Nummern.
2.1.8 Aufbau der Arme 2.1.9 Oberarm Benötigte Bauteile: 4 I-Bleche HR1B-0003 (130002) 1x Servo Nr. 2 (134000) 1x Servo Nr. 4 (134001) Das I-Blech HR1B-0003 (130002) hat produktionsbedingt zwei Seiten. Die eine Seite hat leicht abgerundete Kanten, die andere Seite ist relativ scharfkantig. Um einen sichereren Betrieb zu gewährleisten, sollte es immer so montiert werden, dass die leicht abgerundete Seite nach Außen zeigt.
2.1.10 Unterarm Benötigte Bauteile: 1x Servo Nr.11 (links) 1x Servo Nr.12 (rechts) 2 Hand-Teile HR1C-0006 (131006) 2 Hand-Teile HR1C-0007 (131007) 2 Handverbindungsbleche HR1B-00011 (130010) 8 Schrauben, 2x5mm (132008) Entfernen Sie an jedem Servo die 4 Schrauben, die vom Abtriebsrad, bzw. dem Gegenlager abgewandt sind und befestigen Sie damit die Handverbindungsbleche (HR1B-00011) wie im Bild unten zu sehen.
2.1.11 Montage der ganzen Arme Benötigte Bauteile: Rechter Arm: Oberarm (Servo Nr. 4) Unterarm (Servo Nr.12) 8 Schrauben 2x4mm (132007) Linker Arm: Oberarm (Servo Nr. 2) Unterarm (Servo Nr.11) 8 Schrauben 2x4mm (132007) Verbinden Sie die zuvor montierten Oberarm- und Unterarm-Baugruppen. Verwenden Sie dazu pro Arm 8 Schrauben 2x4mm (132007) Die Leitungen der Oberarm- und Unterarm-Servos müssen dabei nach Außen zeigen (siehe Bild unten).
2.2 Aufbau des Körpers 2.2.1 Schulterservos Es werden die folgenden Teile benötigt: 1x Servo Nr. 9 (134008, linke Schulter) 1x Servo Nr. 10 (134009, rechte Schulter) 2 Schulter-Innenbleche HR1B-0009 (130008) 2 Schulter-Außenblech HR1B-0010 (130009) Entfernen Sie die zwei, vom Abtriebsrad abgewandten, schwarzen Schrauben aus den Servos und befestigen damit das Schulter-Außenblech HR1B-0010 (130009) an jedem Servo.
2.2.2 Montage des Körper-Vorderteils: Benötigt werden die folgenden Teile: 1x Servo Nr. 5 (134004) 1x Servo Nr. 7 (134005) Körper Vorderteil HR1B-0006 (130005) Die beiden zuvor montierten Schulterelemente mit den Servos Nr.9 und Nr.10 (Schritt 2.2.1) 8 Schrauben M2x4mm (132002) Entfernen Sie die Abtriebsräder von den beiden Servos.
2.2.3 Montage der Körper Rückseite HR1B-0005 Benötigt werden die folgenden Teile: Vormontiertes Körpervorderteil (Schritt 2.3.2) Körper Rückseite HR1B-0005 (130004) 8 Schrauben M2x4mm (132002) Entfernen Sie die hinteren Servo-Gegenlager von den Servos Nr. 5 und Nr. 7 im Vormontierten Körpervorderteil. Entfernen Sie am Servo Nr. 5 die zwei linken Schrauben an der Außenseite und am Servo Nr. 7 die zwei rechten Schrauben an der Außenseite.
2.2.4 Schulter-Oberarm-Verbindung Benötigte Bauteile: den in den Schritten zuvor montierten Körper 2 U-Bleche ohne Gewinde HR1B-0002 (130001) 8 Schrauben 2x4mm (132007) Montieren Sie jeweils ein U-Blech ohne Gewinde HR1B-0002 (130001) an die Abtriebsräder der Schulter-Servos Nr. 9 und Nr. 10. Verwenden Sie hierzu jeweils 4 Schrauben 2x4mm (132007).
2.3 Zusammenfügen von Beinen, Armen, Kopf und Körper 2.3.1 Montage von Beinen und Körper Montieren Sie die vormontierten Baugruppen für Beine und Körper so wie auf dem Bild unten zu sehen zusammen. Verwenden Sie dazu für jedes Servo je 8 Schrauben 2x4mm (132007) Achten Sie auf die im Abtriebsrad eingeprägten Nummern.
2.3.2 Montage von Armen und Körper Montieren Sie die vormontierten Baugruppen für Arme und Körper so wie auf dem Bild unten zu sehen zusammen. Verwenden Sie dazu für jedes Servo je 8 Schrauben 2x4mm (132007) Achten Sie auf die im Abtriebsrad eingeprägten Nummern. Beim rechten Arm (Servos Nr. 4 und Nr.
2.3.3 Montage von Kopf und Körper Es werden die folgenden Teile benötigt: Servogegenlager HSR8498HA2 (135004) Körperoberteil HR1B-0007 (130006) LED Platine (136001) Visier HR1C-0003 (131003) Kopf Vorderteil HR1C-0004 (131003) Kopf Hinterteil HR1C-0005 (131004) 2 Schrauben 2x5mm (132008) 2 Schrauben 2x4mm (132007) 10 Schrauben M2.6x4 (132003) 6 Schrauben 2x8mm (13209) Schrauben Sie das Servogegenlager HSR8498HA2 (135004) mit vier Schrauben 2x8mm...
Seite 31
Schrauben sie die LED Platine (136001) mit 2 Schrauben 2x4mm (132007) in das Visier HR1C-0003 (131003). Schieben Sie das Visier mit der LED Platine von vorne in das Kopf Vorderteil HR1C-0004 (131004), bis die Haltehaken im Kopf einrasten. Montieren Sie das Kopf Vorderteil HR1C-0004 (131004) mit zwei Schrauben 2x8mm (13209) auf das Servogegenlager (wie im Bild unten).
2.3.4 Montage des Remocon-IR-Sensors Befestigen Sie den Remocon-IR-Sensor mit einem Stück doppelseitigen Klebeband auf dem zuvor montierten Kopf 2.3.5 Montage der vorderen Abdeckung Benötigt werden: Abdeckung vorne HR1C-0001 (131000) 2 Schrauben 2x5mm (132008) Legen Sie die vordere Abdeckung HR1C-0001 (131000) auf den Körper und verschrauben sie diese mit zwei Schrauben 2x5mm (132008) von hinten durch die Rückwand.
2.4 Controller und Kabel 2.4.1 Einbau des MR-C3024 Controller Benötigt werden: 4 Abstandsbolzen mit Gewinde M3 (132005) 4 Schrauben M3x4mm (132004) ein MR-C3024 Controller Die vier Abstandsbolzen mit Gewinde M3 (132005) werden in die dafür vorgesehenen Gewindelöcher in der Körper Rückseite HR1B-0005 (130004) eingeschraubt. Verschrauben Sie den MR-C3024 Controller mit vier Schrauben M3x4mm (132004) an den Abstandsbolzen.
2.4.2 Anschluss der Servokabel Stecken sie die Servoleitungen in die auf dem Bild angegebenen Positionen. Achten Sie dabei auf die Codierungsnasen an den Steckern. Diese müssen immer zur Innenseite zeigen. Stecken Sie außerdem den Stecker der LED-Platine und den IR-Sensor in die dafür vorgesehene Buchse (die Codierung muss ebenfalls nach innen zeigen).
2.4.3 Leitungsverlegung Benötigt werden: 28 Kabelbefestigungen (133001) 28 Unterlegscheiben 6 x 2,2 x 0,5mm (132001) 2 Kabelbefestigungen (133003) 8 Kabelbinder (133000) Verlegen Sie die Servoleitungen so, dass sie unter keinen Umständen an Kanten und Ecken scheuern oder eingequetscht werden können! Außerdem ist darauf zu achten, dass die Leitungen dem vollen Bewegungsumfang der Servos folgen können und keine Zugbelastungen auf die Kabel entstehen! Orientieren Sie sich an den Bildern unten.
Seite 36
Kabelbefestigung (133003) Verwenden Sie die Kabelbefestigung (133003) so wie auf den Bildern unten zu sehen...
2.5 Endmontage 2.5.1 Montage der hinteren Abdeckung Benötigt werden: Abdeckung hinten HR1C-0002 (131001) Pin-Abdeckung (131010) 2 Schrauben M2,6x4mm (132003) 2 Schrauben 2x26mm (132013) Platzieren Sie die durchsichtige Pin-Abdeckung (131010) auf dem Controller Board wie auf dem Bild zu sehen. Legen Sie die hintere Abdeckung auf die Rückseite des Roboters und verschrauben Sie unten mit zwei Schrauben M2, 6x4 (132003) und oben mit zwei Schrauben 2x26mm (132013).
2.5.2 Einsetzen des Akkus Benötigt werden: Akkukabelschutz (133002) 2 Rändelschrauben M3 (132006) Akku 6V / 1000mAh (136010) Körper Unterteil HR1B-0008 (130007) Schieben Sie zuerst der Akkukabel Schutz in den dafür vorgesehenen Ausschnitt in der Roboter Rückwand...
Seite 41
Legen Sie den Akku 6V / 1000mAh (136010) wie im Bild unten gezeigt, in den Roboter ein. Hängen Sie das Körper Unterteil HR1B-0008 (130007) mit der Lasche in das Körper- Vorderteil ein und befestigen es mit den zwei Rändelschrauben M3 (132006). Stecken Sie den Akkustecker in die Akkubuchse auf der Controller Platine.
Seite 42
Installation und Betrieb von RoboBASIC, RoboScript, RoboRemocon...
Seite 43
ROBONOVA-1 Inhaltsverzeichnis Installationsanleitung RoboBASIC.....................3 Einrichten von RoboBASIC................5 Verhalten beim Erststart.................6 Anpassung des Controllertyps und der Schnittstelle ........7 Überprüfen der Verbindung PC - Roboter............9 Fehlermeldungen ..................10 Programmierung in RoboBASIC......................11 Compilieren des Quelltextes ...............12 Download des Object Codes zum Controller..........12 Compilieren und Download in einem Arbeitschritt........13 RoboBASIC - Setzen der Servo Nullpunkte..................14 Abspeichern der Neutrallage.................17 Servo Positionen in Echtzeit ändern.............17...
Seite 44
Gleichzeitiger Betrieb mehrerer Roboter mit Infrarot Fernbedienung ..........48 Schnelleinstieg....................48 Erläuterung....................49 Nutzung mehrerer Fernbedienung für einen Roboter........49 Umstellen des REMOCON Codebereiches..........49 Anpassung der mitgelieferten Beispielsoftware.........50 Anhang ...............................52 Nutzung des Hitec Multi Protocol Interfaces (HMI) ........52 Motion Feedback Funktion................52 Anpassung der Unterspannungswarnung............53...
RoboBASIC baut auf der Programmiersprache BASIC auf und ist für den Anschluss an die MR-C Robot Controller Produktreihe vorgesehen. RoboBASIC ist Entwicklungsumgebung für die Hitec/Multiplex Roboter Controller Serie. RoboBASIC ist unter Microsoft Windows XP lauffähig. Installationsanleitung RoboBASIC RoboBASIC Software kann von der dem ROBONOVA Bausatz beiliegenden CD installiert werden.
Seite 46
ROBONOVA-1 Auswahl des Installationsverzeichnisses Im Zweifel ist der vom Programm vorgeschlagene Pfad eine gute Wahl und kann übernommen werden. Durch klick auf "Next" kommt man zu einem weiteren Hinweis Bild, in dem das Installationsprogramm die Vollständigkeit aller Angaben bestätigt und den Benutzer dazu auffordert, durch anklicken von "Next"...
ROBONOVA-1 Nach vollständiger Installation aller Software erscheint folgende Meldung: Abbildung 3: Abschlußbildschirm RoboBASIC Installation Durch klick auf "Close" wird dieses Fenster geschlossen und RoboBASIC, RoboSCRIPT und RoboREMOCON stehen dem Benutzer zur Verfügung, entsprechende Icons wurden automatisch auf dem Desktop angelegt. Einrichten von RoboBASIC Um eine Datenverbindung zum Robot Controller aufbauen zu können, benötigt RoboBASIC die Information, welcher Controller genutzt werden soll und an welchem Port des PCs das Datenkabel...
ROBONOVA-1 zum Controller angeschlossen wurde. Verhalten beim Erststart Beim Erststart von RoboBASIC ( klick auf das entsprechende Icon) erscheint der Abfragebildschirm, in dem der richtige Controller eingestellt werden kann: Robonova-1 Set wird standardmässig mit MR-C3024 Controller mitgeliefert. Daher wählen Sie hier den dem Bausatz beiliegenden Controllertyp MR-C3024 Stellen Sie hier die Schnittstelle, an dem Sie das Datenkabel angeschlossen haben ein.
ROBONOVA-1 Abschlußbild bei Erstaufruf von RoboBASIC: 1. Um den Controllertyp anzupassen, wählen Sie im Menü <Set> den Unterpunkt <Controller Type> aus 2 .Sollte es zu Verbindungsfehlern kommen, überprüfen Sie bitte die Einstellungen der Schnittestelle, an dem sich das Datenkabel befindet: Menü <Set> Unterpunkt <Set Port> Nach bestätigen durch "End"...
Seite 50
ROBONOVA-1 Wählen Sie im Menü <Set> den Unterpunkt <Controllertype> aus. Markieren Sie mit der Maus den gewünschten Controller (für den im ROBONOVA mitgelieferten Controller ist "MR-C3024" die richtige Wahl). Auswahl der PC Schnittstelle für das Datenkabel Menü <Set> Unterpunkt <Set Port> auswählen : Wählen Sie die Serielle Schnittstelle (Com Port) aus, an dem Sie das Datenkabel zum Controller angeschlossen haben.
ROBONOVA-1 Überprüfen der Verbindung PC - Roboter Hinweis: Ohne eine funktionierende Datenverbindung ist keine Programmierung oder Einstellung des Roboters möglich! Schließen Sie das Datenkabel an die von Ihnen gewählte PC Schnittestelle an Verbinden Sie den Klinkenstecker des Datenkabels mit der entsprechenden Buchse des Robot Controllers Abbildung 4: Anschluß...
ROBONOVA-1 Abbildung 5: Bei erfolgreichem Datenaustausch zwischen Controller und PC werden Ihnen in einem Fenster die Informationen zum Controller angezeigt Hinweis: Die angezeigten Inhalte können je nach Controller und geladenem Programm von den hier gezeigten verschieden sein, wichtig ist, dass überhaupt Informationen angezeigt werden. Fehlermeldungen Sollte stattdessen eine Fehlermeldungen ( meist "Error in data transmission") erscheinen und das Controller Informationsfenster leer bleiben, konnte keine Datenverbindung zum Controller...
ROBONOVA-1 Abbildung 7: Leeres Controller Informations Fenster deutet auf fehlerhafte Datenverbindung hin ! Checkliste bei fehlerhafter Datenverbindung: Akku ausreichend geladen ? (ggf. Akku vollständig laden) Ist als Controller der Richtige Typ angewählt? ( Für ROBONOVA MR-C3024!) Richtiger COM Port gewählt? (alternativ andere Ports testen) Verbindungskabel vollständig eingesteckt? Sind andere Programme aktiv, die ggf.
ROBONOVA-1 Controller verstandenes Format ( den sog. Object Code) übersetzt werden. Diesen Vorgang bezeichnet man auch als compilieren. Der Object Code wird anschließend über die Datenverbindung zum Controller übertragen (sog. Download) und kann dann dort ausgeführt werden. Compilieren des Quelltextes Auswahl des Icons aus der Menüsymbolleiste alternativ: Menü...
ROBONOVA-1 Abbildung 9: OK Knopf drücken, um Programm zum Controller zu übertragen Der Fortschritt der Datenübertragung wird im Download Fenster angezeigt: Abbildung 10: Fortschrittsanzeige bei der Datenübertragung zum Controller Compilieren und Download in einem Arbeitschritt Auswahl des Icons aus der Menüsymbolleiste alternativ: Menü...
ROBONOVA-1 RoboBASIC - Setzen der Servo Nullpunkte Auch wenn der Zusammenbau des Roboters fehlerfrei vorgenommen wurde, kann es nach der Erstinbetriebnahme zu geringen Abweichungen der Neutrallage der Servos kommen. Dieses ist nicht ungewöhnlich und kann mittels des nachfolgend beschriebenen Abgleichverfahrens ausgeglichen werden.
Seite 57
ROBONOVA-1 dann den READ Knopf. Vermeiden Sie es, den Roboter in der Hand zu halten, da unmittelbar nach dem READ Befehl alle Servos in die Neutralposition laufen und so u.U. Verletzungen an der Hand auslösen können! Clicken sie auf den READ Knopf, um den Roboter in seine aktuell eingestellte Neutrallage zu bringen: Nehmen Sie nun die Feineinstellung aller Servos vor, in dem sie die "hoch"...
Seite 58
ROBONOVA-1 Servo Nr 1. und Nr.3 des linkes Beins und Servo Nr.19 und Servo Nr.21 des rechten Beines müssen eine gerade Linie bilden. Abbildung 12: Ausrichtung der Beine Der Abstand zwischen linken und rechtem Bein muss ca. 8 mm betragen...
ROBONOVA-1 Abbildung 13: Ausrichtung der Arme Die Arme, wie hier gezeigt, in einer geraden, horizontalen Linie ausrichten Abspeichern der Neutrallage Um die gefunden Neutrallage in Ihren Quelltext einzufügen, wählen Sie den "INSERT" Knopf Um die gefundene Neutrallage direkt in dem Speicher von MR-C3024 abzuspeichern, wählen die "WRITE"...
Seite 60
ROBONOVA-1 Nach erfolgreichem Auslesen der Servopositionen öffnet sich das Real-Time Control Fenster Servo Motor 0 ist aktiv, das Servo hält aktiv die eingestellte Position Durch Klick in das Markierfeld wird der Servomotor stromlos geschaltet, das betreffende Servo kann jetzt manuell in die neue Position bewegt werden. Ein erneuter Klick auf das Markierfeld aktiviert den Servomotor wieder, die neue Position wird dann vom Servo gehalten .
ROBONOVA-1 Capture Funktion: Hier werden die Servopositionen aktualisiert und neu eingelesen Fügt einen Move Befehl in den im Editorfenster geöffneten Quelltext an der Stelle des Cursors ein und erlaubt so die Übernahme der aktuellen Servopositionen direkt in Ihr Basicprogramm. Achtung: Es werden nur die aktiven Servos übernommen, nicht markierte Servopositionen werden unverändert gelassen.
ROBONOVA-1 Nun können die gewünschten Servopositionen auf zwei Arten eingestellt werden: Manuelle Einstellung der Servopositionen: Hier können sie alle zuvor auf Freilauf geschalteten Servos von Hand in die Wunschposition bewegen, dieses Verfahren ist bei Robotern sehr zu effektiv in der Anwendung, da bei den meisten Bewegungen mehr als ein Servo beteiligt ist.
ROBONOVA-1 auf Freilauf ( der Motor des Servos wird hier stromlos geschaltet) Im obigen Beispiel ist der Servo Motor 0 im Freilaufmodus. Bewegen Sie die im Freilaufmodus befindlichen Servos in die gewünschte Positionen Klicken Sie den Capture Knopf an, um die neue Servoposition einzulesen Klicken Sie erneut in das Markierfeld des im Freilauf befindlichen Servos, der Servomotor wird wieder mit Strom versorgt und hält nun aktiv die neue Position.
ROBONOVA-1 Abbildung 14: ROBONOVA Servo Control Fenster Ausführen einer Einzelnen Servobewegung direkt aus dem Quelltext RoboBASIC unterstützt das direkte zeilenweise testen von Einstellungen, wie sie durch die Befehle OUT, MOVE, SERVO, POSE und MOVEpose ausgelöst werden, ohne das gesamte Programm compilieren und downloaden zu müssen.
ROBONOVA-1 Abbildung 15: Ausführen einer Einzelnen Servobewegung direkt aus dem Quelltext Beachten Sie, dass die betreffende Zeile unmittelbar ausgeführt wird! Nutzung von roboScript 2.5 Information Diese Anleitung bezieht sich auf roboScript v 2.5. An Software und Handbuch können zur Verbesserung ohne Bekanntgabe Änderungen vorgenommen werden. RoboScript ist eine registrierte Software.
ROBONOVA-1 Einrichtung von roboScript Schließen Sie das Datenkabel an eine serielle Schnittstelle Ihres PC an Verbinden Sie das Datenkabel mit dem Controller Schalten Sie den Controller ein. Starten Sie roboScript durch Klick auf das entsprechende Icon auf Ihrem Desktop...
ROBONOVA-1 Passen Sie die PC Schnittstelle für das Datenkabel an: Menü <Set> Unterpunkt <Set Port> auswählen Wählen Sie im Feld Port No: die Schnittstelle, mit der das Datenkabel verbunden ist, aus und bestätigen mit <ok>. Überprüfen der Datenverbindung Wählen Sie im Menü <Controller> den Unterpunkt <Contoller Information> aus. Bei erfolgreichem Datenaustausch zwischen Controller und PC, werden Ihnen in einem Fenster, die Informationen zum Controller angezeigt: Hinweis: Die angezeigten Inhalte können je nach Controller und geladenem Programm von den...
ROBONOVA-1 Fehlermeldungen Sollte stattdessen eine Fehlermeldungen erscheinen und das Controller Informatinonsfenster leer bleiben, konnte keine Datenverbindung zum Controller aufgebaut werden. Abbildung 16: Leeres Controller Informations Fenster deutet auf fehlerhafte Datenverbindung hin ! Checkliste bei fehlerhafter Datenverbindung: Akku ausreichend geladen? (ggf. Akku vollständig laden) Richtiger COM Port gewählt? (alternativ andere Ports testen) Verbindungskabel vollständig eingesteckt? Sind andere Programme aktiv, die ggf.
ROBONOVA-1 Erste Programmierschritte Starten Sie RoboScript und stellen die Datenverbindung zum Roboter her Abbildung 17: Die Servopositionen werden im Motor Window mit Hilfe der Schieberegler bestimmt Bewegen Sie hierzu die Maus über den roten Punkt des jeweiligen Schiebereglers und...
Seite 70
ROBONOVA-1 drücken die rechte Maustaste, um die Position zu verändern. Die Änderung wird erst beim Loslassen der Maustaste an das Servo übertragen. Bearbeiten Sie so jede einzelne Servoposition, bis sie den Roboter in die richtige Position gebracht haben. Durch einen Mausklick auf die <Insert Move> Taste wird aus den aktuell über die Schieberegler eingestellten Servopositionen eine neue Zeile RoboScript erzeugt.
ROBONOVA-1 Nutzung von RoboRemocon V2.5 Information RoboRemocon erlaubt die drahtlose Steuerung des Roboters. Ein mit Roboscript erstelltes Programm wird mit Hilfe von RoboRemocon den Steuertasten einer Fernbedienung zugeordnet. Zu Testzwecken kann RoboRemocon auch ohne vorhandene Fernbedienung genutzt werden. Diese Anleitung bezieht sich auf RoboRemocon v 2.5. An Software und Handbuch können zur Verbesserung ohne Bekanntgabe Änderungen vorgenommen werden.
ROBONOVA-1 Klicken sie auf <Setting Port> Wählen Sie unter Port No: die Nummer der seriellen Schnittstelle aus, an dem Ihr Datenkabel angeschlossen ist. Programmieren mit RoboRemocon Wenn noch nicht geschehen, starten Sie Roboremocon durch Klick auf das entsprechende ICON auf Ihrem Desktop und stellen die Verbinden PC - Controller mittels Datenkabel her. : Ein Klick auf diesen Knopf öffnet das "Setting Buttons"...
ROBONOVA-1 der Fernbedienung oder die entsprechende Zeile im Textbereich an, um das "Set" Fenster aufzurufen. Button Refernznummer der Taste ( nicht änderbar) Label: Beschriftung der Taste auf PC Fernbedienung RSF File: Pfad zum zugeordneten RoboScript Programm Tag: Beschreibung des Programms / Kommentar Wählen Sie zwischen der vom PC symbolisch dargestellten <PC-Control>...
Seite 74
ROBONOVA-1 'Demolisting Nutzung von RoboRemocon unter RoboBASIC '==== Initalisierung ==== DIM RR AS BYTE ' IN "RR" übergibt RoboRemocon die gedrückte Taste RR=0 ' RR = 0 gibt Nutzung von Remocon frei '==== Hauptprogramm ===== Hauptprogramm: ' Wenn keine Taste gedrückt RR=0 -> gehe zu Hauptprogrmm ' Taste 1 gedrückt RR=1 ->...
ROBONOVA-1 Praktische Anwendungen / Erweiterung der Programmvorlagen Im Nachfolgenden erhalten Sie eine Einführung in das, dem ROBONOVA beiliegende, umfangreiche RoboBASIC Beispielprogramm, welches sich gut als Basis für eigene Programmprojekte eignet. Bitte beachten Sie, dass die in der Anleitung zu Grunde liegenden Beispiele, sich von der Programmversion der aktuell ausgelieferten CD im Detail unterscheiden können.
ROBONOVA-1 1. Initialisierungs Teil 2. Main - Das Hauptprogramm 3. Unterprogramme für jede Bewegung Der Initialisierungsteil Erläuterung ' Templates laden GOTO AUTO ' Ruft Programm zum automatischen Laden der Vorlagen auf FILL 255,10000 ' Speicher Vorlagen Programm ab Adressbereich 10000 im MR-C3024 controller' ' Variable deklarieren DIM RR AS BYTE...
ROBONOVA-1 Das Hauptprogramm "MAIN" Der Programmabschnitt "Main" bezeichnet den zentralen Steuerteil des Musterprogrammes. Dieser Programmteil wertet die Benutzereingaben aus und verwzeigt zu den entsprechenden Unterprogrammen. Nach abgeschlossenem Unterprogramm springt dieser (meist) wieder zum Hauptprogramm zurück. Abbildung 18: Typisches Hauptprogramm in RoboBASIC Erläuterung GOSUB robot_voltage ' Aufruf Unterprogramm zur Spannungsüberwachung , kann wahlweise...
Seite 78
ROBONOVA-1 MAIN1: ' Auswertung der Infrarot Steuerung A = REMOCON(1) ' Lese Wert der Infrarot Bedienung in A ein A = A - ID ' Wert A für benutzte Remocon ID berichtigen ' In Abhängigkeit von A entsprechendes Unterprogramm aufrufen ON A GOTO MAIN,K1,K2,K3,K4,K5,K6,K7,K8,K9,K10,K11,K12,K13,K14,K15,K16,K17,K18,K19,K20,K21, K22,K23,K24,K25,K26,K27,K28,K29,K30,K31,K32...
ROBONOVA-1 Der Aufbau kann auf ein Grundmuster reduziert werden: ' Sprungmarke GOSUB Bewegung ' Grundbewegung aufrufen ' sonstige Befehle abarbeiten GOTO main_exit ' Springe zur Sprungmarke main_exit (hier erfolgt dann ' Rücksprung ins Hauptprogramm) Neue Grundbewegung / Funktionen der Fernbedienung zuordnen Sie können das mitgelieferte Musterprogramm durch eigene Anwendungen erweitern.
Seite 80
ROBONOVA-1 Abbildung 20: Zuordnung Infrarot Fernbedienungstaste - Tastencode Dieser ergibt sich aus der letzten Zeile der Tabelle mit "18". Falls noch nicht geschehen, starten Sie nun RoboBASIC und stellen die Datenverbindung zu ROBONOVA her. Laden Sie das Musterprogram "Overall Tempate Program.bas" und speichern dieses unter einem neuen Namen ab, um so eine Arbeitskopie zu erstellen.
Seite 81
ROBONOVA-1 Die Marke k18: wird vom Hauptprogramm aus angesprungen, wenn die Taste "E" auf der Fernbedienung gedrückt wird. Im Musterlisting wird ein Ton ausgegeben, dieses soll durch ein Blinken der LED ersetzt werden. Ändern Sie die betreffenden Zeile nun so, dass das Unterprogramm "LED_Blinken" stattdessen aufgerufen wird: k18: GOSUB LED_Blinken...
ROBONOVA-1 k32: TEMPO 230 MUSIC "E" GOTO main_exit '================================================ ' lässt ROBONOVA LED blinken LED_Blinken: OUT 52,1 DELAY 1000 OUT 52,0 DELAY 1000 RETURN robot_voltage: ' [ 10 x Value / 256 = Voltage] DIM v AS BYTE A = AD(6) Text 2: Geänderter Quelltext erweitert um die Funktion LED_Blinken Nach Änderung des Quelltextes muss dieser noch Übersetzt und zum Roboter übertragen werden: <F9 Taste>...
ROBONOVA-1 Positionieren Sie den Cursor des Editors auf die Stelle im Quelltext, wo die Servobewegungen( MOVE -Befehl) eingefügt werden sollen Start der Echtzeit Servokontrolle durch Klick auf das Symbol in der Symbolleiste alternativ: Aufruf über das Menü <Controller> Unterpunkt <Servo motor realtime control>...
Seite 84
ROBONOVA-1 Schalten Sie die, für die Bewegung, benötigten Servos durch klick auf das Markierungsfeld auf Freilauf ( der Motor des Servos wird hier stromlos geschaltet) Im obigen Beispiel ist der Servo Motor 0 im Freilaufmodus. Bewegen Sie die, im Freilaufmodus befindlichen, Servos in die gewünschten Positionen Klicken Sie den Capture Knopf an, um die neue Servoposition einzulesen Klicken Sie erneut in das Markierfeld des im Freilauf befindlichen Servos, der Servomotor wird wieder mit Strom versorgt und hält nun aktiv die neue Position.
ROBONOVA-1 Einstellung der Servoposition mittels Maus oder Pfeiltasten Warnung! Bei direkter Einstellung der Servos können die Servos unter Umständen durch versehentliches Verstellen sehr heftige Bewegungen ausführen Aktivieren Sie den gewünschten Servomotor durch setzen des Markierfeldes Klicken Sie mit der Maus in die Positionsanzeige Bei gedrückter rechter Maustaste können Sie den Zeiger auf die gewünschte neue Position stellen, nach loslassen der Maustaste nimmt das Servo sofort die neue Position ein.
Seite 86
ROBONOVA-1 Abbildung 22: Editor nach Einfügen einer Servoposition Um dieses Programm ausführen zu können, müssen noch einige einfache Initialisierungen eingefügt werden: 'Init Settings GETMOTORSET G24,1,1,1,1,1,0,1,1,1,0,0,0,1,1,1,0,0,0,1,1,1,1,1, SPEED 5 MOTOR G24 Text 3: Typische Servo Initialisierung für ROBONOVA Info: GETMOTORSET G24 ..' Sorgt für eine definierte, unkritische Startposition Speed 5 ' legt die Servogeschwindigkeit auf Stufe 5 fest MOTOR G24...
Seite 87
ROBONOVA-1 Abbildung 23: Minimalprogramm mit Initteil und Bewegung Das neu erstellte Programm kann dann mittels <F9> Taste übersetzt und zum Roboter übertragen werden.
ROBONOVA-1 Einfügen von RoboScript Files in RoboBasic Um mit einem eigenen RoboBasic Programm zu beginnen, gibt es auch die Möglichkeit ein schon in RoboScript erstelltes Bewegungsmuster als Grundlage für Erweiterungen in RoboBasic zu übernehmen. Vorgehensweise: Starten Sie die RoboBASIC Programmierumgebung und verbinden Sie PC und Controller mit dem Datenkabel Positionieren Sie den Cursor des Editors auf die Stelle im Quelltext, wo die Servobewegungen( MOVE -Befehl) eingefügt werden sollen...
Seite 89
ROBONOVA-1 'Init Settings GETMOTORSET G24,1,1,1,1,1,0,1,1,1,0,0,0,1,1,1,0,0,0,1,1,1,1,1,0 SPEED 5 MOTOR G24 Text 4: 3: Typische Servo Initialisierung für ROBONOVA Info: GETMOTORSET G24 ..' Sorgt für eine definierte, unkritische Startposition Speed 5 ' legt die Servogeschwindigkeit auf Stufe 5 fest MOTOR G24 ' Servogruppe 24 wird benutzt Abbildung 24: Importiertes RoboScript File ergänzt im Initalisierung der Servos Das neu erstellte Programm kann dann mittels <F9>...
ROBONOVA-1 werden. Gleichzeitiger Betrieb mehrerer Roboter mit Infrarot Fernbedienung Bei der Nutzung der ROBONOVA Infrarot Fernbedienung REMONCON ist es möglich, bis zu vier Roboter gleichzeitig mit vier Fernbedienungen unabhängig voneinander störungsfrei zu steuern. Dazu wird jeder Fernbedienung ein eigener Codebereich zugewiesen, der ausschließlich von dieser Fernbedienung genutzt wird.
ROBONOVA-1 Erläuterung Für jede Fernbedienung steht ein Coderaum von 31 Befehlen zur Verfügung: (vgl. auch Tastencode im Anhang Abbildung 27 Seite 54) REMOCON ID Nummer Key Code Bereich 0..31 32..63 64..95 96..127 Nutzung mehrerer Fernbedienung für einen Roboter Auch ist es möglich - falls der Befehlsvorrat einer REMOCON Fernbedienung nicht ausreichend ist- bis zur vier Fernbedienungen für einen ROBONOVA einzusetzen.
ROBONOVA-1 Abbildung 25: Abbildung 26: Umstellung der REMOCON ID durch gleichzeitigen Drücken der PF1 Taste und der gewünschten ID Anpassung der mitgelieferten Beispielsoftware Die Beispielsoftware ist für eine einfache Anpassung an die benutzte REMONCON ID ausgelegt: Starten Sie RoboBASIC und stellen einen Datenverbindung zum Controller her Laden Sie das Programm "Overall Template Program.bas"...
Seite 93
ROBONOVA-1 '================================================ ' templet program ' RR : internal parameter variable / ROBOREMOCON / Action command ' A : temporary variable / REMOCON ' A16,A26 : temporary variable '== auto_main =================================== GOTO AUTO ..CONST ID = 0 ' 1:0, 2:32, 3:64, 4:96, Hier ist die Zeile: CONST ID = 0 ' 1:0, 2:32, 3:64, 4:96,...
ROBONOVA-1 Anhang Nutzung des Hitec Multi Protocol Interfaces (HMI) Hinweis: RoboBASIC bietet direkte Unterstützung für das HMI Protokoll, die nachfolgenden Informationen richten sich somit nur an erfahrene Anwender, die ROBONOVA mit eigenen alternativen Controllern nutzen möchten. Motion Feedback Funktion Servos, die das HMI Protokoll unterstützen (z.B. HSR-8498HB), ermöglichen die Abfrage der aktuellen Servoposition.
ROBONOVA-1 Anpassung der Unterspannungswarnung Unterschreitet die Batteriespannung des ROBONOVA einen Grenzwert (Vorgabe 5.8 Volt) , so kann die im Kopf des Roboters angebrachte LED durch Blinken die Unterspannung anzeigen. Das dazu notwendige RoboBASIC Programm ist Teil des mitgelieferten Musterprogrammes, eine Anpassung an die individuellen Wünsche ist leicht durchführbar: Überprüfen Sie zuerst, ob das Unterprogramm "robot_voltage"...
Seite 96
ROBONOVA-1 entsprechend eingesetzt : Wert = 5,8 * 256 / 10 = 148,48 -> da RoboBASIC hier ein Byte erwartet, Wert = 148 Beispiel: Für 6 Volt Grenzspannung ergibt sich somit: Wert = 6 * 256 / 10 = 153,6 ->...
Seite 98
Windows ist das eingetragene Warenzeichen der Microsoft Corporation. ROBOBASIC ist registrierte Software der miniROBOT inc. Hinweis Diese Anleitung erklärt die Befehle, welche in roboBASIC genutzt werden. Hitec ist für keinen Missbrauch verantwortlich. Diese Anleitung kann ohne vorherige Ankündigung geändert werden, um die Leistung des Produktes zu verbessern.
Seite 99
Aufruf einer untergeordneten Routine RETURN Rückkehr zum Programm aus der untergeordneten Routine Ausführung des Programms beenden STOP Ausführung des Programms stoppen Programm fortlaufend ausführen WAIT Warten, bis das Programm vollständig ausgeführt wurde DELAY Programmausführung um einen gewählten Zeitraum verzögern HITEC ROBONOVA http://www.robonova.de...
Seite 100
Hexadezimale Numerale auf dem LCD ausgeben Binäre Numerale auf dem LCD ausgeben Auf den Operand bezogene Operationen Verwendung des logischen Ausdrucks „und“ Verwendung des logischen Ausdrucks „oder“ Kalkulationsmodul für arithmetische Operationen Verwendung des logischen Ausdrucks „XOR“ Alle Bits zurücksetzen HITEC ROBONOVA http://www.robonova.de...
Seite 101
Servomotoren #8-#15 zu Gruppe B zuordnen Servomotoren #16-#23 zu Gruppe C zuordnen Servomotoren #24-#31 zu Gruppe D zuordnen Servomotoren #0-#11 zuordnen Servomotoren #0-#15 zuordnen Servomotoren #0-#23 zuordnen Servomotoren #0-#31 zuordnen Befehle zur Klangkontrolle BEEP Warnungsgeräusch mit PIEZO erzeugen HITEC ROBONOVA http://www.robonova.de...
Seite 102
GYROSENSE Konfiguration der Empfindlichkeit des Gyroskops Verarbeitungsbefehle ON…GOTO Überspringen bei bestimmtem Wert der Variable Sonstige Befehle Zufallszahl generieren REMARK Erzeugen eines Eintrages in Textform Absichtsbefehle $DEVICE Konfiguration des Controllers zur Nutzung von einem derzeitig laufendem Programm LIMIT Beschränken des Bewegungsbereichs eines Stellmotors HITEC ROBONOVA http://www.robonova.de...
Seite 103
In roboBASIC können Operatoren wie in der nachstehenden Tabelle klassifiziert werden. Klassifikation Funktion Arithmetischer Operator Durchführung von Berechnungen Relationaler Operator Vergleich numerischer Werte Vergleich von komplexen Bedingungen Logischer Operator oder Ausführung von Bit-Operationen Bitveränderungen oder Ausführung von Bitoperator Bit-Operationen HITEC ROBONOVA http://www.robonova.de...
Seite 104
X = Y <> Nicht gleich X <> Y < Weniger als X < Y > Mehr als X > Y <= Gleich oder weniger als X <= Y >= Gleich oder mehr als X >= Y HITEC ROBONOVA http://www.robonova.de...
Seite 105
00001111) ist, treten die folgenden Ergebnisse auf, wenn sie die erwähnten Operatoren verwenden. Operator Ausgabe A AND B 1 (00000001) A OR B 47 (00101111) A XOR B 46 (00101110) A << 1 66 (01000010) A >> 1 16 (00010000) 1 (0rd Bit von A) HITEC ROBONOVA http://www.robonova.de...
Seite 106
Konstante wird automatisch entsprechend dem Bereich der Nummer definiert. Ist eine Konstante einmal definiert kann sie nicht mehr geändert werden. Eine Konstante zu definieren, hat keine Wirkung auf die Größe des Programms. Programmmodifikationen können angenehmer sein, wenn eine Zahl, die häufig verwendet wird, als Konstante definiert wird. HITEC ROBONOVA http://www.robonova.de...
Seite 107
A.BIT_2 = 0 A.3 = IN(1) Wert von Port #1 auslesen und in das dritte Bit der ganzzahligen Variable A schreiben OUT 2, A.1 Den Wert des ersten Bits der ganzzahligen Variable A mit Port #2 ausgeben HITEC ROBONOVA http://www.robonova.de...
Seite 108
Meistens wird ein Label zur Flusskontrolle innerhalb eines Programms zusammen mit den Befehlen GOTO oder GOSUB genutzt. Beispiel: DIM A AS INTEGER START: A = IN(0) IF A = 0 THEN GOTO START ELSE GOSUB 10 GOTO START 10 OUT 1, 0 DELAY 100 OUT 1, 1 RETURN HITEC ROBONOVA http://www.robonova.de...
Seite 109
DIM I AS INTEGER Deklaration von I als Integer DIM J AS BYTE Deklaration von J als Byte CONST Konstante deklarieren Befehlsstruktur CONST [Konstantenname] = Zahl Erklärung des Befehls Die Vergabe eines Konstantennames für eine Zahl vereinfacht den Programmierprozess erheblich. HITEC ROBONOVA http://www.robonova.de...
Seite 110
IF [Bedingung] THEN [Anweisung, wenn die Bedingung wahr ist] ENDIF 2.) Mehrere Bedingungen: IF [Bedingung 1] THEN [Anweisung, wenn Bedingung 1 wahr ist] ELSEIF [Bedingung 2] THEN [Anweisung, wenn Bedingung 2 wahr ist] ELSE [Anweisung, wenn Bedingung 1 und Bedingung 2 falsch sind] ENDIF HITEC ROBONOVA http://www.robonova.de...
Seite 111
ELSEIF A = 8 THEN B = 6 C = 0 ELSE B = 0 C = 0 ENDIF FOR … NEXT Wiederholt sich für eine festgelegte Anzahl an Durchgängen Befehlsstruktur FOR [Schleifenvariable] = [Start] TO [Ende] [Schleifenanweisungen] NEXT [Schleifenvariable] HITEC ROBONOVA http://www.robonova.de...
Seite 112
Anweisung zu beenden, aber man sollte beachten eine FOR … NEXT Anfrage nicht von außen zu beginnen! 4. Die Werte, welche für die [Schleifenvariable], [Start] und [Ende] genutzt werden dürfen während der Ausführung der Schleife nicht geändert werden. HITEC ROBONOVA http://www.robonova.de...
Seite 113
Programm zurück! Auf diesem Weg kann man das Programm kleiner und effizienter gestalten. Man kann innerhalb einer Unterroutine eine weitere aufrufen. Die MR-C2000-Serie unterstützt dabei maximal 4 Routinen und die MR-C3000-Serie 5 Unterroutinen. Eine größere Anzahl verursacht Fehler. HITEC ROBONOVA http://www.robonova.de...
Seite 114
2. Erstellung einer strukturmäßigen Unterroutine DIM A AS BYTE A = BYTEIN(0) IF A = 1 THEN GOSUB L1 ELSEIF A = 3 THEN GOSUB L2 ELSEIF A = 4 THEN GOSUB L3 ELSE GOSUB L4 ENDIF ... HITEC ROBONOVA http://www.robonova.de...
Seite 115
WAIT OUT 7, 1 OUT 8, 1 Beispiel 2: Ausgabe an Port 8 nach der Bewegung, aber an Port 7 während der Bewegung MOVE 120, 100, 140, 90, 70, 150 OUT 7, 1 WAIT OUT 8, 1 HITEC ROBONOVA http://www.robonova.de...
Seite 116
Der BREAK-Befehl funktioniert nicht mit Kontrolleinheiten der MR-C3000-Serie. Bei der Benutzung dieser kann der Programmablauf systematisch im Debug-Modus verfolgt werden. Beispiel des Befehls …. BREAK Programmausführung unterbrechen ACTION [Nummer] Führt vorgefertigt Bewegungen entsprechend dem Wert [Nummer] aus. Befehlsstruktur ACTION [Nummer] HITEC ROBONOVA http://www.robonova.de...
Seite 117
Signaleingabe und – ausgabe in roboBASIC Die MR-C2000 Serie besitzt 12 digitale I/O-Ports. Bei der MR-C3000 Serie sind 40 digitale I/O-Ports vorhanden. Diese Ports können unterschiedliche Befehle ausführen. Für weitere Informationen nutzen sie bitte die „Steuereinheiterklärungen“. HITEC ROBONOVA http://www.robonova.de...
Seite 118
Die Bedingung des Tasters auslesen A.0 = IN(0) ist verfügbar IF A = 1 THEN Wenn der Taster nicht gedrückt ist OUT 3, 0 LED ausschalten ELSE sonst OUT 3, 1 LED einschalten ENDIF GOTO START Taster erneut überprüfen BYTEIN() Befehlsstruktur BYTEIN([Byte-Portnummer]) HITEC ROBONOVA http://www.robonova.de...
Seite 119
Den Wert von 1 (5V) an die Ports #1, #3, #5, #7 senden Den Wert von 0 (0V) an die Ports #0, #2, #4, #6 senden INKEY Liest eine Tasteneingabe an einem Eingangsport ein Befehlsstruktur INKEY ([Portnummer]) HITEC ROBONOVA http://www.robonova.de...
Seite 120
A =0 PULSE Sendet ein pulsierendes Signal an den Ausgabe-Port Befehlsstruktur PULSE [Portnummer] Erklärung des Befehls Sendet ein pulsierendes Signal an den Ausgabe-Port. Das pulsierende Signal wird für die Bereitstellung eines Signals an ein externes Gerät genutzt. HITEC ROBONOVA http://www.robonova.de...
Seite 121
Signal von Port #3 umkehren KEYIN() Eingabe mehrerer Tasten (analoge Tastatur) Befehlsstruktur KEYIN ([Analoge Portnummer], [Anzahl der Zeichen]) Erklärung des Befehls Dieser Befehl liest die Werte von 16 Tasten durch einen AD-Konverter-Port (analoger Port) bei Steuereinheiten der MR-C3000-Serie aus. HITEC ROBONOVA http://www.robonova.de...
Seite 122
Zusammenhang mit der Anzahl der verwendbaren Variablen während der Entwicklung eines Programms. Die Controller der MR-C2000-Serie haben 30Bytes variablen Speicherplatz. Die MR-C3000-Serie hat 256Bytes variablen Speicher. Die anderen Teile des Speichers sind für die interne Verwendung der Robotersteuereinheit gedacht. HITEC ROBONOVA http://www.robonova.de...
Seite 123
Beim MR-C3000-Kontroller können Numerale zwischen 0~65535, Konstanten oder Byte- Variablen als [RAM-Region] genutzt werden. Numerale, Konstanten oder Variablen (ganzzahlige Variablen) können für [Daten] genutzt werden. Beispiel des Befehls POKE &h40, 100 100 in die RAM-Region 40 schreiben HITEC ROBONOVA http://www.robonova.de...
Seite 124
Datenspeicherung genutzt werden. Falls ein Speicherbereich bereits Daten enthält entsteht ein Fehler. Numerale, Konstanten oder Byte-Variablen können für die [ROM- Region] genutzt werden. Numerale zwischen 0~255, Konstanten oder Byte-Variablen können für [Daten] genutzt werden. HITEC ROBONOVA http://www.robonova.de...
Seite 125
Das LCD-Modul muss durch die Nutzung des LCDINIT-Befehls initialisiert werden, um zu verhindern, dass ungewollte Zeichen angezeigt werden. Bei der Initialisierung werden alle Zeichen auf dem LCD gelöscht und der Zeiger an den linken Displayrand an den Anfang gesetzt. Beispiel des Befehls LCDINIT LCD-Modul initialisieren HITEC ROBONOVA http://www.robonova.de...
Seite 126
Beispiel des Befehls LOCATE 0, 0 Zeiger an den Anfang des LCD-Moduls setzen LOCATE 4, 1 Zeiger auf die Koordinaten (4, 1) des LCD-Moduls setzen PRINT Ausgabe von Zeichen auf dem LCD-Modul Befehlsstruktur PRINT „[Zeichenkette]“, [Numeral]/ „[Zeichenkette]]“, … HITEC ROBONOVA http://www.robonova.de...
Seite 127
Der Bereich der Numerale liegt zwischen 1~255 (die 0 kann nicht genutzt werden). Im LCD-Modul werden alle Zeichen die auf ASCII-Code zurückzuführen sind angezeigt. Beispiel des Befehls PRINT „robonova, 126, „LCD“ Die folgenden Beispiele sind welche mit ASCII-Code für ein 16x2-Zeilen-LCD-Modul. Der Zeichencode hängt vom verwendeten LCD-Modul ab. HITEC ROBONOVA http://www.robonova.de...
Seite 128
DIM A AS BYTE DIM B AS INTEGER LCDINIT A = 100 B = 20000 LOCATE 0, 0 PRINT FORMAT(A, DEC, 4) LOCATE 0, 1 PRINT FORMAT(B, HEX) CSON() CSOFF() Zeiger auf dem LCD-Modul anzeigen/verstecken Befehlsstruktur CSON / CSOFF HITEC ROBONOVA http://www.robonova.de...
Seite 129
Befehl kann die Stärke der Farbe eingestellt werden. Numerale, Konstanten und Variablen können für den [Kontrastwert] genutzt werden. Je größer der [Kontrastwert] ist, desto dunkler werden die Zeichen. Der Startwert ist 7. Beispiel des Befehls LCDINIT CONT 10 PRINT "robonova" HITEC ROBONOVA http://www.robonova.de...
Seite 130
Verschiedene Servomotoren: HS-311 HS-5645MG HSR-8498HB Schrittmotor ZERO Nullpunkt eines Servo-Motors Befehlsstruktur: MR-C2000-Serie: ZERO [Standardpunkt von Motor 0], [Standardpunkt von Motor 1], …, [Standardpunkt von Motor 5] MR-C3000-Serie: ZERO [Gruppen-Nullpunkt], [Standardpunkt von Motor n], … Erklärung des Befehls: HITEC ROBONOVA http://www.robonova.de...
Seite 131
Den Nullpunkt der Gruppe 8B setzen (Servomotoren #8 ~ #16) Bei der MR-C3000-Serie muss der Nullpunkt eine Gradangabe zwischen 80 und 120 sein. MOTOR Die Nutzung des Servomotors einstellen Befehlsstruktur: MR-C2000-Serie: MOTOR [Motornummer] MR-C3000-Serie: MOTOR [Motornummer] / [Spezielle Gruppe] HITEC ROBONOVA http://www.robonova.de...
Seite 132
Servomotorgruppe 24 (#0~#23) wird genutzt Beispiel 6: MOTOR ALLON Alle Servomotoren werden genutzt MOTOROFF Servomotor ausschalten Befehlsstruktur: MR-C2000-Serie: MOTOROFF [Motornummer] MR-C3000-Serie: MOTOROFF [Motornummer] / [spezielle Gruppe] Erklärung des Befehls: Der MOTOROFF-Befehl ist genau das Gleiche wie der MOTOR-Befehl. HITEC ROBONOVA http://www.robonova.de...
Seite 134
Bei der ersten Benutzung eines Servomotors rotiert dieser sehr schnell zu der gewünschten Stellung. Um diese Anfangsgeschwindigkeit zu reduzieren ist es günstiger den ACCEL und SPEED-Befehl zu nutzen. Bei der MR-C3000-Serie kann der ACCEL-Befehl nicht genutzt werden. HITEC ROBONOVA http://www.robonova.de...
Seite 135
DIR , , 0 Beispiel zur MR-C3000-Serie: DIR G8A, 0, 1, 0, 0, 1, 0, 0, 0 DIR G8B, 1, 0, 1, 1, 0, 1, 1, 1 Punkt zu Punkt Einstellung der Ein/Aus-Funktion für die gleichzeitige Kontroller mehrerer Servomotoren HITEC ROBONOVA http://www.robonova.de...
Seite 136
Beschreibung: Motor 1 bewegt sich um 10° und Motor 2 um 20°, allerdings bewegt sich Motor 1 mit der halben Geschwindigkeit. Beide Motoren stoppen daher zur selben Zeit. Beachten Sie das folgende Diagramm zum Vergleich der Benutzung des PTP-Befehls (grüne Linie) oder der Nichtbenutzung des PTP-Befehls (blaue Linie). HITEC ROBONOVA http://www.robonova.de...
Seite 137
Beispiel des Befehls: Beispiel 1: SERVO 1,130 Motor Nummer 1 an die Position 130 bewegen Beispiel 2: DIM I AS BYTE FOR I = 10 TO 190 SERVO 4, I DELAY 100 NEXT I Pulsbreite Kontrolle Befehlsstruktur: PWM [Motornummer],[Pulsbreitenwert] HITEC ROBONOVA http://www.robonova.de...
Seite 138
[Motorwinkel] ist numerisch oder konstant und liegt zwischen 10 und 190. Beispiel des Befehls: FASTSERVO 2, 190 Motor 2 zum Winkel 190 so schnell wie möglich bewegen HIGHSPEED Die Bewegung eines Servomotors auf den Hochgeschwindigkeitsmodus schalten Befehlsstruktur: HIGHSPEED [SETON/SETOFF] HITEC ROBONOVA http://www.robonova.de...
Seite 140
Einschalten auf eine andere Position als 100 zu setzen. Im Falle eines analogen Servo-Motors (HS-Serie) wird der Befehl INIT verwendet. Im Falle eines digitalen Roboterservomotors (HSR-Serie) wird der Befehl GETMOTORSET verwendet. Beispiel des Befehls: INIT G8A, 100, 45, 67, 44, 132, 122, 76, 81 HITEC ROBONOVA http://www.robonova.de...
Seite 141
Bei der Benutzung eines AI-Motors ist die Bezeichnung dessen als AI-Motor notwendig, wird bei allen anderen Servomotoren aber nicht benötigt. AIMOTOR SETON Nutzung eines AI-Motors AIMOTOR SETOFF Abbrechen der Nutzung eines AI-Motors AIMOTOR INIT Bewegung des AI-Motors in seine Grundposition HITEC ROBONOVA http://www.robonova.de...
Seite 142
DIM AI5 AS BYTE AIMOTOR INIT AIMOTOR SETON AIMOTOR 5 Nutzung des AI-Motors 5 AI5 = AIMOTORIN(5) Der Variable AI5 den Wert von Motor 5 zuweisen GETMOTORSET Motoreingang konfigurieren Die aktuelle Geschwindigkeit eines Motors auslesen und den Status verwalten HITEC ROBONOVA http://www.robonova.de...
Verstärker notwendig. Verbindung mit Kontrolleinheiten der MR-C2000-Serie: Der Piezo wird an den Port 8 einer MR-C2000-Kontrolleinheit angeschlossen. Der + Anschluss des Piezos wird mit VCC und der – Anschluss mit SIG vom Port 8 der Kontrolleinheit verbunden. HITEC ROBONOVA http://www.robonova.de...
Seite 144
Bei Kontrolleinheiten der MR-C2000-Serie kann die Frequenz und die Dauer eines Tones eingestellt werden. Konfigurationswerte: Von 1 bis 254 Die Belegung sieht so aus, wie in der Tabelle gezeigt: Eingabe Frequenz (Hz) Eingabe Frequenz (Hz) Eingabe Frequenz (Hz) 38,86k 23,81k 11,11k 5,88k 3,00k 2,00k 1,54k 1,23k 1,00k HITEC ROBONOVA http://www.robonova.de...
Seite 145
Bei Kontrolleinheiten der MR-C2000-Serie können 3 Oktaven genutzt werden: Die niedrige, mittlere und die hohe Oktave. Um die Länge eines Tones zu bestimmen werden die Numerale von 0 bis 9 verwendet. Dazu betrachten sie bitte folgende Tabelle: HITEC ROBONOVA http://www.robonova.de...
Seite 146
PLAY „M4GGAA GGE GEDEC“ MUSIC Musik mit einem Piezo abspielen Befehlsstruktur: PLAY „[Notenfolge]“ Erklärung des Befehls: Die roboBASIC-Sprache und die Kontrolleinheiten der MR-Serie besitzen die Möglichkeit Musik abzuspielen. Um Musik abzuspielen müssen Daten zur [Notenfolge] hinzugefügt werden. Siehe untenstehende Tabelle: HITEC ROBONOVA http://www.robonova.de...
Seite 147
Im Falle punktierter Noten wird dies als Numeral oder . in der [Notenlinie] vermerkt. Bei Kontrolleinheiten der MR-C2000-Serie muss statt MUSIC der Befehl PLAY verwendet werden. Der Befehl TEMPO ist bei Kontrolleinheiten der MR-C3000-Serie extra verfügbar. Beispiel des Befehls: MUSIC „O34GGAA GGE GGEED“ MUSIC „O3GGA4.A GGE GEDEC“ TEMPO HITEC ROBONOVA http://www.robonova.de...
Benutzung eines RF-Moduls erfolgen. Zur RS232-Kommunikation werden 3 Kabel benötigt (Senden – TX, Empfangen – RX, Masse – GND) Zum Anschluss an einen PC ist eine Spannungsversorgung (MAX32 oder ähnliche) notwendig. Beim MiniBus werden das BUS-Signal und Masse zur Kommunikation genutzt. HITEC ROBONOVA http://www.robonova.de...
Seite 149
Das [Fehlererkennungslabel] ist ein Label für Fehler, die während des Empfangs auftreten können. Wie in dem Falle, wenn der Empfangspuffer leer ist. Alle Programme, die Daten durch RS232 erwarten können folgende Befehlsstruktur nutzen: Erneuter Versuch: RX 4, A, Retry HITEC ROBONOVA http://www.robonova.de...
Seite 150
I = "A" TX 4, I Sozusagen werden Buchstaben in ASCII umgewandelt und dann in die Variablen gespeichert. Um RS232 Daten mit einer Kontrolleinheit der Serie MR-C3000 zu empfangen muss statt dem Befehl TX der Befehl ETX genutzt werden. HITEC ROBONOVA http://www.robonova.de...
Seite 151
8bit Daten, keine Parität, 1Stop-Bit. Numerale, Konstanten und Variablen können in [Daten] genutzt werden. Weiterhin kann eine unbeschränkte Anzahl von Daten gesendet werden. Allerdings kann der Numeral 0 nicht gesendet werden. Beispiel des Befehls: MINIOUT 100, 20, 76, 65 HITEC ROBONOVA http://www.robonova.de...
Seite 152
Im [Fehlererkennungslabel] stehen die Befehle, die ausgeführt werden sollen, wenn keine Daten durch den RS232-Port empfangen werden. Retry: ERX 9600, A, Retry Um RS232 Daten mit einer Kontrolleinheit der Serie MR-C2000 zu senden muss statt dem Befehl ERX der Befehl RX genutzt werden. HITEC ROBONOVA http://www.robonova.de...
Seite 153
ETX 9600, I Um den Buchstaben A zu übertragen muss der ASCII-Code für den Buchstaben A gesendet werden. Um RS232 Daten mit einer Kontrolleinheit der Serie MR-C2000 zu empfangen muss statt dem Befehl ETX der Befehl TX genutzt werden. HITEC ROBONOVA http://www.robonova.de...
Seite 154
GOTO MAIN zurück zu MAIN REMOCON() Liest Werte von einer Infrarotfernbedienung von AD-Port #7 Befehlsstruktur: REMOCON ([Remocon(#)]) Erklärung des Befehls: Der Wert, welcher auf der Infrarotfernbedienung gedrückt wird, wird durch den AD-Port #7 an Kontrolleinheiten der MR-C3000-Serie empfangen. HITEC ROBONOVA http://www.robonova.de...
Seite 155
GOTO MAIN Zu MAIN springen SONAR() Liest die kalkulierten Distanzen eines Ultraschallsensors am Ultraschallport aus Befehlsstruktur: SONAR([Ultraschallport]) Erklärung des Befehls: Die digitalen Ein- und Ausgangsports der MR-C3000-Serie werden als Ultraschallports 0 bis 11 genutzt. Beachten sie Folgendes: HITEC ROBONOVA http://www.robonova.de...
Seite 156
Der Wert von SONAR muss eine feste Zahl sein. Ansonsten können Werte zwischen 0 und 3000 gewählt werden. Wenn der Wert 0 ist wird nicht gemessen, ansonsten ist ein mm-Wert die gemessene Distanz. Der verfügbare Ultraschallsensor für Kontrolleinheiten der MR- C3000-Serie ist das SRF04-Modell von der Firma ROBOT ELECTRONICS Inc. HITEC ROBONOVA http://www.robonova.de...
Seite 157
Die Werte von RC-Sendern und RC-Empfängern einlesen Befehlsstruktur: RCIN ([RC-Empfangsport]) Erklärung des Befehls: RC-Empfänger werden an die AD-Eingansports einer MR-C3000-Kontrolleinheit angeschlossen. Auf diese Weise kann dann der Wert eines RC-Senders empfangen werden. Die folgende Tabelle zeigt die Konfigurationsmöglichkeiten des [RC-Empfangsport]. HITEC ROBONOVA http://www.robonova.de...
Seite 158
Beispiel des Befehls: DIM A AS BYTE A = RCIN(0) Ein empfangenes Funksignal wird in Variable A geschrieben GYRODIR Die Richtung eines Gyro-Sensors auslesen um einen Servomotor zu steuern Befehlsstruktur: GYRODIR [Gruppe], [Motorrichtung des Motor n] … HITEC ROBONOVA http://www.robonova.de...
Seite 159
Für die [Motorrichtung] sind die Werte 0 oder 1 zulässig. Ein Wert von 1 wird die Servostellung vergrößern, ein Wert von 0 verkleinert sie. Beispiel des Befehls: GYRODIR G6A, 1, 1, 0, 0, 1, 0 HITEC ROBONOVA http://www.robonova.de...
Seite 160
GYROSENSE G6A, 100, 100, 255, 255, 50, 50 Die Servomotoren #0 und #1 nutzen eine Empfindlichkeit von 100 Die Servomotoren #2 und #3 nutzen eine Empfindlichkeit von 255 (Maximum) Die Servomotoren #4 und #5 nutzen eine Empfindlichkeit von 50 HITEC ROBONOVA http://www.robonova.de...
Numerale, Konstanten oder Variablen können für die [Variable] genutzt werden. Die maximale Größe der [Sprungmarke] ist 255. Zufall Befehlsstruktur: Erklärung des Befehls: Um mit Kontrolleinheiten der MR-C-Serie Zufallszahlen zu generieren wird der RND Befehl genutzt. Es werden Zufallszahlen zwischen 0 und 255 generiert. HITEC ROBONOVA http://www.robonova.de...
Seite 162
Dieser Befehl sorgt dafür, dass das Programm nach dem kompilieren auf die Kontrolleinheit geladen wird. Wenn eine bestimme [Kontrolleinheit] ausgewählt wurde wird das Programm spezifisch auf diese zugeschnitten. Beispiel des Befehls: ‚$DEVICE MRC2000 Programm für die Kontrolleinheit MR-C2000 HITEC ROBONOVA http://www.robonova.de...
Seite 163
[Motornummer] können Zahlen von 0 bis 31 sein. Der [minimale Wert] und der [maximale Wert] nutzen den Motorbewegungsbereich von 10 bis 190. Alle Motoren haben den Bewegungsbereich von 10 bis 190. Beispiel des Befehls: ‚$LIMIT 0, 50, 100 Der Bereich der Bewegung des Servomotors wird auf 50 – 100 beschränkt HITEC ROBONOVA http://www.robonova.de...
Zubehör / Accessories # 138018 1000mAh NiMh Battery / 6V (5Cell), 2/3A Size # 92528 Ladegerät MULTIcharger 810 WWC Charger MULTIcharge 810 WWC # 138020 Serial Interface Kabel Serial Interface Cabel # 138017 Anschlusskabel für HSR-8498HB (420mm) HSR-8498HB Connector Cable (420mm) # 138022 IR Sensor + Remote Control # 136050...
Seite 165
Halterungen / Brackets # 138011 Universal Halter I-Typ (2Stück für 1set) I Type Universal Bracket (2pcs for 1 set) # 138010 Universal Halter U Typ ohne Gewinde Non-tapped U Type Universal Bracket # 138009 Universal Halter U Typ mit Gewinde Tapped U Type Universal Bracket # 138013 Halter für vordere Schulter...