Forum: Mikrocontroller und Digitale Elektronik Schlittensteuerung, wie realisieren?


von Andi (Gast)


Lesenswert?

Hallo

Baue gerade einen Schlitten, der mit einem Gleichstrommotor angetrieben 
wird. Endschalter am Anschlag links und Endschalter am Anschlag rechts.

Nach kurzem Drücken einer Start- Taste soll der Schlitten von rechten 
Anschlag
zum linken Anschlag und wieder zurück laufen und stoppen.

Steht der Schlitten aus irgendwelchen Gründen (z.B. nach Stromausfall) 
irgendwo zwischen den
Endschaltern, soll er nach kurzem Drücken der Start- Taste der Schlitten 
zum rechten Anschlag laufen und stoppen.

Schaltungstechnisch mit ATTINY 48, Motorumpolung usw. kein Problem.

Programmtechnisch kriege ich das aber nicht hin. Hat jemand ein paar 
Anregungen/
Stichwörter – kein Code!

von Chris T. (chris0086)


Lesenswert?

Na nur dafür brauchts aber keinen µC. Das geht doch auch mit Flipflops.
Mit µC: Start --> Anschlag rechts? nein? dann fahre - ja? alles gut, 
warte auf Taster --> gedrückt? fahre zum Anschlag links --> angekommen? 
fahre zurück.

von Amateur (Gast)


Lesenswert?

... darüber hinaus reicht die Rechenleistung eines ATTINY, für so eine 
Anwendung bei Weitem, nicht aus;-)

von Andi (Gast)


Lesenswert?

Ja, danke, man könnte auch Relais nehmen usw.

Habe aber weder Relais noch Flip- Flops da.

Na, dann muß ich mal weiter grübeln mit irgendwelche Flags....?

von Amateur (Gast)


Angehängte Dateien:

Lesenswert?

@Andi
Eine mögliche Steuerung mit Taster und Schütz könnte folgendermaßen 
aussehen:
S1 ist ein einfacher Taster.
S2 und S3 sind die Endschalter (S3 2-Polig).
K0 ist ein einfaches Hilfsrelais.
K1 und K2 sind Relais oder Schütze mit mehreren Kontakten.

Annahme:
K1 sorgt für die Fahrt nach links
K2 ist für die Heimreise zuständig
S1 ist für den Start zuständig
S2 ist Endschalter am Rechtsanschlag
S3 ist Endschalter am Linksanschlag
M1 ist der Brummer

Vorsicht:
Steht die Konstruktion beim Einschalten am Linksanschlag, so fährt sie 
auch ohne Befehl zurück.
Wird der Taster (S1) dauerhaft betätigt, so "rattert" das Teil am 
Linksanschlag.
Ein NOT-Aus-Schalter in der Zuleitung könnte auch nicht schaden.
Motore laufen üblicherweise noch etwas nach, wenn man ihnen den Saft 
abdreht. Aus diesem Grunde sollten die Endschalter schon kurz vor 
Feierabend kommen.

Ist nur so hingefloht, deshalb: AEG
(A)uf
(E)igene
(G)efahr

von astur (Gast)


Lesenswert?

Wenn er doch nur den Tiny, einen Motor und Endschalter hat, und die 
Schaltung kein Problem ist, dann reicht es doch, die Inputs zu 
entprellen, mehr oder weniger schlau zu dekodieren und eine Funktion zum 
Setzen des Motorstatus aufzurufen.
Zu klären ist noch, wie der Prozessor das Mitten-Drin-Stehenbleiben 
erkennt (gemeinsame Versorgung oder Spannungsüberwachung im Lastkreis).

Du solltest auch festlegen, wie sich die Logik bei ständig gedrücktem 
Taster verhalten soll - Hin- und herfahren oder nach dem ersten 
Durchlauf stehenbleiben, bis der Taster wieder losgelassen wurde. Und, 
ob nicht doch ein Anhalten während des Zyklus über den Taster sinnvoll 
wäre?

Im einfachsten Fall Inputbits gemeinsam in einem select auswerten:
T  EL  ER               neuer Motorstatus
0   0   0  IstMitte  -> keine Änderung
0   0   1  IstRechts -> AUS
X   1   0  IstLinks  -> RECHTS
X   1   1  Fehler    -> AUS
1   0   0  IstMitte  -> keine Änderung | RECHTS (Ausfallerkennung)
1   0   1  IstRechts -> LINKS

Ein direkter Richtungswechsel sollte mit einem kurzen AUS unterbrochen 
werden - das ist aber auch abhängig vom verwendeten Motor/Treiber.

von Andi (Gast)


Lesenswert?

Danke für Eure Antworten, die ich heute durcharbeiten werde.
Jedenfalls sehe ich jetzt, daß es doch keine triviale Aufgabe ist, wie
ich zuerst erwartet habe.

