mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik Zweiter Motor soll Richtung des ersten Motor verzögert übernehmen (und umgekehrt)


Autor: Tobi (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich möchte einen kleinen autonomen Roboter mit 2 Rädern bauen. Der 
Roboter soll keinen MP verwenden. Er wird folgende Sensoren haben:
- 4 x TCRT5000 (Optischer Sensor mit Phototransistor): IC3, IC4, IC5, 
IC6 (vorne links, vorne rechts, hinten links, hinten rechts)
- 2 x Hebeltaster: S2 und S3 (vorne und hinten)

Der Roboter soll folgendes tun:
- Anfangszustand: Der Roboter fährt vorwärts (dafür habe ich C1 
eingebaut)
- Wird der Hebeltaster S2 (vorne) aktiviert, fährt er nun rückwärts
- Wird der Hebeltaster S3 (hinten) aktiviert, fährt er nun vorwärts
- Erkennt der Sensor IC3 (vorne links) eine weisse Fläche, fährt nun das 
linke Rad rückwärts. Das rechte Rad soll ca. 10 ms später auch rückwärts 
fahren.
- Erkennt der Sensor IC4 (vorne rechts) eine weisse Fläche, fährt nun 
das rechte Rad rückwärts. Das linke Rad soll ca. 10 ms später auch 
rückwärts fahren.
- Dasselbe Prinzip soll mit den hinteren Sensoren IC5 und IC6 geschehen.

Ich möchte folgendes von Euch wissen:
- Sind Fehler im Schema? (ich bin absoluter Neuling was Elektronik 
angeht)
- Wie erreiche ich, dass das zweite Rad jeweils 10 ms später dieselbe 
Fahrtrichtung wie das erste Rad einnimmt? Ich habe es mit einem RC-Glied 
versucht, siehe R3 und C3 im Schema, allerdings befürchte ich, dass dann 
nicht nur Q3 sondern auch Q1 verzögert wird...

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobi schrieb:
> - Sind Fehler im Schema? (ich bin absoluter Neuling was Elektronik
> angeht)

Der garantierte Ausgangsstrom eines CD4013 liegt bei 5V Versorgung unter 
2mA.
Du versuchst ihn, mit 15mA zu belasten.
http://www.ti.com/lit/ds/symlink/cd4013b.pdf

Autor: Matthias S. (Firma: matzetronics) (mschoeldgen)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Wie schaltest du die Motoren denn mal aus? Ich sehe da zwar Polwende-, 
aber kein Abschaltrelais. Ein Motor kann es nicht besonders gut leiden, 
wenn man ihn aus vollem Lauf einfach umpolt.
10ms sind 1/100stel Sekunde. Bist du sicher, das das irgendwie bei einem 
mechanischen Fahrzeug relevant ist?

: Bearbeitet durch User
Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Wolfgang
Danke für den Hinweis!
Ich werde R1, R2 und R3 auf 10kOhm erhöhen, somit ziehe ich aus einem 
Ausgang von CD4013 total nur noch 1mA (5V/10kOhm x 2). Sind 0.5mA genug 
um einen 2N3904 Transistor zu schalten? Ich habe nämlich grosse Mühe die 
Datenblätter zu verstehen, sei es nun vom CD4013 oder vom 2N3904.

@Matthias S.
Danke für die Hinweise!

> Wie schaltest du die Motoren denn mal aus?
Stimmt, auf meinem Schema fehlen die Schalter für die Batterien.

> Ich sehe da zwar Polwende-, aber kein Abschaltrelais. Ein Motor kann es nicht 
besonders gut leiden, wenn man ihn aus vollem Lauf einfach umpolt.
Da hast Du bestimmt Recht. Das bedeutet also zusätzlich 2 Relais, 2 
Transistoren und 2 Widerstände, und 2 Kondensatoren für die Verzögerung. 
Hmmm... das wird ziemlich komplex.

Wieviele Umpolungen aus vollem Lauf würden die Motoren mitmachen bevor 
sie Schaden nehmen? 1000+ Umpolungen wären für mich ok.

Ich habe mich noch nicht auf einen Motor festgelegt, er soll aber 
folgende Eigenschaften haben:
- Getriebemotor mit ca. 200 bis 400 rpm
- Spannung zw. 6V und 12V (Die Spannungsversorgung werde ich wenn nötig 
anpassen)
- Strom ohne Last zw. 40mA und 80mA
- Blockierstrom < 1A (z.B. 500mA)

> 10ms sind 1/100stel Sekunde. Bist du sicher, das das irgendwie bei einem 
mechanischen Fahrzeug relevant ist?
Ich hatte folgendes gerechnet:
- Radabstand: 9cm
- Kreisumfang: 2*pi*4.5 = 28cm
- Max. Geschw.: 50cm/s pro Rad (total 100cm/s wenn die Räder 
entgegengesetzt drehen)
- Drehung pro s: 360*100cm/28cm = 1285°
- Zeit für eine 13° Drehung: 1285°/13° = 0.01s

Autor: Der Andere (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobi schrieb:
> Hmmm... das wird ziemlich komplex.

Hurra, du hast begriffen warum man solche Steuerungen nicht als TTL oder 
C-MOS Grab aufbaut, sondern mit einem programmierbaren Controller.

Autor: Äxl (geloescht) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
S2 / S3 legt den Ausgang des LM358 "hart" auf VCC. Soll das so sein?

Äxl

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobi schrieb:
> Hmmm... das wird ziemlich komplex.

Und das wird bestimmt nicht das letzte mal gewesen sein, daß Du die 
Schaltung ändern und vergrößern mußt.
Daher nimmt man besser einen MC, wo man nur Programmzeilen ändern oder 
hinzufügen muß.

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Äxl (geloescht) schrieb:
> S2 / S3 legt den Ausgang des LM358 "hart" auf VCC. Soll das so sein?

Ja, die Tastschalter sollen den Ausgang des LM358 temporär umgehen. Sie 
bilden sozusagen ein OR mit dem LM358.
...ausser Du willst mir damit sagen, es brauche eine Diode am Ausgang 
des LM358. Das könnte natürlich gut sein. Aber wie gesagt, ich bin 
Anfänger.

Der Andere schrieb:
> Hurra, du hast begriffen warum man solche Steuerungen nicht als TTL oder C-MOS 
Grab aufbaut, sondern mit einem programmierbaren Controller.

Peter Dannegger schrieb:
>Und das wird bestimmt nicht das letzte mal gewesen sein, daß Du die Schaltung 
ändern und vergrößern mußt.
> Daher nimmt man besser einen MC, wo man nur Programmzeilen ändern oder 
hinzufügen muß.

Es ist mir schon klar, dass es wesentlich einfacher mit einem MC geht, 
ich programmiere selbst. Bis jetzt allerdings keine Roboter.

Bevor ich einen Roboter mit MC programmiere, wollte ich als Einstieg 
einen einfachen "analogen" Roboter bauen, damit ich ein besseres 
Verständnis der Elektronik erwerbe.

Vielleicht vergesse ich das lieber und benutze gleich einen MC. Mal 
sehn...

Autor: Der Andere (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobi schrieb:
> Bevor ich einen Roboter mit MC programmiere, wollte ich als Einstieg
> einen einfachen "analogen" Roboter bauen, damit ich ein besseres
> Verständnis der Elektronik erwerbe.

Der dann alles anders macht wie von dir geplant oder aber gar nix macht, 
da deine Annahmen völlig unzureichend sind.

Tobi schrieb:
>> 10ms sind 1/100stel Sekunde. Bist du sicher, das das irgendwie bei einem
> mechanischen Fahrzeug relevant ist?
> Ich hatte folgendes gerechnet:
> - Radabstand: 9cm
> - Kreisumfang: 2*pi*4.5 = 28cm
> - Max. Geschw.: 50cm/s pro Rad (total 100cm/s wenn die Räder
> entgegengesetzt drehen)
> - Drehung pro s: 360*100cm/28cm = 1285°
> - Zeit für eine 13° Drehung: 1285°/13° = 0.01s

Und du meinst, dass Relais exakt im ms Bereich geichmäßig öffnen und 
schliessen?
Und dass der Getriebemotor mit einem unbekannten Trägheitsmoment (auch 
der angetriebenen Achse/Rad) plus der zu beschleunigenden Masse des 
gesamten Roboters in deutlich weniger als 1/100 Sekunde auf 
Höchstgeschwindigkeit bescheunigt und wieder abbremst? Ansonsten stimmt 
deine Rechnung so nicht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.