Nach dem Öffnen einer alten Webcam fand ich ein Objektiv mit einer magnetischen Fassung, die für den Autofokus verwendet wird. Eine Spule bewegt die Linse ein und aus, um die Schärfe einzustellen.
Ich habe diese Funktion kürzlich auf dem Raspberry Pi-Kameramodul installiert. Jetzt möchte ich das Magnetfeld der Spule digital mit einem PWM-Signal steuern, das von einem einfachen RC-Tiefpassfilter in ein analoges Signal übersetzt wird, siehe hier
Im Moment verwende ich einen 30uF Elko und ein einstellbares Potentiometer zwischen 0 und 1k Ohm, um das digitale PWM-Signal zu filtern. Das digitale Signal des Mikrocontrollers wird nicht direkt gefiltert, sondern zunächst in einen Schrittmotortreiber eingespeist, um die Pins des Mikrocontrollers zu schützen. Der digitale Ausgang des PWM wird dann der RC-Schaltung zugeführt.
Der Autofokus funktioniert, obwohl er etwas langsam ist. Und das Problem liegt in der relativ langsamen Reaktion des Stellglieds. Um etwas genauer zu sein: Bei einer PWM-Frequenz von 8 kHz und einer Änderung des Tastverhältnisses um 5 Prozent beträgt die Reaktion der Spule 0,4 Sekunden, um sich selbst anzupassen.
Ich weiß, dass es schwierig ist, ohne Rückkopplungsschleife eine superschnelle Reaktion zu erzielen, aber ich wäre mit 0,1 Sekunden zufrieden, wenn dies nur durch Ändern einiger Komponenten und Werte erreicht werden könnte. (Eine andere Option wäre, die richtige Menge an Überschwingen zu finden) Grundsätzlich Die RC-Schaltung soll nur die digitale PWM-Wellenform in eine bestimmte Spannung umwandeln. Es dauert einige Zeit, bis sich das Signal auf eine bestimmte Spannung eingependelt hat. Je flacher die Ausgangsspannung sein soll, desto langsamer reagiert das Filter. Die Ausgabe des Signals sollte so flach wie möglich sein, um das Objektiv ruhig zu halten. Also muss ich einen Kompromiss finden. Was ich auch intuitiv erwarte, ist, dass je höher die PWM-Frequenz, desto besser? Wenn es zu hoch ist, ist natürlich auch die Verlustleistung hoch. Und wenn an der Spule kein Strom anliegt, bewegt sich die Linse nicht.
Leider kann ich dir die Daten der Spule jetzt nicht nennen, ich weiß nur, dass sie einen ohmschen Widerstand von 30 Ohm hat. Aber auch das Gewicht des Objektivs, das Magnetfeld des Dauermagneten, die tatsächliche Induktivität, die Federkonstante der Schließfeder usw. Das sind so viele Unbekannte, dass es zu schwierig wäre, eine optimale Einstellung vorherzusagen.
Nun meine Frage an Sie, ob es möglich ist, variable Widerstände und Kondensatoren zu verwenden und einfach durch Ausprobieren die optimale Einstellung zu finden? Und wenn ja, welche Art von Komponenten würdet ihr empfehlen?
Übrigens: Die Spule ist im Moment ziemlich laut (8khz). Nicht, dass es langweilig wäre. Aber normalerweise macht ein Autofokus dieses Geräusch nicht, zumindest nicht der in meinem Smartphone. Eigentlich wäre mir eine laute, aber schnelle Reaktion lieber, als eine leise Schnecke.
Ich würde die Mechanismusspule mit einer PWM einer Frequenz antreiben, die deutlich über dem Audiobereich liegt und mindestens das 20-fache der mechanischen Reaktionszeit beträgt. Der PWM-Treiberchip, den Sie jetzt haben, kann dies möglicherweise tun, und wenn Sie keinen finden, der dies kann. Die Spule leistet hervorragende Arbeit, indem sie die PWM auf ihren äquivalenten analogen Wert reduziert, genauso wie jeder PWM-Direktmotorantrieb funktioniert.
Sie möchten eine saubere PWM-Wellenform haben, die von Zähler-/Timer-Hardware oder von einem dedizierten PWM-Generator-Chip angetrieben wird. (Es gibt tatsächlich einfache I 2 C-Generator-Chips, die Sie mit dem Pi verbinden könnten). Eine softwaregenerierte PWM weist wahrscheinlich zu viele Störungen auf und unterbricht Aktualisierungslatenzen, um eine saubere Wellenform zu erzeugen.
Eine wirklich nette Sache an diesem Ansatz ist, dass Sie die PWM auf jede gewünschte Einstellung ändern können und entsprechende Aktionen erhalten. Dann können Sie einen Algorithmus in der Software in Betracht ziehen, der die PWM weiter als ihren Zielwert einstellt, um den Mechanismus in Bewegung zu setzen, und sich dann auf den Zielwert verjüngt, um sich in der endgültigen Position niederzulassen. Mit ein wenig Fummelei sollte sich die Leistung des Overdrives ohne echte Rückkopplung einstellen lassen, solange die Antriebsspannung und die mechanische Belastung gleich bleiben.
Roger Rowland
Anton Alice
glen_geek
Roger Rowland
Anton Alice