Skip to content

About

Calliope Bluetooth Erweiterung zur Fernsteuerung und Fernprogrammierung von Robotern mit bis zu 6 Motoren und Servo (z. B. CalliBot, Maker Kit Car, CaR4, Kran) MakeCode v4

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

2,012 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Diese Seite bei https://calliope-net.github.io/fernsteuerung/ öffnen

Calliope Bluetooth Erweiterung zur Fernsteuerung und Fernprogrammierung von Robotern mit Motoren und Servo

  • fügt der Erweiterung radio neue Blöcke zum Bluetooth senden und empfangen hinzu
  • macht Funktion radio.sendBuffer und Ereignis radio.onReceivedBuffer verfügbar
  • damit kann ein Buffer bis 19 Byte Länge über Bluetooth zwischen 2 Calliope übertragen werden
  • 6 verschiedene 'Fahrstrecken' je 3 Byte können gleichzeitig übertragen werden
  • in den 3 Byte stehen jeweils Daten für 1. Motor; 2. Servo; 3. Entfernung
  • als Betriebsarten werden unterschieden: Fernsteuerung und Programm
  • bei Fernsteuerung müssen kontinuierlich Bluetooth Daten gesendet werden (vom Joystick)
  • bei Programm werden die 5 'Fahrstrecken' abgefahren, ohne dass Timeout eintritt
  • entweder werden die 5 'Fahrstrecken' nacheinander abgefahren, dann Stop
  • oder die 5 'Fahrstrecken' werden Ereignissen zugeordnet (Ultraschall und Spursensor)

Als Erweiterung verwenden

Dieses Repository kann als Erweiterung in MakeCode hinzugefügt werden.

  • öffne Makecode in der App oder die Webseite https://makecode.calliope.cc/
  • klicke auf Neues Projekt und gib deinem Projekt einen Namen
  • wähle die zu deinem Calliope mini passende Hardware v1, v2 oder v3
  • klicke auf Erweiterungen
  • schreibe die folgende Projekt-URL:
  • calliope-net/fernsteuerung
  • mit der Tastatur oben in das weiße Feld und klicke auf ENTER
  • klicke auf das Rechteck fernsteuerung (kann von der Tastatur verdeckt sein)
  • jetzt hat die Liste den neuen Eintrag Funk bekommen
  • das ist die Original Bluetooth Erweiterung mit den 2 zusätzlichen Kategorien:
  • Bluetooth (Buffer übertragen) und Fernsteuerung (Buffer vorbereiten und auslesen)

Beschreibung der Erweiterung 'Fernsteuerung'

Kategorie Bluetooth

a

Kategorie Datenpaket

a

Daten Struktur

Steuer Byte 0 ..xx.... (2 Bit) Betriebsart

hex bit Funktion bei Ereignis von einem Sensor
0x00 ..00.... Fernsteuerung 6 Motoren Stop bei Hindernis
0x10 ..01.... Fernsteuerung ein Motor M0 wechselt zum Programm Sensoren
0x20 ..10.... Programm 5 Strecken Stop bei Hindernis
0x30 ..11.... Programm Sensoren wechselt zum Ereignis-Block

Steuer Byte 0 xx..xxxx (6 Bit) Schalter

hex bit Funktion Beschreibung
0x80 1....... Soft-Reset Calliope zurücksetzen
0x40 .1...... Status senden Empfänger sendet Status über Bluetooth
0x08 ....1... Schalter
0x04 .....1.. Schalter
0x02 ......1. Schalter
0x01 .......1 Hupe Buzzer; bei v3 Ton aus Lautsprecher

Betriebsart: Fernsteuerung 6 Motoren (mit Joystick)

  • kontinuierliche Bluetooth Übertragung der Daten vom Joystick
  • nur 1 Servo (für Fahr-Motor M0)
  • Sensoren: Stop bei Hindernis wenn in Servo Byte 2 aktiviert
  • Encoder wird nicht ausgewertet
  • zusätzliche Motoren z.B. Gabelstapler oder Kran

Buffer-Struktur (19 Byte) Betriebsart: Fernsteuerung 6 Motoren

Motor offset Funktion offset Funktion offset Funktion
_ 0 Steuer-Byte 0
M0 1 Motor M0 2 Servo 3 Steuer-Byte 3
M1 4 Motor M1 5 6
MA 7 Motor MA 8 9
MB 10 Motor MB 11 12
MC 13 Motor MC 14 15
MD 16 Motor MD 17 18

Steuer Byte 3 ..xxxxxx (6 Bit) Betriebsart: Fernsteuerung 6 Motoren

hex bit offset Motor Beschreibung
0x01 .......1 1-2 M0 Motor Power
0x02 ......1. 4 M1 Motor Power
0x04 .....1.. 7 MA Motor Power
0x08 ....1... 10 MB Motor Power
0x10 ...1.... 13 MC Motor Power
0x20 ..1..... 16 MD Motor Power

Betriebsart: Programm 5 Strecken

  • einmalige Bluetooth Übertragung, kein Timeout
  • ein Motor und Servo fährt nacheinander die Strecken
  • jede Strecke muss in Steuer Byte 3 aktiviert sein
  • Stop nach der letzten Strecke

Buffer-Struktur (19 Byte) Betriebsart: Programm 5 Strecken

Strecke offset Funktion offset Funktion offset Funktion
_ 0 Steuer-Byte 0
(Joystick) 1 Motor 2 Servo 3 Steuer-Byte 3
1. Strecke 4 Motor 5 Servo 6 Entfernung
2. Strecke 7 Motor 8 Servo 9 Entfernung
3. Strecke 10 Motor 11 Servo 12 Entfernung
4. Strecke 13 Motor 14 Servo 15 Entfernung
5. Strecke 16 Motor 17 Servo 18 Entfernung

