E-Rider Teil 3 - Integration in FC - Kadenzproblem

Diskutiere E-Rider Teil 3 - Integration in FC - Kadenzproblem im ForumsController Forum im Bereich Controller/Regler, Fahrerinformation, Elektronik; Hallo zusammen, nachdem ich 2 E-Rider bereits versenkt hatte, bekam ich kulanterweise aus China ein kostenloses Ersatzgerät, dass ich dieses Mal...
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Hallo zusammen,

nachdem ich 2 E-Rider bereits versenkt hatte, bekam ich kulanterweise aus China ein kostenloses Ersatzgerät, dass ich dieses Mal an den FC zum laufen bringen möchte.

Angeschlossen ist er an 12v des FC Lichtausgangs ( J4 (rot/schw/grün/weiß) )und hoffentlich ausreichend abgesichert durch einen zusätzlichen Widerstand und Kondensator. Thx 4 Hinweis diesbezüglich an @Hochsitzcola, auch wenn ich nicht getestet habe/weiß, ob es auch ausgereicht hätte, den eRider ohne Widerstand/Kondensator an den Spannungsregler des FCs zu stecken. Er scheint jedenfalls seit mehreren Stunden zu funktionieren, was schon mal ein Erfolg ist;)

Trotzdem bekomme ich ihn noch nicht so ganz zum laufen. Zunächst einmal ein Scrennshot meiner Config:

Bildschirmfoto 2020-10-02 um 15.55.17.png


Wenn ich n der Kurbel drehe, bekomme ich ein PAS Signal. Mein eRider liefert nur ein Speedsignal ohne zusätzliches Richtungssignal (32 Pulse bei einer Umdrehung vorwärts / 0 Pulse bei Rückwärtsdrehung) und das Drehmomentsignal (1,5v - 3v).
Das Drehmomentsignal kann ich aus dem APC nicht entnehmen und leider auch nicht richtig am Display, weil dort ein Bug die Darstellung vermutlich auseinandergebracht hat:

IMG_1219.jpeg



Im Environment View sehe ich aber, dass eine Kadenz angezeigt wird, wenn die Kurbel vorwärts dreht.
Über den Arduino Serial Monitor habe ich mir die Ausgabe angeschaut und dort gesehen, dass ich ein anscheinend funktionierendes Torquesignal bekomme und sich dieses auch bei Druck verändert:

Bildschirmfoto 2020-10-02 um 15.57.02.png


Auffällig ist aber, dass der Wert "Pedaling" unverändert bei 0 bleibt. Wird hier nur das PAS Signal auf J3 ausgeweertet oder müsste sich der Wert nicht auch bei Anschluss des Torquesensors an J4 ändern?

Wenn ich "enable torque trottle" aktiviere, startet der Motor auch durch reines Druckanlegen an das Pedal ohne Drehen der Kurbel, was vermutlich auch so gewollt, aber von mir nicht so gewünscht ist.

Kann mir jemand einen Tipp geben, was ich einstellen muss, damit Drehmoment und Kadenz gleichzeitig herangezogen werden , um den Motor zu starten?

Gruß
 
lektro

lektro

Dabei seit
17.05.2012
Beiträge
883
Details E-Antrieb
Cute C100 Heck
hoffentlich ausreichend abgesichert durch einen zusätzlichen Widerstand und Kondensator.
ist das normal, dass man den eRider so absichern muss, oder wie hast du die zwei eRider zuvor denn geröstet?
Hast Du das Gleichzeitigkeits-Problem mittlerweile gelöst?
Könntest Du dazu nicht einfach ein PAS am entsprechenden Eingang des Controllers anbringen?
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Was in diesem Zusammenhang normal ist, kann ich nicht sagen. Mangels Osziloskop und der Fähigkeit, es einzustellen und zu interpretieren, sind alle Vermutungen meinerseits am Ende nur Spekulation. Ich weiß, wie ich einen AllerweltsDC-Wandler (LM2596S von amazon) mit einem Schraubenzieher auf 12v einzustellen habe und wie ich ein Multimeter bediene;) Und wenn ohne irgendwelche knallgeräusche oder Hitzeentwicklungen ohne einen Kurzschluss das Lager zwei mal nach kürzester zeit kein Lebenszeichen mehr von sich gibt, ist das schon merkwürdig. Hochsitzcola scheint einen anderen DC Wandler benutzt zu haben. Ich habe keine Ahnung. Ich erinnere mich, dass ich auch den PAS Standard Pin anstatt des Pins an J4 versucht habe, was ja naheliegend ist, mit gleichem Ergebnis. Jenkie guckt sich das an, wenn er Zeit findet. Ich frage mich, ob das „Pedaling“ im seriellen Monitor sich überhaupt auf einen anderen Pin, als den Standard PAS Pin bezieht. Der FC Code ist so umfangreich und verteilt sich auf unzählige Reiter, dass ich da so meine Probleme habe, durchzusteigen.
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Angesichts des überwältigenden Supports seitens der community habe ich mir den Code noch einmal angeschaut. Ab Zeile 685 steht etwas zur Ermittlung von Torque:

now calculate torque_instant, torque and power
#ifdef SUPPORT_XCELL_RT
#if HARDWARE_REV<20
torque=abs((torque)*0.061); //torque=sum of torque values/#of torque values*5V/1023 counts/(10mV/Nm)
#else
torque=abs((torque)*0.03054740957);
#endif
power_human=0.20943951*cad*torque; //power=2*pi*cadence*torque/60s*2 (*2 because only left side torque is measured by x-cell rt)
#elif defined(SUPPORT_SEMPU_V1) //SEMPU V1
torque=abs((torque)*0.02078055073); //torque=sum of torque values/#of torque values*5V/1023 counts/(14.7 mV/Nm)
power_human=0.10471975512*cad*torque; //power=2*pi*cadence*torque/60s
#else //SEMPU
torque=abs((torque)*0.01385370049); //torque=sum of torque values/#of torque values*5V/1023 counts/(14.7 mV/Nm)
power_human=0.10471975512*cad*torque; //power=2*pi*cadence*torque/60s
#endif
}
#end

Zu der Variablen "cad" finde ich zuvor im Code nur Zeile 218 wo steht:
volatile int cad=0; //Cadence

Womit wird die Variable eigentlich befüllt? @jenkie
 
J

jenkie

Dabei seit
28.06.2011
Beiträge
1.747
Details E-Antrieb
elfkw HR + Forumscontroller
Das Drehmomentsignal kann ich aus dem APC nicht entnehmen und leider auch nicht richtig am Display, weil dort ein Bug die Darstellung vermutlich auseinandergebracht hat:
Ich habe gerade mal in den Code geschaut - die Anzeige ist schon korrekt so. Links im Balken wird nur das Verhältnis Wattstunden von Mensch und Motor angezeigt, ein aktuelles Drehmoment gibt es da nicht. Das kannst du dir aber einfach selbst hinzufügen, die entsprechende Funktion findest du hier. Die Variable ist torque_instant

Zur Kadenz und Drehbewegungserkennung: Für das Thun und Sempu-Lager brauchst du zwei um 90° versetze Pulssignale (werden meinst Sinus und Cosinus genannt) um die Drehrichtung zu erkennen. Hat das dein Erider auch? Welches Lager hast du genau?
Mit nur einem Pin müsste man die Treterkennung anders programmieren. Du müsstest dir mal die Signale in der Konsole ausgeben lassen, um zu sehen ob das passt. Pedaling muss jedenfalls aus 1 gehen, sonst wird die Leistung nicht ausgegeben.
Das Auswerten und Setzen von pedaling passiert hier. Zum testen könntest du in dieser Zeile mal pedaling=1 schreiben, dann wird bei jedem Puls pedaling auf 1 gesetzt (richtungsunabhängig) und erst nach einem Timeout wieder zurückgesetzt. Absolutzahlen von Kadenz und Drehmoment werden natürlich erstmal nicht stimmen, das müsste man anpassen.

Die Interrupts werden hier initialisiert.
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Hi Jenkie.
In meinem ersten post hatte ich eigentlich bereits die Eckdaten zum eRider genannt, aber ich stelle gerne nochmal einen link zu dem Lager rein.

US $69.0 |torque sensor BB68 120MM standard bottom bracket transducer LEFT WIRING intelligent bike electric BICYCLE Accessary MTB diy part|Electric Bicycle Accessories| - AliExpress

Das Lager hat nicht 5, sondern nur 4 Leitungen: 12v, GND, Torque-Signal 1,5v - 3v, PAS Signal mit 24 Pulsen vorwärts und 0 Pulse rückwärts. Es gibt kein separates Richtungssignal.

