-         

Ergebnis 1 bis 8 von 8

Thema: Gleichstrommotor soll durch Pulsweitenmodulation gesteuert werden

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    15.05.2014
    Beiträge
    30

    Frage Gleichstrommotor soll durch Pulsweitenmodulation gesteuert werden

    Anzeige

    Hallo Leute,

    nach langer Krankheit bin ich endlich wieder zu euch zurückgekehrt und hab gleich ein paar Fragen an euch.
    Folgende Ausgangssituation: Ich habe zwei Gleichstrommotoren, die ich mit Hilfe eines Datenhandschuhs (Eigenentwicklung), welcher per Kabel an einer geeigneten Mosfet-Arduino-Kombination angeschlossen ist, steuern möchte.
    Ich dachte mir das so:
    Der Datenhandschuh hat einen Drucksensor am Zeigefinger, über dem ich die Geschwindigkeit und Vorwärtsbewegung, steuern möchte und einen Drucksensor, über den ich ebenfalls die Geschwindigkeit und die Rückwärtsbewegung steuern möchte. Zudem besitzt der Handschuh noch zwei Flexo-Sensoren am Handgelenk (innen und außen jeweils einen), Wenn ich also nun das Handgelenk nach innen beuge und keinen druck auf den Drucksensoren habe (also Daumendruck), soll ein Motor sich Links drehen und der andere rechts herum. Wenn ich das Handgelenk nach außen beuge soll das selbe nun seitenversetzt passieren. Und zu guter Letzt soll, wenn ich mit den Daumen Druck auf den Zeigefinger-Sensor bring und dabei das Handgelenk nach innen beuge , ein Motor sich bis maximal 75% langsamer drehen als der andere. Das selbe gilt natürlich wieder Seitenversetzt beim Beugen des Handgelenks nach außen.
    Wenn sich Druck auf den Drucksensor am Mittelfinger befindet und das Handgelenk gebeugt ist, sollen die Signale der Flexo-Sensoren am Handgelenk nichts bewirken (also keine Geschwindigkeitsänderungen der Motoren).

    Zu erwähnen ist noch, dass die Motoren erst durch einen bestimmten Wert des Wiederstandes der Drucksensoren, sich anfangen zu drehen, und um so größer der Wert ist, um so größer soll die Geschwindigkeit werden, bzw. um so mehr Strom und Spannung soll durch die Motoren laufen. Das Selbe gilt für die Flexo-Sensoren am Handgelenk.

    dir1 (zu Motor1) und dir2 (zu Motor2) steuert, bzw. geben die Drehrichtung der Motoren an/weiter
    PWM1 (zu Motor1) und PWM2 (zu Motor2) steuern die Geschwindigkeit

    wenn PWM1 und/oder PWM2=0 ist bremsen/st der/die Motor/en, bzw. 0V

    Nun endlich zu meiner Frage:
    Da ich momentan noch etwas unsicher in der Programmierung des Arduino bin, aber nun endlich meine erste "große" Motorensteuerung erschaffen möchte, lautet meine Frage nun, gibt es Vergleichbare Skripte der Programmierung eines ähnlichen Prinzips, oder kann mir jemand sagen, welche "befehle" und/oder "Bedingungen" ich am besten nehmen sollte?


    Mit freundlichen Grüßen

    euer Darkon

    PS: Wie gesagt bin mir ja noch etwas unsicher, was ich aber mit diesen Projekt auch ausräumen will.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    59
    Beiträge
    2.435
    Hallo Darkon,

    Ich würde das Ganze zuerst einmal im zwei unabhängige Aufgaben teilen:

    1. Die Ganze Handschuh Auswertung
    2. Die Motorensteuerung

    Teil 1. berechnet dann für jeden Motor jeweils einen Wert im Bereich von -1'000 bis +1'000.

    Teil 2. Macht dann aus den -1'000 bis +1'000 die Richtung ( aus dem Vorzeichen) und der Wert selbst 0..1000 entspricht dann 0..100% Motorenleistung.

    Die Trennung hat den Vorteil, dass man alles recht schnell an einen anderen Motor anpassen kann, da ändert sich nur Teil 2., zudem muss es ja nicht unbedingt immer ein Motor sein...
    Umgekehrt kannst du auch den Handschuh abändern ohne auch was vom Motor wissen zu müssen.

    Zudem kannst du die Teile auch einfach testen.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    15.05.2014
    Beiträge
    30
    und wie mach ich das?

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    59
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von Darkon Beitrag anzeigen
    und wie mach ich das?
    Ist doch deine Handschuhhardware!
    Wie sollen wir wissen wie du da die Werte ausliest und was da raus kommt?

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    15.05.2014
    Beiträge
    30
    naja ich dachte über analog_read am arduino nur weis ich gerade nicht wie du das meinst für die Motoren werte fest zulegen

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    59
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von Darkon Beitrag anzeigen
    naja ich dachte über analog_read am arduino nur weis ich gerade nicht wie du das meinst für die Motoren werte fest zulegen
    Naja, du dekodierst da erst mal deine Handschuhmimik.

    Das Resultat dieser Berechnung sind dann zwei Variablen, welchen dem Wert -1'000 bis +1'000 annehmen können.

    Diese beiden Werte übergibst du dann den Routinen welche die Motoren ansteuern.
    Über das Vorzeichen kannst du die Drehrichtung bestimmen und den Wert musst du dann passen für die PWM umrechnen.

    Das Ganze Vorgehen hat den Vorteil, dass da nicht alles ineinander verwurstelt ist. Ist einfacher zum Testen und auch zum Anpassen, wenn sich etwas ändert, wie z.B. ein anderer Motorcontroller.

    Den Motortreiber kannst du ganz einfach testen indem du z.B. eine kleine Routine schreibst, welche Werte zwischen -1'000 und +1'000 von der Tastatur einliest und dann den Motortreiber mit diesen Werten aufruft.

    Zum testen der Handschuhmimik musst du einfach die beiden Werte auf dauernd den Bildschirm ausgeben.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    15.05.2014
    Beiträge
    30
    achso, man hab ich eine lange Leitung heut wieder gehabt , danke dir nochmal, jetzt hab ichs verstanden

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    59
    Beiträge
    2.435
    Vielleicht solltest du die Leitung am Daten-Handschuh kürzen
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

Ähnliche Themen

  1. Wissenschaft: Mikroaktor wird durch Temperatur gesteuert
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 18.12.2012, 16:20
  2. WinAvr soll in 2010 eingestampft werden....
    Von funkheld im Forum C - Programmierung (GCC u.a.)
    Antworten: 8
    Letzter Beitrag: 05.11.2010, 17:26
  3. RN Control gesteuert durch Nokia 770 ?
    Von tuck im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 6
    Letzter Beitrag: 04.10.2009, 21:15
  4. vb schrittmotor steuerung soll flüssiger werden
    Von Ersteller im Forum Software, Algorithmen und KI
    Antworten: 6
    Letzter Beitrag: 22.02.2007, 15:46
  5. Akku für bot gesteuert durch pc
    Von dr.benhur im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 28.11.2005, 19:43

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •