Hallo zusammen, ich wollte ein kleines (mobiles) Gerät bauen, mit dem ich Körperschall mit einem Mikrofon aufnehme, es verstärke und das Signal daraus nehmen will, um einen Mikrokontrollereingang zu triggern. So als ob ein Taster gedrückt worden wäre. Der Mikrokontroller (ATMEGA8, weil ich mit dem schon ein wenig Erfahrung habe) soll dann den Triggerzeitpunkt in einen nicht flüchtigen Speicher schreiben, so dass ich ihn zuhause auslesen kann. Realisierung: Ein Mini-Mikrofon (Piezo oder Elektret) wird dazu direkt an die Wand eines kleinen Plastikgehäuses (4*6cm) montiert. Wenn man mit einem anderen Gerät dieses Plastikgehäuse berührt, hat man erheblichen Körperschall. So als ob man sein Ohr auf eine Tischplatte legt und auf diese Platte klopft. Dieses Signal wollte ich mit einem OP-Amp verstärken. Die Signal qualität spielt absolut keine Rolle. Hinter dem OP-Amp wollte ich mit einem zweiten OP-Amp einen Schmitt-Trigger bauen, der ab einem bestimmten Pegel seinen Ausgang auf EIN schaltet und diesen auch paar Millisekunden hält (damit ich mir das Software-Entprellen in Assembler ersparen kann, weil ich das noch nicht kapiert habe, bzw nicht verstanden habe, wie ich das in eigenen Code einbauen kann, ohne den anderen Code zu stören) Die Versorgungsspannung wollte ich direkt aus drei AAA-Zellen entnehmen. Ohne Spannungsregler. Ich hoffe, (und glaube) dass ein 3,3V Mega8 bei vollen Batterien (4,5V)nicht gleich abraucht und bei sagen wir 3V immer noch stabil läuft. Der Mikrokontroller selbst hat ja keinen genauen Quarz und erst Recht keine Echtzeit-Uhr eingebaut. Deshalb müsste ich wahrscheinlich einen genauen externen Quartz nehmen. Dann wollte ich eine Schleife laufen lassen, die genau soviele Takte im Kreis läuft, dass ein Schleifendurchlauf genau eine Sekunde lang dauert. 1. Frage: Wie genau sind solche Quarze etwa? Wenn das Teil sagen wir mal zwei Wochen am Stück an drei 1,5V AAA-Batterien laufen soll, deren Spannung mit der Zeit ja abnimmt. Kann man davon ausgehen, dass die Zeitliche Abdrift über zwei Wochen unter einer Minute gehalten werden kann? Oder gibt es einfach auszulesende genaue und billige und kleine Echtzeituhren? 2. Frage: Die Triggerereignisse kann ich ja eigentlich nur ins EEPROM schreiben. Es sollen in zwei Wochen etwa 30 Datensätze eingetragen werden. Das dürfte Platzmäßig ja kein Problem sein. Aber wie sieht es mit der Versorgungsspannung und Stromstärke aus? Wie hoch ist die, wenn man Daten ins EE-Prom brennt? Reichen meine 3 AAA-Zellen dafür aus? Danke für Eure Infos und viele Grüße Karl-Alfred Römer
Karl-alfred Römer schrieb: > Hallo zusammen, > > ich wollte ein kleines (mobiles) Gerät bauen, mit dem ich > Körperschall mit einem Mikrofon aufnehme, es verstärke und Zum automatischen Betätigen der Klospülung? duck-und-weg
1: ja, siehe http://www.mikrocontroller.net/articles/AVR_-_Die_genaue_Sekunde_/_RTC 2: vermutlich ja :-) Ich würde mit dem Signal den externen INT0 triggern. Damit kann man den AVR aus dem "Tiefschlaf" wecken. Dein Program macht dann (in der Hauptschleife) nichts anderes als die RTC auszulesen und den Datensatz wegzuschreiben. Danach fällt der Controller wieder in den Tiefschlaf und verbraucht (fast) keinen Strom. Du must dann noch eine Möglichkeit haben, die Daten auszulesen. Eine Möglichkeit wäre es beim Aufwachen einen anderen Pin auzufragen und dann in eine Art Terminal (Abfrage der Werte, Uhr setzen, Speicher löschen etc) zur Verfügung stellt. Der Stromverbrauch wird dann hauptsächlich durch die analoge Schaltung bestimmt.
Das mit dem Sleep-Modus ist eine gute Idee um Strom zu sparen. Habe damit zwar noch nie gearbeitet, aber einmal muss es ja zum ersten Mal gemacht werden. Habe eben mal ein Piezo-Mikrofon in das geplante Plastikkästchen eingeklebt, an meinen Oszi angeschlossen und mit verschiedenen Gegenständen, die dem späteren Gegenstand ähnlich sind, berührt. Je nach Berührungsintensität kommen so schon 0,2 bis 5 Volt heraus. Damit mein AVR auch garantiert von den 0,2V getriggert wird, werde ich wohl verstärken müssen schätze ich mal. Ein anderes Problem: Ein Schallereignis, bei dem zwei Kunststoff gegenstände zusammenstoßen produziert sehr kurze und schnell abklingende Impulse. Angenommen, er erste Impuls wäre nur eine 1000stel Sekunde: Reicht das aus, um genau einen Interrupt auszulösen? Die Entprellerei liegt mir noch schwer im Magen. Was die Genauigkeit der Quarze betrifft: Die externen scheinen ja genau genug zu sein. Selbst die Temperaturabdrifft bei 50°C die je nach Quarz 20ppm ausmachen soll, wäre noch im grünen Bereich. Hat jemand eine ungefähre Vorstellung, wie groß die Temperaturabdrift und auch die allgemeine Genauigkeit beim AtMega8-internen Oszillator ist?
ich hab zuerst an eine Art Alarmsignal vor Omas Darmwinden gedacht :-P
Omas Darmwinde und automatische Klospülung hat überhaupt nichts mit meinem Problem zu tun. Es geht um Überwachung eines kleinen Objektes. Könnte ich auch mit einem Bewegungsmelder realisieren. Aber man darf es nicht sehen. Und weil das kleine Objekt auf jeden Fall berührt werden muss, mache ich es halt mit Schall.
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.