-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Sharp GP2D12 Frage zum Auswerten |RN-Control

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.05.2007
    Beiträge
    112

    Sharp GP2D12 Frage zum Auswerten |RN-Control

    Anzeige

    Hallo zusammen, habe von einem Forenmitglied, den oben genannten Sensor gekauft. Habe dem Sensor eine Spannungsstabilisierung verpasst und funzt auch alles wunderbar, wenn ich die Werte mit einem Multimeter messe.

    Wenn ich den Sensor allerdings an den Port A vom RN-Control anschließe und mir dann von der Basecom Demo die Spannungen an dem Port ausgeben lasse bekomme ich nur Müll raus, in der Wiki habe ich schon gelesen allerdings finde ich darauf keine Antwort.

    Hoffe ihr könnt mir helfen.

    Mfg Matze

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.673

    Re: Sharp GP2D12 Frage zum Auswerten |RN-Control

    Zitat Zitat von WDragon91
    ... Sensor allerdings an den Port A vom RN-Control anschließe und mir dann von der Basecom Demo die Spannungen an dem Port ausgeben lasse bekomme ich nur Müll raus ...
    An welchen der sieben Ports A ?

    Gibt´s zur RNControl nicht gleich als Demo (mit Code) eine Messung der Spannung am ADC ? Guck doch dort mal nach?
    Ciao sagt der JoeamBerg

  3. #3
    Erfahrener Benutzer Roboter Experte Avatar von ikarus_177
    Registriert seit
    31.12.2007
    Ort
    Grein
    Alter
    25
    Beiträge
    601
    Hi,

    poste mal deinen Code, ich hab das bei mir so gemacht:

    Code:
    Const Ref = 5 / 1023
    Dim Volt As Single
    Const A = 27
    Const B = 0.05
    Dim D As Single
    Dim Z As Single
    
    Config Adc = Single , Prescaler = Auto
    Config Porta.2 = Input
    
    
          Start Adc
          W = Getadc(2)
          Volt = W * Ref
    
          Z = Volt - B
          D = A / Z
    Viele Grüße

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.05.2007
    Beiträge
    112
    Code:
    Sub Showporta() 
    Local Ws As Word 
    
       Config Porta = Input 
       For I = 0 To 5                        ' Alle internen Pullup Widerstände ein, bis auf Batteriespannungsmessungsport 
          Porta.i = 1 
       Next I 
    
       Print 
       Print "Ermittelte Messwerte an Port A:" 
       For I = 0 To 7                        ' Alle Eingänge inkl. messen 
          Start Adc 
          Ws = Getadc(i) 
          Volt = Ws * Ref 
          Print "Pin " ; I ; " ADC-Wert= " ; Ws ; " bei 5V REF waeren das " ; Volt ; " Volt" 
       Next I 
    End Sub
    @oberallgeier habe genau diese Demo genommen. Hatte den Sensor an PortA.0 angeschlossen.

    Ich müsste dann ja eigentlich die Spannung raus bekommen, die ich auch rausbekomme wenn ich mit dem Multimeter nachmesse, es kommt aber wirklich nur schrott bei rum, er gibt sowas aus wie 3.6 obwohl das ja weit über der maximal ausgabe des sensors liegt. Normalerweise sollte das mit der Demo doch klappen.

    @ikarus du hast jetzt schon mit der Nährungsformel gearbeitet oder? Die Spannung die das RN-Control ausgibt ist aber richtig oder?

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    13.07.2004
    Ort
    bei Stuttgart
    Alter
    36
    Beiträge
    760
    hi,
    das du einfach den adc wert falsch in einen spannungswert umrechnest?
    mfg jeffrey

  6. #6
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.673
    Pin A0 ist ok, da hängt ja sonst nix dran.

    Ich versteh ja nix von Bascom aber ist das ok?

    For I = 0 To 5 ' Alle internen Pullup Widerstände ein, bis auf Batteriespannungsmessungsport

    wo Du doch am PortA0 misst?
    Ciao sagt der JoeamBerg

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    13.07.2004
    Ort
    bei Stuttgart
    Alter
    36
    Beiträge
    760
    Zitat Zitat von oberallgeier
    Pin A0 ist ok, da hängt ja sonst nix dran.

    Ich versteh ja nix von Bascom aber ist das ok?

    For I = 0 To 5 ' Alle internen Pullup Widerstände ein, bis auf Batteriespannungsmessungsport

    wo Du doch am PortA0 misst?
    hi,
    stimmt daran liegt´s wohl. hatte ich vorher total überlesen. das problem hatte ich soweit ich mich erinnere auch mal.
    probier mal die pullups auszuschalten.
    mfg jeffrey

  8. #8
    Erfahrener Benutzer Roboter Experte Avatar von ikarus_177
    Registriert seit
    31.12.2007
    Ort
    Grein
    Alter
    25
    Beiträge
    601
    Hi,

    wo hast du denn dein ADC initialisiert? Ist das im Hauptprogramm ganz oben?

    Ja, die Spannung stimmt soweit, sie verändert sich ziemlich genau nach diesem Diagramm mit der Entfernung.

    Viele Grüße

  9. #9
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.673
    Hallo WDragon91,

    übrigens habe ich meinen Sharp, es ist ein GP2D120, selbst "geeicht" und daraus eine ziemlich simple Formel für den Abstand abgeleitet:

    GPDmm = 25600 / gpdtmp; // gpdtmp ist der eingelesene ADC-Wert.

    Wie gesagt - die Parameter sind selbst bestimmt (siehe Link). Der so gewonnene Abstandswert stimmt bei mir gut. Ich weiß aber nicht, ob es bei dem Teil stärkere Bauteiltoleranzen gibt. Allerdings stellte ich deutlich schwankende Ergebnisse fest, wenn die Referenzspannung oder die Versorgungsspannung des Sharp geringfügig variiert wird - das kommt ja im Betrieb schon mal vor.
    Ciao sagt der JoeamBerg

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.05.2007
    Beiträge
    112
    So da bin ich wieder

    @ Jeffrey denke ich nicht habe mich genau an den Wiki Eintrag gehalten, sollte eigentlich Richtig sein.
    Code:
       Config Porta = Input 
       For I = 0 To 5                        ' Alle internen Pullup Widerstände ein, bis auf Batteriespannungsmessungsport 
          Porta.i = 0 
       Next I
    So wären dann doch die Pullup widerstände ausgeschaltet? Werde ich morgen sofort mal ausprobieren

    @ikarus ja den ADC Wert habe ich weiter oben im Programm definiert

    Config Adc = Single , Prescaler = Auto

    @oberallgeier
    das problem ist ja das ich schon so falsche Spannungswerte zurück bekomme, mit dem ich nichts anfangen kann, sollte das dann mal klappen, werde ich wohl auch deine Gleichung nehmen ist simpler als die Nährungsformel. Schwankt die Versorgungsspannung denn auch wenn man einen Spannungsstabilisator dran hat?


    Mfg Marcel

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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