Nouvelle discussionNouveau message Derniers messages Recherche forum
777 messages.      5 6 7 8 9 10 11 12 13 14 15   - Décodage du protocole serial BAFANG BBS0x [18542]
Yamty35
01-05-2018 à 20h07
Acceder au profil du membre
Beau travail Jacques !
Il ne reste plus qu'à faire un boitier étanche.

De mon côté, j'ai scanné les codes de requêtes au contrôleur, voici mes résultats temporaires :

// #11 #01 --> 00 2A Variable : 1er chiffre : 0, 1, 2 ou 3 ; 2eme chiffre identique au 2eme de #11 #1C
// #11 #06 --> 00 Toujours = 0
// #11 #07 --> 00 Variable : en rapport avec le courant ou le couple ??
// #11 #0B --> 01 Toujours égal à 1
// #11 #0E --> 00 Variable : Position de la gachette (de 0x28 à 0xC8)
// #11 #0F --> 00 Frein 1 si appuyé
// #11 #10 --> 00 00 Variable : Comptage de tours de roue depuis la mise sous tension (octet dédoublé)
// #11 #1C --> 1F 64 Variable : 1er chiffre : 0x1F ; 2eme chiffre identique au 2eme de #11 #01 (de 0x24 à 0x29)
// #11 #1D --> FF FF FE Variable : en rapport avec la vitesse ??
// #11 #31 --> 30 30 Variable : Tension nominale (48V --> 0x30) ; varie un peu : 0x30, 0x31
// #11 #90 --> 90 40 D0 Constant


Les codes #11 #01 et #11 #1C semblent très liés mais je n'arrive pas à comprendre à quoi ils correspondent.

Le code #11 #1D semble envoyer une donnée signée sur 3 octets ... analyse en cours




Jacques, 17 msg, 66 ans. (FR-35).
00 2A Variable : 1er chiffre : 0, 1, 2 ou 3 ; 2eme chiffre identique au 2eme de #11 #1C // #11 #06 --> 00 Toujours = 0 // #11 #07 --> 00 ...[/cite]"', 'message_saisi');">  Citer Alerter [567421]
Yamty35
01-05-2018 à 21h56
Acceder au profil du membre
Voici les données extraites de la requête #11 #1D.

La valeur de repos est -2 (0xFF 0xFF 0xFE)

Dès que l'on fait tourner la roue, la valeur est positive et semble correspondre à la vitesse de rotation.

On arrête la roue, la valeur renvoyée est très négative et tend à revenir vers zéro (en fait -2)

Déroulement du test :
0 - 2s : roue arrêtée
2 - 9s : roue lancée à la main puis freinée
10 - 16s : relaxation ?
16 - 19s : roue arrêtée
19 - 26s : roue lancée à vitesse à peu près constante puis freinée
27 - 34s : relaxation ?

Est-ce que ce type de courbe vous parle ?

Jacques, 17 msg, 66 ans. (FR-35).
 Citer Alerter [567435]
publicité
01-05-2018 à 21h56
Un watt-mètre pour votre vélo électrique ?
Un wattmètre pour connaitre à tout instant la puissance du moteur de votre VAE, et l'autonomie restante. 25 euros.
cyclurba.fr/Velos_electriques/208/Mesure-wattmetre.html
Lien commercial -187-


Membre9554
02-05-2018 à 10h43

Yamty a écrit :
Beau travail Jacques !
Il ne reste plus qu'à faire un boitier étanche.


