Sicherheitsschaltgeraete von Pilz


Google-Suche auf MEINE-SCHALTUNG.de :





Online Rechner

Chronik

Dauerkalender


Magnetrührer mit Gleichstrommotor

Natü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.

Magnetische Feldlinien


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.

Anordnung der Magnete

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.

Anordnung mit Magnetstäbchen im Glas


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.

Motor in Bewegung


Schaltplan

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.

Motortreiber L9110H

Testschaltung

Testschaltung Elektronik

Mit wenigen Drahtverbindungen können die elektronischen Komponenten schnell zusammenverbunden werden.

Magnete an der Motorwelle

Zwei Rundmagnete montiert auf der Motorwelle. Entgegengesetzte Orientierung der Magnetfelder.

Zylindermagnete

Ein Magnetstäbchen kann z.B. aus zwei kleinen zylindrischen Magneten gebaut werden.

Rundmagnete

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).

Kurzvideo

Kurzvideo


Weitere Themen:


Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz