Benutzer-Werkzeuge

Webseiten-Werkzeuge


programmieren_des_mbot-roboters

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
programmieren_des_mbot-roboters [2025/02/03 10:03] torsten.roehlprogrammieren_des_mbot-roboters [2025/02/05 13:45] (aktuell) – [Kurzüberblick API] torsten.roehl
Zeile 3: Zeile 3:
  
 Dieser Abschnitt ist technischer gehalten als die anderen, weshalb er sich eher an erfahrene Arduino-Anwender richtet. Er kann jedoch auch als Referenz verwendet werden, nachdem man sich durch die „Hello-World“-Projekte gearbeitet hat. Weiterhin werden wichtige mBot-Details aufgelistet, die für eine anspruchsvollere mBot-Programmierung erforderlich sind.// Dieser Abschnitt ist technischer gehalten als die anderen, weshalb er sich eher an erfahrene Arduino-Anwender richtet. Er kann jedoch auch als Referenz verwendet werden, nachdem man sich durch die „Hello-World“-Projekte gearbeitet hat. Weiterhin werden wichtige mBot-Details aufgelistet, die für eine anspruchsvollere mBot-Programmierung erforderlich sind.//
 +<WRAP center round info 60%>
 +Alle Makeblock-Projekte müssen immer die folgende Bibliothek einbinden:
 +\\
 +\\
 +** #include <MeMCore.h>**
 +</WRAP>
 +
 +===== Kurzüberblick API =====
 +<WRAP center round tip 80%>
 +Im API-Bereich befindet sich die offizielle Dokumentation der Makeblock-Bibliothek. Sie umfasst Klassen für mehrere mBot-Modelle, darunter auch Funktionen, die der einfache mBot nicht benötigt oder unterstützt.
 +</WRAP>
 +
 +
 +
 +|**<color #7092be>MeRGBLed  - farbige LED's</color>** ||
 +^Code^Beschreibung^
 +|''MeRGBLed led(0, 2);'' | LED (Objekt) erstellen - Werte sind durch die Hardware fest!!!|
 +|'' led.setpin(13);''| PIN 13 (siehe Pinbelegung) im ''setup()'' setzen! |
 +|''setColorAt(led,r,g,b)''| Setzt die Farbe der gewählten //led// mit den Werten für Rot (''r''), Grün (''g'') und Blau (''b'') zwischen 0 und 255. Dabei bedeutet 0,0,0 kein Licht und 255,255,255 weißes Licht.  //led// ist 0 oder 1 (für die beiden LED's)|
 +|''show()''|Anzeigen (nach dem setzen) der Farbe. |
 +
 +
 +|**<color #7092be>MeBuzzer  - Buzzer (Summer)</color>** ||
 +^Code^Beschreibung^
 +|''MeBuzzer buzzer;'' | Buzzer (Objekt) erstellen|
 +|''  buzzer.tone(frequency, duration);''| ''frequency'' - Frequenz des gespielten Tons.   ''duration'' - Dauer (in ms) für den ausgegebenen Ton. |
 +|''buzzer.noTone ()''| Ausgabe stoppen.|
 +
 +
 +
 +|**<color #7092be>MeDCMotor  - Motoren</color>** ||
 +^Code^Beschreibung^
 +|''MeDCMotor motor1(M1);  '' | Motor (Objekt) erstellen - M1!|
 +|''MeDCMotor motor2(M2);  '' | Motor (Objekt) erstellen - M2!|
 +|''motor1.run(value);  '' | Geschwindigkeit (valued) von 255 bis -255. 0 stopt den Motor.|
 +|''motor1.stop();  '' | |
 +
 +
 +|**<color #7092be>MeLightSensor - Lichtsensor</color>** ||
 +^Code^Beschreibung^
 +|''MeLightSensor lightSensor(PORT_8);'' | Lichtsensor (Objekt) erstellen!|
 +|''lightSensor.read()'' |Sensor auslesen (0-1023), je heller desto größer der gelesene Wert. |
 +
 +
 +===== Pinnbelegung =====
 +| **A0**   | RJ25 plug 4 <color #22b14c>(default not-connected) </color>   |
 +| **A1**   | RJ25 plug 4<color #22b14c> (default not-connected) </color>   |
 +| A2   | RJ25 plug <color #7092be>3 ultrasonic</color>                |
 +| A3   | RJ25 plug<color #7092be> 3 ultrasonic</color>                |
 +| A6   | Light sensor                          |
 +| **A7**   | **Button**                                |
 +| D2   | IR RCV                                |
 +| D3   | IR TX                                 |
 +| D4   | DIR2 - direction motor2               |
 +| D5   | PWM2 - pwm motor2                     |
 +| D6   | PWM1 - pwm motor1                     |
 +| D7   | DIR1 - direction motor1               |
 +| D8   | Buzzer                                |
 +| D9   | RJ25 plug <color #7092be>2 linefollower</color>              |
 +| D10  | RJ25 plug<color #7092be> 2 linefollower</color>              |
 +| **D11**  | RJ25 plug 1 <color #22b14c>(default not-connected)</color>   |
 +| **D12**  | RJ25 plug 1<color #22b14c> (default not-connected)</color>   |
 +| D13  | 2 WS2812 RGB LEDs  |
 +                   
 +
 +===== freie Ports  =====
 +Die beiden freien Ports (1 und 4) stellen damit folgende Funktionalität frei verfügbar:
 +
 +
 +| GND  | Ground (frei verfügbar)               |
 +| VCC  | VCC (frei verfügbar)                  |
 +| SDA  | I2C SDA (frei verfügbar)              |
 +| SCL  | I2C SCL (frei verfügbar)              |
 +| A0   | Analog Pin (frei verfügbar)           |
 +| A1   | Analog Pin (frei verfügbar)           |
 +| D11  | Digital Pin (frei verfügbar)          |
 +| D12  | Digital Pin (frei verfügbar)          |
 +                   
  
  
 ===== Schematic ===== ===== Schematic =====
 {{ :inf:mbot-schematic.png?600 |}} {{ :inf:mbot-schematic.png?600 |}}
 +
 +====== Installation ======
 +Für die Verwendung des //mBot// unter ''Arduino'' muss die ''Makeblock-Bibliothek'' installiert werden. Am einfachsten ist es, die Bibliothek direkt aus der ''Arduino-IDE'' zu installieren (siehe Bild). Alternativ kann sie auch manuell hinzugefügt werden. Außerdem kann die Bibliothek im Downloadbereich heruntergeladen werden, in der Version 3.27.
 +
 +{{ :inf:msr:makeblock_install.png?600 |}}
 +
 +
  
programmieren_des_mbot-roboters.1738576994.txt.gz · Zuletzt geändert: 2025/02/03 10:03 von torsten.roehl