Forum: Mikrocontroller und Digitale Elektronik Sinusgenerierung für BFSK


von Steffen M. (steffenmauch)


Lesenswert?

Hallo,
hat jemand von euch eine gute Idee wie ich eine Bitfolge mit 25ns und 
50ns Pulse in ein Sinussignal wandeln kann?
Also der 25ns Puls in eine Halbwelle 40MHz Sinus und den 50ns Puls in 
eine 20MHz Halbwelle.
Im Endeffekt ist es eine BFSK Modulation.
Mit dem AD9958 geht sowas, aber der ist ziemlich groß und teuer.

Einfaches filtern des Signals ist keine wirkliche Möglichkeit, denn die 
Phasenverschiebung ist problematisch.
Ideal wäre es wenn ich den 40MHz noch leicht gegenüber dem 20MHz Sinus 
verstärken könnte um die Strecke auszugleichen (Pre-Emphasis).

Vielen Dank für Vorschläge/Hinweise.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Mal' doch mal n Bild, von den Impulsen/Bits die rein gehen sollen und 
dem Signal was rauskommen soll.

Gruss
WK

von Steffen M. (steffenmauch)


Angehängte Dateien:

Lesenswert?

Anbei wie gewünscht die Skizze.
Im ursprünglichen Post habe ich leider 40Mhz anstelle 20Mhz und 20Mhz 
anstelle 10Mhz geschrieben. Ich hoffe mit der Skizze wird klar was ich 
suche.

An sich ist es Minimum frequency-shift keying (MSFK).

von Jobst M. (jobstens-de)


Lesenswert?

Steffen M. schrieb:
> Einfaches filtern des Signals ist keine wirkliche Möglichkeit, denn die
> Phasenverschiebung ist problematisch.

Da wirst Du keine Lösung finden. Bei einer Flanke muß bereits bekannt 
sein, wann die nächste Flanke kommt. Auch bei dem AD9958.


Gruß

Jobst

von Joe F. (easylife)


Lesenswert?

Ein steiler Tiefpassfilter könnte das hinbekommen.
Allerdings wird eine Demodulation wohl fast unmöglich sein.
Ein paar mehr Schwingungen pro Bit sind da sehr hilfreich.
Mit BFSK Modulation hat deine "Bitfolge" nur entfernt zu tun.
Üblicherweise wird eine 0 mit einer Frequenz codiert, und eine 1 mit 
einer anderen. Je mehr Abstand zwischen den Frequenzen und je mehr 
Schwingungsdurchgänge pro Bit desto einfacher und zuverlässiger wird die 
Demodulation.

von J. S. (engineer) Benutzerseite


Lesenswert?

Das geht nur mit zwei parallel generieren Wellen mit Phasenkompensation 
/-justierung und einer analogen Umschaltung. Hatte das mal für mehrere 
150MHz-Wellen, die sich um einige %te unterschieden.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Jürgen S. schrieb:
> Das geht nur mit zwei parallel generieren Wellen mit Phasenkompensation
> /-justierung und einer analogen Umschaltung.

Ja,koennte klappen. Aber so wie ich das seh' braucht man dann den einen 
Sinus in 2 Versionen (0/180) und den anderen in 4 (0/90/180/270) und 
sollte beim Umschalten auch immer brav den Nulldurchgang treffen...Dann 
brauchts auch noch ein paar Bit Schieberegister und etwas Logik, um das 
Umschaltsignal zu generieren. Mal abgesehen von der Frequenz ist man 
dann schon mal bei Minimum 3 (TTL artigen) ICs.

Ich wuerd' eher gucken, ob das nicht mit einem Filter klappt. Bei der 
Frequenz sollten LC Filter mit nicht zu exotischen Bauteilgroessen 
rauskommen koennen.
Vielleicht was Cauerartiges, mit jeweils einem Maximum im 
Durchlassripple bei 10 und 20MHz und Nullstellen bei 30MHz und irgendwo 
um 50..60MHz, jenachdem was dann noch mehr reinhaut. Gegen die im ersten 
Post angesprochene Phasenverschiebung hilft dann noch eine 
Gruppenlaufzeitkorrektur mit hoffentlich moeglichst wenig Allpaessen.
Wird halt auf ein paar lustige Stunden mit Spice rauslaufen.

Gruss
WK

von Steffen M. (steffenmauch)


Lesenswert?

Erstmal vielen Dank für die zahlreichen Antworten und Hinweise.

Ich glaube am besten wird es sein, wenn ich einen ICE40 CPLD mit einem 
DAC  mit 125MSPS oder schneller (z.B. AD9740) nehme. Damit kann ich 
gleich Pre-Emphasis machen und sogar eine Gruppenlaufzeit Korrektur 
während der Erzeugung.
Ich bin mir bewusst, dass ich dadurch ein Delay von Bitstrom zu dem 
Signal mit den Sinussignale bekommen.
Aber wenigstens kann ich so digital abstimmen.

