Verstärker mit geringer Leistung für 433-MHz-Wake-Up-Empfänger

Ich entwerfe eine Low-Power-Wakeup-Receiver-Schaltung (WuRx), die zum Aufwecken eines Arduino und seines 433-MHz-Transceivers verwendet wird, die beide viel zu viel Strom (zig Milliampere) ziehen, um an jedem Remote-Knoten weiterzulaufen. Das Ziel ist die Entwicklung eines Weckempfängers/Detektors mit geringem Stromverbrauch, der Arduino (oder jede schlafende MCU) aufweckt, wenn ein HF-Wecksignal vorhanden ist. Das HF-Wecksignal besteht aus einer Reihe kurzer OOK-Impulse vom Sender.

Ich muss das UHF-Signal von seinem Zehn-Mikrovolt-Antennenpegel auf mindestens 100 Millivolt bis 1 Volt verstärken, um die HF-Hüllkurve über einen einfachen Diodengleichrichter zu erkennen, der dann einen Komparator auslöst, der während OOK (HF vorhanden) anzeigt ( Ein-Aus-Tastung). Diese Impulse werden dann unter Verwendung einiger Flip/Flops oder eines Zählers innerhalb eines gegebenen Zeitfensters gezählt, um ein gültiges Aufwecksignal zu erkennen.

Ich habe umfangreiche Untersuchungen zu diesen Weckempfängern und dem Stand der Technik durchgeführt. Herkömmliche Umwandlung von HF in ZF führt aufgrund des LO-Stroms zu einem zu hohen Ruhestrom. Dies hat mich zu dem Schluss geführt, dass ein HF-Verstärker mit niedriger Leistung, der von einem Keramik-Bandpassfilter gespeist wird, dieses Problem lösen kann.

Da dies einfach ein HF-Aufweckdetektor ist, ist die Linearität während der Verstärkung viel weniger wichtig als ein sehr niedriger Ruhestrom, wenn keine HF vorhanden ist. Diese Slave-Sensoren im IoT-Stil befinden sich normalerweise 99,999 % der Zeit im Leerlauf und müssen nur für einige zehn Millisekunden aufgeweckt werden, wenn der Master sie abfragt.

Der Ablauf sieht in etwa so aus:

Antenne -> Bandpassfilter -> RF Amp -> OOK Envelope Detector -> Wakeup Interrupt to Arduino -> Transceiver Wakeup -> Rx Data -> Process Rx Data -> Back to Sleep

Mein Problem besteht darin, die Stromentnahme des Ruheverstärkers zu minimieren (idealerweise auf Nanoamp-Niveau) und dennoch das Mikrovoltsignal ausreichend zu verstärken, sobald es vorhanden ist und aus dem Bandpassfilter kommt. Die Gesamtstromaufnahme des Verstärkers bei vorhandenem HF-Signal kann einige Milliampere betragen. Ich denke, mehrere 15-dB- bis 20-dB-Verstärkungsstufen in Reihe, um eine 10.000- bis 100.000-fache Signalverstärkung zu erzielen, sollten ausreichen. zB 10 uV bis 100mV - 1V.

Ich schaue mir LNA-Transistoren wie den BFP720 an, einen rauscharmen Silizium-Germanium-BJT, bin aber bereit, alle kostengünstigen Optionen in Betracht zu ziehen. Niedrige Kosten und geringer Platzbedarf sind ebenfalls Faktoren, aber ein niedriger Ruhestromverbrauch bei 3-V-Batterieleistung ist entscheidend.

Ich habe Klasse-C-Verstärker mit Resonanzkreisen ausprobiert, aber Simulationen schlagen fehl (unter Verwendung des SystemVision-Simulators), da Eingangssignale mit niedrigem Pegel (Millivolt) zu klein sind, um dem Transistor das Leiten zu ermöglichen. Welche Art von Verstärker kann ich verwenden, der einen sehr niedrigen Ruhestrom hat und dieses winzige UHF-Signal verstärken kann?

Wenn ich das herausfinden kann, wird es vielen Leuten helfen, die Schwierigkeiten haben, diese Art von Weckproblem mit geringem Stromverbrauch zu lösen.

