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

  • 0 0

Flachklappe

FlatFlap - Creating Position Control

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 !

Vollständigen Artikel anzeigen

FlatFlap - Creating Pulsing Motion

FlatFlap – Pulsierende Bewegung erzeugen

FlatFlap ist ein kompakter Aktuator, der organische, flatternde Bewegungen erzeugen kann. Diese Anleitung konzentriert sich jedoch auf die Erzeugung eines kurzen Impulses – eines einzelnen Flatterns, das nur wenige Millisekunden dauert und dann stoppt. Diese Methode eignet sich für schnelle Betätigungen und Anwendungen, bei denen kurze Bewegungen erforderlich sind.

Wie es funktioniert

Um Bewegung zu erzeugen, benötigt FlatFlap einen elektrischen Strom, der durch die Spule fließt und ein Magnetfeld erzeugt. Durch einen kurzen Impuls induzieren wir ein schnelles Magnetfeld, das den Magneten augenblicklich abstößt.

Generieren eines Impulses in Arduino

Um manuell einen Impuls zu erzeugen, können Sie grundlegende DigitalWrite-Befehle verwenden:

 #define FLAP_PIN1 2
 #define FLAP_PIN2 3

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

 void loop() {
 digitalWrite(FLAP_PIN1, HIGH);
 digitalWrite(FLAP_PIN2, LOW);
 delay(500); // Pulse duration in milliseconds

 digitalWrite(FLAP_PIN1, LOW);
 digitalWrite(FLAP_PIN2, LOW); // Stop motion
 delay(3000); // Stop for 3 sec
 }

Dieser einfache Code sendet einen 500-Millisekunden-Impuls an FlatFlap, der eine kurze Bewegung auslöst, bevor er stoppt.

Optimierung der Pulssteuerung mit PWM

Anstelle eines abrupten Ein-/Aus-Impulses kann die Intensität durch PWM (Pulsweitenmodulation) schrittweise gesteuert werden, wodurch die mechanische Belastung reduziert und die Leistung verbessert wird. Dies wird in DriveCell automatisch geregelt:

 #include <drivecell.h>

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

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

 void loop() {
 FlatFlap1.Pulse(true, 10); // Pulse forward for 10ms
 delay(500); // Wait before the next pulse
 }

Wenn Sie unsere DriveCell-Bibliothek verwenden, können Sie dies direkt mit der Pulse-Funktion implementieren:

 #include <drivecell.h>

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

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

 void loop() {
 FlatFlap1.Pulse(true, 100); // Pulse for 100ms
 delay(3000); // Wait before the next pulse
 FlatFlap1.Pulse(true, 1000); // Pulse for 1000ms
 delay(3000); // Wait before the next pulse
 FlatFlap1.Pulse(true, 500); // Pulse for 500ms 
delay(3000); // Warten vor dem nächsten Impuls
 }

Die Funktion verstehen:

  • Pulse(bool direction, uint8_t ms_duration)

    • Richtung : true (Norden) / false (Süden)

    • ms_duration : Dauer des Impulses in Millisekunden

Abschluss

Mit kurzen Impulsen können Sie FlatFlap für Anwendungen mit schneller Betätigung steuern. Weitere Codebeispiele und technische Dokumentation finden Sie im DriveCell GitHub Repository !

Vollständigen Artikel anzeigen

FlatFlap - Creating Flapping Motion

FlatFlap - Schlagbewegung erzeugen

In dieser Anleitung wird erklärt, wie die FlatFlap ihre Schlagbewegung steuern kann, wie Frequenz und Polarität ihre Bewegung beeinflussen und wie ihre Antriebssignale erzeugt werden.

Wie funktioniert es?

Um die FlatFlap zu bewegen, wird ein elektrischer Strom an die Spule angelegt, wodurch ein Magnetfeld erzeugt wird. Durch Umkehren der Polarität mit einer festgelegten Frequenz erzeugen wir eine wiederholte Gegentaktbewegung, die die Klappe zum Schwingen bringt.

Die Schlagfrequenz lässt sich im Bereich von 1 Hz bis 25 Hz steuern. Das bedeutet, dass FlatFlap je nach Eingangssignal 1 bis 25 Mal pro Sekunde schlagen kann. Höhere Frequenzen sind möglich, aber der Magnet hat in der Regel nicht genügend Zeit, um zu reagieren.

Generieren einer Rechteckwelle zum Flattern

A Für die FlatFlap-Klappe wird ein Rechtecksignal benötigt. Ein H-Brücken-Treiber wie unsere DriveCell wird benötigt, um den Aktuator mit Strom zu versorgen und seine Polarität umzuschalten. Die Eingangssignale der Rechteckwelle können mit einem einfachen digitalWrite()- Befehl in Arduino erzeugt werden:

 #define FLAP_PIN1 2
 #define FLAP_PIN2 3

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

 void loop() {
 digitalWrite(FLAP_PIN1, HIGH);
 digitalWrite(FLAP_PIN2, LOW);
 delay(100); // Adjust delay for desired flapping speed

 digitalWrite(FLAP_PIN1, LOW);
 digitalWrite(FLAP_PIN2, HIGH);
 delay(100);
 }

Dieser einfache Code erzeugt eine Rechteckschwingung, die FlatFlap kontinuierlich flattern lässt. Sie können die Verzögerungszeit anpassen, um die Schlagfrequenz zu ändern.

Schlagbewegung und Frequenz

Die von Ihnen gewählte Häufigkeit hängt von den Anforderungen Ihres Projekts ab:

  • Niedrige Frequenzen (1–10 Hz): Langsame, kontrollierte Bewegung, geeignet für empfindliche Anwendungen
  • Mittlere Frequenzen (10–18 Hz): Moderate Schlaggeschwindigkeit für natürliche Bewegungseffekte
  • Hohe Frequenzen (18–25 Hz): Schnelle Schwingungen für Vibration oder schnelle Betätigung

Durch Anpassen der Verzögerungszeit im Arduino-Code können Sie die Frequenz an die Anforderungen Ihres Projekts anpassen.

