Hallo, ich würde während meiner Semesterferien gern ein bisschen basteln und über Skype eine Fernsteuerung realisieren. Für den Anfang soll nur eine LED ein- und ausgeschaltet werden und dabei zugesehen werden können, ohne im selben Raum zu sein. Soweit recht unspektakulär, aber lässt sich ja ausbauen, falls es funktioniert. Grundidee: Mikrocontroller bewacht zwei Poti-Spannungsteiler und misst die anliegende Spannung. Die gemessenen Spannungen werden in zwei Werte zwischen 0 und 256 umgerechnet und deren Quersumme ausgerechnet. Werte und Quersummen werden als Bitpakete gesendet und vom Empfänger ausgewertet. Eine 1 wird als hoher Amplitude gesendet, eine 0 als niedrige Amplitude. Auswertung mit zwei Komparatoren und nachgeschaltetem Mikrocontroller. Mein kleines Problemchen ist jetzt, dass ich nicht ganz weiß, wie ich das Rechtecksignal des ersten Mikrocontrollers so in den Headseteingang des ersten Gerätes speisen soll ohne dass dieser Schaden nimmt. Normal macht man ja ein Dreiecksignal draus und fertig. Klingt nicht allzuschön, würde aber für meine Zwecke ausreichen. Der Integrator ist aber frequenzabhängig und ich würde ganz gern den eingebauten Taktgeber des Mikrocontrollers nutzen, der leider nicht allzu genau ist. Welche Möglichkeiten gibt es, einen "breitbandigen Integrator" aufzubauen oder einen komplett frequenzunabhängigen Wandler, der mir aus dem Rechteck einen Sinus oder ein Dreieck macht und die Möglichkeiten eines Hobby-Elektronikers mit mäßigen Kenntnissen nicht übersteigt? Grüße
Hallo, sag mal, wir leben mittlerweile in der "digitalen Welt" und du täumst immer noch "analog", wie passt das zusammen? schau mal welche Informationen du noch gleichzeitig über die "Verbindung" senden kannst und wenn es denn inbedingt analog sein soll schau mal nach "Impulswahlverfahren" oder auch "Mehrfrequenzwahlverfahren" da gibt es schon ICs für die Codierung und Decodierung. Du musst die Welt nicht neu erfinden! Gruss
Wenn ich recht verstanden habe, möchtest du die Sollwerte per Potis aufnehmen und analog per Skype übertragen? Dafür gibt es viele Ansätze, z.B. den von Stefan freundlich erwähnten MFV-Coder/Decoder, die man auch in MCUs nachbilden kann. Es könnte aber ein wenig mit Kanonen auf Spatzen geschossen sein. Prinzipiell kannst du das Rechtecksignal durchaus in den Audioeingang einspeisen, jedoch solltest du die besonderen Eigenschaften von Audiosignalen beachten. Beispielsweise mögen die DC-Verschiebungen nicht wirklich, die beim direkten Einspeisen von nicht-balancierten Rechtecksignalen entstehen. Besser verwendest du ein DC-freies Modulationsverfahren, z.B. Manchester-Coding: http://de.wikipedia.org/wiki/Manchester-Code Der Audiosignalweg macht dann durch sein Tiefpassverhalten von selbst ein "sinus-ähnliches" Signal daraus und der auf die anderen Seite lauschende Empfänger-MCU kann einfach auf eine Flanke triggern und dann auswerten. Hilft dir das? PdG
@Stefan Ich möchte erstmal was kleineres machen und mich nicht auch noch um eine funktionierende Funkverbindung kümmern müssen. Würde außerdem gern selber bisschen was knobeln - sonst lernt man ja auch nix dazu. @PdG Zum Teil richtig. Die Sollwerte der Potis werden analog aufgenommen, aber vom "Sender" vor dem Einspeisen in Skype noch in einen Wert zwischen 0 und 256 umgerechnet und dann als Binärzahl gesendet. Der Manchester-Code sieht interessant aus, das kannte ich noch nicht. Muss ich mir anschauen. Falls ich den nicht verstehen sollte, greife ich halt doch auf einen Integrator zurück und nehme ein bisschen Verlust an der Amplitude in Kauf.
name schrieb: > ...Die Sollwerte der Potis werden... > noch in einen Wert > zwischen 0 und 256... > Nur um ein häufiges Missverständnis auszuräumen: angenommen, du willst den Analogwert mit 8bit Auflösung messen. Das entspricht den bekannten 256 Stufen, wobei die erste Stufe die Nummer 0 hat, die letzte aber 255. Falls du tatsächlich einen Wert zwischen 0...256 ermitteln willst, müsste ein ADC mit einem Bit mehr ran. > Der Manchester-Code sieht interessant aus, das kannte ich noch nicht. > Muss ich mir anschauen. Falls ich den nicht verstehen sollte, Auf Wikipedia ist das zwar knapp, aber recht gut erklärt, auch der Verweis auf NRZ/NRZI, die nicht gleichspannungsfrei sind und sich hier nicht so gut eignen. > halt doch auf einen Integrator zurück und nehme ein bisschen Verlust an > der Amplitude in Kauf. Nochmals: ein Integrator wäre Overkill für diese Anwendung. Wenn du es nachrichtentechnisch absolut richtig machen wolltest, müsstest du noch einen DSP dazunehmen, die Rechtecksignale per Oversampling analysieren und einen hochreinen Sinus daraus erzeugen [+ beliebig weitere Super Trouper Funktionen] - genauso Overkill. Vorschlag: du begrenzt das erzeugte Rechtecksignal durch einen einfachen Spannungsteiler (bitte Gesamtwiderstand auf Treiberfähigkeit des MCU-Pins abstimmen) und koppelst das Signal kapazitiv auf den Audioeingang (100nF sollten etwa reichen). Wenn du tatsächlich noch integrieren (verschleifen) willst, würde auch ein weiterer massesseitiger Kondensator am Spannungsteiler reichen, mit dem ein einfacher Tiefpass geformt wird. Das Signal "klingt" dann etwas weicher, aber der Empfänger-MCU ist das eigentlich Schnurz. Übrigens hatte man in den 70ern ein ähnliches Verfahren zur Aufzeichnung von Daten auf die damals üblichen Magnetband-Kassetten benutzt, z.B. eine 0 als höherfrequente und eine 1 als niederfrequente Vollwelle (Rechteck) erzeugt und direkt auf den Audioeingang gegegeben. Erstaunlicherweise funktionierte das so gut, dass man in Tunerkreisen die ursprüngliche Datenrate von etwa 1500 bit/s erst auf 3kb/s, später auf unglaubliche 6kbit/s (Quad-Speed) hochschraubte. Das war allemal schneller, als auf Lochbänder zu stanzen. :-) Kuckste z.B.: http://en.wikipedia.org/wiki/ZX_Spectrum_software#Basis Mit heutigen MCUs lässt sich so etwas sehr einfach mit den vorhandenen Timern erledigen, ohne dass man wie damals CPU-Zyklen auszählen musste. Falls du keine Bestätigung für die erfolgreiche Übertragung zurückschicken möchtest, solltest du das zu übertragende Datum zur Sicherheit mehrmals senden. Auf der Empfängerseite lässt sich dann eine Wiederholung einfach herausfiltern. Viel Erfolg! PdG P.S. bei der Gelegenheit möchte ich erwähnen, dass ich damals einen Fehler in der Tape-Routine des ZX-Spectrum fand, der zu einer Unsymmetrie des erzeugten Signals führte. Als ich das für einen eigenen ROM korrigierte, war oben erwähntes Quad-Speed kein Problem mehr und sauber zurückzulesen. Nur Octal-Speed scheiterte am Kassettenmaterial und den unterschiedlichen Kopfspalt-Einstellungen verschiedener Recorder. Haach, das waren noch Forscher-Zeiten... 8-)
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.