www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Endlage per Software


Autor: Christopher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen miteinander!

Ich habe folgendes Problem mit einer Endlagerfassung per Software.

Ruheposition -> Endschalter rechts und gleichzeitig Begrenzung rechts.
Andere Richtung Endschalter links.

Links gibt es keine Probleme, nur rechts da der Endschalter auch die 
Startposition bestimmt. Bei Start ist der Endschalter rechts also 
betätigt. Ich könnte das über ein Flag machen oder einen 
Zustandsautomaten. Hat jemand eine bessere Idee?

Danke

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Hat jemand eine bessere Idee?

Ich sehe nicht mal ein Problem...

Autor: Christopher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, wenn ich den Endschalter auf Betätigung abfrage
z.B if(Endschalter rechts) Motor = Stop;
dann fährt das doch nie los.

Autor: Christoph Kessler (db1uq) (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für einen DC-Motor überbrückt man die beiden Endschalter mit einer 
Diode, sodaß der Motor nach Umpolen wieder losläuft. Die Software muß 
eben auch die Fahrtrichtung berücksichtigen.

Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da du sowieso Motor_rechts oder Motor_links machen musst wäre es doch 
einfach Motor_rechts=0; zu machen...

Autor: Christopher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja sicher, die Fahrtrichtung kann ich ja noch mit dabei berücksichtigen.
Da hab ich noch gar nicht dran gedacht.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christopher wrote:
> Also, wenn ich den Endschalter auf Betätigung abfrage
> z.B if(Endschalter rechts) Motor = Stop;
> dann fährt das doch nie los.

Warum sollte er das nicht.
Obiges wird ja doch wohl nur dann zur Ausführung kommen,
wenn der Motor nach rechts fährt.
Also kann der Motor aus dieser Position nur nach links
wieder wegfahren. Beim Fahren nach links interessiert
sich doch kein Mensch dafür, ob jetzt der Endschalter
für rechts angeschlagen hat.

Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Beim Fahren nach links interessiert sich doch kein Mensch dafür, ob jetzt >der 
Endschalter für rechts angeschlagen hat.

Wenn die Strecke lang genug ist, kommt der "Wagen" irgendwann wieder 
beim rechten Endlagenschalter an... ;-)

Ernsthaft (in Pseudo-C):

if (Fahrtrichtung == rechts)
while ((--Schritte-- > 0) && (!(Endlagenschalter_rechts))
{
   fahre_nach_rechts();
}
Motor_stop();

if (Fahrtrichtung == links)
while ((--Schritte > 0) && (!(Endlagenschalter_links))
{
   fahre_nach_links();
}
Motor_stop();

Und wo liegt jetzt das Problem? Man kann natürlich noch auswerten, ob 
die  Position oder der Endlagenschalter erreicht wurde...

Autor: Christopher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

so ähnlich hab ich es jetzt auch gemacht. Läuft. Danke

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wenn die Strecke lang genug ist, kommt der "Wagen" irgendwann
> wieder beim rechten Endlagenschalter an... ;-)

Da brauchst du aber ein verdammt langes Kabel :-)


Autor: Rahul, der Trollige (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Da brauchst du aber ein verdammt langes Kabel :-)

Ja, vermutlich... Die Schleppkette wir auch nicht ohne sein. ;-)

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.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

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