Faktoren, die die Bewegung von FlatFlap beeinflussen

Mehrere Faktoren beeinflussen die Wirksamkeit der Schlagbewegung:

  1. Versorgungsspannung – Eine höhere Spannung erhöht die Stärke des Magnetfelds, was zu stärkeren Klappen führt.
  2. Stromfluss – Konstante Stromquelle sorgt für stabile Bewegung
  3. Mechanische Belastung – Obwohl FlatFlap nur etwa 2 g heben kann, wirkt sich jedes zusätzliche Gewicht an der Klappe auf ihre Reaktionszeit, die maximal erreichbare Frequenz und die Resonanzfrequenz aus.

Optimierung des Flapping-PWM

Das obige Codebeispiel erzeugt eine einfache Rechteckwelle, die, wie Sie vielleicht bemerkt haben, die Klappe hart antreibt, ein Ein-Aus-Ansatz, der bei langsamen Frequenzen möglicherweise nicht wünschenswert ist. Um dies zu glätten, müssen wir an beiden Ausgängen Pulsweitenmodulation (PWM) verwenden. Diese Methode Die Intensität des Magnetfelds wird schrittweise geändert, wodurch die mechanische Belastung des FlatFlap-Aktuators verringert wird.

Diese Funktion wird automatisch in unserer DriveCell-Bibliothek verarbeitet:

 # include <DriveCell.h>

 # define IN1_pin1 2 
# definieren IN1_pin2 3
 # definieren IN2_pin1 5
 # definieren IN2_pin2 6

 Antriebszelle FlatFlap1 ( IN1_pin1 , IN1_pin2 ) ; 
Antriebszelle FlatFlap2 ( IN2_pin1 , IN2_pin2 ) ;

 uint16_t Klappenzähler = 0 ;

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

 FlatFlap1 . Tone ( ) ;
 FlatFlap2 . Tone ( ) ;
 }

 void -Schleife ( ) { 
Verzögerung ( 1 ) ;
 Klappenzähler ++ ;
 wenn ( Klappenzähler < 2000U ) {
 FlatFlap1 . Run ( 0 , 100 , 100 ) ; //Rechteckwellenmodus 
FlatFlap2.Run ( 0 , 100 , 100 ) ; // Rechteckwellenmodus
 }
 sonst wenn ( Klappenzähler < 8000U ) { 
FlatFlap1.Run ( 1 , 100 , 1000 ) ; // Glatter PWM-Wellenmodus
 FlatFlap2.Run ( 1 , 100 , 1000 ) ; // Glatter PWM-Wellenmodus
 } anders { 
Klappenzähler = 0U ;
 FlatFlap1.Drive ( 0 , 100 ) ; //Klappe nach Süden mit 100 % Leistung
 FlatFlap2.Drive ( 1 , 100 ) ; // Klappe nach Norden mit 100 % Leistung 
Verzögerung ( 500 ) ;
 FlatFlap1.Drive ( 1 , 100 ) ; // Klappe nach Norden mit 100 % Leistung
 FlatFlap2.Drive ( 1 , 100 ) ; // Klappe nach Norden mit 100 % Leistung 
Verzögerung ( 500 ) ;
 FlatFlap1.Drive ( 1 , 100 ) ; // Klappe nach Norden mit 100 % Leistung
 FlatFlap2.Drive ( 0 , 100 ) ; //Klappe nach Süden mit 100 % Leistung 
Verzögerung ( 500 ) ;
 FlatFlap1.Drive ( 1 , 50 ) ; // Klappe nach Norden mit 50 % Leistung
 FlatFlap2.Drive ( 1 , 75 ) ; //Klappe nach Norden mit 75 % Leistung 
Verzögerung ( 500 ) ;
 FlatFlap1.Drive ( 0 , 25 ) ; //Klappe nach Süden mit 25 % Leistung
 FlatFlap2.Drive ( 0 , 50 ) ; //Klappe nach Süden mit 50 % Leistung
 }
 }

Die Funktionen verstehen:

  • Init() → Initialisiert DriveCell und richtet die Eingangspins ein
  • Drive(direction, power) → Steuert den Aktuator:
    • direction → 1 (Norden) / 0 (Süden)
    • power → Magnetische Feldstärke (0 bis 100%)
  • Run(smooth, power, speed_ms) → Lassen Sie die FlatFlap entweder in einer Rechteckwelle oder einer sanfteren PWM-Welle oszillieren.
    • smooth → 1 (PWM-Welle) / 0 (Rechteckwelle)
    • power → Magnetische Feldstärke (0 bis 100%)
    • power → Flipping-Geschwindigkeit in Millisekunden

⚠ Hinweis: Die Run() & Drive() Funktion verwendet eine Hochgeschwindigkeits-PWM-Timer, wodurch er nur mit CodeCell- und ESP32-basierten Geräten kompatibel ist.

Abschluss

Mit diesen Techniken können Sie FlatFlap in Robotik, Haptik und Kunst integrieren! Weitere Codebeispiele und technische Dokumentation finden Sie im DriveCell GitHub Repository !

Vollständigen Artikel anzeigen

Using FlatFlap to Generate Buzzing Tones

Verwenden von FlatFlap zum Erzeugen von Summtönen

FlatFlap ist nicht nur ein Schlagaktor – er kann auch summende Töne erzeugen, ähnlich einem Piezo-Summer. Durch das Senden eines Hochfrequenzsignals kann FlatFlap hörbare Töne und Vibrationen erzeugen und eignet sich daher für Alarmsysteme, interaktive Reaktionen und kreative Klanginstallationen.

Während Sie jeden H-Bridge-Treiber zur Steuerung von FlatFlap verwenden können, macht DriveCell das Setup kompakt und einfach in Mikrocontroller-Projekte zu integrieren.

Wie FlatFlap Ton erzeugt

