Inhaltsverzeichnis:
- Schritt 1: Wichtige Daten
- Schritt 2: Blockschaltbild und Schaltplan
- Schritt 3: PCB
- Schritt 4: Software
- Schritt 5: Alles einpacken
- Schritt 6: Quellen
Video: EBike-Leistungsmesser - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:18
Ich habe vor kurzem ein Mountainbike zu einem E-Bike umgebaut. Der Umbau verlief relativ reibungslos, so dass ich nach Abschluss des Projekts zu einer Shakedown-Kreuzfahrt aufbrach. Ich behielt die Batterieladeanzeige im Auge, da ich nicht wusste, wie weit das Fahrrad mit Batteriestrom laufen sollte. Ungefähr zu der Zeit, als der Leistungsmesser 80% anzeigte und ich mich ziemlich gut fühlte, weil ich einen langen Weg zurückgelegt hatte, blieb ich mit einer leeren Batterie stehen. Ein unglücklicher Anruf beim Hersteller führte zu Worten wie „Ach, die Batterieanzeige taugt wirklich nicht viel – die Technik ist einfach noch nicht da“. Ich brauchte besser als das.
Ich wollte wissen, welcher Gang mir die beste Effizienz bringt, wie viel kostet der Gegenwind an Akkukapazität, welche Leistungsstufe bringt die meisten Kilometer, hilft es wirklich, in die Pedale zu treten, wenn ja, wie viel? Kurz gesagt, ich wollte wissen, ob mich meine Batterie nach Hause bringen würde. Irgendwie entscheidend, denkst du nicht?
Dieses Projekt ist das Ergebnis meiner langen Heimfahrt mit Pedalantrieb. Grundsätzlich sitzt dieses kleine Modul zwischen dem Akku und dem E-Bike-Stromversorgungseingang, um Batteriestrom und -spannung zu überwachen. Zusätzlich liefert ein Raddrehzahlsensor Geschwindigkeitsinformationen. Mit diesem Sensordatensatz werden folgende Werte berechnet und angezeigt:
- Augenblickliche Effizienz – gemessen in Kilometern pro Amperestunde Batterieverbrauch
- Durchschnittliche Effizienz – seit Beginn dieser Fahrt, km/AH
- Gesamtzahl der seit der letzten Aufladung verbrauchten Amperestunden
- Batteriestrom
- Batteriespannung
Schritt 1: Wichtige Daten
Die augenblickliche Effizienz beantwortet alle meine Fragen, wie ich meinen Batterieverbrauch minimieren kann. Ich kann den Effekt sehen, wenn ich härter in die Pedale tritt, mehr E-Power hinzufügt, die Gänge wechselt oder gegen den Gegenwind kämpft. Die durchschnittliche Effizienz für die aktuelle Fahrt (seit dem Einschalten) kann mir helfen, die ungefähre Leistung abzuschätzen, die es braucht, um nach Hause zurückzukehren.
Die Gesamtzahl der AmpHours, die seit der letzten Ladezahl verbraucht wurden, ist entscheidend, um nach Hause zu kommen. Ich weiß, dass meine Batterie (angeblich) 10 AH hat, also muss ich nur die angezeigte Zahl von 10 im Kopf abziehen, um meine verbleibende Kapazität zu kennen. (Ich habe dies nicht in der Software getan, um die verbleibende AH anzuzeigen, damit das System mit jeder Batteriegröße funktioniert und ich glaube nicht, dass meine Batterie 10 AH hat.)
Interessant ist die Akkustromaufnahme, die zeigen kann, wie hart der Motor arbeitet. Manchmal kann ein kurzer steiler Anstieg oder eine sandige Strecke den Akku schnell entladen. Sie werden feststellen, dass es manchmal besser ist, abzusteigen und das Rad eine steile Steigung hinaufzuschieben, als nach dem verführerischen Gashebel zu greifen.
Die Batteriespannung ist ein Backup-Indikator für den Batteriezustand. Mein 14-Zellen-Akku ist fast vollständig leer, wenn die Spannung 44 Volt erreicht. Unter 42 Volt riskiere ich eine Beschädigung der Zellen.
Ebenfalls gezeigt ist ein Bild meines Displays, das unter dem standardmäßigen Bafang C961-Display montiert ist, das mit dem BBSHD-Motorsystem geliefert wird. Beachten Sie, dass der C961 mir glücklich versichert, dass ich einen vollen Akku habe, während der Akku tatsächlich um 41% entladen ist (4,1 AH von einem 10 AH-Akku).
Schritt 2: Blockschaltbild und Schaltplan
Ein Blockschaltbild des Systems zeigt, dass der eBike Power Meter mit jedem Akku / eBike Power System verwendet werden kann. Das Hinzufügen eines standardmäßigen Fahrradgeschwindigkeitssensors ist erforderlich.
Ein detaillierteres Blockdiagramm zeigt die wichtigsten Schaltungsblöcke, aus denen der eBike-Leistungsmesser besteht. Das 2x16 Zeichen 1602 LCD hat eine PCF8574 I2C Schnittstellenkarte angeschlossen.
Die Schaltung ist sehr einfach. Die meisten Widerstände und Kondensatoren sind 0805, um die Handhabung und das Löten zu erleichtern. Der DC-DC-Abwärtswandler muss so gewählt werden, dass er dem 60-Volt-Batterieausgang standhält. Der Ausgang von 6,5 Volt wird gewählt, um die Dropout-Spannung des integrierten 5-Volt-Reglers des Arduino Pro Micro zu überschreiten. Der LMV321 verfügt über einen Rail-to-Rail-Ausgang. Die Verstärkung der Stromsensorschaltung (16.7) wird so gewählt, dass 30 Ampere durch den 0,01 Ohm Strommesswiderstand 5 Volt ausgeben. Der Strommesswiderstand sollte für maximal 9 Watt bei 30 Ampere ausgelegt sein. Da ich jedoch dachte, dass ich nicht so viel Leistung (1,5 Kilowatt) verwenden würde, wählte ich einen 2-Watt-Widerstand, der für etwa 14 Ampere (750 Watt Motorleistung) ausgelegt ist).
Schritt 3: PCB
Das PCB-Layout wurde durchgeführt, um die Größe des Projekts zu minimieren. Das DC-DC-Schaltnetzteil befindet sich auf der Oberseite der Platine. Der analoge Stromverstärker befindet sich auf der Unterseite. Nach der Montage wird die fertige Platine mit fünf (RAW, VCC, GND, A2, A3) festen Leitungen, die von Durchgangslochwiderständen abgeschnitten sind, in das Arduino Pro Micro eingesteckt. Der Magnetradsensor wird direkt mit dem Arduino-Pin "7" (so beschriftet) und Masse verbunden. Löten Sie einen kurzen Pigtail und einen 2-poligen Stecker, um den Geschwindigkeitssensor anzuschließen. Fügen Sie einem 4-poligen Anschluss für das LCD ein weiteres Pigtail hinzu.
Die LCD- und I2C-Schnittstellenplatine sind im Kunststoffgehäuse montiert und am Lenker befestigt (ich habe Schmelzkleber verwendet).
Das Board ist bei OshPark.com erhältlich - tatsächlich bekommt man 3 Boards für weniger als 4 US-Dollar inklusive Versand. Diese Jungs sind die Größten!
Kurze Randnotizen - Ich habe DipTrace für die Schaltplanerfassung und das Layout verwendet. Vor einigen Jahren habe ich alle verfügbaren Freeware-Pakete für Schaltplanerfassung / PCB-Layout ausprobiert und mich für DipTrace entschieden. Letztes Jahr habe ich eine ähnliche Umfrage durchgeführt und bin zu dem Schluss gekommen, dass DipTrace für mich zweifellos der Gewinner war.
Zweitens ist die Einbaulage des Radsensors wichtig. Die Achse des Sensors muss beim Passieren des Sensors senkrecht zum Weg des Magneten stehen, sonst erhalten Sie einen Doppelimpuls. Eine Alternative besteht darin, den Sensor so zu montieren, dass das Ende zum Magneten zeigt.
Schließlich klingelt der Sensor als mechanischer Schalter für über 100 uS.
Schritt 4: Software
Das Projekt verwendet ein Arduino Pro Micro mit einem ATmega32U4-Prozessor. Dieser Mikrocontroller verfügt über ein paar mehr Ressourcen als der gängigere Arduino ATmega328P-Prozessor. Die Arduino IDE (Integrated Development System) muss installiert sein. Legen Sie die IDE für TOOLS fest | BOARD | LEONARDO. Wenn Sie mit der Arduino-Umgebung nicht vertraut sind, lassen Sie sich davon bitte nicht entmutigen. Die Ingenieure von Arduino und die weltweite Familie von Mitwirkenden haben ein wirklich einfach zu bedienendes Mikrocontroller-Entwicklungssystem geschaffen. Eine große Menge an vorgetestetem Code steht zur Verfügung, um jedes Projekt zu beschleunigen. Dieses Projekt verwendet mehrere Bibliotheken, die von Mitwirkenden geschrieben wurden; EEPROM-Zugriff, I2C-Kommunikation und LCD-Steuerung und -Druck.
Sie müssen wahrscheinlich den Code bearbeiten, um beispielsweise den Raddurchmesser zu ändern. Spring rein!
Der Code ist relativ einfach, aber nicht einfach. Es wird wahrscheinlich eine Weile dauern, bis ich meinen Ansatz verstanden habe. Der Radsensor ist unterbrechungsgesteuert. Der Radsensor-Entpreller verwendet einen anderen Interrupt von einem Timer. Ein dritter periodischer Interrupt bildet die Grundlage für einen Taskplaner.
Prüfstandtests sind einfach. Ich habe ein 24-Volt-Netzteil und einen Signalgenerator verwendet, um den Geschwindigkeitssensor zu simulieren.
Der Code enthält eine Warnung bei einem kritischen niedrigen Batteriestand (blinkende Anzeige), beschreibende Kommentare und großzügige Debugging-Berichte.
Schritt 5: Alles einpacken
Das mit "MTR" gekennzeichnete Pad geht an die positive Verbindung zum Motorsteuerkreis. Das mit "BAT" beschriftete Pad geht auf die positive Seite der Batterie. Rückleitungen sind üblich und befinden sich auf der gegenüberliegenden Seite der Leiterplatte.
Nachdem alles getestet wurde, legen Sie die Baugruppe in Schrumpffolie ein und installieren Sie sie zwischen dem Akku und Ihrem Motorcontroller.
Beachten Sie, dass der USB-Anschluss des Arduino Pro Micro zugänglich bleibt. Dieser Stecker ist ziemlich zerbrechlich, daher habe ich ihn mit einem großzügigen Auftrag von Schmelzkleber verstärkt.
Wenn Sie sich entscheiden, es zu erstellen, setzen Sie sich mit uns in Verbindung, um die neueste Software zu erhalten.
Als letzte Anmerkung ist es bedauerlich, dass das Kommunikationsprotokoll zwischen dem Bafang-Motorcontroller und der Anzeigekonsole nicht verfügbar ist, da der Controller alle Daten "kennt", die diese Hardwareschaltung sammelt. Angesichts des Protokolls wäre das Projekt viel einfacher und sauberer.
Schritt 6: Quellen
DipTrace-Dateien - Sie müssen die Freeware-Version von DipTrace herunterladen und installieren, dann den Schaltplan und das Layout aus den.asc-Dateien importieren. Die Gerber-Dateien sind in einem separaten Ordner enthalten -
Arduino - Laden Sie die entsprechende Version der IDE herunter und installieren Sie sie -
Gehäuse, "DIY Plastic Electronics Project Box Gehäuse Gehäuse 3,34" L x 1,96" B x 0,83" H" -
LM5018 -
LMV321 -
Induktor -
LCD -
I2C-Schnittstelle -
Arduino Pro Micro -