Korrigiere mich bitte, wenn ich falsch liege, aber für mich sah es so aus, als wenn du die Drehrichtungserkennung mit nur einem Pin bereits integriert hättest. In dem verlinkten Thread:

Integration des Sempu Sensorlagers in den FC

erwähnt der User, dass es bei Sempu 2 Versionen gäbe:

IMG_20201011_192001.png


In dem Thread erklärst du auch, dass du beide Versionen in den FC Code integriert hättest, daher auch die Auswahl im Configurator zwischen "Sempu V1" und "Sempu new". Da die Signale des eRider Lagers ähnlich dem T4_3A sind und der User berichtet, daß es geht, bin ich etwas verwirrt.

Zudem erwähnst du ja auch da bereits die Unterscheidung;

"Beim FC 2.x gibt es zwei Interrupt-Eingänge für den PAS-Sensor. Das Thun-Lager hat zwei phasenverschobene Signale, benutzt also die Funktion pas_change_dual.
Normale PAS-Sensoren mit nur einem Signalausgang und scheinbar auch das Sempu-Lager benutzen hingegen nur einen Pin und werden über die pas_change Funktion ausgewertet."
 
Zuletzt bearbeitet:
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Das Auswerten und Setzen von pedaling passiert hier.
Műsste es nicht "PIN" anstatt "PINE" heißen?