Danke im Voraus für die Anleitung.

Ich glaube nicht, dass du einen finden wirst. Aber für (relativ) einfache Empfänger mit geringem Stromverbrauch können Sie sich superregenerative Schaltungen ansehen.
Selbst wenn Sie dies zum Laufen bringen, würde ich mir Sorgen über falsche Aktivierungen machen, die den Prozessor häufig aufwecken und Strom kosten. Schlimmer noch, viele verfügbare Super-Regenerationen für Datenanwendungen schalten in Abwesenheit eines echten Signals von einer Schiene zur anderen um und gehen davon aus, dass Software auf einer netzbetriebenen MCU nach Bedeutung sucht.
Stört es Sie also nicht, von einem Signal aufzuwachen, das dieses BW teilt?
Ich plane, eine Reihe von Ein-Aus-Tastimpulsen zu benötigen, um die MCU aufzuwecken. Andere Signale, Rauschen usw. sollten ignoriert werden, wenn sie nicht mit dem erforderlichen Aufwachmuster übereinstimmen. Sobald ich das OOK-Signal decodieren kann, kann ich ein eindeutiges Aufwachmuster verwenden, das vom OOK-Sender erzeugt wird.
@rbraddy und was wird die Sequenz decodieren? Traditionell ist dies die Aufgabe der MCU, also haben Sie hoffentlich eine sehr feinkörnige Sleep/Wake-Auflösung. Leider schalten Regens oft ziemlich häufig um, wenn kein Signal vorhanden ist - Sie würden fast so etwas wie einen Hardware-Timer benötigen, der nur dann einen Wake-Interrupt generiert, wenn er vor dem Überlaufen keinen Übergang erhält.
Ich werde mich mit der Dekodierung befassen, sobald ich eine Verstärkerlösung mit geringer Leistung habe. Es gibt viele Möglichkeiten, diese Mustererkennung durchzuführen.

Antworten (4)

Dies ist ein weiteres "keine Antwort" :) Ich habe nicht genug Erfahrung, um eine Schaltung vorzuschlagen.

Es gibt Hunderte von Single-Supply-Operationsverstärkern mit sehr geringem Stromverbrauch (bis zu 300 nA). Haben Sie diese anstelle von Transistoren in Betracht gezogen?

Darüber hinaus kann derselbe Operationsverstärker Teil eines aktiven Bandpassfilters werden, wodurch die Anzahl der Komponenten und der mögliche Stromverbrauch reduziert werden.

AKTUALISIEREN

Bezüglich der Adressdecodierung ist hier eine Idee eines Protokolls, das mit einfachen Logikkomponenten einfach zu implementieren sein sollte:

  • Der Sender codiert die Zieladresse wie folgt:
    1. Knoten-IDs werden aus einer Teilmenge natürlicher Zahlen mit weniger aufeinanderfolgenden "1"en als die gewählte "Trigger"-Länge ausgewählt. Nehmen wir an, der Trigger ist 4 Bit lang.
    2. Es wird "0" übertragen, gefolgt von der Knoten-ID, wobei Pulse mit zwei unterschiedlichen Längen verwendet werden. Nehmen wir an, langer Impuls für "1" und kurzer Impuls für "0".
    3. Es wird „0“ gesendet, gefolgt vom „Trigger“ als Gruppe von „1“, z. B. „01111“
    4. Beachten Sie, dass die Sendefrequenz konstant ist, sodass auf kürzere Impulse längere Pausen und vv folgen
  • Der Empfänger ist mit einem monostabilen Multivibrator verbunden, der durch eine steigende Flanke eines Signals ausgelöst wird. Multivibrator erzeugt Impulse, die länger als "0" und kürzer als "1" sind.
  • Die fallende Flanke des Multivibrators wird als Takt für das Schieberegister verwendet, während der Empfängerausgang als Dateneingang verwendet wird.
    1. Das Endergebnis ist, dass das Schieberegister die Knoten-ID, 0 und den Trigger enthält.
    2. Das Register hat zu keinem Zeitpunkt 4 aufeinanderfolgende „1“-en, bis das gesamte Paket empfangen wurde.
  • Die Triggerbits eines Registers sind mit einem UND-Gatter verbunden. Die Adressbits werden mit den Adressauswahl-DIP-Schaltern mit XNOR-Gattern (oder XOR, spielt keine Rolle) verglichen, und die Ausgänge werden demselben UND-Gatter zugeführt. Der Ausgang des Gatters ist ein Wecksignal.