FlatFlap verfügt über eine dünne Kupferspule und einen N52-Neodym-Magneten. Fließt elektrischer Strom durch die Spule, erzeugt die Spule Bewegung. Durch schnelles Umschalten der Stromrichtung in einem hörbaren Frequenzbereich (~100 Hz–10 kHz) kann FlatFlap Töne ähnlich einem Lautsprecher oder Piezo-Summer erzeugen.

Durch Variieren der Frequenz können Sie:

  • Grundtöne abspielen → Nützlich für Benachrichtigungen
  • Melodien abspielen → Melodien wie das Super-Mario-Lied erzeugen
  • Integrieren Sie in interaktive Designs → Fügen Sie Projekten akustisches Feedback hinzu

Verkabelung FlatFlap

Zur Tonerzeugung benötigen Sie einen H-Brücken-Motortreiber (wie DriveCell), der die Stromrichtung schnell umschalten kann. Die Verwendung von DriveCell vereinfacht die Anschlüsse und macht den Aufbau kompakter. Alternativ können Sie auch jedes Standard-H-Brücken-Modul verwenden.

Basisanschluss für summende FlatFlap

So verdrahten Sie FlatFlap mit einem DriveCell-Modul:

  1. Verbinden Sie die Ausgangspins der H-Brücke mit FlatFlap:
    • OUT1 → FlatFlap-Pad 1
    • OUT2 → FlatFlap-Pad 2
  2. Verbinden Sie die Eingangspins der H-Brücke mit dem Mikrocontroller:
    • IN1 → Beliebiger digitaler Pin
    • IN2 → Ein weiterer digitaler Pin
  3. Stromanschlüsse:
    • VCC → 5 V maximal
    • GND → Gemeinsame Masse mit dem Mikrocontroller

Steuern von FlatFlap zum Abspielen von Tönen

FlatFlap kann Töne mithilfe von PWM-Signalen erzeugen. Unten sehen Sie ein Beispiel mit den integrierten Funktionen von DriveCell zur Tonerzeugung.

1. Installieren der Bibliothek

  1. Öffnen Sie die Arduino IDE
  2. Zum Bibliotheksmanager
  3. Suchen Sie nach DriveCell und installieren Sie es

2. Codebeispiel zum Abspielen eines Tons auf FlatFlap

Dieses Beispiel macht FlatFlap summt wie ein Lautsprecher und spielt eine Tonfolge ab:

 #include <DriveCell.h>

 #define IN1_pin1 2
 #define IN1_pin2 3

 DriveCell myFlatFlap(IN1_pin1, IN1_pin2);

 void setup() {
 myFlatFlap.Init(); /* Initialize FlatFlap with DriveCell */
 }

 void loop() {
 myFlatFlap.Buzz(100); /* Buzz at 100 microseconds */
 delay(500);
 myFlatFlap.Tone(); /* Play a fixed tone with varying frequencies */
 delay(500);
 }

Die Funktionen verstehen:

  • Buzz(duration) → Erzeugt einen Summeneffekt von 100 Mikrosekunden und steuert die Vibrationsgeschwindigkeit.
  • Tone() → Spielt ein hörbarer Ton, dessen Frequenz automatisch variiert.

Tipp: Durch die Anpassung der Durch die Frequenz und den Arbeitszyklus können Sie verschiedene Musiknoten, Alarme oder Feedback-Töne erzeugen.

3. Das Super Mario-Thema auf FlatFlap abspielen

Unten sehen Sie ein weiteres Codebeispiel, das das Super Mario-Lied mit FlatFlap abspielt:

 
/* Arduino Mario Bros Tunes With Piezo Buzzer and PWM

 by : ARDUTECH
 Connect the positive side of the Buzzer to pin 3,
 then the negative side to a 1k ohm resistor. Connect
 the other side of the 1 k ohm resistor to
 ground(GND) pin on the Arduino.
 */


 #define NOTE_B0 31
 #define NOTE_C1 33
 #define NOTE_CS1 35
 #define NOTE_D1 37
 #define NOTE_DS1 39
 #define NOTE_E1 41
 #define NOTE_F1 44
 #define NOTE_FS1 46
 #define NOTE_G1 49
 #define NOTE_GS1 52
 #define NOTE_A1 55
 #define NOTE_AS1 58
 #define NOTE_B1 62
 #define NOTE_C2 65
 #define NOTE_CS2 69
 #define NOTE_D2 73
 #define NOTE_DS2 78
 #define NOTE_E2 82
 #define NOTE_F2 87
 #define NOTE_FS2 93
 #define NOTE_G2 98
 #define NOTE_GS2 104
 #define NOTE_A2 110
 #define NOTE_AS2 117
 #define NOTE_B2 123
 #define NOTE_C3 131
 #define NOTE_CS3 139
 #define NOTE_D3 147 
#define NOTE_DS3 156
 #define NOTE_E3 165
 #define NOTE_F3 175
 #define NOTE_FS3 185
 #define NOTE_G3 196
 #define NOTE_GS3 208
 #define NOTE_A3 220
 #define NOTE_AS3 233
 #define NOTE_B3 247
 #define NOTE_C4 262
 #define NOTE_CS4 277
 #define NOTE_D4 294
 #define NOTE_DS4 311
 #define NOTE_E4 330
 #define NOTE_F4 349
 #define NOTE_FS4 370
 #define NOTE_G4 392
 #define NOTE_GS4 415
 #define NOTE_A4 440
 #define NOTE_AS4 466
 #define NOTE_B4 494
 #define NOTE_C5 523
 #define NOTE_CS5 554
 #define NOTE_D5 587
 #define NOTE_DS5 622
 #define NOTE_E5 659
 #define NOTE_F5 698
 #define NOTE_FS5 740
 #define NOTE_G5 784
 #define NOTE_GS5 831
 #define NOTE_A5 880
 #define NOTE_AS5 932
 #define NOTE_B5 988
 #define NOTE_C6 1047
 #define NOTE_CS6 1109
 #define NOTE_D6 1175
 #define NOTE_DS6 1245
 #define NOTE_E6 1319
 #define NOTE_F6 1397
 #define NOTE_FS6 1480
 #define NOTE_G6 1568
 #define NOTE_GS6 1661
 #define NOTE_A6 1760
 #define NOTE_AS6 1865
 #define NOTE_B6 1976
 #define NOTE_C7 2093
 #define NOTE_CS7 2217
 #define NOTE_D7 2349
 #define NOTE_DS7 2489
 #define NOTE_E7 2637 