Das "Rattern" habe ich auch, allerdings beim Starten, wenn der Schlitten
am rechten Endschalter steht, der ja auch als Abschaltung nach einem 
Fahrzyclus verwendet wird.

Ja, die Tasten haben eine Software- Entprellung und ja, den Motor 
schalte ich vor einem Richtungswechsel kurz aus und pole nicht im vollen 
Lauf einfach die Motorspannung um.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Andi schrieb:
> Jedenfalls sehe ich jetzt, daß es doch keine triviale Aufgabe ist, wie
> ich zuerst erwartet habe.
Die Aufgabe ist sogar so trivial, dass sie mit ein paar Relais zu 
erledigen wäre. Ein Programm für den Tiny passt incl. ausführlicher 
Kommentare locker auf eine A4 Seite.

Andi schrieb:
> Schaltungstechnisch mit ATTINY 48, Motorumpolung usw. kein Problem.
Poste doch mal deinen Schaltplan. Dann weiß man, wo und wie die ganze 
Hardware angeschlossen ist...

astur schrieb:
> Zu klären ist noch, wie der Prozessor das Mitten-Drin-Stehenbleiben
> erkennt
Ja nun, wenn beim Powerup keiner der Endschalter belegt ist...

: Bearbeitet durch Moderator
von astur (Gast)


Lesenswert?

Lothar Miller schrieb:
> astur schrieb:
>> Zu klären ist noch, wie der Prozessor das Mitten-Drin-Stehenbleiben
>> erkennt
> Ja nun, wenn beim Powerup keiner der Endschalter belegt ist...

... und der Stillstand des Motors diesen Powerup auch erzwingt.
Sonst wird man um eine Überwachung, sei es Strom, Drehzahl oder 
irgendein Timeout, nicht herumkommen. Könnte auch nützlich für eine 
Blockiererkennung sein.

von Andi (Gast)


Angehängte Dateien:

Lesenswert?

Beigefügt mal den Schaltplan.

Wenn nach dem Einschalten keiner der beiden Endschalter betätigt ist,
ist davon auszugehen, daß der Schlitten irgendwo in einer 
Zwischenposition steht. Zunächst soll gar nichts passieren, erst wenn 
die Start - Taste gedrückt wird, läuft der Schlitten an den rechten 
Anschlag und stoppt dort.
Ein erneutes Drücken der Start- Taste soll dann Positionszyclus = 
Linkslauf zum linken Endschalter, Umkehr, Rechtslauf zum rechten 
Endschalter und Stop auslösen.

von Wolfgang (Gast)


Lesenswert?

Andi schrieb:
> Schlittensteuerung1.png

Andi schrieb:
> Schaltungstechnisch mit ATTINY 48, Motorumpolung usw. kein Problem.

mhh,
1) an Stelle von irgendwelchen Leistungs-OPs würde man wohl eher auf 
eine H-Brücke setzen und zusätzliche Freilaufdioden spendieren, damit es 
beim Abschalten nicht zu "lustigen" Effekten kommt.

2) der 7805 Spannungsregler braucht lt. Datenblatt bestimmt noch ein 
paar Kondensatoren.

3) der ATtiny wird ohne Abblockkondensator nur unzuverlässig 
funktionieren.

von Andi (Gast)


Lesenswert?

Ja, Wolfgang, danke, ist alles drin: Kondensatoren vor, nach, 
dazwischen, als Elko und Keramik usw. nur nicht in den Plan gezeichnet,

Ja, und geht auch mit H- Brücke. Die OPs habe ich aber fertig da.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Andi schrieb:
> Nach kurzem Drücken einer Start- Taste soll der Schlitten von rechten
> Anschlag zum linken Anschlag und wieder zurück laufen und stoppen.
Was soll die Mimik machen, wenn der Taster dauernd gedrückt ist? Immer 
hin und her fahren? Vermutlich nicht. Deshalb brauchst du eine 
Flankenauswertung für den Taster.

Dann ist die Logik nach den Entprellen des Tasters mit anschließender 
Flankenerkennung recht simpel:

Variable Richtung (links, stillstand, rechts)
Powerup -> warte auf Taste
Taste betätigt -> fahre nach rechts

Schleife {
Endschalter rechts oder Endschalter links -> Richtung = stillstand

Endschalter rechts und Tasterflanke -> Richtung = links
Endschalter links und Tasterflanke -> Richtung = rechts
}

: Bearbeitet durch Moderator
von Andi (Gast)


Lesenswert?

Danke für Eure Unterstützung! Jetzt läuft es wie es soll.
Systematisches Programmieren war das zwar nicht, aber das Ergebnis 
stimmt.

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.