Dieser Ansatz hat den Vorteil einer festen Paketlänge und keine Notwendigkeit für einen synchronen Takt. Eine 8-Bit-Adresse kann mit nur 3-4 ICs implementiert werden. Unten ist ein vereinfachtes Diagramm.

Geben Sie hier die Bildbeschreibung ein

Der Ausgang kann zum Aufwecken oder zur Steuerung des Netzschalters verwendet werden. Mit Netzschalter läuft die MCU, bis Sie eine andere Adresse senden. Mit Aufwecken können Sie der MCU-Logik "Wartezeit" hinzufügen, dann mehrere von ihnen aufwecken und gleichzeitig an alle senden.

Oh, und alle Signale können natürlich invertiert werden. Beispielsweise kann das Vorhandensein eines HF-Trägers verwendet werden, um die Dekodierungslogik einzuschalten, und dann werden Aus-Impulse die Adresse übertragen.

AKTUALISIERUNG 2

Ich war gerade dabei, einige zusätzliche Gedanken einzugeben, als ich diesen Link in den Kommentaren sah. In der Tat sehr interessant zu lesen, für sich genommen und auch einige Referenzen. Es hat dazu beigetragen, dass sich diese Gedanken in diesen zentralen Designpunkten herauskristallisiert haben:

  • Für diese Anwendung ist das Design der HF-Stufe genauso wichtig wie die Auswahl der Low-Power-Komponenten. Alle bekannten Tricks zur Maximierung des Antennengewinns sollten angewendet werden. Beispielsweise erhöht eine Richtantenne den Empfang vom Master-Knoten, während gleichzeitig Interferenzen erheblich reduziert werden, wodurch falsches Aufwachen minimiert wird.

  • Stufenweise Energieverwaltung. Dies bedeutet, dass die Signalverarbeitung in mehrere Schritte nach Leistungsanforderungen aufgeteilt wird, sodass die Leistung an die nächste Stufe nur angelegt wird, wenn das Signal die Kriterien der vorherigen Stufe erfüllt. Von der Verwendung von Komparator und SPI-Schnittstelle im Artikel bin ich nicht besonders beeindruckt. Beide benötigen Strom zu früh in der Verarbeitungskette. So wie sie die Präambel verwenden, um den Prozessor aufzuwecken, kann das Vorhandensein eines HF-Trägers für einen bestimmten Zeitraum als Kriterium zum Einschalten des Komparators verwendet werden. Die Ausgabe des Komparators und des Präambeldetektors kann verwendet werden, um die Adressdecodierungslogik einzuschalten, und so weiter.

  • Integriertes HF-Signal. Spannungsverdoppler ist gut, aber warum hier aufhören? Es könnte möglich sein, mehrere Dioden oder MOSFETs zu verwenden, um eine Ladungspumpe mit genügend Leistung zu bauen, um Ihre Entfernungsanforderungen zu erfüllen. Die Grundidee hier ist, dass das Opfern der Datenrate durch Erhöhen der Impulsdauer es der HF-Stufe ermöglicht, Spannung auf nützliche Pegel aufzubauen. Dies bedeutet auch, dass eine invertierte OOK-Modulation (dh Verwendung von Pausen als Datenpulse) vorzuziehen ist. So gering der Stromverbrauch der MCU auch sein mag, die Adresserkennung mit Logikchips ist möglicherweise immer noch effizienter und kann schneller durchgeführt werden (MCUs benötigen normalerweise Hunderte von Zyklen, um aus dem Tiefschlaf aufzuwachen).

