- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 8 von 8

Thema: Schalter K6 liefert keinen Wert

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Naja, die Brücke hätte man nicht unbedingt löten müssen ;) Dass sich trotzdem nicht ändert ist seltsam. Wie ermittelst du eigentlich die Tastenwerte?

    Möglicherweise findest du hier eine Antwort:
    https://www.roboternetz.de/community...l=1#post483552

    Um es abzukürzen (der Thread ist lang...) hier ein Vorgriff auf die Lösung:
    https://www.roboternetz.de/community...l=1#post484092

    Vielleicht passt das auch zu deinem Problem.

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    28.04.2011
    Beiträge
    9
    Hallo,

    danke für deine Mühe! Gestern hab ich noch Ewigkeiten damit verbracht, das AVR-Studio, sowie die aktuellste AsuroLib auf meinem PC wieder zum laufen zu bekommen ...

    Ich habe nun in der switches.c die Pollswitch-Funktion folgendermaßen angepasst und anschließend die lib neu compiliert:
    /* return ((10240000L / (long)i - 10000L) * MY_SWITCH_VALUE + 5000L) / 10000; */
    return ((unsigned char) ((( 1024.0/(float)(i-7) - 1.0)) * 63.0 + 0.5));

    Anschließend habe ich das "TasterTest"-Programm aus dem Examples-Verzeichnis auf den Asuro übertragen. Ergebnis: K6 liefert immer noch keinen Wert *seufz*
    Anbei noch die Ausgabe des Programms:

    Tastsensor Test
    31
    15
    7
    3
    1

    ...ok. Alle Werte sind um 1 zu niedrig. Das kann man ja noch anpassen. Aber sollte bei K6 nicht zumindest eine 0 kommen (die 1 ist von K5) ????

  3. #3
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Vermutlich steht im Taster-Test-Programm etwa das: "if(PollSwitch()>0) ...."

    Und da mit gedrücktem K6 der Wert nicht größer als 0 ist, wird auch nichts ausgegeben.

    In der neuen Library kann man den Faktor auch als MY_SWITCH_VALUE mit der Datei myasuro.h beeinflussen:
    https://www.roboternetz.de/phpBB2/viewtopic.php?t=31073
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    28.04.2011
    Beiträge
    9
    da hast du mich auf die Richtige Spur gebracht ... if (t1 && t2 && t1 == t2){...}
    Die UND-Verknüpfung ist liefert natürlich FALSE, wenn mein K6 Wert 0 ist. Somit wird nichts ausgegeben! Danke

    Aber es geht weiter ....
    Ich wollte mit dem von dir genannten Programm die Werte ermitteln. Allerdings scheint auch das Programm an dem Wert 0 hängen zu bleiben, weil das Programm für meine K6 keinen Wert einliest ...


    edit:
    ...nach langem Probieren und Messen funktioniert es nun, so dass die Werte aller 6 Taster richtig ausgegeben werden.
    Um für K6 einen brauchwaren Wert vom AD-Wandler zu ermitteln, habe ich anstatt dem 68K Widerstand (R30) ein Poti angelötet und damit den richten Widerstand ermittelt. Bei 55K !!! habe ich einen Wert 1019-1021 bekommen! Bei größeren Widerstandswerten, konnte kein richtiger Wert gemessen werden (>1023).
    Warum das so von der Angabe abweicht, kann ich mir nicht erklären! Es sei denn, die Verbindung vom Widerstand, zum AD-Port ist nicht in Ordnung. Allerdings konnte ich hier nichts fehlerhaften messen.
    Damit auch die übrigen Taster stabile Werte lieferten, musste ich die Pollswitch-Funktion noch um ein gutes Stück nachjustieren(siehe unten). Danach lieferte jedoch der AD-Wert 1023 eine 1 anstatt 0.
    Da ich zum Schluss, nach vielen, vielen Tagen keine Lust mehr hatte, hab ich letztendlich noch ein etwas unschönes IF darum gebaut ....

    MY_SWITCH_VALUE = 61;

    if(i == 1023){ /* unschön, aber die Geldud ist am Ende */
    return 0;
    }else{
    return ((unsigned char) ((( 1024.0/(float)(i-15) - 1.0)) * MY_SWITCH_VALUE + 0.5));
    }


    @Radbruch: nochmals vielen Dank für deine Hilfe!!!
    Geändert von rchdrei (11.05.2011 um 20:06 Uhr) Grund: jetzt funktioniert's ...

Ähnliche Themen

  1. NiboBee rechter Liniensensor liefert immer den Wert 0 zurück
    Von arget888 im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 2
    Letzter Beitrag: 31.12.2010, 15:28
  2. Gibt es keinen PNP Phototransistor???
    Von acx im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 5
    Letzter Beitrag: 16.02.2010, 18:09
  3. Taster6 (K1) liefert falschen Wert
    Von ea im Forum Asuro
    Antworten: 1
    Letzter Beitrag: 22.04.2009, 12:47
  4. ASURO will keinen kontakt
    Von blackyxy im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 2
    Letzter Beitrag: 25.12.2008, 22:14
  5. Antworten: 24
    Letzter Beitrag: 21.12.2007, 11:16

Berechtigungen

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

LiFePO4 Speicher Test