Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Equipment >> Industrieroboter

Effizienter orthogonaler Variablenoptimierungsalgorithmus für Kommunikationssysteme

Dieser Artikel beschreibt einen Algorithmus, um den optimalen angepassten Punkt in einem zweidimensionalen Raum mit orthogonalen Eingabevektoren zu finden. Der Algorithmus löst Gleichungen für sich schneidende Kreise basierend auf gemessenen Datenpunkten.

Mehrere wichtige Systemleistungsmetriken werden durch orthogonale Eingabeparameter bestimmt, die Amplitude und Phase entsprechen; zwei Beispiele sind Quadraturmodulator-Trägerdurchführung und Seitenbandunterdrückung. Diese Parameter werden verbessert, indem die DC-Offset-Balance und die Amplituden- und Phasenbalance zwischen den Quadratur-Basisbandeingängen des Modulators optimiert werden.

Da das Finden der optimalen Anpassung dieser Parameter angesichts des zweidimensionalen Raums keine triviale Aufgabe ist, werde ich in diesem Artikel einen Python-Algorithmus diskutieren, um den optimal angepassten Punkt in einem zweidimensionalen Raum mit orthogonalen Eingabevektoren zu finden. Der Algorithmus löst Gleichungen für sich schneidende Kreise basierend auf gemessenen Datenpunkten und findet den optimalen Punkt in nur vier Iterationen. Um die Technik zu veranschaulichen, habe ich den integrierten Digital-Analog-Wandler (DAC) AFE7070 von Texas Instruments (TI) und den Trägerdurchführungsparameter des Quadraturmodulators verwendet.

Optimierung von Nebenemissionen

Kommunikationssysteme sind bestrebt, Störemissionen zu minimieren. Einige dieser Störemissionen stammen von orthogonalen Eingangssignalfehlanpassungen. Beispielsweise beeinflussen DC-Offset-Fehlanpassung und Amplituden-/Phasen-Ungleichgewicht die Parameter der Trägerdurchführung bzw. der Seitenbandunterdrückung in analogen Quadraturmodulatoren. Die Anpassung der Eingangsvariablen an einen optimalen Sollwert minimiert die Störausgabe.

Abbildung 1 stellt den gemessenen Parameter als Betrag (r) des Vektors vom optimierten Punkt [x0,y0] zum tatsächlichen Punkt auf einer zweidimensionalen Ebene dar. Der Parameterwert wird durch [0,1], einen Einheitskreis, begrenzt. Eine 0 steht für eine vollständige Aufhebung oder kein Signal und eine 1 steht für keine Aufhebung oder ein vollständiges Signal. In Dezibelskalen ist die Funktion an [-inf,0] gebunden. Der Kreis mit dem Radius r repräsentiert alle möglichen x,y-Punkte, die die gleiche Größe erreichen.

Abbildung 1. Vektor vom optimierten Punkt zum tatsächlichen Punkt

Gleichung 1 stellt die Funktion in ihrer einfachsten Form dar:

(1)

Konstanten [a0,b0] stellen systemabhängige Normalisierungsfaktoren dar, um das maximale Ergebnis kleiner als 1 zu halten. Technisch beschreibt Gleichung 1 eine Ellipse, da die Skalierungsfaktoren für jede unabhängige Variable nicht gleich sein müssen. Zur Vereinfachung dieser Analyse ist a0 gleich b0, sodass die Kurven wirklich Kreise sind.

Ziel ist es, möglichst schnell den optimalen Punkt [x0,y0] zu finden, der den Messparameter (r) minimiert. Diesen Punkt mit statistisch variierenden Eingabeparametern effizient zu finden, ist eine Herausforderung. Der traditionelle Hunt-and-Peck-Ansatz verwendet aufeinanderfolgende Versuche, um den optimalen Punkt einzugrenzen. Dies führt zwar zur gewünschten Lösung, erfordert jedoch zu viele Iterationen, wenn die Konvergenzzeit kritisch ist, was eine neue Methode erforderlich macht.