Toller Punkt. Ich habe mir Operationsverstärker nicht genau angesehen, da ich davon ausgegangen bin, dass sie die UHF-Frequenzen nicht verarbeiten würden, aber es ist sinnvoll, sie genauer zu betrachten.
Ah ich sehe. Nun, es gibt Operationsverstärker mit GBWP bis zu 18 GHz, aber dann werden Sie ungefähr 0,9 mA sehen. Andererseits können Sie absichtlich einen Operationsverstärker mit niedrigerem GBWP wählen, um die Tiefpassseite des Bandpassfilters einzurichten.
Ich sehe dasselbe. Die Stromaufnahme des UHF-GBWP-Operationsverstärkers liegt weit über dem, was ich benötige, nämlich ein paar Mikroampere Leerlaufstrom ohne vorhandene HF.
Na, dann streich das mal. Anstelle von Glück mit OpAmps habe ich einige Gedanken zur Adressdecodierung hinzugefügt :)
Wir kommen hier ins Baseballstadion. Diese Diskussion über Operationsverstärker und Adressdecodierung hat mich zu einem Artikel aus dem Jahr 2011 geführt, in dem dieses Problem ohne eine HF-Verstärkerstufe unter Verwendung von Schottky-Dioden in einer Spannungsverdoppler-Detektorkonfiguration gelöst wurde. elucidare.co.uk/assignments/project_WUR/05992833.pdf
In diesem Fall sorgte ein SAW-Filter für die 433-MHz-Bandpassfilterung, gefolgt vom Spannungsverdoppler-Diodendetektor, der einen Komparator ansteuert. Der Komparator wandelt dann das erkannte HF-Signal in eine Reihe von Impulsen um, die dann zur Validierung in SPI übersetzt werden. Unter Verwendung des Maples-Schieberegisters oder einer ähnlichen Speicherwarteschlange gibt es eine Möglichkeit, die empfangene Signatur über SPI in die Warteschlange zu stellen, um von einer PIC12LF1822-MCU mit geringer Leistung validiert zu werden, dann die Haupt-MCU aufzuwecken und den Transceiver mit voller Leistung zu starten. Basierend auf diesem Papier konnten sie -51-dBm-Signale erkennen. Ich benötige möglicherweise noch einen HF-Verstärker für -87 dBm
Bei den Nanopower-Operationsverstärkern beträgt das höchste GBWP, das ich bei diesen Leistungsstufen finden konnte, 100 kHz. Es ist ziemlich klar, dass Nanopower und UHF nicht zusammenpassen, zumindest nicht normalerweise.
Basierend auf einigen schnellen Berechnungen sieht es so aus, als würde der Spannungsverdoppler, der -51-dBm-Signale erkennen kann, bis zu 60 Meter bei den maximal zulässigen 433-MHz-ISM-Leistungspegeln funktionieren. Ich wollte 100 Meter unterstützen, kann aber mit 60 Metern Reichweite leben (oder Antennengewinn oder Sendeleistung erhöhen). Das sieht also ohne den Mikroleistungs-UHF-Verstärker aus, was heute nicht machbar erscheint. Wenn jemand eine Low-Power-UHF-Vorverstärkeroption findet, würde ich gerne davon hören. Das war das primäre Ziel, als ich diesen Beitrag begann, aber das war sehr hilfreich. Danke euch allen.
Vielen Dank für das Teilen dieses Links. Viele interessante Referenzen dort. Ich habe der Antwort einige Kommentare hinzugefügt.
Stimme allen Kommentaren zu Maple Update 2 zu. Eine Richtantenne am Sender mit ausreichender Verstärkung kann die Notwendigkeit der HF-Verstärkerstufe vollständig eliminieren! Die Ladungspumpe kann die Empfindlichkeit weiter erhöhen, gekoppelt mit "Morsecode"-ähnlicher Signalisierung (längere Impulse/Abstände) und ein gestuftes Energiemanagement können den Stromverbrauch möglicherweise weiter reduzieren, gekoppelt mit diskreter Logik anstelle von MCU. Ich glaube, dass dies mein ursprüngliches Problem tatsächlich gut löst, sodass ich den (scheinbar) technisch nicht machbaren Leistungsverstärker mit niedriger Ruhe nicht mehr benötige!
Leider habe ich nicht genug Reputationspunkte, um dieses Problem überhaupt als gelöst zu markieren, indem ich für die Antwort von Maple stimme. Vielleicht kann mir jemand dabei helfen?
Tut mir leid, dass ich Ihre Antwort @Maple entführt habe, aber können Sie mir sagen, mit welcher Software Sie dieses schöne Blockdiagramm gezeichnet haben?
LOL Microsoft Office Word 2007 :D
Hoppla! Ich hatte auf etwas Zweckmäßigeres gehofft. Aber es scheint, dass Sie es ganz gut machen können, wenn Sie die Zeit und das Können haben.

