Go Down

Topic: HC-SR04 Sensor fehlt da was? (Read 12059 times) previous topic - next topic

michael_x


wie ist das mit den +/- 30% Abweichungen die bei diesen Quarz angegeben sind.
Kann ich das mit einem anderen Quarz sogar verbessern... so dass der Sensor evtl. genauer wird?

Bie Quarzen sinds vermutlich 30 ppm = 0,003 %
Das wäre genauer als jeder Zollstock, den du als Referenz verwenden würdest.

Allerdings wird der Quarz eher verwendet, um den Ultraschall-Ton zu erzeugen. Wie lange das Signal dauert, bis es zurückreflektiert wurde, misst du mit der Zeitbasis deines Arduino.
Und arduino.cc sagt, zum Spielen reicht ein Resonator ;(

Quote
ich habe schon von Fällen gehört, bei denen das Anschwingen tatsächlich abhängig von der Einbaurichtung war

Oder dass man ihn aus- und wieder eingelötet hat. Wenn's mal läuft überprüft keiner, ob es tatsächlich an der "Polung" lag ;)
Man kann auch parallel zum Reset-Taster nen Finger auf den Quarz legen, das kann auch zum Anschwingen helfen.
Oder leise "Hexenfett" flüstern.

Klaus_ww

Haut sicher hin, zur Not Korrektur per Software.
Freizeit-Programmierer mit moderatem Ehrgeiz besseren Code zu schreiben.

Theseus


Wenn er hier in 0,5cm Schritten einigermaßen genau wäre, dann wäre das für mich perfekt


Das müsste zu schaffen sein. Die Werte werden wesentlich besser, wenn man mehrere Messungen macht und den Durchschnitt bildet.

selfmade

zu früh gefreut

hatte gestern noch einen 4MHZ Quarz besorgt und aufgelötet.
Die Werte die er jetzt ausgab sind auch nicht berauschend.
Er gibt z.B. ständig zw. 140 und 155 cm aus ob ich etwas davor halte oder nicht und deren Entfernung verändere.

Schade.

Klaus_ww

Warte bis der zweite da ist, dann kannst Du checken ob der Sketch ok ist.
Die Ansteuerung wurde ja bereits kommentiert.
Freizeit-Programmierer mit moderatem Ehrgeiz besseren Code zu schreiben.

jurs


zu früh gefreut

hatte gestern noch einen 4MHZ Quarz besorgt und aufgelötet.
Die Werte die er jetzt ausgab sind auch nicht berauschend.
Er gibt z.B. ständig zw. 140 und 155 cm aus ob ich etwas davor halte oder nicht und deren Entfernung verändere.

Schade.


Ersetze mal Deinen Code zur Langzeittriggerung:
Code: [Select]

digitalWrite(trigPin, HIGH);
  delayMicroseconds(1000);
  digitalWrite(trigPin, LOW);

durch Code mit einem kurzen Triggerimpuls:
Code: [Select]

  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);


Ändert sich dann etwas?

selfmade

Hallo,
das mach ich morgen gleich, komme heute nicht mehr dazu. Gebe dann aber bescheid.

Ich hatte auch einen anderen Beispielsketch verwendet. auch ohne Erfolg

Probier Deinen Vorschlag und gebe dann bescheid

Vielen Dank!

selfmade

Hallo,

habe nun nochmal den Sensor mit dem neuen geänderten Sketch probiert (by jurs)
weiter habe ich gestern noch probiert meine DS1307  Real Time Clock zum Laufen zu bringen.
Der zeigt mir alles an, egal welchen Sketch ich verwendet /habe bestimmt 3-4 Bibliotheken und 4-5 versch sketches ausprobiert.

Keine Chance. Er zeigt unwirkliche Datums und Uhrzeiten an.
Beim Sensor ist es jetzt so als hänge er gar nicht dran da er nur "Out of Range" anzeigt

Ich glaube ich muss mal das Board irgendwie testen...
entweder ich stelle mich total doof an oder es gibt hier ein ganz anderes Problem

Was meint ihr wie kann ich checken ob das Arduino (Sainsmart) mega 2560 R3 Board richtig funktioniert?

Grüße
Jürgen

jurs


Keine Chance. Er zeigt unwirkliche Datums und Uhrzeiten an.
Beim Sensor ist es jetzt so als hänge er gar nicht dran da er nur "Out of Range" anzeigt

Ich glaube ich muss mal das Board irgendwie testen...


Also mal ganz doof zurückgefragt, weil in Deinem Sketch der Kommentar etwas anderes sagt als der Code
Code: [Select]

*
HC-SR04 Ping distance sensor]
VCC to arduino 5v GND to arduino GND
Echo to Arduino pin 13 Trig to Arduino pin 12
More info at: http://goo.gl/kJ8Gl
*/

#define trigPin 3
#define echoPin 2


Laut Kommentar soll Echo-13 und Trig-12 angeschlossen werden.
Aber im Code steht, dass Echo-2 und Trig-3 angeschlossen sein sollen.

In einem gut kommentierten Sketch sollten die Kommentar zum Code passen und ihn näher erläutern, was hier nicht der Fall ist. In jedem Fall gilt: Der Kommentar dient nur als Hinweis für den Menschen, der ihn liest. Der Code ist das, was vom Compiler kompiliert und auf den Controller geladen wird. Also hast Du entsprechend dem Code den Trigger-Pin an Pin-3 des Arduino angeschlossen und den Echo-Pin des Sensors an Pin-2 des Arduino?

