Dieser Modus ist für Konfigurationen ohne externes Taktsignal ausgelegt.Sie verwenden eine Kamera im leader-Modus (die ein Synchronisationssignal ausgibt) und alle übrigen Kameras im follower-Modus.
Leader/Follower Firmware-Leitfaden
Klicken Sie hier, um unseren Leitfaden zur Aktualisierung Ihrer Kamera zwischen Leader- und Follower-Modus zu sehen.
Dieser Modus ist für Konfigurationen mit einem externen Taktsignal ausgelegt, das das Synchronisationssignal für alle Kameras liefert.In diesem Modus müssen alle Kameras auf den follower-Modus eingestellt sein.
Leader/Follower Firmware-Leitfaden
Klicken Sie hier, um unseren Leitfaden zur Aktualisierung Ihrer Kamera zwischen Leader- und Follower-Modus zu sehen.
Der Arduino Uno (ATmega328P) ist derzeit das einzige bestätigt funktionierende Board für diese Konfiguration.
1
PWM-Bibliothek herunterladen
Laden Sie den Quellcode der PWM-Bibliothek hier herunter: ArduinoPWM v1.0.0
2
Die .ZIP-Bibliothek hinzufügen
Importieren Sie die heruntergeladene .ZIP-Bibliothek in Ihre Arduino IDE.
3
Sketch hochladen
Laden Sie einen der beiden nachstehenden Sketches auf Ihren Arduino hoch.
Simple Control: Der schnellste Weg, um loszulegen, erfordert jedoch ein erneutes Flashen der Firmware, um die FPS anzupassen.
Serial Control: Ermöglicht die Anpassung von Frequenz und Tastverhältnis in Echtzeit ohne erneutes Flashen (Einstellungen werden zurückgesetzt, wenn das Gerät den Strom verliert).
Simple Control
Serial Commands
#include <PWM.h>// Pin configurationint pin = 9; // Pinint value = 127; // Initial value for the PWM duty cycle// SET FREQUENCY HEREfloat frequency = 60; // Initial frequency in Hzvoid setup(){ // Initialize all timers except for timer0 to save timekeeping tasks InitTimersSafe(); // Set the initial PWM frequency and duty cycle if (SetPinFrequencySafe(pin, frequency)) { pwmWrite(pin, value); Serial.println("PWM frequency and initial duty cycle set."); } else { Serial.println("Failed to set frequency."); }}
#include <PWM.h>// Pin configurationint pin = 9; // Pinint value = 127; // Initial value for the PWM duty cyclefloat frequency = 60; // Initial frequency in Hzvoid setup(){ Serial.begin(9600); // Initialize all timers except for timer0 to save timekeeping tasks InitTimersSafe(); // Set the initial PWM frequency and duty cycle if (SetPinFrequencySafe(pin, frequency)) { pwmWrite(pin, value); Serial.println("PWM frequency and initial duty cycle set."); } else { Serial.println("Failed to set frequency."); }}void loop(){ if (Serial.available()) { // Read frequency and duty cycle values over Serial String inputString = Serial.readStringUntil('\n'); inputString.trim(); int freqDutySplitIndex = inputString.indexOf(','); if (freqDutySplitIndex != -1) { String freqStr = inputString.substring(0, freqDutySplitIndex); String dutyStr = inputString.substring(freqDutySplitIndex + 1); // Parse floats float newFrequency = freqStr.toFloat(); int newDutyCycle = dutyStr.toInt(); // Validate frequency range if (newFrequency >= 1 && newFrequency <= 2000000) { // Set the PWM frequency and apply duty cycle if (SetPinFrequencySafe(pin, newFrequency)) { value = map(constrain(newDutyCycle, 0, 100), 0, 100, 0, 255); pwmWrite(pin, value); Serial.print("Set frequency to: "); Serial.print(newFrequency); Serial.print(" Hz, duty cycle to: "); Serial.print(newDutyCycle); Serial.println("%"); } else { Serial.println("Failed to set new frequency."); } } else { Serial.println("Invalid frequency value."); } } else { Serial.println("Invalid input format. Use frequency,dutycycle (e.g., 60,50)."); } }}
Dieser Code ermöglicht es Ihnen, das PWM-Signal im laufenden Betrieb zu ändern. Öffnen Sie Ihren seriellen Monitor mit 9600 Baud und senden Sie Befehle im Format {FREQUENCY},{DUTY_CYCLE} (z. B. 60,50 für 60Hz bei einem Tastverhältnis von 50%).
Folgen Sie unserem GitHub-Leitfaden zur Installation und Verwendung unserer benutzerdefinierten Python-Bibliothek für Linux. Diese wird möglicherweise zugunsten des vollständig ausgestatteten SDK in Zukunft eingestellt.
Synchronisiertes Streaming mit dweOS
Streamen Sie zwei synchronisierte stellarHD-Kameras über das Netzwerk mit dweOS.
Assistant
Responses are generated using AI and may contain mistakes.