#define NOTE_F7 2794
 #define NOTE_FS7 2960
 #define NOTE_G7 3136
 #define NOTE_GS7 3322
 #define NOTE_A7 3520
 #define NOTE_AS7 3729
 #define NOTE_B7 3951
 #define NOTE_C8 4186
 #define NOTE_CS8 4435
 #define NOTE_D8 4699
 #define NOTE_DS8 4978

 #Melodie definierenPin 5
 //Mario-Hauptthemamelodie
 int Melodie[] = {
 HINWEIS_E7, HINWEIS_E7, 0, HINWEIS_E7,
 0, HINWEIS_C7, HINWEIS_E7, 0,
 HINWEIS_G7, 0, 0, 0,
 HINWEIS_G6, 0, 0, 0,

 HINWEIS_C7, 0, 0, HINWEIS_G6,
 0, 0, HINWEIS_E6, 0,
 0, HINWEIS_A6, 0, HINWEIS_B6,
 0, HINWEIS_AS6, HINWEIS_A6, 0,

 HINWEIS_G6, HINWEIS_E7, HINWEIS_G7,
 HINWEIS_A7, 0, HINWEIS_F7, HINWEIS_G7,
 0, HINWEIS_E7, 0, HINWEIS_C7,
 HINWEIS_D7, HINWEIS_B6, 0, 0,

 HINWEIS_C7, 0, 0, HINWEIS_G6,
 0, 0, HINWEIS_E6, 0,
 0, HINWEIS_A6, 0, HINWEIS_B6,
 0, HINWEIS_AS6, HINWEIS_A6, 0,

 HINWEIS_G6, HINWEIS_E7, HINWEIS_G7,
 HINWEIS_A7, 0, HINWEIS_F7, HINWEIS_G7,
 0, HINWEIS_E7, 0, HINWEIS_C7,
 HINWEIS_D7, HINWEIS_B6, 0, 0
 };
 //Mario spielt das Tempo
 int tempo[] = {
 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,

 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,

 9, 9, 9,
 12, 12, 12, 12,
 12, 12, 12, 12, 
12, 12, 12, 12,

 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,

 9, 9, 9,
 12, 12, 12, 12,
 12, 12, 12, 12,
 12, 12, 12, 12,
 };
 //Unterweltmelodie
 int underworld_melody[] = {
 NOTE_C4, NOTE_C5, NOTE_A3, NOTE_A4,
 HINWEIS_AS3, HINWEIS_AS4, 0,
 0,
 NOTE_C4, NOTE_C5, NOTE_A3, NOTE_A4,
 HINWEIS_AS3, HINWEIS_AS4, 0,
 0,
 HINWEIS_F3, HINWEIS_F4, HINWEIS_D3, HINWEIS_D4,
 HINWEIS_DS3, HINWEIS_DS4, 0,
 0,
 HINWEIS_F3, HINWEIS_F4, HINWEIS_D3, HINWEIS_D4,
 HINWEIS_DS3, HINWEIS_DS4, 0,
 0, HINWEIS_DS4, HINWEIS_CS4, HINWEIS_D4,
 HINWEIS_CS4, HINWEIS_DS4,
 HINWEIS_DS4, HINWEIS_GS3,
 HINWEIS_G3, HINWEIS_CS4,
 NOTE_C4, NOTE_FS4, NOTE_F4, NOTE_E3, NOTE_AS4, NOTE_A4,
 HINWEIS_GS4, HINWEIS_DS4, HINWEIS_B3,
 HINWEIS_AS3, HINWEIS_A3, HINWEIS_GS3,
 0, 0, 0
 };
 //Unterwelt-Tempo
 int underworld_tempo[] = {
 12, 12, 12, 12,
 12, 12, 6,
 3,
 12, 12, 12, 12,
 12, 12, 6,
 3,
 12, 12, 12, 12,
 12, 12, 6,
 3,
 12, 12, 12, 12,
 12, 12, 6,
 6, 18, 18, 18,
 6, 6,
 6, 6,
 6, 6,
 18, 18, 18, 18, 18, 18,
 10, 10, 10,
 10, 10, 10,
 3, 3, 3
 };

 void setup(void)
 {
 pinMode(5, OUTPUT);//Summer
 pinMode(6, AUSGABE); 
digitalWrite(6, LOW);

 }
 void-Schleife ()
 {
 //sing die Melodien
 singen(1);
 singen(1);
 singen(2);
 }
 int Lied = 0;

 void sing(int s) {
 // über die Noten der Melodie iterieren:
 Lied = s;
 wenn (Lied == 2) {
 Serial.println(" 'Unterwelt-Thema'");
 int-Größe = Größe von (Underworld_Melody) / Größe von (int);
 für (int thisNote = 0; thisNote < Größe; thisNote++) {

 // Um ​​die Notendauer zu berechnen, nehmen Sie sich eine Sekunde Zeit
 // geteilt durch den Notentyp.
 //z. B. Viertelnote = 1000 / 4, Achtelnote = 1000/8 usw.
 int noteDuration = 1000 / underworld_tempo[dieseNote];

 Buzz (MelodyPin, Unterweltmelodie [diese Note], Notendauer);

 // Um ​​die Noten zu unterscheiden, legen Sie eine Mindestzeit zwischen ihnen fest.
 // die Dauer der Note + 30 % scheint gut zu funktionieren:
 int pauseBetweenNotes = Notendauer * 1,30;
 Verzögerung (Pause zwischen den Noten);

 // Tonwiedergabe stoppen:
 Buzz (Melodie-Pin, 0, Notendauer);

 }

 } anders {

 Serial.println(" 'Mario-Thema'");
 int-Größe = Größe von (Melodie) / Größe von (int); 
für (int thisNote = 0; thisNote < Größe; thisNote++) {

 // Um ​​die Notendauer zu berechnen, nehmen Sie sich eine Sekunde Zeit
 // geteilt durch den Notentyp.
 //z. B. Viertelnote = 1000 / 4, Achtelnote = 1000/8 usw.
 int noteDuration = 1000 / tempo[dieseNote];

 Buzz (MelodyPin, Melodie [diese Note], Notendauer);

 // Um ​​die Noten zu unterscheiden, legen Sie eine Mindestzeit zwischen ihnen fest.
 // die Dauer der Note + 30 % scheint gut zu funktionieren:
 int pauseBetweenNotes = Notendauer * 1,30;
 Verzögerung (Pause zwischen den Noten);

 // Tonwiedergabe stoppen:
 Buzz (Melodie-Pin, 0, Notendauer);

 }
 }
 }

 void buzz(int targetPin, lange Frequenz, lange Länge) {
 long delayValue = 1000000 / Frequenz / 2; // Berechnen Sie den Verzögerungswert zwischen den Übergängen
 //// 1 Sekunde im Wert von Mikrosekunden, geteilt durch die Frequenz, dann in zwei Hälften geteilt, da
 //// Jeder Zyklus besteht aus zwei Phasen
 long numCycles = Frequenz * Länge / 1000; // Berechnen Sie die Anzahl der Zyklen für das richtige Timing 
//// multiplizieren Sie die Frequenz, die tatsächlich Zyklen pro Sekunde entspricht, mit der Anzahl der Sekunden, bis
 //// Holen Sie sich die Gesamtzahl der zu produzierenden Zyklen
 for (long i = 0; i < numCycles; i++) { // für die berechnete Zeitspanne...
 digitalWrite(targetPin, HIGH); // schreibe den Summer-Pin auf High, um die Membran herauszudrücken
 delayMicroseconds(delayValue); // warte auf den berechneten Verzögerungswert
 digitalWrite(targetPin, LOW); // schreibe den Summer-Pin auf Low, um die Membran zurückzuziehen
 delayMicroseconds(delayValue); // erneut warten oder den berechneten Verzögerungswert
 }

 }

