INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Probleme!!
16.05.2015, 14:34
Beitrag #17
RE: Probleme!!
(16.05.2015 13:52)HaWe schrieb:  ps, ich bezog mich auf diesen Teil:
Zitat:Außerdem wäre es dann geschickt, mit Interrupts zu arbeiten. Also entweder per Interrupt 0 und 1
Ja, und wo rede ich da von Timer-Interrupts? Ich meine damit das hier: http://www.arduino.cc/en/Reference/AttachInterrupt

Zitat:du meinst jetzt sicher die Pinchange-Interrupts
[quote]...oder aber PinChangeInterrupt. Dafür gibt's auch eine ganz nette Library.
- damit kenne ich mich allerdings überhaupt nicht aus, und alles was ich bisher darüber gelesen habe ist mir auch komplett unklar.
Ok, das ist vielleicht etwas verwirrend, da sowohl die "externen" Interrupts als auch die PinChangeInterrupts auf Änderungen irgendwelcher Eingänge reagieren. Für die externen siehe oben. Mit den PinChangeInterrupts meine ich das hier:
http://playground.arduino.cc/Main/PinChangeInterrupt. Dazu gibt es auch ein paar Libraries, z.B. hier: http://playground.arduino.cc/Main/PinChangeInt.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 15:29
Beitrag #18
RE: Probleme!!
Hallo alle zusammen,
bin jetzt den ganzen Tag am Fehlersuchen - nix gefunden.
Sobald der HC-SR04 mit dem Lötkolben (Lötstation) in Berührung kommt habe ich Daueralarm.
Ich stelle das Projekt zurück und versuche mein Glück anderswo.
An Alle ein Dankeschön und ein Gruß
Gerd

Smile Schön dabei zu sein Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 16:24 (Dieser Beitrag wurde zuletzt bearbeitet: 16.05.2015 16:42 von HaWe.)
Beitrag #19
RE: Probleme!!
in der Tat, das mit den PCI ist mir noch etwas zui "spanisch". Außerdem will ich vermeiden, dass ein US Sensor auch später noch auf eigene oder Fremd-Echos reagiert, jenseits des 5000µs Zeitfensters (oder was auch immer) , was ja leicht passieren kann bei insgesamt 5 oder 6:

nur innerhalb seines eigenen kleinen Zeitfensters soll gemessen werden, hier aber pingen gleichzeitig auch 1 oder 2 weitere SR04s, ntl in andere Himmelsrichtungen.

Würde man dies sonst mit pulseIn() machen, würde es viel zu lange dauern, bis man bei 6 Sensoren 1x rundrum gepingt hat, besonders bei sehr lang laufenden reflektierten Echos von jeweils über 2 meter.

(Ich verstehe das doch richtig, dass pulsieIn() auf eine Flanke (low->high) wartet, und das Programm erst bei einer Flanke oder nach sehr langer time-out-Wartezeit zum nächsten Programmbefehl weiter geht?)

ps,
ich glaube, bergfrei und tafkaz sind jetzt im falschen Thread gelandet... Wink
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 16:36
Beitrag #20
RE: Probleme!!
(16.05.2015 16:24)HaWe schrieb:  Außerdem will ich vermeiden, dass ein US Sensor auch später noch auf eigene oder Fremd-Echos reagiert, jenseits der 5000µs, was ja leicht passieren kann bei insgesamt 5 oder 6:
Du kannst doch so oder so alles über 5000µs ignorieren. Dabei ist doch egal, wie Du misst, oder?

Zitat:(Ich verstehe das doch richtig, dass pulsieIn() auf eine Flanke (low->high) wartet, und das Programm erst bei einer Flanke oder nach sehr langer time-off-Wartezeit zum nächsten Programmbefehl weiter geht?)
Schau Dir mal das hier an: http://www.arduino.cc/en/Reference/PulseIn. Wenn Du als Timeout 5000 übergibst, dann wartet er maximal 5ms.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 16:40
Beitrag #21
RE: Probleme!!
ok, danke, wieder was gelernt!
diese erweitere Form kannte ich noch nicht

pulseIn(pin, value, timeout)

- allerdings bleibt es dabei, dass ich damit nur 1 US sensor nach dem nächsten messen kann, nicht 2-3 parallel verarbeiten, wenn die Echos dann zeitlich versetzt einlaufen (z.B. bei 1x1m, 1x50cm, 1x 10cm Hindernis).

- Und ein PCI würde in jedem Falle auch danach nuch eine Flanke registrieren, denn der weiß ja nichts von 5000µs, oder?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 16:45
Beitrag #22
RE: Probleme!!
(16.05.2015 16:40)HaWe schrieb:  - Und ein PCI würde in jedem Falle auch danach nuch eine Flanke registrieren, denn der weiß ja nichts von 5000µs, oder?
Im Prinzip ja, aber Du kannst ja einfach alle Ergebnisse über 5000µs ignorieren.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 16:48 (Dieser Beitrag wurde zuletzt bearbeitet: 16.05.2015 16:50 von HaWe.)
Beitrag #23
RE: Probleme!!
nicht ganz, denn was ich vorhabe ist ja in der Endlosschleife:

Code:
void loop() {

  2 SR04 gleichzeitig pingen
  lauschen und dafür maximal 5000µs warten

  2 andere SR04 gleichzeitig pingen
  lauschen und dafür maximal 5000µs warten

  die letzten 2 SR04 gleichzeitig pingen
  lauschen und dafür maximal 5000µs warten

  dann wieder von vorn

}

hier darf es nicht passieren, dass einer von den ersten beiden noch ein spätes eigenes oder ein reflektiertes Fremd-Echo registriert, wenn sein eigenes Zeitfenster bereits rum ist
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.05.2015, 16:52
Beitrag #24
RE: Probleme!!
Hi,
...wie meine Vorredner schon sagten ist der Parameter timeout die Begrenzung wie lange die Funktion auf das Pulsende wartet eine hilfreiche Option, ergo würde es da dann bei dem Wert 5000 nach 5mS zum nächsten Befehl im Sketch weitergehen.
Außerdem denke ich mal das wenn man die US-Sensoren nacheinander triggert es weniger bis keine Beeinflussung durch die anderen "Beschaller" der Umgebung gibt.
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  ArduinoDroid Probleme Brother Tak 1 205 10.09.2016 22:12
Letzter Beitrag: Brother Tak
  Roboter-Bau Probleme blebbens 8 381 12.07.2016 07:35
Letzter Beitrag: Binatone
  Probleme mit sprintf() und dtostrf() GMBU 11 818 22.06.2016 10:52
Letzter Beitrag: GMBU
  Makeblock mit Scratch programmieren- Probleme Keinen Schimmer 6 979 06.05.2016 18:34
Letzter Beitrag: arduinopeter
  Programme vom UNO auf nano , mini Pro portieren Probleme anwo 19 1.178 17.04.2016 21:12
Letzter Beitrag: hotsystems
  Probleme beim Auslesen eines IR Empfängers linuxpaul 7 576 06.03.2016 14:44
Letzter Beitrag: hotsystems
  I²C vom NANO zum PI Probleme mit High/Low Bit Tobias1984 4 333 29.02.2016 00:00
Letzter Beitrag: hotsystems
  Probleme beim auswählen des Ports Levi 11 838 21.02.2016 18:00
Letzter Beitrag: hotsystems
  IRemote probleme mit abfrage schnutzkurt 18 1.153 20.02.2016 01:30
Letzter Beitrag: SkobyMobil
  Probleme mit SPI - Ethernet und nRF24L01 itsy 35 2.986 21.11.2015 19:59
Letzter Beitrag: ardu_arne

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste