-
        

Ergebnis 1 bis 6 von 6

Thema: Taster werden bei laufendem Motor immer mal wieder ganz kurz aktiviert

  1. #1
    Neuer Benutzer Avatar von das Keks
    Registriert seit
    22.07.2011
    Ort
    Hilden, NRW
    Alter
    25
    Beiträge
    3

    Frage Taster werden bei laufendem Motor immer mal wieder ganz kurz aktiviert

    Anzeige

    Hallo zusammen,

    ich habe mich hier neu im Forum registriert da ich eine Frage zum ASURO habe und demnächst bestimmt ab und zu nochmal eine aufkommt.


    Mein Problem ist, dass die Taster bei laufendem Motor immer mal wieder aktiviert werden, was ziemlich stört wenn man erst bei einem Hindernis anhalten oder drehen will, dass dann aber schon mitten im freien Feld passiert.
    Das normale SwitchTest Programm funktioniert problemlos, wenn ich jedoch die Motoren in dem Programm laufen lasse werden mitten drin immer mal wieder für einen ganz kurzen Moment die Taster betätigt.
    Das es wirklich richtig kurz ist habe ich daran gemerkt, dass in dem standard Test-Programm wo der Tasterstatus 2 mal abgefragt wird, (einmal um die Betätigung zu bemerken und einmal um den Wert auszulesen und auszugeben) der Wert bei der zweiten Abfrage, schon wieder 0 ist, also keine Taste mehr gedrückt ist.
    Zwar könnte ich das Problem umgehen indem ich z.B. 5 Abfragen ganz schnell hintereinander machen und nur wenn alle !0 sind die Aktion ausführe, mir wäre es aber lieber wenn ich mich auch so auf einzelne Tasterabfragen verlassen könnte.

    Die Frage ist jetzt woran das Problem liegt, da es ja nur bei laufendem Motor auftritt. Vielleicht ein Wackelkontakt oder irgendwelche Spannungseinbrüche oder so wegen der laufenden Motoren?

    mfg das Keks
    while(!dead)
    live();

  2. #2
    Erfahrener Benutzer Begeisterter Techniker Avatar von toter_fisch
    Registriert seit
    25.01.2011
    Ort
    Heidelberg
    Alter
    20
    Beiträge
    227
    es kann vielleicht mehrere Gründe haben:
    -sind die motoren entstört?
    -pullups aktiviert?
    -wackelkontakt (denke das trifft zu): Einfach kurz hintereinander die Taster abfragen: if taster = 1 then
    waitms 15
    if taster = 1 then
    print "taster gedrückt"

    gruß toter_fisch

  3. #3
    Neuer Benutzer Avatar von das Keks
    Registriert seit
    22.07.2011
    Ort
    Hilden, NRW
    Alter
    25
    Beiträge
    3
    Ob die Motoren entstört sind weiß ich nicht, es handelt sich dabei halt um den ganz normalen ASURO Bausatz ohne Modifikationen.
    Was sind Pullups?

    Ich habe die Abfrage jetzt einfach mehrfach ausgeführt und dann klappt es auch.

    Ohne jetzt was an den Bauteilen zu verändern hab ich wohl kaum eine Wahl als es so zu regeln, oder?
    Ich könnte nochmal die Batterien austauschen, eventuell liegt es auch daran, weil ich meine ganz am Anfang hatte ich das Problem nicht. Wobei die Batterien auch erst seit gestern drin sind und ich den Asuro, summa summarum vllt 5 Minuten an hatte.
    while(!dead)
    live();

  4. #4
    Erfahrener Benutzer Begeisterter Techniker Avatar von toter_fisch
    Registriert seit
    25.01.2011
    Ort
    Heidelberg
    Alter
    20
    Beiträge
    227
    hier stehts: http://www.rn-wissen.de/index.php/Pullup
    weiter weis ich dann auch nicht mehr...

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Kandel
    Alter
    29
    Beiträge
    1.220
    Zitat Zitat von das Keks Beitrag anzeigen
    Zwar könnte ich das Problem umgehen indem ich z.B. 5 Abfragen ganz schnell hintereinander machen und nur wenn alle !0 sind die Aktion ausführe, mir wäre es aber lieber wenn ich mich auch so auf einzelne Tasterabfragen verlassen könnte.
    Da wirst du nicht umhin kommen, die Messwerte in irgend einer Form zu stabilisieren, entweder direkt durch Mittelwertbildung über die ADC-Werte oder indem du die Ausgabe von mehreren Pollswitch()-Aufrufen eben dann gegeneinander abgleichst.

    mfG
    Markus

  6. #6
    Neuer Benutzer Avatar von das Keks
    Registriert seit
    22.07.2011
    Ort
    Hilden, NRW
    Alter
    25
    Beiträge
    3
    Ok, ich frage mit ein paar ms unterschied ein paar mal ab und nur wenn alle abfragen positiv sind wird der Schalter als gedrückt angenommen.
    Da die Zeit so gering ist fällt das ja auch gar nicht auf.
    Ich denke ich mache mir noch ne Funktion dafür und dann hat sich das.

    Danke für die Antworten.
    while(!dead)
    live();

Ähnliche Themen

  1. Antworten: 15
    Letzter Beitrag: 11.07.2009, 15:03
  2. LCD zeigt nur ganz kurz an und ist wieder leer
    Von TobiasBlome im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 10
    Letzter Beitrag: 24.05.2007, 17:36
  3. Es soll mal wieder ein Kettenbot werden
    Von kalletronic im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 18
    Letzter Beitrag: 21.03.2007, 18:03
  4. Motoren zucken beim Anlaufen nur ganz Kurz!
    Von robotxy im Forum Motoren
    Antworten: 14
    Letzter Beitrag: 06.10.2005, 18:09
  5. Immer wieder....I2C Bus
    Von JensB im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 16.09.2004, 17:26

Stichworte

Berechtigungen

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