- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 7 von 7

Thema: SHARP GP2D12 über µC auslesen???

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    11.04.2004
    Alter
    37
    Beiträge
    115

    SHARP GP2D12 über µC auslesen???

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo ich möchte meinen SHARP GP2D12 Sensor an meine µC anschließen. Wie kann ich dann zu Testzwecken die Werte die mir der Sensor bei den verschiedenen Abständen auslesen?
    Hatte es mit Hyperterminal probiert, kenn mich leider nicht mit dem Programm aus. Gibt es noch andere möglichkeiten?
    Oder kennt sich jemand mit Hyperterminal aus.


    mfg Lukas

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.08.2004
    Ort
    Niedersachsen
    Alter
    69
    Beiträge
    317
    Der Sensor liefert ein Analogsignal (siehe Datenblatt). Dieses Spannung am Ausgang kannst Du z.B. mit einem Oszi oder einem Multimeter messen. Falls dein Meßgerät eine serielle Schnittstelle besitzt, kannst Du dir die Werte natürlich auch in Hyperterminal ansehen und gfl. verarbeiten bzw. speichern. Ansonsten schickst Du die Spannung vorher durch einen A/D-Wandler und bereitest sie dann RS232-konform auf.
    Welchen µC benutzt Du denn?

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    11.04.2004
    Alter
    37
    Beiträge
    115
    Hallo, also ich habe den SAB 80C535. Ich habe den Sensor
    schon an den A/D Port angeschlossen und das Programm soweit geschrieben. Doch wie kann ich dann die Dezimalzahl für die mir der A/D Port ausgibt im Hyperterminal anzeigen. Also der COM-Port ist bestzt wenn ich das Hyperterminal aufruf nachdem ich das Programm in meine µC geschrieben habe. Ich programmiere meine µC mit der Keil Software.
    Damit der COM Port nicht belegt ist, müsste ich das Programm mit einem Tastendruck starten. Und dann das Hyperterminal aufrufen. Doch wie funktioniert sowas????

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    Hatte es mit Hyperterminal probiert, kenn mich leider nicht mit dem Programm aus. Gibt es noch andere möglichkeiten?
    Oder kennt sich jemand mit Hyperterminal aus.
    Hyperterminal ist ein reines Terminalprogramm und kein Messgerät.

    Du kannst den Sensor an deinen µC anschliessen, damit die Messwerte auslesen und diese dann über eine serielle Verbindung an Hyperterminal senden. Hyperterminal zeigt dir dann genau das an, was dein µC sendet.

    Der entsprechende Schaltungsaufwand ist eigentlich auch für Testzwecke einfach genug. Was die notwendige Programmierung des µC betrifft, hängt es von der Programmiersprache ab. In Bascom sind es ein paar Zeilen die du dir aus der Online-Hilfe zusammenkopieren kannst.

    Die Ausgabe des analogen SHARP GP2D12 kannst du aber auch einfach mit einem normalen Multimeter auslesen. Einfach die 5V Versorgungsspannung anschliesen und dann deinen Spannungsmesser an den Output des Sensors halten.

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    11.04.2004
    Alter
    37
    Beiträge
    115
    Also ich programmiere in Assembler. Ich wollte die Messspannung die mir der Sensor an meinen A/D Port liefert in eine Dezimalzahl umwandeln und diese Dezimalzahl dann an das Hyperterminal senden.

    Die Dezimalzahl brauche ich ja später dann zum programmieren:

    So kann ich dann z.B:

    80 cm Abstand --> 0,4 V --> 10 Dezimal

    Diese Dezimalzahl sollte dann an meinem Hyperterminal gesendet werden.
    Wenn ich dann die einzelne Abstände aufgenommen hab, kann ich dann später festlegen bei der Dezimalzahl 10 darf der Bot fahren

    und bei der Dezimalzahl 180 soll er langsamerfahren

    und bei der Dezimalzahl 210 soll eranhalten und lenken

    und bei der Dezimalzahl 255 ist auf einen Gegenstand gefahren

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.08.2004
    Ort
    Niedersachsen
    Alter
    69
    Beiträge
    317
    Ist schon klar, aber um den Analogwert z.B. zum PC schicken zu können, muß er zunächst einmal digitalisiert werden(AD-Wandler) und kann dann über z.B. eine Datenweg (RS232; IrDA, u.v.a.m) übertragen werden.
    Die dort eingehenden Informationen können dann durch geeignete Software (z.B. Hyperterminal) empfangen und verarbeitet werden.
    Wie oben bereits erwähnt wurde, reicht ein einfacher Spannungsmesser aus. Für alles weitere wirst Du dich wohl zunächst allgemein mit der "Datenübertragung" beschäftigen müssen. Dazu findest Du hier im Forum jede Menge Informationen.

    Weiter schreibst Du:
    Die Dezimalzahl brauche ich ja später dann zum programmieren
    Tipp: Vergiß die Dezimalzahlen und beschäftige Dich mit der Binärarithmetik. Du wirst es nicht bereuen.


    Viel Erfolg

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.01.2004
    Beiträge
    2.441
    @Luke17
    Also ich programmiere in Assembler.
    Naja, das hindert dich ja nicht daran, für testzwecke auch mal ein paar Zeilen in Bascom zusammenzukopieren und auf den Controller zu laden. Das geht natürlich nur bei einem AVR-Controller der auch von Bascom unterstützt wird.

    Ich wollte die Messspannung die mir der Sensor an meinen A/D Port liefert in eine Dezimalzahl umwandeln und diese Dezimalzahl dann an das Hyperterminal senden.
    Die Umwandlung macht der AD-Eingang des Controller ja eigentlich automatisch. Um den Wert an Hyperterminal zu senden, reicht in Bascom dann der Befehl "Print wert"

    So kann ich dann z.B:

    80 cm Abstand --> 0,4 V --> 10 Dezimal

    Diese Dezimalzahl sollte dann an meinem Hyperterminal gesendet werden.
    Na das sag ich doch die ganze Zeit (siehe oben)
    Was ist denn dann noch dein Problem, bzw. deine Frage?

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress