Da ja die Sammelbestellung der Blitzdetektorn, Platinen und Spulen nun erfolgreich abgeschlossen wurde, möchte ich nun diesen Thread eröffnen, um dort Erfahrungen mit diesem Baustein auszutauschen. Ich habe die Platine bestückt und per I2C an einen Atmel angeschlossen. Die Kommunikation klappt einwandfrei. Auch kann ich den Oszillator problemlos auf ca 500kHz kalibrieren (Takt durch 128 teilen, Kondensator auswählen, jeweils eine Sekunde lang messen und das Ergebnis mit der geringsten Abweichung wird dann verwendet. Auch das Abfragen der verschiedenen Interrupt-Typen ist kein Problem. Jetzt fehlt nurnoch ein Gewitter! Leider ist es mit noch nicht gelungen, nachvollziehbare Blitz-Ereignisse zu generieren. Ich hab mal mit einem Funktionsgenerator verschiedene Bursts auf 500kHz auf eine Spule gegeben und diese in die Nähe des AS3935 gebracht. Bis auf sporadisch auftretende Noise-Floor-Inerrupts konnte ich aber nichts erreichen. Es gibt ja auch eine Testschaltung, welche Testimpulse generieren kann. Weiss jemand, wie die genau funktioniert
Ich habe hier http://www.loetstelle.net/arduino/as3935/as3935.php einen kleinen Sketch für einen Arduino veröffentlicht, mit dem man die Daten eines AS3935 auslesen kann. Leider konnte ich noch kein Blitz-Ereignis damit registrieren, es waren noch keine Gewitter in der Umgebung. Auf Störungen, die ich mit einem Fuktionsgeneator und einer Spule erzeugt habe, reagiert das Programm je nach Dauer mit einer Erhöhung des Noise-Floor Levels bzw. erkennt einen 'Disturber'. Dieses Verhalten würde ich auch so erwarten. Hat schon jemand ein erstes Gewitter geortet ??
Ich hab das Ding bei mir mal an ein I2C-tiny-USB (http://www.harbaum.org/till/i2c_tiny_usb/index.shtml) gehängt und schnell etwas Linuxcode zusammengefrickelt: https://github.com/znuh/unsorted/blob/master/as3935/main.c Da kann ich die IRQ-Leitung natürlich nicht auswerten, daher polle ich das Interrupt-Register. Kalibriert hab ich mit VC920 Multimeter am IRQ auf 31204 Hz * 16 = 499264 Hz. Habe aber andauernd disturber. Ich vermute fast, dass die durch die Flanken vom Pollen kommen. Auch aus dem Grund will man vermutlich den IRQ nutzen. Vielleicht guck ich mir demnächst mal die Flankensteilheit an und gucke, ob ich da noch was drehen kann, bzw. ob IRQ auch ohne pollen aktiv wird. Als Antennenkapazitäten hab ich 2x NPO-G0805 470P von Reichelt genommen. Die haben zwar 5% Toleranz, aber habs vorher mit nem LC-Meter durchgemessen und kam mit beiden auf ca. 950pF. Ansonsten sind die Gewitter im Winter halt eher rar... Nen Schaltplan von dem Blitz-Emulator gibts in dem AS3935_EvalManual_AN.pdf auf Seite 13. Hab mir das aber auch noch nicht näher angeguckt.
Die Empfindlichkeit gegen Disturber (Spikes) kann man über das SREJ-Register einstellen, vielleicht hilft das ja
So, Thread ist wieder ausgegraben: Nachdem es hier schon die ersten Frühlingsgewitter gab, wollte ich hier mal anfragen, ob schon jemand erste Erfolge mit dem Blitzdetektor hatte. (Aufgebaut auf der Platine aus der Sammelbestellung letztes Jahr). Bei mir leider nichts bisher. Garnichts. Trotz recht deutlicher Blitze in unmittelbarer Umgebung. Softwaremässig scheint alles zu passen, die Frequenz wird korrekt kalibriert, mit einem Funktionsgenerator konnte ich zumindest Störimpulse erzeugen, also läuft die Kommunikation mit dem Baustein schonmal. Hat Irgendwer schon bessere Resultate ? dgr
Hallo Zusammen, ich plante gerade einen kompakten Blitzempfänger und bin auf der Suche nach einem kleinen Spannungswandler. Bei Reichelt bin ich auf folgenden gestoßen: MCP1640CT-I/CHY Was mir leider stört ist die Schaltfrequenz von 500kHz. Genau diese Frequenz sollte man aber vermeiden. Meint ihr das gibt Probleme? Kennt jemand eine alternativen Schaltregler?
Habe mir den Detektor auch gebaut, allerdings komme ich wohl nicht genau auf die Frequenz. Das Teil hängt noch an an einem Arduino, zur Auswertung nutze ich die entsprechende Library. Das Beispielprogramm liefert mir beim Tuning einen Fehler von 8, dass wäre dann rund 12,5khz Abweichung. Bin mir unschlüssig ob ich da nachbessern muss. In der erlaubten Abweichung bin ich da locker drin, allerdings sehe ich bei anderen im Netz immer schönere Näherungen an die 500khz. Gibt es da Erfahrungen?
Hallo zusammen, hat jemanden die Code von AS3935 mit einem MCU von ATMEL ? wenn ja , könnt ihr hier bitte alles reinschmeißen ?
Nach ca. 2 Jahren möchte ich mal nachfragen ob es bis jetzt weitere Erfahrungen zu diesem IC gibt?
Felix L. schrieb: > Nach ca. 2 Jahren möchte ich mal nachfragen ob es bis jetzt > weitere > Erfahrungen zu diesem IC gibt? Es gibt einige Breakout Boards für den Sensor und auch Arduino Libs. Ich Baue gerade für unsere Firma so ein Gewitter Sensor und er funktioniert wirklich gut.
Hallo, welche Breakuout-Boards gibt es denn hier ohne Zoll zu kaufen?
Max .. schrieb: > welche Breakuout-Boards gibt es denn hier ohne Zoll zu kaufen? Du verwechselst nicht zufällig MwSt./EUSt mit Zoll?
Das ist wohl nicht von hier: "Designed, manufactured, tested and shipped from the USA"
Ok, danke für die Erfarhung. Aber da kommen noch 15USD für Versand drauf. Da sind wir über 40 USD für eine PLatine. Das ist mir dann doch etwas teuer
Ich habe ein Demo board gemacht mit atmega328p, as3935, bme280 und co2 sensor. Kann dir das verkaufen wenn du magst. ripper121@gmail.com
Kannst dir aber auch Samples bei ams schicken lassen. Die Antenne bekommst du auch als sample von coilcraft und der Rest ist Kleinkram. Das pcb kannst du bei pcb Pool machen lassen. Aber alles im allem wirst du nicht unter 40€ kommen
Hallo zusammen, Wir versuchen mit einem Texas Instruments Mikrocontroller mit Hilfe des AS3935 Franklin Lightning Sensor Blitze zu detektieren mit einem I2C-BUS. Jedoch haben wir bei der Registerauslesung Probleme. Unabhängig vom angefragten Register, liefert uns der Sensor im Betrieb ständig den selben Wert (0x24 oder 0x1C). ACK bzw. NAK werden unserer Meinung nach richtig gesetzt. Ist dieses Problem bekannt bzw. könnt Ihr uns irgendwelche Tipps geben? besten Dank im voraus!
Meinen Beitrag in meinem Blog habt ihr gesehen? Da wird das ganze mit einem AM Empfänger gelöst. Keine winzigen Bauteile zum löten und einfacher Algorithmus. Basiert auf dem Franzis Gewitterwarner. Nur mit mehr "Schhrauben" zum drehen ;-)
Blitzdetektor Jungs schrieb: > ACK bzw. NAK werden unserer Meinung nach richtig gesetzt. Ist dieses > Problem bekannt bzw. könnt Ihr uns irgendwelche Tipps geben? > besten Dank im voraus! Ohne Oszillogramm / Logic Analyzer Screenshot und Code kann euch keiner helfen. Es stimmt halt was mit euerer I2C Kommunikation nicht.
Hi >Meinen Beitrag in meinem Blog habt ihr gesehen? Nö. Muss man auch nicht. >Basiert auf dem Franzis Gewitterwarner. Ist bekannt. Hat aber gar nichts mit dem AS3935 zu tun. MfG Spess
spess53 schrieb: > Hi > >>Meinen Beitrag in meinem Blog habt ihr gesehen? > > Nö. Muss man auch nicht. > >>Basiert auf dem Franzis Gewitterwarner. > > Ist bekannt. Hat aber gar nichts mit dem AS3935 zu tun. > > MfG Spess Schade. Da bin ich traurig. Ja, funktioniert ohne AS3935. Andu Ankda schrieb: > AMS Chip teuer und blöd zu bekommen. > Selbe mit Antenne dafor. Nein. Bei Mouser gibts alles.
Hallo Zusammen, Hier ein Screenshot von unserem Logic Analyzer. Hier soll Register 0x03 zum Bestimmen der Divisionratio ausgelesen werden. Allerdings erhalten wir wie bereits erwähnt immer nur den Wert 0x1C Dieser Wert wird auch sonst unabhängig von dem auszulesenden Register ausgelesen. Ausschnitt vom Aufrufen der Read-Funktion: uint8_t getDivisonratio(void) { /* * Unterfunktion der autotunecaps Funktion */ uint8_t regData=0; regData = read_single_data(Sensor_Adr,LCO_FDIV); //Lese aus dem Byte die oberen 2 Bits regData=(regData>>6); ... Implementierung unserer Read-Funktion: uint8_t read_single_data(uint8_t adr,uint8_t reg, uint8_t mask) { I2CMasterSlaveAddrSet(I2C2_BASE,adr, false); //Aufforderung zum Auslesen des I2CMasterDataPut(I2C2_BASE,reg); //Register anfordern I2CMasterControl(I2C2_BASE, I2C_MASTER_CMD_SINGLE_SEND); //SysCtlDelay(500); while (I2CMasterBusy(I2C2_BASE)) { } //SysCtlDelay(100000); //warte >20ms for dem Lesen I2CMasterSlaveAddrSet(I2C2_BASE,adr,true); //Auslesen I2CMasterControl(I2C2_BASE,I2C_MASTER_CMD_SINGLE_RECEIVE); //SysCtlDelay(500); while (I2CMasterBusy(I2C2_BASE)) { } return (I2CMasterDataGet(I2C2_BASE)&mask); //Empfangenes Daten zur¸ckgeben (mit Maskierung) }
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.