Ich habe dieses Problem für ein kommerzielles Produkt gelöst, an dem ich mit einem CC1101-Transceiver gearbeitet habe, obwohl andere ähnliche Geräte auch funktionieren würden. Das Gerät war batteriebetrieben und benötigte eine Lebensdauer von mehr als 5 Jahren von einer einzigen Zelle.

Das empfangende Gerät würde seinen Transceiver alle 2 Sekunden im RX-Modus einschalten, eine Weile warten und ihn dann ausschalten. Der CC1101 hat dafür eine eingebaute Funktion, aber der Arduino könnte es auch manuell machen.

Die Weckzeit für den Transceiver wird so gering wie möglich gehalten, IIRC lag bei ca. 20ms. Gerade lange genug, damit sich der Oszillator stabilisiert und ein Wecksignal empfangen wird.

Der Sender würde ein 2,5 Sekunden langes Wecksignal senden, das aus 0x55 Bytes besteht. Der Grund für die Wahl von 0x55 ist, dass es abwechselnd 1 und 0 binär ist, und mit RF müssen Sie die Anzahl der Einsen und Nullen für die meisten Übertragungsschemata ausgleichen. Soweit ich mich erinnere, wurde der Standard-FSK-Modus des CC1101 verwendet.

Der 2,5-Sekunden-Burst überlappt garantiert die 2-Sekunden-periodische Prüfung auf Wecksignale. Nach dem Aufwachen wartet der Empfänger auf Befehle und schläft dann wieder ein.

Ich kann mich nicht an die genauen Zahlen für den Stromverbrauch erinnern, aber mit diesem Schema, das 24 Stunden am Tag läuft, betrug die Batterielebensdauer bei einer 4000-mAh-Zelle weit über 5 Jahre, und das beinhaltete alle anderen Arbeiten, die das Gerät regelmäßig erledigen musste. Ich denke, dass die Funkseite ungefähr ein Drittel des gesamten Energiebudgets ausmachte.

Dies ist keine Lösung für Ihr Problem mit dem Weckempfänger, aber haben Sie darüber nachgedacht, es umgekehrt zu machen?

Sie haben von einem Master-Knoten gesprochen, also nehme ich an, Sie haben eine Sterntopologie mit einem Master-Knoten ohne Strombedarf und mehreren Slave-Knoten mit strengen Stromanforderungen?

Anstatt die Slaves mit dem Master abzufragen, wecken Sie die Slaves einfach regelmäßig mit einem Low-Power-Timer, der auf der MCU läuft, und übertragen die Daten an den Master, der immer zuhört?

Vorteile:

  • Kein Weckempfänger erforderlich
  • Schlafstromverbrauch im Mikrowattbereich
  • kein falsches Aufwachen

Nachteile:

  • Die Slave-Knoten können nicht außerhalb ihres regulären Übertragungszeitplans abgefragt werden