Steuer Byte 3 ..xxxxxx (6 Bit) Betriebsart: Programm 5 Strecken

hex bit offset Strecke Beschreibung
0x01 .......1 1 (Joystick)
0x02 ......1. 4-5-6 1. Strecke aktiviert
0x04 .....1.. 7-8-9 2. Strecke aktiviert
0x08 ....1... 10-11-12 3. Strecke aktiviert
0x10 ...1.... 13-14-15 4. Strecke aktiviert
0x20 ..1..... 16-17-18 5. Strecke aktiviert

Betriebsart: Programm Sensoren

  • einmalige Bluetooth Übertragung, kein Timeout
  • ein Motor und Servo fährt ereignisgesteuert die Strecken
  • jedes Ereignis muss in Steuer Byte 3 aktiviert sein
  • Strecke endet, wenn aktiviertes Ereignis von Sensor eintritt
  • Stop Ereignisse: Ultraschallsensor, Spursensor, Encoder
  • Fortsetzung mit dem zum Ereignis passenden Block 1 bis 5

Buffer-Struktur (19 Byte) Betriebsart: Programm Sensoren

Sensor offset Funktion offset Funktion offset Funktion
_ 0 Steuer-Byte 0
(Joystick) 1 Motor 2 Servo 3 Steuer-Byte 3
Ultraschall 4 Motor 5 Servo 6 Entfernung
Spursensor 00 7 Motor 8 Servo 9 Entfernung
Spursensor 01 10 Motor 11 Servo 12 Entfernung
Spursensor 10 13 Motor 14 Servo 15 Entfernung
Spursensor 11 16 Motor 17 Servo 18 Entfernung

Steuer Byte 3 ..xxxxxx (6 Bit) Betriebsart: Programm Sensoren

hex bit offset Ereignis Beschreibung
0x01 .......1 1 (Joystick)
0x02 ......1. 4 Ultraschall Hindernis erkannt
0x04 .....1.. 7 Spursensor 00 dunkel dunkel
0x08 ....1... 10 Spursensor 01 dunkel hell
0x10 ...1.... 13 Spursensor 10 hell dunkel
0x20 ..1..... 16 Spursensor 11 hell hell

Konfiguration für alle Betriebsarten

Motor Byte 1 4 7 10 13 16 (8 Bit) Motor Drehzahl

  • 0..128..255 (128 ist Stop)
  • 0..127 rückwärts; 129..255 vorwärts

Servo Byte 2 5 8 11 14 17 ...xxxxx (5 Bit) Servo Winkel

Zur Übertragung wird der Wert (vom Joystick oder vom MakeCode protractorPicker) in 5 Bit (0..31) umgerechnet. Der Empfänger macht daraus nach der Formel (x + 14) * 3 Winkel von 45° bis 135° in 3° Schritten. Servo wird mit einem Winkel von 45° bis 135° angesteuert. 90° ist geradeaus.

  • 1..16..31 (16 und 0 ist geradeaus 90°)
  • Formel: (x + 14) * 3
  • 1=45° 2=48° 3=51° .. 15=87° 16=90° 17=93° .. 30=132° 31=135°

Servo Byte 2 5 8 11 14 17 xxx..... (3 Bit) Sensor Ereignis aktiviert

hex bit Funktion
0x20 ..1..... Stop dieser Fahrstrecke bei Ereignis Spursensor
0x40 .1...... Stop dieser Fahrstrecke bei Ereignis Ultraschallsensor
0x00 0....... Encoder Auflösung (Entfernung in cm oder Zehntelsekunden)
0x80 1....... Encoder Auflösung (Entfernung in Impulsen) 1U Motor=63,9

Entfernung Byte 6 9 12 15 18 (8 Bit) Entfernung messen aktiviert

  • 0: Ereignis (Encoder oder Zeit) ist deaktiviert
  • 1..255 0,01 .. 2,55 Meter oder 0,1 .. 25,5 Sekunden
  • mit Encodermotor werden Impulse ausgewertet
  • ohne Encodermotor wird die Fahrzeit (Zehntelsekunden) ausgewertet

Steuer Byte 3 xx...... (2 Bit) Wert für Ultraschall Entfernung

  • 2 Bit codieren die Entfernung für das Ultraschall Ereignis
hex bit Funktion Beschreibung
0x00 00...... Ultraschall Entferung Stop bei 5 cm
0x40 01...... Ultraschall Entferung Stop bei 10 cm
0x80 10...... Ultraschall Entferung Stop bei 15 cm
0xC0 11...... Ultraschall Entferung Stop bei 20 cm

Erweiterungen

Upates für Erweiterungen; Erweiterungen aus einem Projekt löschen.

Alle I²C-Erweiterungen von calliope-net (MakeCode-Blöcke).

Calliope-Apps, .hex-Dateien, Bildschirmfotos mit Blöcken

Alle MakeCode-Projekte von calliope-net (Programmierbeispiele).

GitHub-Profil calliope-net: https://github.com/calliope-net

Bezugsquellen

Alle I²C-Module und Bezugsquellen (Hardware).

Blocks preview Build status badge

This image shows the blocks code from the last commit in master. This image may take a few minutes to refresh.

A rendered view of the blocks

Metadaten (verwendet für Suche, Rendering)

  • Calliope mini
  • Bluetooth (Buffer)

About

Calliope Bluetooth Erweiterung zur Fernsteuerung und Fernprogrammierung von Robotern mit bis zu 6 Motoren und Servo (z. B. CalliBot, Maker Kit Car, CaR4, Kran) MakeCode v4

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages