Menü
Microbots
0
  • Machen
    • Erste Schritte
    • Maker-Builds
    • Ausbildung
  • Geschäft
    • Maker-Module
    • Werkzeuge und Ausrüstung
    • Roboter & Displays
  • Um
    • Unsere Geschichte
    • Kontakt
    • FAQs
  • Einloggen
  • Deutsch
  • Ihr Warenkorb ist leer
Microbots
  • Machen
    • Erste Schritte
    • Maker-Builds
    • Ausbildung
  • Geschäft
    • Maker-Module
    • Werkzeuge und Ausrüstung
    • Roboter & Displays
  • Um
    • Unsere Geschichte
    • Kontakt
    • FAQs
  • Sprache

  • 0 0

FlatFlap - Erstellen einer Positionskontrolle


FlatFlap ist ein kompakter Klappenantrieb. In dieser Anleitung konzentrieren wir uns jedoch auf die Positionsregelung – das Halten der Klappe in einer festen Position mithilfe eines kontrollierten Arbeitszyklus. Diese Methode eignet sich für Anwendungen, bei denen die Klappe über längere Zeit in einem bestimmten Winkel verharren muss, anstatt kontinuierlich zu schwingen.

Wie es funktioniert

FlatFlap funktioniert, indem Strom durch die Spule geleitet wird, wodurch ein Magnetfeld erzeugt wird, das mit dem Magneten interagiert. Anstatt einen kurzen Impuls zu erzeugen oder die Rechteckwelle zu schwingen, verwenden wir hier Pulsweitenmodulation (PWM), um die Klappe im gewünschten Winkel zu halten.

Der Arbeitszyklus des PWM-Signals steuert die Stärke des Magnetfelds und verändert so den Winkel der Klappe.

Feinabstimmung der Positionssteuerung

Mehrere Faktoren beeinflussen die Positionsgenauigkeit und -stabilität:

  • Spannungspegel – Maximale Spannung ist 5V - diese Spannung sorgt für die Haltekraft
  • PWM-Frequenz – Um einen Betrieb ohne hörbare Töne zu gewährleisten, wird eine PWM-Signalfrequenz von 20 kHz empfohlen.
  • Belastungsbedingungen – Jede angebrachte Masse beeinflusst, wie gut die Klappe ihre Position hält.

Verwenden von DriveCell zur Positionssteuerung

Wenn Sie die DriveCell-Bibliothek. Das folgende Beispiel zeigt, wie verschiedene Positionen eingestellt werden:

 #include <drivecell.h>

 #define IN1_pin1 2
 #define IN1_pin2 3
 DriveCell FlatFlap1(IN1_pin1, IN1_pin2);

 void setup() {
 FlatFlap1.Init();
 }

 void loop() {
 FlatFlap1.Drive(true, 100); // Maximum hold strength
 delay(3000);

 FlatFlap1.Drive(true, 75); // Hold with 75% power
 delay(3000);

 FlatFlap1.Drive(true, 50); // Hold with 50% power
 delay(3000);

 FlatFlap1.Drive(true, 25); // Hold with 25% power
 delay(3000);
 }

Dieser Code passt den Arbeitszyklus schrittweise an, um die Klappe in verschiedenen Positionen zu halten.

Die Funktionen verstehen:

  • Init() → Initialisiert DriveCell und richtet die Eingangspins ein
  • Drive(bool direction, uint8_t power_percent)
    • Richtung : true (Norden) / false (Süden)
    • power_percent : Magnetkraft (0 bis 100 %)

⚠ Hinweis: Die Drive()-Funktion verwendet einen Hochgeschwindigkeits-PWM-Timer und ist daher nur mit CodeCell- und ESP32-basierten Geräten kompatibel.

Wenn Sie kein ESP32-Gerät verwenden, können Sie PWM in Arduino mit dem folgenden Code anpassen. Stellen Sie jedoch sicher, dass die Wellenformfrequenz korrekt eingestellt ist.

 #define FLAP_PIN1 2
 #define FLAP_PIN2 3

 void setup() {
 pinMode(FLAP_PIN1, OUTPUT);
 pinMode(FLAP_PIN2, OUTPUT);
 digitalWrite(FLAP_PIN2, LOW);
 }

 void loop() {
 analogWrite(FLAP_PIN1, 191); // 75% Duty Cycle (191/255)
 digitalWrite(FLAP_PIN2, LOW);
 delay(5000); // Hold for 5 seconds

 analogWrite(FLAP_PIN1, 127); // 50% Duty Cycle
 delay(5000);
   
analogWrite(FLAP_PIN1, 63); // 25 % Arbeitszyklus
 Verzögerung (5000);
 }

Abschluss

Durch PWM kann die FlatFlap bestimmte Winkel über lange Zeiträume halten, was diese Funktion für Robotik, Haptik und Kunst nützlich macht. Weitere Codebeispiele und technische Dokumentation finden Sie im DriveCell GitHub Repository !

  • Teilen:

Sozial

Github

  • Um
  • Software
  • Ausbildung
  • Kontakt
  • FAQs
  • Bedingungen
  • Rückerstattung-Politik
  • Datenschutzrichtlinie

Erfahren Sie als Erster von neuen Projekten und sichern Sie sich spannende Angebote!

© 2026 Microbots.

★ Reviews

Let customers speak for us

50 reviews
Write a review
84%
(42)
4%
(2)
2%
(1)
4%
(2)
6%
(3)
21
46
B
CodeCell C6 Drive
Brandon

Awesome product with great tutorials and example code

G
MotorCell
Gerald Kendrick

Very happy with my MotorCell. I'm incorporating it into a prototype project that will hopefully result in me needing a few more!

User picture
A
CodeCell C6 Drive
Anonymous

Great product! Having the IMU, motor driver, and battery management directly on the board is incredibly handy for quick prototyping. Love it!

Improvement ideas:
- using an ESP32 other than the C6 to get more cores. On a single-core chip, WiFi tasks often interfere with real-time applications.
- adding two more motor drivers (with a slightly higher current rating) would be awesome for drone projects!
- I know the compactness of the board is a huge selling point and really optimised, but exposing a few more pins would be great. With the motor drivers already occupying 4 pins, having only 4 GPIOs left can be tight for complex projects (though I’m nitpicking, I’m really pushing this board to its limits!).

A
CodeCell C6
Anonymous

I use CodeCell C6, like all the Features, and compactness. The remote Link to the iPhone with some Controls for 2 Motors is just perfect for the job.

O
CodeCell C6 Drive
Odd_Jayy

This is one of my Favorite finds, this board has everything you need to make a quick and small robot, easy to set up and install. Perfect for beginners or a person who needs to save room in their build.

User picture
123