Überschneidende Kreise

Idealerweise bestimmen genau drei Messiterationen mit sich schneidenden Kreisen den optimalen Punkt. Das erste Messergebnis an einem beliebigen Eingabepunkt [x1,y1] definiert unendliche Möglichkeiten für den optimalen Punkt, der durch den Kreis A vom Radius r1 repräsentiert wird. Das Hinzufügen eines zweiten Datenpunkts ergibt einen weiteren unendlichen Datensatz, der durch den Kreis B dargestellt wird; die Schnittpunkte der beiden Kreise grenzen die Lösung jedoch auf zwei Punkte ein. Ein dritter Datenpunkt und ein entsprechender Kreis C liefern eine dritte Kurve, bei der es nur einen einzigen gegenseitigen Schnittpunkt gibt. Dieser Schnittpunkt ist der optimale Punkt. Abbildung 2 zeigt den Verlauf sich schneidender Kreise, die im endgültigen optimalen Punkt gipfeln.

Abbildung 2. Sich schneidende Kreise zeigen einen gemeinsamen Schnittpunkt

Diese Technik zeigt den optimalen Punkt in genau drei Iterationen. Eine vierte Iteration misst den optimalen Punkt, um das Ergebnis zu bestätigen und zu dokumentieren.

3 veranschaulicht eine Technik zum Eliminieren einer Iteration durch Verwenden empirisch bekannter Grenzinformationen in der x-y-Ebene. Wählen Sie den Anfangspunkt an einem der Grenzpunkte aus, sodass die erste Kurve (A) ein 90-Grad-Bogen ist. Wählen Sie den zweiten Punkt auf dem ersten Bogen aus, indem Sie ihn entweder in x- oder y-Richtung verschieben.

Abbildung 3. Lösung mit zwei Iterationen

Da sich der zweite Punkt immer noch auf der Begrenzungskante befindet, ist seine Kurve ein Bogen unter 180 Grad. Der Schnittpunkt dieser beiden Kurven liefert einen einzigen optimalen Punkt. Dieser Ansatz zeigt den optimalen Punkt in nur zwei Iterationen und bestätigt ihn mit drei.

Sukzessive Kreisapproximation

Die optimale Lösung hängt von der Genauigkeit der mathematischen Gleichung ab. In einer realen Messsituation wirken sich mehrere Annahmen oder Fehler auf die Ergebnisse aus. Die gemessenen Signale sind sehr klein; Rauschen und Messtoleranzen führen zu Fehlern. Die Verwendung perfekter Kreise anstelle von Ellipsen führt zu einer gewissen Unsicherheit. Die Skalierungsfaktorannahmen, die zum Lösen mehrerer Gleichungen erforderlich sind, führen ebenfalls zu Unsicherheit. Diese Fehler und Annahmen führen zu Unschärfen in den Kurven.

Fig. 4 veranschaulicht, wie Fuzzy-Kurven keinen exakten Schnittpunkt garantieren; stattdessen definieren sie einen Konvergenzbereich.

Abbildung 4. Näherung des sukzessiven Kreisschnitts

Jeder zusätzliche Datenpunkt verwendet die Daten der vorherigen Iteration. Aufeinanderfolgende Kreise konvergieren zu einem Lösungsbereich, der innerhalb der Mindestschwelle des Systems liegt.

Messbeispiel

Das Beispiel verwendet den AFE7070 DAC und optimiert für den Trägerdurchführungsparameter. Der AFE7070 ist eine komfortable Plattform, da DAC und Modulator integriert sind. Das DC-Offset-Ungleichgewicht an den Quadratureingängen des Modulators bestimmt die Trägerdurchführungsleistung. Der AFE7070 verfügt über eine interne digitale Tuning-Funktion zur minutiösen Steuerung des DC-Offset-Gleichgewichts. Es braucht nicht viel; die Auflösung liegt im Mikrovoltbereich.

