Hi, ich möchte DiseqC-Telegramme mit einem Mikrocontroller aufzeichnen. Es handelt sich um 22 kHz-Pakete, die der Versorgungsspannung 14V bzw. 18V aufmoduliert sind. Ich habe eine entsprechende Schaltung gefunden (siehe Anhang), dem Signal habe ich mit Widerständen einen Offset von ca. 1,5V gegeben. Im Prinzip muß ich "nur" die Breite der Pulspakete messen um 1 und 0 zu detektieren. Aber mit der Schaltung habe ich leider kein Digitalsignal und muß es dann wohl oder übel mit ADC-Eingang schnell abtasten. Ich habe Bedenken, daß dies so ohne weiteres geht... Gäbe es eine Möglichkeit, aus dem Analogsignal ein 22 kHz-Digitalsignal zu erzeugen? Oder noch besser, eine Schaltung die mir die Paketlänge (0,5 ms / 1 ms) als Digitalsignal zur Auswertung zur Verfügung stellt. Es scheint kein IC auf dem Markt zu geben, das das Ganze schon selbst macht. Von ST gibt es zwar den STM8SPLNB1 (DiSEqC slave microcontroller for SaTCR based LNBs and switchers), aber hier scheint es nicht möglich zu sein, die Telegramme an einen übergeordneten Mikrocontroller zu übergeben. LG Thomas
Thomas schrieb: > mit einem Mikrocontroller Welchem? > Aber mit der Schaltung habe ich leider kein Digitalsignal > und muß es dann wohl oder übel mit ADC-Eingang schnell abtasten. Du hast sehr viele Möglichkeiten, und dies ist eine der schlechtesten (vllt. grad noch besser als eine Röhrenschaltung). Am Einfachsten wäre ein schneller Komparator, entweder im µC integriert oder ein externer. > 22 kHz-Digitalsignal Was soll das bitte sein? ein Digitalsignal mit 22kBaud? oder ein sehr viel langsameres das auf einen 22kHz Träger aufmoduliert ist? Und ist das das einzige Signal auf der Leitung? > aber hier scheint es nicht möglich > zu sein, die Telegramme an einen übergeordneten Mikrocontroller zu > übergeben. nur ganz kurz draufgeschaut, das kann wohl IIC als slave. musst du selber das Datenblatt lesen und rausfinden ob du alles auslesen kannst was dich interessiert.
Könnte eventuell auch gehen (rechter Teil im Bild der Schaltung) https://www.maximintegrated.com/en/design/technical-documents/app-notes/5/5339.html
K. S. schrieb: > oder ein sehr > viel langsameres das auf einen 22kHz Träger aufmoduliert ist? Ja, AM, 0,5Vpp. > Und ist > das das einzige Signal auf der Leitung? DC (14/18V) und HF (1-2GHz) noch.
Moin, Einfach mal hier gucken, da gibts doch was aus erster Hand: https://de.eutelsat.com/en/support/technical-support/diseqc.html .z.b. in der "App.Info for LNBs and Switches" Fig. 2 oder 3... Gruss WK
Dergute W. schrieb: > Einfach mal hier gucken, da gibts doch was aus erster Hand: > > https://de.eutelsat.com/en/support/technical-support/diseqc.html > > .z.b. in der "App.Info for LNBs and Switches" Fig. 2 oder 3... Guter Vorschlag!
Moin Thomas, Einfach: atmega diseqc generator project In google.com eingeben? Einfache DiSEqC Generatoren auf AVR basis mit Firmware zum selbermachen. Teddy
Leider nur das Gegenstück zum Gesuchten: https://www.richtek.com/assets/product_file/RT5047/DS5047-00.pdf das ist allerdings für den umgekehrten Fall, wenn man ein DiSEqC-Signal auf eine Spannung aufmodulieren will. Wird im MiniToiunerPro benutzt https://boutique.r-e-f.org/kits-et-composants/205-minitiounerpro-avec-nim.html
vielen Dank für Eure Antworten! Ich habe Fragen zu den Schaltungen im Anhang: 1. Diodentyp: ist wohl mit der zweiten Schaltung beantwortet 2. PCB-Track. Wie lege ich diese aus? Es wird angegeben, daß diese 1/4 der Wellenlänge von 1...2 GHz sein soll. 1 GHz: 1/4 Wellenlänge = 75 mm 2 GHz: 1/4 Wellenlänge = 37,5 mm Was nehme ich da, einen Mittelwert? Muß ich etwas beachten beim Routen (Leitungsabstand, ...)?
Christoph db1uq K. schrieb: > Leider nur das Gegenstück zum Gesuchten: Das gibt es von verschiedenen Herstellern wie auch z.B. von ST. Nur einen fertigen Empfänger scheint es nicht für 22 kHz zu geben.
Hallo, hinz schrieb: > hinz schrieb: >> NE567 > > Übrigens auch als LM567 bekannt. Dein Vorschlag scheint kein Interesse zu finden, obwohl es wohl auch meine erste Wahl wäre. Gruß aus Berlin Michael
Michael U. schrieb: > Hallo, > > hinz schrieb: >> hinz schrieb: >>> NE567 >> >> Übrigens auch als LM567 bekannt. > > Dein Vorschlag scheint kein Interesse zu finden, obwohl es wohl auch > meine erste Wahl wäre. Macht doch nichts. Er wird das Hühnerfutter parat haben, die PLL müsste er wohl bestellen.
LM567 sieht auch sehr interessant aus. Werde mal etwas Bastelmaterial bestellen und ausprobieren, welche Schaltung für mich am besten geeignet ist. Kann man anstelle der Leiterbahninduktivität keine Mini-Drossel verwenden?
Thomas schrieb: > 1. Diodentyp: ist wohl mit der zweiten Schaltung beantwortet Ist unkritisch. > 2. PCB-Track. Wie lege ich diese aus? Es wird angegeben, daß diese 1/4 > der Wellenlänge von 1...2 GHz sein soll. > 1 GHz: 1/4 Wellenlänge = 75 mm > 2 GHz: 1/4 Wellenlänge = 37,5 mm > Was nehme ich da, einen Mittelwert? Muß ich etwas beachten beim Routen > (Leitungsabstand, ...)? Du hast doch eine Vorlage, kupfer ab.
Thomas schrieb: > Kann man anstelle der Leiterbahninduktivität keine Mini-Drossel > verwenden? Könnte man, aber 100nH sind wenig gängig.
Der Vorschlag oben "...Generator" ist auch für den umgekehrten Fall (für den ich noch eine Lösung suche, um meinen Mini-Tiouner an der Sat-Antenne betreiben zu können.) Wie schnell kann der 567 schalten, reicht das für die Baudrate? Ich hatte den vor vielen Jahren für 50 Baud Funkfernschreiben benutzt, das hat gut funktioniert. EIn "schwimmender" Komparator, der seinen Vergleichspegel aus dem mittleren DC-Pegel des Signals gewinnt wäre vielleicht zweckmäßig. Ich dachte erst, Maxim macht das, aber da liegt er fest auf dem Ref-Pegel 1,18V. Ein Schmitt-Trigger nach der Hochpass-Auskopplung ist sicher nicht falsch. Zur Demodulation würde vielleicht ein Monoflop mit ca. 0,75ms reichen. Wenn der Pegel nach der Zeit noch gleich bleibt ist es ein 1ms-Puls, sonst einer mit 0,5ms.
Gibt es irgendwo eine Doku wie das Protokoll von USALS ist? Mich würde interessieren, wie Längen- und Breitengrad des Standorts da rein berechnet wird. Oder ist das Betriebsgeheimnis der Fa. Stab in Italien?
So verstehe ich auch die Modulation: aus: https://www.spaun.com/files/8df79_de_DiSEqC_fur_Techniker_.pdf gefunden über https://de.wikipedia.org/wiki/Digital_Satellite_Equipment_Control Ein Bit dauert 1,5ms: 22 Schwingungen mit 22kHz und 11 Schwingungen Pause sind ein low-Bit, 11 Schwingungen mit 22kHz und 22 Schwingungen Pause sind ein high-Bit, und das ergibt 667 Bit pro Sekunde
:
Bearbeitet durch User
Thomas schrieb: > Oder ist das Betriebsgeheimnis der Fa. Stab in Italien? Nö, das ist viel trivialer. Der Benutzer gibt seinen Standort in den Receiver ein. Zitat aus http://vdr-wiki.de/wiki/index.php/DiSEqC "Bei entsprechenden Receivern genügt die Eingabe der geografischen Position"...
Es gibt auch Rolladenmotoren mit GPS-Empfäger, die wissen den Standort ohne Eingabe des Benutzers. Aber deutlich billiger geht es über die Postleitzahl. Noch eine simple Idee, ein Doppel-Monoflop, nachtriggerbar. Das erste wird von den 22kHz getriggert und fällt in der Pause ab, das zweite detektiert davon getriggert wie schon beschrieben das Bit.
Matthias S. schrieb: > "Bei entsprechenden Receivern genügt die Eingabe der geografischen > Position"... Und genau diese Berechnung die der Receiver macht, möchte ich gerne wissen. Hintergrund: Ich habe 4 Satschüsseln, 2 davon mit USALS-Motor, deren Signale alle auf verschiedene Sat-Receiver gehen. Ich möchte die Bewegung der Antennenschüsseln mit einem zentralen Gerät steuern. Das Senden von Signalen an den Motor geht schon problemlos, aber ich benötige eine Möglichkeit, die Signale aufzuzeichnen, die normalerweise der Sat-Receiver sendet. Ich muß ja genau wissen was ich an den Motor senden muß, wenn ich verschiedene Satelliten abfahren möchte. Ich habe folgende Eingangsparameter: * Längengrad * Breitengrad * Position des Satelliten (z.B. 19° Ost) Und aus diesen 3 Parametern möchte ich das USALS-Protokoll berechnen. Falls es nicht offengelegt ist, muß ich halt für meinen aktuellen Standort die Daten aller gewünschten Satellitenpositionen auslesen und fest im Programm hinterlegen. Bei einem Umzug dann entsprechend anpassen, falls es gravierende Abweichungen der Koordinaten vom Standort gibt.
Das DiseqC-Aufzeichnungsgerät benötige ich später auch bei der Fehlersuche, wenn mal was nicht geht. Mit dem Oszilloskop die Werte abzulesen ist ein ziemliches Gefummel. Eine Aufzeichnung mit Mikrocontroller ist die Ideallösung. Dann kan nich die Protokolle auf einem großen Display anzeigen oder auf der Schnittstelle an den PC senden.
Thomas schrieb: > Was nehme ich da Im Prinzip: Die Realisation, die auf deinem Basismaterial (Epoxy, also je nach Feuchtigkeitseinlagerung) die beste Dämpfung bei 1-2GHz bringt und die geringste bei 22kHz (sowieso fast 0). Weil man solche selbstgebauten Spulen also (mit einem NWA) messen müsste, nimmt men fertige (SMD Chip Spule mit Datenblatt das die Dämpfung bei 1-2GHz zeigt).
Moin, Thomas schrieb: > Das DiseqC-Aufzeichnungsgerät benötige ich später auch bei der > Fehlersuche, wenn mal was nicht geht Fuer sowas taet' ich dann aber tatsaechlich per ADC eines µControllers die LNB-Leitung samplen lassen. Ggf. Umschaltbar, um DC zu messen und auch den Pegel/Frequenz der diseqc Bursts. iirc ist grad' so Zeugs, wie zu kleiner Pegel, Sauereien beim Ein- oder Ausschalten oder grob daneben liegende Frequenz der Bursts eine Ursache fuer komisches Verhalten. Gruss WK
Es gab da mal einen guten Artikel inkl. Firmware für einen 16F628 hier: https://www.elektormagazine.com/magazine/elektor-200609/18370
Leider sind im Original keine Maßangaben, nur ein Printfile als PDF, ich nehme an auf DIN A4: http://juras-projects.net/files/diseqcconv_board.pdf Ich bin nicht sicher, ob der Drucker das 1:1 gedruckt hat, es sind hier jedenfalls 48*68 mm. Daraus folgt eine Länge eines Mäanderstücks von etwa 10 mm.
diseq schrieb: > Es gab da mal einen guten Artikel inkl. Firmware für einen 16F628 hier: > > https://www.elektormagazine.com/magazine/elektor-200609/18370 Das Problem ist, daß es nur auf einem kleinen Display ausgegeben wird und man kann es nicht lesen, wenn mehrere Signale kurz nacheinander kommen. Habe das vor einigen Monaten auch gesehen und extra ein Abo bei Elektor abgeschlossen. Der Link für das Projekt geht aber nicht, weil die ihre Internetseite total umgestellt haben und dadurch einige tote Links erzeugt haben. Es kam die Email-Rückmeldung, daß es in 4 Wochen gehen sollte, aber es geht bisher immer noch nicht. Auf die letzte Email vor 20 Tagen habe ich nicht einmal eine Antwort von Elektor erhalten. Mir wäre es lieber, wenn die Protokollinfo per UART raus geht und nicht aufs kleine Display.
Der Assembler-Sourcecode von Elektor, mit "cream" und pic-syntax-highlighting gedruckt. 4Mhz-Quarztakt steht darin, ein Großteil ist Display-Ansteuerung. Es wird anscheinend Interrupt benutzt, habs noch nicht näher betrachtet.
Danke für den Assembler-Sourcecode. Ich muß mich erst mal rein denken, habe die letzten 22 Jahre kein Assembler mehr programmiert.
Ich habe die Schaltung von Eutelsat verwendet und sie geht auch soweit. Da ich kein Monoflop (NE555) da habe, habe ich das Monoflop-Ausgangssignal per Software realisiert: * High wenn erste Flanke kommt * Low, wenn 60 µs keine positive Flanke mehr kam. Der High-Impuls ist dadurch etwas länger, macht aber nichts. Geht auch soweit. Man hat nun Impulse von ca. 0,5 ms bzw. 1 ms Breite. Wie macht man am besten die Auswertung der Impuls-Zeiten um herauszufinden ob es ein High- oder Low-Signal ist? Nur anhand der Breite der High-Signale? Oder zusätzlich Auswertung der Low-Zeit? Ich würde es so machen: Bei steigender Flanke einen Zähler löschen und bei fallender Flanke den Zähler auslesen? Auflösung des Zählers wäre in meinem Fall 10µs. Dann die Werte in ein Array schreiben und anschließend mit einer Funktion das Array auswerten, dabei prüfen, ob das Paritybit stimmt.
Thomas schrieb: > Auflösung des Zählers wäre in meinem Fall 10µs. Ich meine damit, daß der Zähler alle 10µs um 1 hochgezählt wird.
Christoph db1uq K. schrieb: > Leider sind im Original keine Maßangaben, nur ein Printfile als PDF, ich > nehme an auf DIN A4: > http://juras-projects.net/files/diseqcconv_board.pdf > Ich bin nicht sicher, ob der Drucker das 1:1 gedruckt hat, es sind hier > jedenfalls 48*68 mm. Daraus folgt eine Länge eines Mäanderstücks von > etwa 10 mm. Du hast doch den Chip und irgendwelche Stiftleisten, damit kannst du die Größe ja abgleichen. Sascha
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.