Forum: Analoge Elektronik und Schaltungstechnik 2x 12V Motorsteuerung, stufenlos regelbar, kurvenfahrfähig


von Tom M. (mhhh)


Lesenswert?

Hallo,

ich habe folgendes "kleines" Problem:


an einem kleinen Dreirad sind zwei 12V Motoren (ich hab keine Ahnung wie 
viel Strom die Teile ziehen, da nichts draufsteht) installiert.
Ich würde gern auf konventionelle Art und Weise (keine Microcontroller 
programmieren, da ich die Geräte zur Programmierung nicht besitze) eine 
Steuerung für diese beiden Motoren haben.

Die Motoren sollen auf folgende Weise gesteuert werden:

Ein Poti regelt die Geschwindigkeit nach vor bzw. nach hinten. Ein 
weiteres regelt die Kurvengeschwindigkeit, da z.B. wenn ich das Poti 
drehe und der Widerstand erhöht wird soll das Gefährt nach rechts fahren 
und wenn ich den Widerstand verringere soll es nach links fahren.

Kann man solch eine Regelung nur mit Fets realisieren oder gibt es da 
keine Möglichkeiten?


Ich bin für jede Hilfe dankbar!!

von Falk B. (falk)


Lesenswert?

@  Tom Meyer (mhhh)

>Kann man solch eine Regelung nur mit Fets realisieren

Nur mit FETs kaum, aber ohne MIkrocontroller rein analog.

MFG
Falk

von Tom M. (mhhh)


Lesenswert?

Rein analog hört sich gut an!

Hast du da einen Vorschlag wie man soetwas umsetzt???

von Hans M. (hansilein)


Lesenswert?

Naja, eigentlich ist es leicht: mit beiden potis steuerspannungen 
erzeugen,
dann addierer und subtrahierer aus opamps.
links=geschwindigkeit+richtung
rechts=geschwindigkeit-richtung

Aber ich glaube nicht, daß Du die Restleistung im Opamp verbraten 
willst, deshalb musst Du aus den Signalen dann noch eine PWM machen da 
gibt es extra ics, vielleicht auch ein 555?
Anschließend eine Leistungsstufe.

Rückwärts würde ich über einen Schalter machen

von Tim T. (tim_taylor) Benutzerseite


Lesenswert?

Auch wenn du explizit nicht mit µC werkeln wolltest:

Einen vernünftigen USB Programmer (AVR ISP MKII) gibts für 40 Euronen 
und die entsprechenden Controller kosten 2-3 Euro. Also zusammen mit 
entsprechenden Mosfets und Hühnerfutter bist du mit nem 50er dabei.
Überlegs dir einfach mal...

von Hans M. (hansilein)


Lesenswert?

Noch billiger und einfacher mit Arduino.
kostet unter 30€, kommt mit USB-Anschluss, hardware-PWM und 
Programmbeispielen.
Die Leistungsstufe braucht man trotzdem.

von Tom M. (mhhh)


Lesenswert?

> Auch wenn du explizit nicht mit µC werkeln wolltest:
>
> Einen vernünftigen USB Programmer (AVR ISP MKII) gibts für 40 Euronen

Das hört sich interessant an!!

> Noch billiger und einfacher mit Arduino

Habe ich das richtig verstanden, dass ich mit diesem Gerät nur den 
eingebauten Atmel Controller programmieren kann? Oder kann ich damit 
auch andere Controller Programmieren, die ich dann unabhängig von diesem 
Board verbauen und nutzen kann?




Wenn ich also einen AVR ISP MKII habe, kann ich die Schaltung bauen!
Kann mir jemand ein kleinen Schaltplan mailen, da ich in Sachen 
Microcontroller wirklich Anfänger bin!

von Hans M. (hansilein)


Lesenswert?

So ein Arduino ist dafür gedacht ihn komplett irgendwo einzubauen.
Er ist kein Ersatz für ein Programmiergerät, sondern eher als schnelle 
Lösung gedacht, für Leute, die sich nicht so tief in die Technik 
dahinter einarbeiten wollen/können.

Wenn es nicht Dein einziges Microcontroller-Projekt bleiben soll, ist 
die Lösung mit ISP vielleicht sinnvoller, aber auch da würde ich eine 
Experimentierplatine dazukaufen, z.B.
http://shop.embedded-projects.net/product_info.php/info/p43_AVR-Entwicklungsplatine-fuer-28-pol--AVRs--AVR-P28-8MH-.html

Zu AVR:
http://www.mikrocontroller.net/articles/AVR
http://www.mikrocontroller.net/articles/AVR-Tutorial

Hier Programmer für Studenten zum halben Preis:
http://www.eproo-student.de/