Die x,y-Parameter für das Beispiel sind ganzzahlige digitale Schrittwerte, die den DC-Pegel an den Quadratureingängen steuern. Frühere statistische Stichproben des Geräts lieferten die XY-Grenzen der Eingabevariablen sowie die in den Berechnungen verwendeten Schritttabellen. Die Stufentabellen bieten eine „Umrechnung“ einer gemessenen Trägerdurchführung in Dezibel Milliwatt in einen Delta-x (oder Delta-y) Faktor.

Ein hoher (oder anders ausgedrückt schlechter) Messwert bedeutet, dass die Einstellung weit daneben liegt und ein größeres Delta benötigt, um den optimalen Punkt zu erreichen. Umgekehrt bedeutet ein niedriger Wert, dass der Sollwert nahe ist und eine kleine Korrektur erforderlich ist. Diese kleine „Hausaufgabe“ ist notwendig, um sicherzustellen, dass die anfänglichen Schätzpunkte nicht zu weit entfernt sind, und um die Iterationszeit auf das Nötigste zu reduzieren.

Abbildung 5 zeigt den Python-Algorithmus, der die optimalen Eingabevariablen in vier oder weniger Iterationen findet.

Abbildung 5. Python-Optimierungsalgorithmus

Die Funktionen „Get_r“ und „GetCFi“ sind gerätespezifische Messungen. Ich habe den Code der Kürze halber weggelassen, da er für die Demonstration des Optimierungsalgorithmus belanglos ist. In Ihren Anwendungen sind diese Funktionen für die Programmierung und Messung der Geräteparameter in Ihrer Anlage relevant.

Schlussfolgerung

Beim AFE7070 DAC optimiert der Algorithmus in den meisten Fällen die Trägerdurchführung innerhalb von drei Iterationen und in weniger als 1,7 s, hauptsächlich gesteuert durch die Einschwing- und Wobbelzeit des Spektrumanalysators. Die Methoden der vorherigen Schritte dauerten fast 20 Iterationen und mehr als 20 s. Dieser Algorithmus stellt eine Geschwindigkeitsverbesserung von mehr als 10 Mal im Vergleich zum traditionellen Ansatz dar. Andere Kommunikationssystemparameter, die von orthogonalen Eingangsvariablen von Verstärkung und Phase abhängig sind, können diesen Algorithmus ebenfalls verwenden, um effizient eine optimale Lösung zu finden.

Branchenartikel sind eine Inhaltsform, die es Branchenpartnern ermöglicht, nützliche Nachrichten, Nachrichten und Technologien mit All About Circuits-Lesern auf eine Weise zu teilen, für die redaktionelle Inhalte nicht gut geeignet sind. Alle Branchenartikel unterliegen strengen redaktionellen Richtlinien, um den Lesern nützliche Neuigkeiten, technisches Know-how oder Geschichten zu bieten. Die in den Branchenartikeln geäußerten Standpunkte und Meinungen sind die des Partners und nicht unbedingt die von All About Circuits oder seinen Autoren.


Industrieroboter

  1. Eine Taxonomie für das IIoT
  2. Aufbau flexibler Fertigungssysteme für Industrie 4.0
  3. Neugestaltung von ERP-Systemen in der modernen Fertigung für zukünftiges Wachstum
  4. Die Vorteile des Einsatzes von Robotic Vision für Automatisierungsanwendungen
  5. Unternehmen setzen Fristen für intelligente Systeme
  6. Top 10 Arbeitsabläufe für Hersteller
  7. 10 Ideen für einen effizienteren und produktiveren Lagerbetrieb
  8. Felddaten zur Prozessoptimierung sammeln
  9. Ein Wendepunkt für die Roboterautomatisierung
  10. Einrichten einer Systembaseline für optimale Leistung