void pas_change_dual(boolean signal)
{
if (signal)
pedaling=bitRead(PINE,5);
else
{
"" pedaling=!bitRead(PINE,6);
#ifdef SUPPORT_XCELL_RT
ßen? cad=7500/(millis()-last_pas_event); //8 pulses per revolution
#else //Sempu or BBS with 24 Pulses per Revolution
cad=2500/(millis()-last_pas_event); //24 pulses per revolution
#endif
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Ich habe pedaling=1 gesetzt, im Serien Monitor bleibt es aber auf 0.
 
J

jenkie

Dabei seit
28.06.2011
Beiträge
1.747
Details E-Antrieb
elfkw HR + Forumscontroller
Da kommen wir der Sache schon näher, das mit den zwei Versionen des Sempu hatte ich nicht mehr auf dem Schirm. Dann musst du den Sempu V1 wählen und folgende Zeile auf pedaling=1 setzen:
jenkie/Arduino-Pedelec-Controller
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Habe ich gerade probiert, aber pedaling bleibt bei 0.

Da ich mir jetzt nicht sicher war ob ich Quatsch erzählt habe hinsichtlich der ähnlichen Signalausgabe von Sempu V1 und eRider t9 habe, zitiere ich mal hier einen Beitrag von hochsitzcola aus dem Thread zu der Custom Firmware für KT Controller:

"Custom Rom" für Kunteng S06S/KT36 Controller

Das Messprinzip ist das Gleiche wie beim Sempu T2, daß es bei ERider "T9" heißt kommt sicher nicht von ungefähr. Die Steckerbelegung ist auch identisch mit dem Sempu.
Das muss aber nicht zwangsläufig bedeuten, dass die Signalausgabe auch identisch ist.
Ich hatte von ihm die Info, dass der T9 in dem Projekt "FC für Arme" i.v.m. mit einem Digispark laufen sollte, was aber leider nicht funktionierte. Könnte diese .ino Datei evtl. hilfreich sein?

stancecoke/Minimal_E-Bike_Torquesensor_Precontroller


Ich hatte eben das Speedsignal-kabel des t9 auf den PAS Pin J3 angeschlossen und anstatt Sempu auf Standard PAS gestellt. Ich hatte erwartet, dass der FC den Puls des Lagers erkennt und den Motor startet. Dem war nicht so.

Also Multimeter mit rot an 5v und schwarz auf das Speedsignalkabel. Vorwärtsdrehen der Kurbel führt abwechselnd zu +5v und +1,35v. Rückwärts bleibt es bei +5v. Der Sensor scheint also noch ok zu sein.

Habe ich noch weitere Möglichkeiten, das Signal des Sensors auszuwerten um zu sehen, was da überhaupt ankommt?
 
J

jenkie

Dabei seit
28.06.2011
Beiträge
1.747
Details E-Antrieb
elfkw HR + Forumscontroller
lass dir doch einfach mal in der pas_change funktion den aktuellen Wert von pas_stat auf der Konsole ausgeben - der sollte sich ja ändern. Also nach dieser Zeile: jenkie/Arduino-Pedelec-Controller
Dann weißt du auch, ob pas_change vom Interrupt überhaupt aufgerufen wird - aber wenn du eine Kadenzanzeige hast, sollte das auf jeden Fall passieren.
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
So?
boolean pas_stat=digitalRead(pas_in);
Serial.print(pas_in);

Und das speed signal von t9 an pin2 von j3?
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Mittlerweile kommt keine Kadenz mehr im APC an, wenn ich an der Kurbel drehe. Daher habe ich heute auch mit dem Multimeter den Speedpin geprüft, aber dort sehe ich ja den Impuls.
 
C

Cäsar

Dabei seit
26.01.2020
Beiträge
110
Also, nachdem ich die halbe Nacht um die Ohren geschlagen habe um den Fehler zu finden, kann ich das Problem zumindest eingrenzen.

Standard PAS angeschlossen und in der config eingestellt. Keine Kadenz mehr - weder im Display,noch im Serial Monitor.

Ich habe in Verdacht, dass der FC eine Macke hat. Wenn der PAS nicht am FC angeschlossen Ist, messe ich mit dem Multimeter einen sauberen Puls zwischen 5v und 0v. Angeschlossen am FC messe ich mit dem Multimeter auch einen Puls, aber nur zwischen 5v und 4,3v.
Außer dem ein- und ausschalten scheint alles andere zu funktionieren. also Display mit Spannungsmessung, Drehmomentsignal, Tacho, Licht und der Motor läuft an, wenn torque throttle aktiviert ist.
So langsam gehen mir die FCs aus;)
 
Thema:

E-Rider Teil 3 - Integration in FC - Kadenzproblem

E-Rider Teil 3 - Integration in FC - Kadenzproblem - Ähnliche Themen

  • Conway E Rider Teil 1

    Conway E Rider Teil 1: Moin so langsam spitzt sich die Lage zu ! ein paar Fotos von einer Messe vom neuen E Rider street das Rad kommt im April 2014 auf den Markt bzw...
  • Giant GIANT RideControl App 2.0

    Giant GIANT RideControl App 2.0: Hallo zusammen, Es gibt Neuigkeiten von Giant zur neuen Ride Control App 2.0: Hier ein Preview: Auch gibt es eine Stellungnahme bezüglich der...
  • Vorbau-Schrauben für Race Face Ride 35 (7.5 NM)

    Vorbau-Schrauben für Race Face Ride 35 (7.5 NM): Guten Abend, ich bin seit Tagen auf der Suche nach Vorbau-Schrauben für den Race Face Ride 35 Vorbau. Die Schrauben werden mit 7.5 NM angezogen...
  • Green Mover Cross Rider-E Street - Kabel/Stecker Scheinwerfer zum Akku (HiPO)

    Green Mover Cross Rider-E Street - Kabel/Stecker Scheinwerfer zum Akku (HiPO): Hallo zusammen, bei meinem alten GreenMover Rad ist leider die Steckerverbindung zwischen Scheinwerfer und Kabel zum Akku zerstört worden. Weiss...
  • Ähnliche Themen
  • Conway E Rider Teil 1

    Conway E Rider Teil 1: Moin so langsam spitzt sich die Lage zu ! ein paar Fotos von einer Messe vom neuen E Rider street das Rad kommt im April 2014 auf den Markt bzw...
  • Giant GIANT RideControl App 2.0

    Giant GIANT RideControl App 2.0: Hallo zusammen, Es gibt Neuigkeiten von Giant zur neuen Ride Control App 2.0: Hier ein Preview: Auch gibt es eine Stellungnahme bezüglich der...
  • Vorbau-Schrauben für Race Face Ride 35 (7.5 NM)

    Vorbau-Schrauben für Race Face Ride 35 (7.5 NM): Guten Abend, ich bin seit Tagen auf der Suche nach Vorbau-Schrauben für den Race Face Ride 35 Vorbau. Die Schrauben werden mit 7.5 NM angezogen...
  • Green Mover Cross Rider-E Street - Kabel/Stecker Scheinwerfer zum Akku (HiPO)

    Green Mover Cross Rider-E Street - Kabel/Stecker Scheinwerfer zum Akku (HiPO): Hallo zusammen, bei meinem alten GreenMover Rad ist leider die Steckerverbindung zwischen Scheinwerfer und Kabel zum Akku zerstört worden. Weiss...
  • Oben