Merci ;)
Et merci aussi pour tes retours de test !
En fait le plus ennuyeux reste toujours l'alimentation car les modules chinois tout fait (60V vers ~7-9V) sont toujours assez gros : trop volumineux à mon gout pour l'intégrer dans un display compact, même en 500 mA ...
Il y aurait bien la solution de Ferias77, super compact mais relativement cher par rapport au reste du matos...
(à noter que je cherche un module prêt à l'emploi et facilement intégrable sur proto)

Module R-78HB5 : 9/72V vers 5V stab - 500 mA / 2.5W max
Voir sujet cyclurba.fr

Par exemple chez Conrad
- Hauteur 17.5 mm
- Longueur 11.5 mm
- Larg. 8.5 mm





@SuperJC,
Oui très intéressant ce code, je regarderai aussi du coté des interruptions (sur 2 boutons), mais plus tard.
Là j'aimerais déjà régler la partie vitesse.

Membre9554, 19093 msg. Ce membre n'est plus inscrit.
 Citer Alerter [567479]

Message modifié le 2018-05-02 11:15:45 par Jacques74.
Superjc
02-05-2018 à 18h13
Acceder au profil du membre
C’est difficile de faire un petit boitier étanche
J’aurais tendance à prendre le problème à l’envers
Utiliser la console étanche qui indique déjà bien l’essentiel mais en lui envoyant les infos par l’arduino
De plus il y a un champ libre…


Christophe, 3256 msg, 63 ans. Guyancourt (FR-78). [mon blog] 36V 250W VTT bafang swxk 185R MetV and BBS01 Cycloboost
 Citer Alerter [567513]
Membre9554
02-05-2018 à 21h57
Mon but final n'est pas le même :
J'aimerais réduire le display BBS en plus petite taille (moins exposé/plus discret) et pouvoir envoyer si envie des commande de reprogrammation ou communiquer avec mon smartphone.
D'ailleurs il fort possible que je passe assez rapidement sur un module ESP32 avec Oled, (Wifi) et Bluetooth LE intégré
Pour 10 euros ça vaut la peine de creuser ces uProcesseur
Avec une impression 3D + vitre collée, on doit arriver à faire suffisamment étanche.

fr.aliexpress.com



Membre9554, 19093 msg. Ce membre n'est plus inscrit.
 Citer Alerter [567561]

Message modifié le 2018-05-03 14:14:15 par Jacques74.
Superjc
03-05-2018 à 06h55
Acceder au profil du membre
Moi faut que je bascule tout sur le Garmin
On peut le programmer !
www.dcrainmaker.com


Christophe, 3256 msg, 63 ans. Guyancourt (FR-78). [mon blog] 36V 250W VTT bafang swxk 185R MetV and BBS01 Cycloboost
 Citer Alerter [567576]
Yamty35
03-05-2018 à 22h30
Acceder au profil du membre
Les ESP32 sont très bien, ils intègrent en notamment :
des touches sensitives,
un capteur à effet hall
un espace de stockage flash (SPIFFS) permettant de stocker des logs

Il est possible de les mettre à jour sans fil (OTA : Over The Air), ce qui permet de les enfermer dans un boîtier étanche.

Pour la réalisation, l'afficheur n'ayant besoin que de peu de fils (I2C), ne serait-il pas mieux de le séparer du processeur et de le mouler dans une résine ou mastic pour le placer au plus près du guidon (je pense essayer avec du mastic polyurethane Sikaflex 11FC) ?

Si vous avez des infos pour insérer des infos sur l'écran d'un 850C, je suis preneur.

J'ai crée un espace GitHub "Bafang" où je rassemble mes travaux ; c'est en cours de progression, j'ai complété et mis à jour mon tableau.


Jacques, 17 msg, 66 ans. (FR-35).
 Citer Alerter [567703]
Membre9554
03-05-2018 à 23h24
Quand je vois les Cycles Analyst ou les Batt-Man, il n'y a rien de bien compliqué au niveau étanchéité, et ça très bien le long terme sur un vélo :
- boitier plastique à épaulement + vitre synthétique, sortie câble(s) sur le dessous.
Évidemment, on évitera de passer tout ça au karche r ... ^^

Là j'ai un petit soucis d'alim avec mon Batt-Man de plus de 4 ans (sur cintre), mais ça vient du coté shunt, qui est placé sur le câblage vers le moteur et peu protégé.
Pas du boitier ni du CI ou LCD d’ailleurs qui fonctionne très bien sur USB.


Amélioration boitier, voir : cyclurba.fr



Membre9554, 19093 msg. Ce membre n'est plus inscrit.
 Citer Alerter [567707]

Message modifié le 2018-05-04 09:12:06 par Jacques74.
Membre9554
04-05-2018 à 14h08
Re,
J'ai trouvé une librairie pour Oled graphique 1306 super lite !
2% de mémoire dynamique utilisée sur un Nano contre plus de 70% avec celle d'Adafruit...

Voir ici :
forum.arduino.cc

... en plus on a a dispo au moins une quarantaine de fontes possible
Là j'ai fait des essais avec gros chiffres en imitation digital, ça donne super bien et l'affichage est très rapide !
(I2c optimisé)
Photos à venir...

Membre9554, 19093 msg. Ce membre n'est plus inscrit.
 Citer Alerter [567768]

Message modifié le 2018-05-07 17:45:51 par Jacques74.
publicité
04-05-2018 à 14h08
Lien commercial -184-

Membre9554
07-05-2018 à 16h33
Problème récupération vitesse, yes ça semble OK !

La commande #11 #20 renvoi bien des RPM roue et sur les 3 bytes reçus il faut concaténer les 2 premiers !
... je m'étais bien trompé lors de mes premiers essais en prenant les 2 derniers. ^^

Le troisième byte ne bouge pas à l'arrêt et reste chez moi sur hex 20 (32 déc).
En faisant tourner la roue il varie, mais je ne sais pas à quoi il correspond... une sorte de checksum ?
Si vous avez une idée... ?
Enfin, visiblement on peut s'en passer.


Mon bout de code de récup RPM roue, dans un loop de 500ms et à 1200 bauds :

unsigned char tabl_val[3] = {0x00}; 
unsigned int RPM = 0;

Serial.write(0x11); // *** entrée mode dialogue
  Serial.write(0x20); // get vitesse - Renvoi 3 byte !!
  delay(2);
  if (Serial.available() > 0) {
    tabl_val[0] = Serial.read();
    tabl_val[1] = Serial.read();
    tabl_val[2] = Serial.read(); // CRC ?
  }
  RPM = (tabl_val[0] < <  8) +  tabl_val[1]; // concaténer les 2 premiers octets (char) en integer


J'ai pu le vérifier de cette façon :
Essais roue levée à la gachette à fond, sur le 4ème pignon, tension bat. 47.4V, j'ai 34.4 Km/h affiché sur le display P850C.
Relevé sur Arduino = 264 RPM (retour hex 01 08 + CRC)
264 * 2.166m (ma roue 27.5'') = 571.8 * 60 = 34309 / 1000 = 34.3 Km/h

J'essaierai de faire une petite vidéo pour vous montrer l'affichage d'essais avec les hex...
Je suis content car c'était le dernier truc qui me bloquait pour poursuivre ce display minimaliste mais néanmoins bourré de possibilités

Membre9554, 19093 msg. Ce membre n'est plus inscrit.
 Citer Alerter [568104]

Message modifié le 2018-05-08 13:10:33 par Jacques74.
777 messages.      5 6 7 8 9 10 11 12 13 14 15   - Décodage du protocole serial BAFANG BBS0x - Lu 178483 fois. [18542]
retour en haut de page Messages récents
répondre dans cette discussion
En ce moment sur le tchat
Le 05 à 21h16 Havoc Énorme promo Decathlon : le E-Touring perd 1 000 € ! 2 499 €
Le 08 à 10h41 Cycle Bonjour,
pourriez vous me préciser la section du site la plus appropriée pour demander conseil de réparation sur un circuit imprimé...
Le 09 à 17h37 Havoc S'il est d'origine, autant en parler ici: cyclurba.fr
Le 11 à 13h17 Cycle Merci
Le 21 à 21h12 Havoc Nakamura E-Summit LTD à 999,99 € pendant quelques jours chez Intersport

Réparer et entretenir son vélo soi-meme
Lien commercial -178-