@Joe F.: Wieso soll eine Demodulation fast unmöglich sein?

von Joe F. (easylife)


Lesenswert?

Steffen M. schrieb:
> Wieso soll eine Demodulation fast unmöglich sein?

Weil ich mir eine Frequenzerkennung anhand einzelner Halbwellen 
schwierig vorstelle, und das Signal ja vermutlich über irgend eine 
Strecke übertragen wird - mit entsprechenden Verzerrungen und anderen 
Störungen.

von Steffen M. (steffenmauch)


Lesenswert?

Joe F. schrieb:
> Steffen M. schrieb:
>> Wieso soll eine Demodulation fast unmöglich sein?
>
> Weil ich mir eine Frequenzerkennung anhand einzelner Halbwellen
> schwierig vorstelle, und das Signal ja vermutlich über irgend eine
> Strecke übertragen wird - mit entsprechenden Verzerrungen und anderen
> Störungen.

Ok klar, das ist schon wahr.
Ich mag den Weg auch nicht aber wie kann man sonst >15MBit über einen 
Übertrager schicken?

von Jobst M. (jobstens-de)


Lesenswert?

Steffen M. schrieb:
> aber wie kann man sonst >15MBit über einen
> Übertrager schicken?

Wie passiert es denn bei Ethernet? Bei Gigabit gehen 250MB/s durch jeden 
Übertrager der Netzwerkkarte.


Gruß

Jobst

von Blubb (Gast)


Lesenswert?

Jobst M. schrieb:
> Steffen M. schrieb:
>> aber wie kann man sonst >15MBit über einen
>> Übertrager schicken?
>
> Wie passiert es denn bei Ethernet? Bei Gigabit gehen 250MB/s durch jeden
> Übertrager der Netzwerkkarte.


Man sollte nur tunlichst darauf achten das man einen symmetrischen 
Datenstrom hat, um den Übertrager nicht in die Sättigung zutreiben..

von Hp M. (nachtmix)


Lesenswert?

Joe F. schrieb:
> Weil ich mir eine Frequenzerkennung anhand einzelner Halbwellen
> schwierig vorstelle,

Du brauchst doch nur die Abstände der Nulldurchgänge zu bestimmen.

Ebenso einafch geht die Generierung, indem man den Bitstrom durch zwei 
hintereinandergeschaltete Flipflops schickt -Schieberegister mag ich 
dazu gar nicht sagen-, und die beiden Bits in einen Analogmultiplexer 
schickt, der, abhängig von den vier möglichen Zuständen, positive oder 
negative, kurze oder lange Sinushalbwellen durchschaltet.

P.S.:
Derartige Modulationsverfahren sind ja nicht ganz neu: 
https://de.wikipedia.org/wiki/Modified_Frequency_Modulation

: Bearbeitet durch User
von Jobst M. (jobstens-de)


Lesenswert?

Blubb schrieb:
> Man sollte nur tunlichst darauf achten das man einen symmetrischen
> Datenstrom hat, um den Übertrager nicht in die Sättigung zutreiben..

Das wird man bei Ethernet wohl tun ... Deshalb mein Hinweis darauf.
Manchester, NRZ(I), ...


Gruß

Jobst

von Steffen M. (steffenmauch)


Lesenswert?

Jobst M. schrieb:
> Blubb schrieb:
>> Man sollte nur tunlichst darauf achten das man einen symmetrischen
>> Datenstrom hat, um den Übertrager nicht in die Sättigung zutreiben..
>
> Das wird man bei Ethernet wohl tun ... Deshalb mein Hinweis darauf.
> Manchester, NRZ(I), ...
>
>
> Gruß
>
> Jobst

Wenn man die Bitfolge von mir anschaut, sieht man dass der skizzierte 
Teil Manchester Codiert ist :)


Ist eigentlich ein Übertrager mit Mittelabgriff geeigneter als ohne 
Mittelabgriff?

von Axel S. (a-za-z0-9)


Lesenswert?

Steffen M. schrieb:
> Ich mag den Weg auch nicht aber wie kann man sonst >15MBit über einen
> Übertrager schicken?

Soll das die Aufgabenstellung sein? Dafür glaubst du eine solche Mimik 
mit Sinus(!)halbwellen zu brauchen? Das ist doch Quark!

Den Übertrager stören die Oberwellen gar nicht. Der überträgt die - im 
Rahmen seiner Möglichkeiten - einfach mit. Eine gewisse Tiefpaßwirkung 
wirst du schon durch die unvermeidlichen parasitären Elemente bekommen. 
Und womöglich wirst du ein Problem mit kapazitiver Kopplung bekommen; 
was aber meist nur bedeutet, daß der Trafo ungeeignet ist.