Abschluss

Wie wir gesehen haben, kann FlatFlap auch Summtöne erzeugen, wenn es mit einem H-Bridge-Modul wie DriveCell gesteuert wird. Weitere Codebeispiele und technische Dokumentation finden Sie im DriveCell GitHub Repository !

Vollständigen Artikel anzeigen

Understanding FlatFlap

FlatFlap verstehen

FlatFlap ist einer der dünnsten Klappenaktuatoren auf dem Markt – seine Klappe ist nur 0,3 mm dünn! FlatFlap wurde für Anwendungen mit geringem Kraftaufwand entwickelt und verleiht kreativen und interaktiven Projekten dynamische Bewegung. Ob für künstlerische Installationen, interaktive Displays oder leichte Roboteranwendungen – dieser kompakte Aktuator sorgt mit minimalem Kraftaufwand für auffällige Bewegungen.

In dieser Anleitung erfahren Sie, wie FlatFlap funktioniert, wie es installiert wird und wie es gesteuert wird.

Was ist FlatFlap?

Der Der FlatFlap-Aktuator ist ein einzigartiger, flexibler PCB-basierter Aktuator mit integrierter Aluminiumversteifung, der eine leichte Schlagbewegung erzeugt. Sein Magnetsystem wandelt elektrische Energie in mechanische Bewegung um und ist somit die ideale Lösung für Projekte, die eine feine, organische Bewegung erfordern.

Wie funktioniert FlatFlap?

Der FlatFlap-Antrieb besteht aus:

  • Eine planare Kupferspule, eingebettet in die flexible Leiterplatte
  • Ein 10 mm N52 Neodym-Magnet auf der Rückseite

Fließt elektrischer Strom durch die Spule, erzeugt diese ein Magnetfeld, das mit dem Magneten interagiert und die Klappe anzieht oder abstößt. Durch Wechsel der Stromrichtung kann FlatFlap eine Schlagbewegung erzeugen.

Bewegungssteuerung

  • Einfaches Ein/Aus: FlatFlap kann mit einem direkten Gleichstrom aktiviert werden (ein Pin ist mit Masse verbunden, der andere mit Vcc), wodurch es sich in eine Richtung bewegt.
  • Bewegung: Durch die Anwendung einer Rechteckwellensignal mit Frequenzen zwischen 3–25 Hz, es kann kontinuierlich flattern.
  • Sanfte organische Bewegung: Durch die Verwendung einer sanften Mit unseren eDriveCell- und CodeCell-generierten PWM-Signalen (Pulsweitenmodulation) können Sie natürlichere und kontrolliertere Bewegungen erzeugen.

Was ist in der Box enthalten?

Jedes FlatFlap-Kit enthält:

  • 1× FlatFlap-Antrieb
  • 1× Blau/Rosa Farbwechsel-Aufkleber
  • 2× M1.2 Schrauben

FlatFlap installieren

FlatFlap ist Dank der abziehbaren Kleberückseite lässt es sich einfach auf jeder glatten Oberfläche befestigen. Alternativ kann es mit den mitgelieferten M1.2-Schrauben festgeschraubt werden.

Installationsschritte:

  1. Reinigen Sie die Montagefläche, um eine starke Haftung zu gewährleisten.
  2. Ziehen Sie die Klebefolie (3M467) mit einer Pinzette ab .
  3. Drücken Sie den FlatFlap fest auf die Oberfläche.
  4. (Optional) Verwenden Sie die M1.2-Schrauben für zusätzliche Sicherheit.
  5. (Optional) Bringen Sie den blau/rosa Farbwechselaufkleber für zusätzliche visuelle Effekte an.

Hinweis: Die reflektierende Aluminiumklappe ist nicht poliert und kann herstellungsbedingt leichte Kratzer aufweisen.

