-
        

Ergebnis 1 bis 9 von 9

Thema: Fragen zu A/D Wandler

  1. #1

    Fragen zu A/D Wandler

    Anzeige

    hi

    Ich würde gerne eine spannung zwischen 0 und 2 Volt in einen digitalen wert umwandeln, doch da gibt's ein paar Fragen:

    -wo sind die Aschlüsse vom A/d Wandler?
    -wie kann ich im Basic auf den A/D Wandler zugreifen?
    -wo kann ich an weitere Infos zu dem Thema rankommen

    es wär nett wenn einer des beantworten könnte!!!

    Gruß Andy

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    47
    Beiträge
    2.556
    Du kommst auch aus Bremen ? Lust auf gemeinsames "wurschteln" ?
    Danke an Alle, die uns bei der erfolgreichen 1.000€-Aktion der IngDiba unterstützt haben! | https://www.hackerspace-bremen.de | http://www.pixelklecks.de |

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.791

    A/D-Wandler

    Hallo Andy,

    am Robby ist der A/D-Wandler 8 noch frei.

    In Fahrtrichtung rechts ist das die 20-polige Anschlussleiste, 6. Buchse von vorn, im Schaltplan mit "AD8" bezeichnet. Hier kommt der Pluspol der 2V-Spannung dran, Minus an Masse (1. Buchse von vorn).

    Im Programm:

    define ADWandler8 ad[8]
    define Wert byte[7]

    Wert = ADWandler8

    Die Variable "Wert" enthält dann den 8-Bit-Digitalwert 0..255.
    Ein Digit entspricht ca. 9,8 mV.
    Wenn Wert also z.B. 100 ist, dann liegt eine Spannung von 100 x 0,0098 = 0,98 Volt an.

    Gruß Dirk

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    05.12.2004
    Beiträge
    7
    @ Dirk:
    Ich wollte die Schaltung mit dem Code benutzen um eine Testweise 1,5V Batterie zu messen. Allerdings gibt Robby den Wert 255 zurück, was eine 2,49V Batterie bedeuten müsste. Ich habe die Batterie nachgemessen: 1,42V.
    Mein Code:

    define ADWandler8 ad[8]

    #loop
    Print ADWandler8
    pause 100
    Goto loop

    end

    Muss ich zusätzlich noch etwas einfügen, damit der richtige Wert zurückgegeben wird?

    MfG Peter

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.791

    A/D-Wandler

    Hallo SwordFish,

    der A/D-Wandler ist recht empfindlich. Wenn Du alles richtig angeschlossen hast, sollte er einen vernünftigen Digitalwert ausgeben.
    Wenn das nicht klappt, solltest Du einen kleinen Kondensator, z.B. 10 nF, an den A/D-Wandler-Eingang (also zwischen Eingang und Masse) legen.

    Gruß Dirk

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    05.12.2004
    Beiträge
    7
    Hallo Dirk,

    danke für deine Antwort, aber es war nicht nötig einen Kondensator einzubauen.
    Mittlerweile bekomme ich vernünftige Werte am am A/D-Wandler, nachdem ich den Code

    define SYSTEM &H01C9
    define EXTPORT byte[4]
    define sdio port[1]
    define sclio port[3]
    define strobe port[4]
    sdio=on:sclio=on:strobe=off:EXTPORT=(EXTPORT and &HFE)or 8
    sys SYSTEM

    vorangesetzt habe. Ich habe ihn einfach aus dem Beispielprogramm 8 herauskopiert, da hier auch auf einen A/D-Wandler zugegriffen wird. Allerdings habe ich keine Ahnung, was dieser Code bewirkt. Kann mir irgendeiner erläutern, was er bewirkt und wozu er benötigt wird?
    Vielen Dank schon mal im Vorraus

    MfG Peter

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.791

    Unbekannte Befehlsfolge

    Hallo SwordFish,

    sdio=on:sclio=on:strobe=off:EXTPORT=(EXTPORT and &HFE)or 8
    sys SYSTEM
    ... das ist die Befehlsfolge für das Einschalten des Subsystems. In den "SYSTEMROUTINEN SYSTEM" steht das unter dem Unterprogramm-Namen "SUBSYS_PWR_ON".
    Wenn Du alle notwendigen Initialisierungen kennenlernen willst, kannst Du Dir meine beiden Leerprogramme (LEERPROGRAMM.bas und LEERPROGRAMM_BE1.bas) herunterladen. Sie sind sozusagen das Grundgerüst aller Programme für den Robby (und mit Basiserweiterung) einschließlich Kommentaren.

    Gruß Dirk

  8. #8
    Weil ein A/D wandler hochohmig ist soll Sie ein spannungsverteiler (2 wiederstanden in serien) anschliessen. So das die Spannung geteilt wird.
    So anschliessen:
    Ubatt ---[=R1=]-+-[=R2=]--- GND
    |
    analog eingang Robby
    0.1mA fliessen lassen
    R1=Grosse wert (z.B. 10kOhm)
    R2=Kleinere wert (z.b. 470 Ohm)
    Rest kannst du selbst berechnen mit R=U/I
    Ubatt kann dan z.B. 0-10V sein.
    Batterie wird dann richtig gemessen.

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.08.2004
    Ort
    Zwolle
    Alter
    61
    Beiträge
    531
    Hallo SwordFish

    Ich hab dein program mahl ausprobiert:

    define ADWandler8 ad[8]

    #loop
    Print ADWandler8
    pause 100
    Goto loop

    end


    es lauft bei mir perfekt, gutes program

    eine halbleren accu mit messgerat gemessen gibt 1,24V und dein program liefert die Wert 127

    wenn ich nachrechne: 127 * 9,8mV (Dirk) = 1,2446 V

    ist ja perfect.

    du solltest keine falsche dinge lernen...

    define SYSTEM &H01C9
    define EXTPORT byte[4]
    define sdio port[1]
    define sclio port[3]
    define strobe port[4]
    sdio=on:sclio=on:strobe=off:EXTPORT=(EXTPORT and &HFE)or 8
    sys SYSTEM


    hat mit die ADWandler nul komma nix zu tun

    gruss

    Henk

Berechtigungen

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