Oder hast Du Dich beim Anschließen an den fehlerhaften Kommentar am Anfang des Sketches gehalten?




Wasjetzt

Hallo!
Die DS hängt am Pin 20 / 21 und kriegst lauter 128.128 ?
Einfach 20/21 tauschen....sollte eigentlich keine Probleme machen.

Beim Sensor solltest mal die Ultrasonic oder die NewPing Librarys versuchen.
Damit klappts einigermassen genau.

Zum Testen gibts das:
http://forum.arduino.cc/index.php?topic=50203.0
....würde ein Cooles Projekt abgeben, am Mega....

mfg Martin

selfmade

#25
Apr 10, 2014, 11:42 am Last Edit: Apr 10, 2014, 12:08 pm by selfmade Reason: 1
Ich habe den Sensor Trigger und Echo schon an verschiedenen Pins angehängt. bei den ersten Versuchen und jetzt auch wieder.
Natürlich bin ich strickt nach den Schaltplänen gegangen und habe dann im Sketch die Pins entsprechend angepasst
wenn dort also stand Trigger = 20 und echo = 21 dann habe ich den Sensor auch so verbunden.
Die von Dir genannten 128.128.. ja das hatte ich am Anfang... das wurde dann aber behoben.. weiss jetzt nicht mehr was der Grund war.
Die ganzen  Librarys NewPing etc. habe ich alle durch.

Was mich jetzt wundert ist, dass er gar nichts mehr bringt... also nur noch "Out of Range"

Ich hatte auch versucht ganz von vorne zu beginnen.

Also erstmal eine LED an pin 13 da dieser ja laut Doku mit Vorwiderstand belegt ist.
Das funktioniert!
Dann habe ich die LED an einen anderen Port gehängt z.B Pin8.
dort habe ich vor der Plus-Seite 4 Widerstände in Reihe geschaltet. Laut meinem Multimeter ergeben die 4 zusammen die geforderten 220 Ohm.
Es passiert nichts an der LED (die zuvor auf PIN 13 noch ging)
Dann bin ich her gegangen und habe mal eine Multimeter reingeklemmt.
Siehe da. Er zeigt mir seltsame  5V (aufgerundet und das nach den Widerständen) an .
Wie gesagt die LED blinkt dort nicht.
Alles wird auf einem Breadboard getestet.
Es ist wie verhext oder ich habe hier eine grundsätzlichen Denkfehler drin

Viele Grüß
Jürgen
ps. die 5v die mir mein Multimeter angezeigt haben (oben beschrieben) waren im Blinkmodus... ich sah also im Multimeter das der Blink-sketch zwar funktioniert und der Strom auch ausgegeben wird aber irgendwie klappte es doch nicht

das ist wirklich wie verhext.
zumindest funktioniert nun das Blink-Sketch an versch. Ports.
Zum Glück hat der Arduino keinen Treffer. Entweder hatte ich Tomaten auf den Augen.. keine Ahnung ich probier es später nochmal ganz von vorne mit dem Sensor

Klaus_ww

Pin 13 hat keinen Vorwiderstand, vermutlich hast Du die LED gekillt. Oder verpolt angeklemmt.
Ich halte es daher für denkbar, dass Du grundsätzlich bei der Schaltung ein Problem hast.

Auch die vielen Libs die Du probiert hast für den HC halte ich im aktuellen Stadium für wenig hilfreich. Nimm die Karo-einfach-Variante mit 40 micros delay, PulseIn zur Messung und zeig uns ein Bild, wie Du verdrahtet hast.
Freizeit-Programmierer mit moderatem Ehrgeiz besseren Code zu schreiben.

Theseus

Hast du bei deinem Test auch die Pins richtig auf Output gesetzt? Ein Multimeter ist extrem hochohmig, weshalb es die 5V anzeigt, selbst wenn der Pin als Eingang definiert ist und der interne Pullup aktiviert wird. Für eine Led reicht der mögliche Strom dann nicht.

Wasjetzt

Hallo!
Langsam,  an Pin 20/21 ( TWI / I2C ) sollte ja nur die Clock....
Step by Step..räum mal auf, nur den Minimalcode für den HC rauf , den Sketch und dein Pinout (Foto) posten.
(wie bereits gepostet wurde)..
Das mit der LED versteh ich gar nicht.. wennst die LED mit den Widerständen an Masse direkt an 5V klemmst,
sollte sie doch leuchten ?
Und dann an den Pins gehts nicht ???? Verwendest den "Blink" mit geändertem Pin ?

mfg Martin


selfmade

Hallo,

ich trau es mich fast nicht sagen.
Sorry.
Ich hatte doch alles auf dem Breadboard (ein größeres langes) getestet.
Ich hatte wirklich zum ersten mal sowas in der Hand.
das ist mittig ja geteilt. :smiley-red:

ich räume jetzt mal alles sauber auf und teste alles durch.
Der Temp-Sensor der heute eingetroffen ist DHT22 funktioniert
die LED funktioniert auch
ich teste gerade noch den DS18B20 Temp-Sensor. Da gibt es wohl versch. Anschlussmöglichkeiten
aktuell zeigt er mir noch 55,00° Grad an. Das ist doch etwas zuviel

Später werde ich nochmals den Ultraschallsensor testen. Hoffe das es tatsächlich nur meine Dummheit bezüglich des Breadborads war


Go Up