Bringen Sie Ihren FlatFlap in Bewegung

Wenn Sie FlatFlap als eigenständigen Aktuator erworben haben, können Sie seine Bewegung manuell testen:

  1. Verbinden Sie einen Pin mit 5V und den anderen mit GND → Die Klappe bewegt sich in eine Richtung.
  2. Anschlüsse umkehren → Die Klappe bewegt sich in die entgegengesetzte Richtung.

Um diesen Prozess zu automatisieren, können Sie:

  • Verwenden Sie Transistoren oder ein H-Brückenmodul, um die Anschlüsse umzuschalten. Eine H-Brücke ist eine Schaltungskonfiguration aus vier H-förmig angeordneten Transistoren, die durch Umkehrung des Stromflusses die bidirektionale Steuerung eines Aktuators ermöglicht.

Halten Sie die Dinge klein

Löten Sie das CoilPad direkt an unser DriveCell-Modul um die Dinge kompakt zu halten. Dies hat einen DRV8837 H-Brücken-Treiber im kleinsten Paket, der für den Umgang mit Gleichstrommotoren und -aktoren mit geringer Leistung ausgelegt ist.

Bereit zum Experimentieren? Schnapp dir noch heute einen FlatFlap und bring Bewegung in dein nächstes Projekt!

Vollständigen Artikel anzeigen

FlatFlap Basics: Your First Steps

FlatFlap-Grundlagen: Ihre ersten Schritte

Der FlatFlap ist ein unglaublich dünner und innovativer Aktuator, der in einem kompakten Formfaktor Bewegung in Ihre Projekte bringt. Um zu verstehen, wie er funktioniert, tauchen wir in sein einzigartiges Design und die Prinzipien hinter seiner Funktionsweise ein.

In diesem Tutorial erklären wir:

  • Was ist ein FlatFlap und wie funktioniert es?
  • So steuern Sie Polarität, Position und Geschwindigkeit
  • Machen Sie den FlatFlap interaktiver mit den CodeCell -Sensoren


Was ist eine FlatFlap?

Es ist flach und es ist eine Klappe ~ die FlatFlap ist ein Aktuator aus einer flexiblen Leiterplatte und Aluminiumversteifungen, die zusammengefaltet sind, um eine Schlagbewegung mit geringer Kraft zu erzeugen. Sein Magnetsystem wandelt elektrische Energie in mechanische Bewegung um.

Wie funktioniert es?

Die FlatFlap verfügt auf ihrer Rückseite über einen dünnen 10-mm-N52-Neodym-Magneten, der mit der planaren Kupferspule interagiert, die in die flexible Leiterplatte eingebettet ist. Wenn ein elektrischer Strom durch die Spule fließt, erzeugt sie ein kleines Magnetfeld, das den Magneten entweder anzieht oder abstößt, wodurch die Klappe bewegt wird. Durch Ändern der Stromrichtung können Sie die Schlagbewegung des Aktuators steuern. Durch Anlegen eines Rechteckwellensignals schlägt die FlatFlap kontinuierlich mit Geschwindigkeiten von bis zu 25 Hz. Für sanfte organische Bewegungen werden wir die DriveCell PWM-Bibliothek erkunden.

FlatFlap installieren

Das FlatFlap -Design erleichtert die Installation. Es verfügt über eine abziehbare Kleberückseite und optionale M1.2-Schrauben (im Lieferumfang enthalten) für zusätzliche Sicherheit und sorgt dafür, dass es fest auf jeder Oberfläche haftet, egal ob glatt oder strukturiert. Der Klebstoff ist 3M467, der eine starke Bindung bietet, aber bei Bedarf mit einer Pinzette entfernt werden kann.

Bringen Sie Ihren FlatFlap in Bewegung

Wenn Sie die FlatFlap als eigenständigen Aktuator gekauft haben, können Sie beginnen, indem Sie einen ihrer Pins auf 5 V und den anderen auf Masse ziehen und sie dann umschalten. In einem Fall wird die Klappe abgestoßen, im anderen angezogen. Sie können sie an Ihre eigenen Transistoren oder Ihr H-Brückenmodul anschließen, um diese Pins automatisch umzuschalten. Um es noch einfacher zu machen, können Sie die FlatFlap direkt an unser kleines DriveCell- Modul gelötet kaufen. Die DriveCell ist ein kompakter, Pin-zu-Pin-kompatibler H-Brückentreiber, der die Steuerung von Aktuatoren wie der FlatFlap vereinfacht. Seine Open-Source-Arduino-Softwarebibliothek macht die Aktuatorsteuerung besonders für Anfänger einfach, indem sie unkomplizierte Softwarefunktionen und leicht verständliche Beispiele bietet.

Eine ausführliche Anleitung zur DriveCell- Softwarebibliothek finden Sie in diesem Artikel . Hier ist jedoch eine kurze Zusammenfassung, wie Sie deren Funktionen nutzen können, um die FlatFlap -Betätigung zu verbessern. Keine Sorge, es ist ganz einfach! Laden Sie zunächst die Bibliothek „DriveCell“ aus dem Bibliotheksmanager von Arduino herunter. Nach der Installation können Sie Ihr Gerät steuern. Bevor wir beginnen, stellen Sie sicher, dass Sie die DriveCell an Ihren Mikrocontroller anschließen. Wir empfehlen die Verwendung einer CodeCell, die Pin-zu-Pin-kompatibel ist, alle Bibliotheksfunktionen unterstützt und Ihrem FlatFlap drahtlose Steuerung und interaktive Sensorik hinzufügen kann.

1. Init()

Zuerst benötigen wir einen grundlegenden Setup-Code, damit Sie loslegen können:

 #include <DriveCell.h> // This line includes the DriveCell library

 DriveCell myFlatFlap(IN1, IN2); // Replace IN1 and IN2 with your specific pins

 void setup() {
 myFlatFlap.Init(); // Initializes your DriveCell connected to a FlatFlap
 }

