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

Verwendung von DriveCell zur Steuerung magnetischer Aktuatoren

Magnetische Aktuatoren wie CoilPad und FlatFlap erzeugen mithilfe planarer Leiterplattenspulen ein schwaches Magnetfeld, das mit Magneten interagiert und elektrische in mechanische Energie umwandelt. DriveCell eignet sich aufgrund seiner geringen Größe und der benutzerfreundlichen Bibliothek ideal für die Ansteuerung dieser Aktuatoren.

Magnetische Aktuatoren verstehen und warum sie DriveCell benötigen

Was sind magnetische Aktuatoren?

Magnetische Aktuatoren funktionieren, indem Strom durch eine Spule geleitet wird, wodurch ein Magnetfeld entsteht, das mit benachbarten Magneten interagiert. Dadurch können sie vibrieren oder oszillieren.

Im Gegensatz zu herkömmlichen Gleichstrommotoren erfordern magnetische Aktuatoren einen schnellen Polaritätswechsel und eine präzise Steuerung, um effektiv zu funktionieren. Deshalb sind H-Brücken-Treiber wie DriveCell erforderlich.

Warum einen H-Bridge-Treiber wie DriveCell verwenden?

Da magnetische Aktuatoren auf wechselnde Stromrichtungen angewiesen sind, reicht eine Standardtransistorschaltung nicht aus. Die DRV8837 H-Brücke in DriveCell ermöglicht den Stromfluss in beide Richtungen und ermöglicht so die volle Kontrolle über die Polarität und Intensität des Magnetfelds.

DriveCell-Spezifikationen für magnetische Aktuatoren

Bevor Sie Ihre Aktuatoren anschließen, müssen Sie sich unbedingt über die elektrischen Einschränkungen von DriveCell im Klaren sein:

  • Betriebsspannung: 1,8 V bis 5 V
  • Maximaler Dauerstrom: 1,8 A
  • H-Brücken-Chip: DRV8837, ermöglicht Polaritätsumschaltung und PWM-Steuerung
  • Integrierter Schutz: Überstrom- und Unterspannungssperre sowie thermische Abschaltung

Hinweis: Sowohl das CoilPad als auch die FlatFlap verbrauchen etwa 200 mA. Das bedeutet, dass Sie bis zu 8 Aktuatoren parallel anschließen und sie mit einer einzigen DriveCell antreiben können.

Verdrahtung eines magnetischen Aktuators mit DriveCell

Basisanschluss für einen Aktuator

So löten/verdrahten Sie einen einzelnen CoilPad- oder FlatFlap-Aktuator an DriveCell:

  1. Verbinden Sie die DriveCell-Ausgangspins mit dem Aktuator:
    • OUT1 → Aktorklemme 1
    • OUT2 → Aktorklemme 2
  2. Verbinden Sie die DriveCell-Eingangspins mit dem Mikrocontroller:
    • IN1 → Jeder digitale PWM-fähige Pin
    • IN2 → Ein weiterer digitaler PWM-fähiger Pin
  3. Stromanschlüsse:
    • VCC → 5 V (oder bis zu 11 V, abhängig von den Anforderungen Ihres Aktuators)
    • GND → Gemeinsame Masse mit dem Mikrocontroller

Parallelschaltung mehrerer Aktoren

Sie können mehrere Aktoren parallel schalten:

  • OUT1 → Sowohl Aktor 1 als auch Aktor 2 Klemme-1
  • OUT2 → Sowohl Aktor 1 als auch Aktor 2 Klemme 2

Bei dieser Konfiguration werden beide Aktuatoren synchron gesteuert, sodass sie gleichzeitig aktiviert werden.

Steuerung magnetischer Aktoren mit der DriveCell-Bibliothek

Um die Aktuatorsteuerung zu vereinfachen, bietet DriveCell eine Softwarebibliothek. Nachfolgend finden Sie die wichtigsten Funktionen, die Sie benötigen:

1. Installieren der Bibliothek

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

2. Codebeispiel

Das folgende Beispiel zeigt, wie zwei Aktoren mit unterschiedlicher Intensität gesteuert werden:

 #include <DriveCell.h>

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

 DriveCell Actuator1(IN1_pin1, IN1_pin2);
 DriveCell Actuator2(IN2_pin1, IN2_pin2);

 void setup() {
 Actuator1.Init();
 Actuator2.Init();
 }

 void loop() {
 delay(3000);
 Actuator1.Drive(1, 40); // Activate Actuator1 North-Polarity at 40% power 
Actuator2.Drive(1, 80); // Aktiviere Actuator2 Nordpolarität bei 80% Leistung
 Verzögerung (3000);
 Actuator1.Drive(0, 50); // Aktiviere die Südpolarität von Actuator1 bei 50% Leistung
 Actuator2.Drive(1, 50); // Aktiviere Actuator2 Nordpolarität bei 50% Leistung
 Verzögerung (3000);
 Actuator1.Drive(0, 0); // Deaktiviere Actuator1
 Actuator2.Drive(0, 100); // Aktiviere Actuator2 Südpolarität bei 100% 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 → Magnetfeldstärke (0 bis 100 %)

Hier ist ein weiteres 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 
# 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 ) ;​
 FlatFlap2.Run ( 0 , 100 , 100 ) ;​
 } 
sonst wenn ( Klappenzähler < 8000U ) {
 FlatFlap1.Run ( 1 , 100 , 1000 ) ;​ 
FlatFlap2.Run ( 1 , 100 , 1000 ) ;​
 } anders {
 Klappenzähler = 0U ;
 FlatFlap1.Drive ( 0 , 100 ) ;​ 
FlatFlap2.Drive ( 1 , 100 ) ;​
 Verzögerung ( 500 ) ;
 FlatFlap1.Drive ( 1 , 100 ) ;​ 
FlatFlap2.Drive ( 1 , 100 ) ;​
 Verzögerung ( 500 ) ;
 FlatFlap1.Drive ( 1 , 100 ) ;​ 
FlatFlap2.Drive ( 0 , 100 ) ;​
 Verzögerung ( 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 ( ) ;
 } 
}

Die Funktionen verstehen:

  • 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 → Magnetfeldstärke (0 bis 100 %)
    • power → Flip-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.

Unten sehen Sie ein weiteres Beispiel, das mit anderen Mikrocontrollern wie dem Arduino Uno verwendet werden kann :

#include <DriveCell.h>

 #define IN1_pin1 2
 #define IN1_pin2 3

 DriveCell myActuator(IN1_pin1, IN1_pin2);

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

 void loop() {
 myActuator.Run(1000); // Activate actuator for 1 second, then reverse
 }

In diesem Beispiel wird der Aktuator 1 Sekunde lang mit Nordpolarität aktiviert, bevor die Polarität umgekehrt wird. eine oszillierende Rechteckwellenbewegung.

Abschluss

Das winzige DriveCell-Modul macht die Steuerung magnetischer Aktuatoren einfach und benutzerfreundlich! 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!

© 2025 Microbots.