Vermutlich wirst du unter dem Gesichtspunkt EMI nicht um weitere Filter- 
maßnahmen herum kommen. Aber da reicht ein passiver Filter dicke. Im 
Gegenteil will man es mit der Filterei auch nicht übertreiben. Denn ein 
steiler Filter bewirkt auch eine frequenzabhängige Verzögerung, er 
verschiebt die Nulldurchgänge des Signals. Und weil da die Information 
drinsteckt, darf die Variation der Verschiebung nicht zu groß werden.

von Dergute W. (derguteweka)


Lesenswert?

Steffen M. schrieb:
> Ist eigentlich ein Übertrager mit Mittelabgriff geeigneter als ohne
> Mittelabgriff?

Das kannst nur du beantworten, denn nur du kennst deine Treiberschaltung 
fuer den Uebertrager, deine Energiebilanz, deine Leitungspegel, etc.

Insgesamt wird bei der Uebertragung der Empfangsteil viel mehr Aufwand 
sein, wenn da z.b. noch so Sachen reinmuessen, wie (adaptive) 
Leitungsentzerrung.

Aber fuer so ne popelige Uebertragung wuerd' ich kein so'n komisches 
Verfahren hernehmen. Eher 8b10b; das geht auch prima ueber Trafos 
drueber und hat gleich noch extra Gimmicks, wie neben 8-bit Uebertragung 
auch noch die Uebertragung von Steuerzeichen, Stuffing, etc. Wird z.b. 
auch bei ASI (270MBit/sec auf der Leitung) hergenommen.

Gruss
WK

von Steffen M. (steffenmauch)


Lesenswert?

Axel S. schrieb:
> Soll das die Aufgabenstellung sein? Dafür glaubst du eine solche Mimik
> mit Sinus(!)halbwellen zu brauchen? Das ist doch Quark!
>
> Den Übertrager stören die Oberwellen gar nicht. Der überträgt die - im
> Rahmen seiner Möglichkeiten - einfach mit. Eine gewisse Tiefpaßwirkung
> wirst du schon durch die unvermeidlichen parasitären Elemente bekommen.
> Und womöglich wirst du ein Problem mit kapazitiver Kopplung bekommen;
> was aber meist nur bedeutet, daß der Trafo ungeeignet ist.
>
> Vermutlich wirst du unter dem Gesichtspunkt EMI nicht um weitere Filter-
> maßnahmen herum kommen. Aber da reicht ein passiver Filter dicke. Im
> Gegenteil will man es mit der Filterei auch nicht übertreiben. Denn ein
> steiler Filter bewirkt auch eine frequenzabhängige Verzögerung, er
> verschiebt die Nulldurchgänge des Signals. Und weil da die Information
> drinsteckt, darf die Variation der Verschiebung nicht zu groß werden.

Nun, ich habe leider nicht einfach die Möglichkeit den Übertrager zu 
tauschen bzw. zu verändern. Und ja der Übertrager ist das eigentliche 
Problem: 0,4 Kopplungsfaktor und etwa 3,1uH Spuleninduktivität im 
Leerlauf.

von Jobst M. (jobstens-de)


Lesenswert?

Steffen M. schrieb:
> Wenn man die Bitfolge von mir anschaut, sieht man dass der skizzierte
> Teil Manchester Codiert ist :)

Abgesehen davon, dass diese Antwort an blubb ging: Nein, sieht man nicht 
unbedingt. Auch andere Signale können so aussehen.
Und wenn es so ist, warum schreibst Du das dann nicht gleich in Deine 
Beschreibung? Stattdessen ein Rumgehampel mit 25/50ns und 40/20MHz - ach 
ne: 20/10MHz ...


> Ist eigentlich ein Übertrager mit Mittelabgriff geeigneter als ohne
> Mittelabgriff?

Das kommt auf Deinen Treiber an.


Gruß

Jobst

: Bearbeitet durch User
von Joe F. (easylife)


Angehängte Dateien:

Lesenswert?

Jobst M. schrieb:
> Und wenn es so ist, warum schreibst Du das dann nicht gleich in Deine
> Beschreibung? Stattdessen ein Rumgehampel mit 25/50ns und 40/20MHz - ach
> ne: 20/10MHz ...

Ärgert mich ebenfalls, muss ich mal sagen. Jedesmal eine ziemliche 
Zeitverschwendung.

Die Daten gehen locker über deinen Übertrager. Du musst halt auf 
Senderseite (und möglichst auf der Empfängerseite) ein bisschen 
anpassen. Dein Signal wird schon von selbst "schön" rund.

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
Noch kein Account? Hier anmelden.