Dieser Code gibt Ihrer DriveCell den Namen „myFlatFlap“ und weist sie an, alle erforderlichen Peripheriegeräte zu starten und zu initialisieren.

2. Puls (bool Richtung, uint8_t ms_Dauer)

Diese Funktion sendet einen kurzen Stromstoß mit einer bestimmten Polarität an die FlatFlap . Dieses schnelle Ein- und Ausschalten kann je nach Polarität eine kurze, heftige Bewegung der FlatFlap auslösen.

 myFlatFlap.Pulse(1, 10); // Sends a short burst for 10 milliseconds in the specified direction

2. Buzz (uint16_t us_buzz)

Diese Funktion lässt die FlatFlap wie einen Summer vibrieren, was nützlich ist, um eine akustische Rückmeldung zu erzeugen.

 myFlatFlap.Buzz(100); // Makes the FlatFlap buzz with a 100 microsecond pulses

3. Ton()

Mit der Tone -Funktion kann FlatFlap einen Ton abspielen. Dies kann für akustisches Feedback oder kreative Anwendungen genutzt werden, bei denen Ton Teil der Interaktion ist.

 myFlatFlap.Tone(); // Plays a tone by varying the frequency

4. Umschalten (uint8_t power_percent)

Diese Funktion wechselt die FlatFlap -Richtung, was nützlich sein kann, um in Ihrem Code eine schnelle Schlagbewegung zu erzeugen oder die Richtung schnell umzukehren.

 myFlatFlap.Toggle(100); // Toggles direction at 100% power

5. Ausführen (bool glatt, uint8_t Leistungsprozentsatz, uint16_t Flip-Geschwindigkeit_ms)

Mit dieser Funktion können Sie die Polarität des FlatFlap kontinuierlich umkehren und seine Bewegungsgeschwindigkeit und -glätte steuern. Wenn smooth auf true gesetzt ist, ist das Flattern weniger scharf und sanfter, was ideal für langsamere, kontrollierte Bewegungen ist.

 myFlatFlap.Run(true, 50, 1000); // Runs the FlatFlap smoothly at 50% power, flipping every 1000 milliseconds

6. Antrieb (bool Richtung, uint8_t Leistung_Prozent)

Mit dieser Funktion können Sie die Polarität und Winkelposition der FlatFlap- Klappe durch Anpassen des Leistungspegels steuern und damit grundsätzlich die Stärke des magnetischen Zugs oder Drucks einstellen.

myFlatFlap.Drive(true, 75); // Moves the FlatFlap forward at 75% power

Beispiele:

Hier ist ein Beispiel, bei dem wir zwei FlatFlaps konfigurieren und sie mit unterschiedlicher Geschwindigkeit flattern lassen:

 #include <DriveCell.h>

 #define IN1_pin1 2
 #define IN1_pin2 3
 #define IN2_pin1 5
 #define IN2_pin2 6

 DriveCell FlatFlap1(IN1_pin1, IN1_pin2);
 DriveCell FlatFlap2(IN2_pin1, IN2_pin2);

 uint16_t flap_counter = 0;

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

 FlatFlap1.Tone();
 FlatFlap2.Tone();
 }

 void loop() {
 delay(1);
 flap_counter++;
 if (flap_counter < 2000U) {
 FlatFlap1.Run(0, 100, 100);
 FlatFlap2.Run(0, 100, 100);
 }
 else if (flap_counter < 8000U) {
 FlatFlap1.Run(1, 100, 1000);
 FlatFlap2.Run(1, 100, 1000);
 } else {
 flap_counter = 0U;
 FlatFlap1.Drive(0, 100);
 FlatFlap2.Drive(1, 100);
 delay(500);
 FlatFlap1.Drive(1, 100);
 FlatFlap2.Drive(1, 100);
 delay(500);
 FlatFlap1.Drive(1, 100);
 FlatFlap2.Drive(0, 100);
 delay(500); 
FlatFlap1.Drive(1, 100);
 FlatFlap2.Drive(1, 100);
 Verzögerung (500);
 FlatFlap1.Drive(0, 100);
 FlatFlap2.Drive(0, 100);
 Verzögerung (500);
 FlatFlap1.Drive(1, 100);
 FlatFlap2.Drive(1, 100);
 Verzögerung (500);
 FlatFlap1.Tone();
 FlatFlap2.Tone();
 }
 } 

Kombination mit CodeCell-Sensoren

Um es noch interaktiver zu machen, können Sie FlatFlap und DriveCell mit dem winzigen CodeCell-Sensormodul kombinieren. CodeCell ist Pin-zu-Pin-kompatibel mit DriveCell , unterstützt alle Bibliotheksfunktionen und fügt Ihrem Projekt drahtlose Steuerung und interaktive Sensorik hinzu. Auf diese Weise können Sie mit Ihren FlatFlap- Aktuatoren fortschrittlichere, reaktionsfähigere Elemente erstellen.

Mit diesem nächsten Beispiel steuert die CodeCell zwei FlatFlaps , die aufhören zu flattern, wenn eine Annäherung erkannt wird. Ihr Winkel wird dynamisch angepasst, je nachdem, wie nahe Ihre Hände kommen.

 #include <CodeCell.h>
 #include <DriveCell.h>

 #define IN1_pin1 2
 #define IN1_pin2 3
 #define IN2_pin1 5
 #define IN2_pin2 6

 DriveCell FlatFlap1(IN1_pin1, IN1_pin2);
 DriveCell FlatFlap2(IN2_pin1, IN2_pin2);

 CodeCell myCodeCell;

 void setup() {
 Serial.begin(115200); /* Set Serial baud rate to 115200. Ensure Tools/USB_CDC_On_Boot is enabled if using Serial. */

 myCodeCell.Init(LIGHT); /*Initializes Light Sensing*/

 FlatFlap1.Init();
 FlatFlap2.Init();

 FlatFlap1.Tone();
 FlatFlap2.Tone();
 }

 void loop() {
 if (myCodeCell.Run()) {
 /*Runs every 100ms*/
 uint16_t proximity = myCodeCell.Light_ProximityRead(); 
Serial.println(Nähe);
 wenn (Nähe < 100) {
 FlatFlap1.Run(1, 100, 400);
 FlatFlap2.Run(1, 100, 400);
 } anders {
 Nähe = Nähe - 100;
 Nähe = Nähe / 10;
 wenn (Nähe > 100) {
 Nähe = 100;
 }
 FlatFlap1.Drive(0, (Nähe));
 FlatFlap2.Drive(0, (Nähe));
 }
 }
 }

Passen Sie den Code nach Belieben an, indem Sie ihn mit Ihren eigenen kreativen Ideen optimieren, oder fügen Sie Bewegungssensoren für eine neue Reaktion hinzu! Mit FlatFlap können Sie Ihre kreativen Projekte mit Bewegung in einem schlanken, kompakten Paket zum Leben erwecken. Egal, ob Sie dynamische Elemente zur Kunst hinzufügen, mit Robotik experimentieren oder interaktive mechanische Displays entwickeln, FlatFlap bietet eine vielseitige und benutzerfreundliche Lösung. Beginnen Sie noch heute mit unseren Arduino-Bibliotheken! Wenn Sie weitere Fragen zu FlatFlap haben, schreiben Sie uns einfach eine E-Mail und wir helfen Ihnen gerne weiter!

Vollständigen Artikel anzeigen

How does a FlatFlap work?

Wie funktioniert eine FlatFlap?

Der FlatFlap ist ein unglaublich dünner und innovativer Aktuator, der in einem kompakten Formfaktor Bewegung in Ihre Projekte bringt. Um zu verstehen, wie er funktioniert, tauchen wir in das einzigartige Design und die Prinzipien hinter seiner Funktionsweise ein.

Die Struktur

Die FlatFlap besteht aus einer flexiblen Leiterplatte und Aluminiumversteifungen. Diese Komponenten werden sorgfältig zusammengefaltet, um den Aktuator zu bilden.

Die flexible Leiterplatte dient als Grundlage des Aktuators. Im Gegensatz zu starren Leiterplatten kann sich die flexible Version biegen und verdrehen, ohne zu brechen, was für die Erzeugung der Schlagbewegung unerlässlich ist. Die Flexibilität der Leiterplatte ermöglicht es der FlatFlap, sich frei zu bewegen und gleichzeitig ihre strukturelle Integrität beizubehalten.

Die Aluminiumversteifungen bieten die nötige Stabilität, um den Magneten zu halten, der die Schlagbewegung steuert, und stellen sicher, dass die Bewegung sowohl präzise als auch gleichmäßig ist.

Das magnetische System

Die FlatFlap wird von einem intelligenten Magnetsystem angetrieben, das elektrische Energie in mechanische Bewegung umwandelt. Dieses System besteht aus einem Magneten auf der Rückseite des Aktuators und einer planaren Kupferspule, die in die flexible Leiterplatte eingebettet ist.

An der Rückseite des FlatFlap ist ein 10 mm N52 Neodym-Magnet angebracht. Dieser Magnet spielt eine entscheidende Rolle bei der Funktion des Aktuators, da er mit dem von der Kupferspule erzeugten Magnetfeld interagiert. Diese Spule befindet sich innerhalb der flexiblen Leiterplatte und ist für die Erzeugung des Magnetfelds verantwortlich, wenn ein elektrischer Strom durch sie hindurchfließt. Die Schlagbewegung wird dadurch erreicht, dass der Strom in verschiedene Richtungen durch die Kupferspule pulsiert.


Je nach Stromrichtung interagiert dieses Magnetfeld mit dem Magneten auf der Rückseite der FlatFlap. Durch Änderung der Stromrichtung kann das Magnetfeld den Magneten entweder anziehen oder abstoßen, wodurch sich die Klappe bewegt. Die Spannung kann auch über PWM variiert werden, um den Abstand der Spule zum Magneten zu steuern.

Durch schnelles Pulsieren des Stroms in verschiedene Richtungen, wodurch eine Rechteckwelle entsteht, kann die FlatFlap eine kontinuierliche Schlagbewegung erzeugen. Die Geschwindigkeit und Frequenz dieser Bewegung können durch Anpassen der Pulsrate des Stroms gesteuert werden. In der optimalen Konfiguration kann die FlatFlap eine Geschwindigkeit von bis zu 25 Hz erreichen und so eine schnelle und reaktionsschnelle Bewegung erzeugen.



Einfache Befestigung und sichere Installation

Dank der abziehbaren Kleberückseite und optionalen Schrauben ist die Installation des FlatFlap ein Kinderspiel. Der Kleber sorgt für eine starke Verbindung, die den Aktuator sicher an Ort und Stelle hält, während die Schrauben bei Bedarf eine zusätzliche Sicherheitsebene bieten. Diese doppelte Installationsmethode gewährleistet einwandfreie Haftung, egal ob Sie den FlatFlap an einer glatten oder einer strukturierteren Oberfläche anbringen.


Ultradünnes und kompaktes Design

Eines der herausragenden Merkmale der FlatFlap ist ihr unglaublich schlankes Profil. Mit einer nur 0,3 mm dünnen Klappe und einem nur 2,6 mm großen Aktuator lässt sich dieses schlanke Design nahtlos in jede flache Oberfläche integrieren. Sein niedriges Profil stellt sicher, dass es die Ästhetik Ihres Projekts nicht beeinträchtigt, und macht es ideal für Anwendungen mit begrenztem Platzangebot.

FlatFlap eignet sich perfekt für eine Vielzahl von Anwendungen. Es eignet sich besonders gut zum Erstellen kinetischer Skulpturen und zum Experimentieren mit Robotik. Seine Fähigkeit, leichten Objekten wie dünnem 3D-gedrucktem Kunststoff oder Origami-Papier auffällige Bewegung zu verleihen, eröffnet eine Welt kreativer Möglichkeiten.


Vollständigen Artikel anzeigen


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!

© 2025 Microbots.