P.S.
Es gibt auch andere interessante Microcontroller,
z.B. von TI,Microchip,Luminary Micro...
Die sind nicht unbedingt teurer, aber oft leistungsfähiger(32 Bit, 
DSP-Anweisungen) oder stromsparender(MSP430)

von Tom M. (mhhh)


Lesenswert?

Hallo Hans!

Ich habe mir deine Links mal angeschaut und es hört sich sehr 
interessant an!
Auch wenn ich Assembler bzw. C programmieren kann, bräuchte ich eine 
Weile, bis ich mich
in die Materie gefuchst habe!

Deswegen würde ich gern nochmal auf deinen Vorschlag zurückkommen:

> Naja, eigentlich ist es leicht: mit beiden potis steuerspannungen
> erzeugen,
> dann addierer und subtrahierer aus opamps.
> links=geschwindigkeit+richtung
> rechts=geschwindigkeit-richtung

> Aber ich glaube nicht, daß Du die Restleistung im Opamp verbraten
> willst, deshalb musst Du aus den Signalen dann noch eine PWM machen da
> gibt es extra ics, vielleicht auch ein 555?
> Anschließend eine Leistungsstufe.

> Rückwärts würde ich über einen Schalter machen


Könntest du mir einen Link schicken, wo die einzelnen Schaltungen, die 
du meinst, gezeichnet und erklärt sind? Bzw ein Blockschaltbild wäre 
auch schon super!

Gruß

von Hans M. (hansilein)


Lesenswert?

Damit kenne ich mich nicht so gut aus, aber schau Dir mal das an:
http://www.mikrocontroller.net/articles/Operationsverst%C3%A4rker-Grundschaltungen#Der_Addierer_.28Summierverst.C3.A4rker.29

Dann würde ich mir LTSpice 'runterladen und das alles ausprobieren.
Wenn Du die richtige Schaltung hast, kommt die PWM-Erzeugung (falls Du 
die brauchst), da würde ich hier anfangen:
http://www.mikrocontroller.net/articles/Pulsweitenmodulation#AD-Wandlung_mit_PWM



Arduino-code für die Aufgabe:
1
int potPinL = 2;    // lenken
2
int potPinG = 2;    // gas
3
int motorRPin = 12;   // rechter Motor
4
int motorLPin = 13;   // linker Motor
5
int valL = 0;       // lenkwert
6
int valG = 0;       // gaskwert
7
8
void setup() {
9
  pinMode(motorRPin, OUTPUT);  
10
  pinMode(motorLPin, OUTPUT); 
11
  pinMode(potPinL, INPUT); 
12
  pinMode(potPinR, INPUT); 
13
}
14
15
void loop() {
16
  valL = analogRead(potPinL)-512;    // 512 ist die Mitte
17
  valG = analogRead(potPinG)
18
  analogWrite(motorRPin,valG-valL*0.2);
19
  analogWrite(motorLPin,valG+valL*0.2);
20
}
Ist allerdings auch ohne Rückwärtsfahrt

von Tom M. (mhhh)


Lesenswert?

Danke für die schnelle Antwort!

Ich habe mir mal die Links angeschaut und habe mich entschieden, dass 
ganze mit Arduino zu machen. Ich würde mir den Arduino Duemilanove 
kaufen.
Weiterhin brauche ich ja noch eine (bzw. zwei) Leistungsstufe(n), die 
ich mit H-Brücken aufbauen würde. Ich habe mal nachgemessen, dass die 
zwei 12V Motoren jeweils 1.5A ziehen!
Welche MOSFET's benutze ich dafür am besten bzw. gibt es schon H-Brücken 
für solche Leistungen?

Sehe ich das richtig, dass ich folgende Komponenten benötige:

- 5V Spannungsversorgung für Arduino
- Arduino Duemilanove
- 2x H-Brücke für Motoren
- zwei Potis für Geschwindigkeit und Lenkung
- andere Kleinteile die noch benötigt werden?


Gruß

von avr (Gast)


Lesenswert?

Hallo Tom,

unsere Roboterfreunde haben sowas schon gemacht.

Das kpl. Projekt:

http://www.rn-wissen.de/index.php/RN-VNH2Dualmotor

Sollt für dein Projekt das richtige sein.

avr

von Tom M. (mhhh)


Lesenswert?

Danke für den Vorschlag.

Ich wollte die Kosten für den Aufbau gering halten! Das Modul kostet im 
Bausatz 40 Euro und benötigt noch ein PWM, also zusätzlich nochmals 30 
Euro!

Kann ich nicht einfach einen Arduino Duemilanove mit 2 H-Brücken (aus 
MOSFET's) verwenden?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.