Inhaltsverzeichnis:
- Schritt 1: Teile
- Schritt 2: Teile miteinander verbinden
- Schritt 3: Hochladen und Ändern des Codes nach Ihren Wünschen
- Schritt 4: Überprüfen, ob es funktioniert
Video: Einfachster Arduino VESC-Monitor - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:16
Hi, In diesem Projekt werden wir einen einfachen VESC-Monitor machen. Dies wäre nützlich, wenn Sie Ihre Temperatur überwachen und Probleme wie ich mit meiner Vesc-Überhitzung feststellen möchten (die ich gerade bei diesem Monitor festgestellt habe) oder Sie können es einfach verwenden, um das Display an Ihrem Board oder Lenker zu befestigen und Ihre Geschwindigkeit zu beobachten, Kilometerstand, Batterieprozentsatz und vieles mehr. Kommen wir also zum Bauen!
Schritt 1: Teile
1. - Arduino (ich verwende UNO, aber Sie können auch jedes andere Board verwenden, einschließlich esp8266 oder esp32)
2. - einige Kabel zum Anschließen (versuchen Sie, einen Stecker für Ihren Vesc-Stecker zu finden, da es viel einfacher ist, einen großen Stecker im Vergleich zu vielen kleinen Kabeln zu trennen)
3. - Anzeige (ich verwende 124 x 32 Oled, aber Sie können jede andere verwenden, indem Sie die Bibliothek wechseln)
4. - optional - Steckbrett (dies ist für Leute, die nicht löten möchten oder für diejenigen, die es vorübergehend tun möchten)
5. - USB-Kabel für Ihr Arduino
Schritt 2: Teile miteinander verbinden
Anzeige: Vcc bis 3.3V
Gnd zu Gnd
Sck (oder scl) zu A5
Sda auf A4
VESC: 5V von Vesc zu Vin auf Arduino
Gnd zu Gnd
RX auf VESC zu TX auf Arduino
TX auf VESC zu RX auf Arduino
Schritt 3: Hochladen und Ändern des Codes nach Ihren Wünschen
CODE:
/ ** 2020-Code von Lukas Janky VESC-Monitor mit Oled-Display Wenn Sie mich etwas fragen müssen, kontaktieren Sie mich unter [email protected] oder auf meinen Anleitungen. Ich hoffe, dass Ihnen dies hilft.
*/
#include #include #include #include #include #include #include #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET 4 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
VescUart-UART;
int U/min; Schwebespannung; Schwimmerstrom; int-Leistung; Schwimmerampere; Schwimmertacho; Schwimmdistanz; Schwimmgeschwindigkeit; Float-Wattstunde; Float-Batterie-Prozentsatz;
SimpleKalmanFilter Filter1(2, 2, 0,01);
Leere Einrichtung () {
Serial.begin(115200); display.begin(SSD1306_SWITCHCAPVCC, 0x3C); display.fillScreen(0); display.display();
/** UART-Port einrichten (Serial1 auf Atmega32u4) */ // Serial1.begin (19200); while (!Seriell) {;}
/** Definiere, welche Ports als UART verwendet werden sollen */ UART.setSerialPort(&Serial);
}
Leere Schleife () {
////////// Werte lesen ////////// if (UART.getVescValues()) {
rpm = (UART.data.rpm)/7; // Die '7' ist die Polpaarzahl im Motor. Die meisten Motoren haben 14 Pole, also 7 Polpaare Spannung = (UART.data.inpVoltage); aktuell = (UART.data.avgInputCurrent); Leistung = Spannung*Strom; Amperestunde = (UART.data.ampHours); Wattstunde = Amperestunde*Spannung; tach = (UART.data.tachometerAbs)/42; // Die '42' ist die Anzahl der Motorpole multipliziert mit 3 Abstand = Tach * 3,142 * (1/1609) * 0,72 * (16/185); // Motordrehzahl x Pi x (1 / Meter in einer Meile oder km) x Raddurchmesser x (Motorriemenscheibe / Riemenscheibe) Geschwindigkeit = U/min * 3,142 * (60/1609) * 0,72 * (16/185); // Motordrehzahl x Pi x (Sekunden in einer Minute / Meter in einer Meile) x Raddurchmesser x (Motorriemenscheibe / Riemenscheibe) Batprozent = ((Spannung-38,4)/12) * 100; // ((Batteriespannung - Mindestspannung) / Zellenzahl) x 100
}
////////// Filter ////////// // Berechnung des Schätzwertes mit Kalman Filter float powerfiltered = Filter1.updateEstimate(power);
display.fillScreen(0); display.setCursor(10, 5); display.setTextColor(1); display.setTextSize(1); display.print (Spannung);
display.setCursor(10, 20); display.setTextColor(1); display.setTextSize(1); display.print (Leistung);
display.setCursor(10, 40); display.setTextColor(1); display.setTextSize(1); display.print (rpm);
display.setCursor(10, 55); display.setTextColor(1); display.setTextSize(1); display.print (aktuell); display.display();
Verzögerung (50);
}
Sie können jeden gewünschten Wert aus dem Code ändern und anzeigen
Schritt 4: Überprüfen, ob es funktioniert
Wenn Sie nun überprüfen, ob es funktioniert, ist es an der Zeit, es zu löten und Ihren Werten Labels wie Volt oder Ampere hinzuzufügen. Löten Sie es auf Arduino Nano, damit es kleiner wird, oder Sie können es sogar mit einem anderen Arduino auf Ihre Fernbedienung übertragen. aber dafür gibt es viele andere Tutorials (Suche Übertragungswerte mit arduino). Ich hoffe, dass dies Ihnen geholfen hat, Ihr Problem zu lösen oder eine nette kleine Vesc-Telemetrie zu erstellen.
Empfohlen:
Einen Arduino-Gitarren-Tuner herstellen – wikiHow
So bauen Sie einen Arduino-Gitarren-Tuner: Dies sind die Anweisungen, um einen Gitarren-Tuner aus einem Arduino und mehreren anderen Komponenten zu machen. Mit Grundkenntnissen in Elektronik und Codierung können Sie dieses Gitarrenstimmgerät herstellen. Zuerst müssen Sie wissen, was die Materialien sind. Ma
ALARMA ARDUINO CON SENSOR DE MOVIMIENTO, SIRENA Y AVISO AL TLF. MÓVIL: 9 Schritte
ALARMA ARDUINO CON SENSOR DE MOVIMIENTO, SIRENA Y AVISO AL TLF. MÓVIL: Este proyecto consiste en a alarma básica que Detecta presencia, activa una sirena de 108dB y visa al usuario mediante un SMS (opcional). Permite también el control remoto básico por parte del usuario a través de SMS (encendido, apagado, reinicio
Heimwerken -- Einen Spinnenroboter herstellen, der mit einem Smartphone mit Arduino Uno gesteuert werden kann – wikiHow
Heimwerken || Wie man einen Spider-Roboter herstellt, der mit einem Smartphone mit Arduino Uno gesteuert werden kann: Während man einen Spider-Roboter baut, kann man so viele Dinge über Robotik lernen. Wie die Herstellung von Robotern ist sowohl unterhaltsam als auch herausfordernd. In diesem Video zeigen wir Ihnen, wie Sie einen Spider-Roboter bauen, den wir mit unserem Smartphone (Androi
Einfaches BLE mit sehr geringem Stromverbrauch in Arduino Teil 2 - Temperatur- / Feuchtigkeitsmonitor - Rev 3: 7 Schritte
Easy Very Low Power BLE in Arduino Teil 2 – Temperatur-/Feuchtigkeitsmonitor – Rev 3: Update: 23. November 2020 – Erster Austausch von 2 x AAA-Batterien seit 15. Januar 2019 dh 22 Monate für 2x AAA AlkalineUpdate: 7. April 2019 – Rev 3 of lp_BLE_TempHumidity, fügt Datum/Uhrzeit-Plots hinzu, verwendet pfodApp V3.0.362+ und automatische Drosselung, wenn
Arduino-Programmierung über das Handy -- Arduinodroid -- Arduino-Ide für Android -- Blinzeln: 4 Schritte
Arduino-Programmierung über das Handy || Arduinodroid || Arduino-Ide für Android || Blink: Bitte abonnieren Sie meinen Youtube-Kanal für weitere Videos…… Arduino ist ein Board, das direkt über USB programmiert werden kann. Es ist sehr einfach und günstig für College- und Schulprojekte oder sogar für Produktprototypen. Viele Produkte bauen zunächst darauf für i