Gast
#3698466
Ich habe einen Sketch bei dem ich einen Windsensor auslese. Der interrupt zählt mir allerdings hoch ohne dass das Rad dreht. Was könnte das sein? Ich verwende einen Arduino Yun. Danke für jeden Hinweis
|
Anzeige
|
Interrupt zählt ohne Grund
Gast
#3698466
Ich habe einen Sketch bei dem ich einen Windsensor auslese. Der interrupt zählt mir allerdings hoch ohne dass das Rad dreht. Was könnte das sein? Ich verwende einen Arduino Yun. Danke für jeden Hinweis
Gast
#3698467
Berger schrieb: > Was könnte das sein? Das Problem liegt in Zeile 42... Spaß bei seite: Poste deinen Code dann kann man dir auch helfen. Kein Code == Keine Hilfe Ein Hardwarefehler (R42). Ein Softwarefehler (Zeile 42). Bitte.
Gast
#3698469
Berger schrieb: > Was könnte das sein? Das kann nur an deiner Software oder an der Beschaltung liegen.
Gast
#3698471
Ja ich hoffte auf einen Anfängerfehler. Den Code hab ich grad nicht zur Hand, werd ihn aber noch posten.
Gast
#3698474
Ohne weitere Informationen, kann man nur vermuten, das die Leitung vom Sensor zum Controller, Störimpulse aus der Umgebung einfängt. Dagegen könnte ein kleiner Kondensator vom µC-Eingang nach Masse (Tiefpass) helfen. Der Wert nängt natürlich von der genauen Beschaltung ab...
Gast
#3698485
Ingo Wendler schrieb: > Dagegen könnte ein kleiner Kondensator vom µC-Eingang nach Masse > (Tiefpass) helfen. Ein einzelner Kondensator würde bei Störimpulse mit zu kleiner Ladungsmenge dafür sorgen, dass die Schaltschwelle nicht überschritten wird. Für einen echten Tiefpass müßte noch ein Widerstand in die Leitung. Der Eingang sollte in beiden Fällen Schmitt-Trigger Charakteristik besitzen. Berger schrieb: > einen Windsensor auslese. Der interrupt zählt mir allerdings hoch Wie schnell muss denn da überhaupt gezählt werden? Welche maximale Frequenz gibt der Sensor aus?
Gast
#3698524
Lothar Miller schrieb: > Wie schnell muss denn da überhaupt gezählt werden? Welche maximale > Frequenz gibt der Sensor aus? Damit sind wir bei der nächsten (vielleicht) wichtigen Frage: Welchen Windsensor verwendest du denn, lieber TO? Kaj schrieb: > Damit sind wir bei der nächsten (vielleicht) wichtigen Frage: > Welchen Windsensor verwendest du denn? Und: Wie ist der an den uC Pin angeschlossen?
Gast
#3698630
Kaj schrieb: > Damit sind wir bei der nächsten (vielleicht) wichtigen Frage: > Welchen Windsensor verwendest du denn, lieber TO? Und: Wie ist der Eingang konfiguriert?
Gast
#3698633
Kaj schrieb: > Welcher Windsensor Lothar Miller schrieb: > Wie ist der an den uC Pin angeschlossen? Mike schrieb: > Wie ist der Eingang konfiguriert? Code, Schaltplan, usw. sonst wird das nichts. Immerhin ist der Controller ist schon mal bekannt: > Arduino Yun ATMega32u4
Gast
#3698657
Also der Code ist im Anhang. Ich habe bewusst den Regensensor genommen, da der noch etwas einfacher als der Windsensor ist. Ich verwende die Bridge Library zum Auslesen der Daten. Der Regensensor stammt aus der Wetterstation von Sparkfun. Ein Kontakt des Regensensors ist auf D8 (HIGH) und INT3 (Pin1) der andere an GND. Damit sollte GND D8 runterziehen und einmal zählen. Stattdessen zählt er pro Sekunde ca 40 hoch. Egal ob da etwas angeschlossen sit oder nicht.
Gast
#3698671
Berger schrieb: > Stattdessen zählt er > pro Sekunde ca 40 hoch. Egal ob da etwas angeschlossen sit oder nicht. Dann vergiß erstmal den Regensensor und häng an den Eingang nur einen zusätzlichen Pull-Up, z.B. 4k7. Dann muss Ruhe herrschen. Als nächstes könntest du einen Rechteckgenerator mit bekannter Frequenz anschließen ... Warum fragst du in deiner Interrupt-Routine eigenlich deinen Zeitzähler bis zu 3 Mal ab (und bekommst jedesmal ein anderes Ergebnis)? Und wenn du rain_last auch bei ungültigen Impulsen aktualisierst, trägt das nicht gerade zur Genauigkeit des Zeitwertes bei. Zeile 25: Input -> Output
Gast
#3698674
Alex S. schrieb: > Zeile 25: Input -> Output Guckst du hier: http://www.arduino.cc/en/Tutorial/DigitalPins "Prior to Arduino 1.0.1, it was possible to configure the internal pull-ups in the following manner:"
Aktuell gibt es pinMode INPUT_PULLUP
Gast
#3698691
Eigentlich wollte ich endlich mal den Schaltplan sehen. War wohl nix. Mit "Windsensor" Datenblatt is auch nix. Nach was soll man da suchen. Is ja auch nicht verlinkt. Schei... Programm öffnen ... Mit Notepad kriegt man nur Textmüll. Andere Programme probiere ich nicht mehr. Arduino Spezialisten werden ihn wohl lesen können ... ob es was bringt? Keinen Bock mehr, gehe an die frische Luft - bringt mehr als ein Danke. Berger schrieb: > Also der Code ist im Anhang. Womit kann man den ansehen? Evtl. wäre es einfacher, wenn du den Quelltext hier postest. Dafür sind dann die [c] Tags da...
Gast
#3698721
Lothar Miller schrieb: > Berger schrieb: >> Also der Code ist im Anhang. > Womit kann man den ansehen? > > Evtl. wäre es einfacher, wenn du den Quelltext hier postest. Dafür sind > dann die [c] Tags da... Sieht wie ein normaler C-Quelltext aus
Gast
#3698723
Lothar Miller schrieb: > Womit kann man den ansehen? Arduino-IDE.
Gast
#3698731
ciao schrieb: > Mit Notepad kriegt man nur Textmüll. Andere Programme probiere ich nicht > mehr. Arduino Spezialisten werden ihn wohl lesen können ... Das sind ganz normale Textdateien. Nur weil die File Extension "INO" ist, mußt du nicht gleich beleidigt sein. Peinlich genug ist es für Notepad. Das Schei.ding aus den Anfängen der PC-Zeit kommt einfach mit einem einfache Linefeed am Zeilenende nicht zurecht. Nimm Notepad++, dann hast du das Problem vom Tisch http://notepad-plus-plus.org/ Berger schrieb: > Ich habe einen Sketch bei dem ich einen Windsensor auslese. Der > interrupt zählt mir allerdings hoch ohne dass das Rad dreht. Was könnte > das sein? Du verwendest den internen PullUp-Widerstand am Reedkontakt:
Die internen PullUps der Atmega-Controller haben einen Wert von ca. 20K bis 50K und pullen die Leitung sehr schwach. Sobald Du zwischen Controller und Schalter eine "lange Leitung" hast, reichen diese schwachen PullUps nicht mehr. Verwende einen externen PullUp-Widerstand, Standardwert 4.7K.
Gast
#3698755
Jürgen S. schrieb: > Sobald Du zwischen Controller und Schalter eine "lange Leitung" hast, > reichen diese schwachen PullUps nicht mehr. Berger schrieb: > Stattdessen zählt er pro Sekunde ca 40 hoch. Egal ob da etwas > angeschlossen sit oder nicht. Unter "nichts angeschlossen" hätte ich verstanden, dass da auch keine "lange Leitung" angeschlossen ist. But who knows ...
Gast
#3698796
Moin schrieb: > Das sind ganz normale Textdateien. Nur weil die File Extension "INO" > ist, mußt du nicht gleich beleidigt sein. > > Peinlich genug ist es für Notepad. Das Schei.ding aus den Anfängen der > PC-Zeit kommt einfach mit einem einfache Linefeed am Zeilenende nicht > zurecht. > > Nimm Notepad++, dann hast du das Problem vom Tisch > http://notepad-plus-plus.org/ Was sind denn "normale" Textdateien in deinen Augen? Ich probiere jedenfalls nicht lange rum, besonders dann nicht, wenn man auch noch hinter anderen Angaben herlaufen muß, die auch schon genügend nachgefragt wurden. Hallo Berger, Du schreibst:
Laut http://arduino.cc/en/Main/ArduinoBoardYun: "External Interrupts: 3 (interrupt 0), 2 (interrupt 1), 0 (interrupt 2), 1 (interrupt 3) and 7 (interrupt 4). These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details. Is not recommended to use pins 0 and 1 as interrupts because they are the also the hardware serial port used to talk with the Linux processor." Du benutzt Arduino Interrupt 3? Der triggert doch auf Arduino Pin 1, nicht auf Arduino Pin 8? Wie soll das dann gehen? Mal ganz abgesehen davon, dass Arduino Pin 1 für die Bridge-Kommunikation benötigt wird ... LG, Sebastian
Gast
#3698881
ciao schrieb: > Schei... Programm öffnen ... Mit Notepad kriegt > man nur Textmüll Nö, kein Textmüll, weder mit dem normalen windows notepad noch mit notepad++, mit dem windows notepad fehlen nur die zeilen umbrüche so das alles in 2 zeilen steht. Sogar Wordpad und M$-Word kann die Datei problemlos öffnen (gerade ausprobiert). Da liegt das Problem, beim öffnen und anschauen der Datei, ganz klar nicht an der Datei oder dem Editor... ciao schrieb: > Was sind denn "normale" Textdateien in deinen Augen? alles das, wo klartext drin steht. auch eine .c .cpp .hpp .make .lss .map datei ist nichts anderes als eine normale textdatei. Selbst eine .hex-Datei würde ich noch fast dazu zählen, weil die hex-Werte als klartext drin stehen. .bin oder .elf dateien sind für mich z.B. keine "normalen" Textdateien mehr, weil dort kein klartext drin steht. ciao schrieb: > Ich probiere jedenfalls nicht lange rum Brauch man ja auch nicht... rechts klick --> öffnen mit... und den Editor deiner Wahl aussuchen. Alterantiv, wenn man den Total Commander hat, einfach F3 drücken. Aber für alle die das nicht hin bekommen:
Kaj schrieb: > Aber für alle die das nicht hin bekommen: Danke sehr, mein neues Android Smartphone hat da offenbar auch so seine Probleme. Ich werde Andreas mal vorschlagen, dass er in der Forensoftware die ino Dateien wie C Dateien behandelt...
Gast
#3699248
Lothar Miller schrieb: > mein neues Android Smartphone ok, hätte nicht damit gerechnet das jemand versucht sich das auf nem neumodischen mobilfunk telefon anzuschauen :D aber ok, man lernt nie aus^^ Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|