Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - (Roomba)-Plugin-Frage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • callidomus
    antwortet
    Hi Mirko,

    probier mal:

    Code:
    def DecodeUnsignedShort(self, low, high):
            """Map an unsigned short from a 'high' and 'low' bytes to 'name'."""
            _new = struct.unpack('>H', bytes([high, low]))[0]
            print (_new)
    Bis bald

    Marcus

    Einen Kommentar schreiben:


  • JuMi2006
    hat ein Thema erstellt [Codebeispiel] - √ - (Roomba)-Plugin-Frage.

    - √ - (Roomba)-Plugin-Frage

    Ich sitze gerade am Roomba und hätte da eine Frage. Das Thema ist ja nicht wirklich neu, also zumindest in Roomba-Kreisen aber wenn ich das programmiere möchte ich das zumindest ein wenig verstehen.

    Ich hänge mal wieder an Bits&Bytes vs. String&integer&Hex.
    Ich bekomme von der seriellen die Sensordaten schon mal als Liste und kann diese auch zuordnen:

    Code:
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 65, 87, 255, 61, 34, [B]10[/B], [B]109[/B], 10, 136]
    Jetzt hab ich im Netz natürlich eine python-Umsetzung des Roomba gefunden, aber ohne es zu verstehen geht es natürlich nicht . Das Rad komplett neu zu erfinden macht aber auch keinen Sinn, also hier die Inspirationshilfe:
    https://code.google.com/p/pyrobot/so...pyrobot.py#436

    Dies wären hier als Byte 23 und 24.
    Nun möchte ich also bei o.g. Antwort der Sensordaten als Byte 23 und 24 in folgender Funktion geeignet formatiert übernehmen:

    Code:
        def DecodeUnsignedShort(self, low, high):
            """Map an unsigned short from a 'high' and 'low' bytes to 'name'."""
            new1 = struct.unpack('>H', high + low)[0]
            print (_new)
    Herauskommen müsste irgendwas im mA Bereich . Nach 3 Stunden Goolge sowie try&error geb ich mich geschlagen und bitte um Hilfe. Hätte den Vorteil dass ich mir die weiteren Funktionen weiter erarbeiten könnte.

    Die SCI-Doku schweigt sich dazu folgendermaßen aus:
    Charge 2Bytes 0 – 65535 mAh
    Range: 0 – 65535
    Data type: 2 bytes, unsigned
    The current charge of Roomba’s battery in milliamp-hours (mAh).
    The charge value decreases as the battery is depleted during
    running and increases when the battery is charged.
    Ansonsten...fährt der Roomba schon via sh.py los und nach Hause .

    Grüße
Lädt...
X