![]()
| Magnetrührer mit GleichstrommotorNatürlich kann man durch einfaches Glasschütteln zwei oder mehr Flüssigkeiten miteinander vermischen oder sie abkühlen. Wenn es aber immer wieder gemacht
werden muss oder der Mischvorgang sehr lange durchgeführt werden muss, ist eine automatische Vorrichtung, die uns diese Arbeit abnimmt, äußerst sinnvoll. In diesem
Experiment, in dem die magnetischen Felder eine sehr wichtige Rolle spielen, konstruieren wir einen automatischen Rührer, der uns diese Aufgabe abnimmt. An der
Welle eines Gleichstrommotors werden auf den gegenüberliegenden Seiten jeweils zwei permanente Magnete angebracht. Sie werden so positioniert, dass ihre Magnetfelder
sich entlang der Motorachse aufbauen und gegensätzliche Richtungen aufweisen. ![]() Des Weiteren werden zwei weitere permanente Magnete benötigt, die sozusagen das Gegenstück der Motor-Magneten bilden. Sie werden miteinander zu einem
Magnetstäbchen, das später in dem Mixbehälter die Rühraufgaben übernimmt, verbunden. ![]() Zwei Varianten von Magnetstäbchen: gebildet mit runden (links) und zylindrischen (rechts) Magneten. Damit der Rührer einwandfrei funktioniert, müssen alle Komponenten richtig aufgestellt werden. Über die Motor-Magnete wird in einer geringen
Entfernung ein Glas mit der zu vermischenden Flüssigkeit aufgestellt. In dem Glas wird das Magnetstäbchen untergebracht. Der Abstand zwischen den Motor-Magneten
und dem Magnetstäbchen muss so gewählt werden, dass die magnetischen Felder der Motor-Magneten auf die der Magnetstäbchen
deutlich einwirken. ![]() Sobald der Motor und damit die an der Welle befestigten Magnete anfangen zu drehen, muss das Magnetstäbchen dank Einwirkung von magnetischen
Feldern der Motorbewegung folgen. Da sich das Magnetstäbchen im Glas mit der Flüssigkeit befindet, beginnt auch
sie zu rotieren. ![]() Schaltplan![]() Die dazugehörige Schaltung besteht aus wenigen Komponenten. Mit dem Schalter S1 wird unser Magnetmixer ein- bzw. ausgeschaltet. Mit dem Taster
S2 kann die Drehrichtung des Motors voreingestellt werden. Die direkte Ansteuerung des Motors übernimmt der Motortreiber L9110H, der wiederum von dem Mikrocontroller
Arduino Nano angesteuert wird. Am Arduino Nano wählen wir zu diesem Zweck zwei I/O-Pins, die als Ausgänge definiert werden und PWM-fähig sind. Dank dessen ist
es möglich, die Drehzahl des Motors zu regulieren. Schließlich wird mit dem Potentiometer R1 die gewünschte Drehzahl des
Motors eingestellt. Testschaltung![]() Mit wenigen Drahtverbindungen können die elektronischen Komponenten schnell zusammenverbunden werden. ![]() Zwei Rundmagnete montiert auf der Motorwelle. Entgegengesetzte Orientierung der Magnetfelder. ![]() Ein Magnetstäbchen kann z.B. aus zwei kleinen zylindrischen Magneten gebaut werden. ![]() Ein Magnetstäbchen aus zwei Rundmagneten. ![]() Der komplette Aufbau der Testschaltung. Programm (Sketch)// *******************************************************************************************// Magnetrührer mit Gleichstrommotor // Eine Schaltung mit L9110H, Arduino Nano und einem Gleichstrommotor // Arduino IDE 2.3.5 // ******************************************************************************************* int Poti_Drehzahl = A0; // Poti, analog Eingang int Taster_Start = 3; // Pin 3 Taster Start int Taster_Richtungswechsel = 2; // Pin 2 Taster Richtungswechsel int L9110H_Linkslauf = 5; // Ausgang Pin 5, PWM (Linkslauf + Speed) int L9110H_Rechtslauf = 6; // Ausgang Pin 6, PWM (Rechtslauf + Speed) bool Start, Richtung; // Hilfsvariablen int Drehzahl; // Motordrehzahl // ***************************************************************************************** void setup() { pinMode (Taster_Start, INPUT_PULLUP); // I/Os als Eingänge definieren pinMode (Taster_Richtungswechsel, INPUT_PULLUP); pinMode (L9110H_Linkslauf, OUTPUT); // I/Os als Ausgänge definieren pinMode (L9110H_Rechtslauf, OUTPUT); } // ***************************************************************************************** void loop() { if (digitalRead(Taster_Start) == LOW) { // Motor Start / Stop Start = !Start; if (Start == LOW) { Drehzahl = 0; analogWrite(L9110H_Linkslauf, Drehzahl); analogWrite(L9110H_Rechtslauf, Drehzahl); } delay (200); // Taster Prellung abwarten } if (Start == LOW) { // Drehrichtungsumkehr if (digitalRead(Taster_Richtungswechsel) == LOW) { Richtung = !Richtung; delay (200); // Taster Prellung abwarten } } if (Start == HIGH) { // Poti-Einstellung auslesen Drehzahl = analogRead(Poti_Drehzahl) / 4; } if (Richtung == LOW) { // Motor Steuerung analogWrite(L9110H_Rechtslauf, Drehzahl); analogWrite(L9110H_Linkslauf, 0); } else { analogWrite(L9110H_Linkslauf, Drehzahl); analogWrite(L9110H_Rechtslauf, 0); } delay (10); } // ******************************************************************************************* Die Steuerung erfolgt praktisch mit nur zwei Tastern. Mit S1 wird der Motor entweder eingeschaltet oder ausgeschaltet. Der Betriebszustand
wird mit der Variable „Start“ markiert. Wenn „Start“ auf TRUE steht, läuft der Motor. Die Drehzahl wird mit der Anweisung analogWrite() vorgegeben und hängt von der
aktuellen Einstellung des Potentiometers R1 ab. Der zuständige Wert wird von dem analogen Eingang A0 des Arduino mit analogRead() ausgelesen. Die Ausgabe erfolgt, je nach
eingestellter Drehrichtung, über die Pins 5 bzw. 6 am Arduino als ein PWM-Signal. Mit dem Wert Null wird der Motor zum Stillstand gebracht. Die Einstellung der
Drehrichtung erfolgt mit dem Taster S2. Die Drehrichtungsumkehr ist in diesem Fall nur bei stehendem Motor
möglich („Start“ = FALSE). KurzvideoKurzvideo Weitere Themen:
|