Ja, das Problem dabei ist die Latenz der Möglichkeit, eine unaufgeforderte Nachricht nach einer knotenzeitgesteuerten Übertragung in ein Empfangsfenster zu schieben. Möglicherweise können Sie jedoch auf eine Sekunde oder weniger herunterkommen. Mit einer guten Taktsynchronisierung können Sie die Knotenübertragungen möglicherweise weniger häufig als die Empfangsfenster machen oder sie nur durchführen (oder eine Art zeitliche Suche nach Empfangsfenstern), wenn ein erwarteter Herzschlag in einem gelegentlichen Fenster nicht empfangen wird. Wenn das System jedoch die Synchronisierung verloren hat, kann die Latenz extrem sein , da zuerst der Synchronisierungsverlust erkannt werden muss und dann eine erneute Synchronisierung erfolgen muss.
Polling benötigt viel zu viel Energie. Jedem Knoten wird nur ein paar Mal pro Stunde befohlen, sich zu ändern, dann vielleicht überhaupt nicht für ein oder zwei Wochen. Polling wird die Batterie an jedem Knoten massiv durchnässen. Der Master sendet gleichzeitig an alle Knoten, wodurch die Leistung weiter reduziert wird.
Sie haben Recht, aber ich denke, es hängt alles von Ihren Latenzanforderungen ab. Wenn Ihre Schaltung z. B. alle 20 Sekunden für 20 ms 20 mA zieht, entspricht dies einem durchschnittlichen Stromverbrauch für die Abfrage von nur 20 uA.
Ja, die Latenz darf nicht länger als ein paar Sekunden sein, wenn der Benutzer mit dem System beschäftigt ist.

Nach weiterem Graben habe ich herausgefunden, was die Antwort auf die ursprüngliche Frage zu sein scheint - welche Art von Verstärker hat einen niedrigen Ruhevorspannungsstrom, der ein winziges UHF-Signal verstärken kann. Die Antwort erweist sich als nicht offensichtlich und ergab sich aus der RFID-Tag-Forschung:

Quantentunnel-Reflexionsverstärker.

Laut dieser Dissertation von Georgia Tech sind Tunnelreflexionsverstärker mit niedriger Ruhevorspannung im Bereich von 20 uW in der Lage, Mikrowellensignale vom -85-dBm-Pegel mit einer Modulationsbandbreite von bis zu 7 MHz zu verstärken, wodurch die Reichweite von RFID-Tags auf bis zu 1,2 km erweitert wird.

https://smartech.gatech.edu/bitstream/handle/1853/58228/AMATO-DISSERTATION-2017.pdf#page49

Die größte Herausforderung scheint darin zu bestehen, die genaue mV-Pegel-Vorspannung zu erzeugen, die von einer 3-V-Batterieversorgung erforderlich ist, und sie über den gesamten erforderlichen Temperaturbereich aufrechtzuerhalten. Die Vorspannung beträgt 60 mV bei 340 uA, also ein effizientes Mittel zum Reduzieren von 3 V auf 60 mV - DC-DC-Abwärtswandler?

Das sieht auf jeden Fall vielversprechend aus. Wenn es bei 5,8 GHz so gut funktionierte, sollte RFID bei 433 MHz in Ordnung sein.

Haben Sie sich MMIC-Geräte wie BGA6130 angesehen ? 4 uA klingt vielversprechend
Ja. An der Oberfläche sieht es vielversprechend aus, aber die 4uA sind im Abschaltmodus, der normale Betrieb verbraucht 40 bis 70 mA. Der Stromverbrauch von MMICs bis hinunter in den 4-mA-Bereich ist verfügbar, aber noch nichts mit niedrigem Ruhestrom ohne Eingangssignal und Empfindlichkeit unter -50 dBm. Alles, was ich gefunden habe, möchte -21 dBm oder mehr Eingangssignalpegel. Danke, dass du die Jagd mit mir fortsetzt.
Was funktionieren könnte, wäre ein „Vordetektor“, der feststellen kann, dass im Durchlassband ein schwaches Signal vorhanden ist (es hat es durch den Bandpassfilter am Front-End geschafft), unten im Schlamm bei etwa -80 dBM und dann verwendet diese Vorerkennung, um einen Verstärker mit geringer Leistung wie den MAX2634 zu aktivieren. Auf diese Weise verstärken wir nur, wenn jemand klopft. Dies würde die Kosten für Erkennung und Aufwecken erhöhen, erhöht aber die Empfindlichkeit. Das ist eine Möglichkeit, den @maple-Vorschlag zu nutzen.
Ich habe genug, um mit dem Prototyping zu beginnen, um verschiedene Ideen und potenzielle Optionen zu erforschen und zu validieren. Vielen Dank für die Hilfe.
Viel Glück! Und poste bitte die Ergebnisse, wenn du fertig bist. Sehr gespannt, wie es ausgeht.
Werde ich machen, sobald ich Antworten habe.