DIY - [MMOS + VESC] Création d'un firmware FFB pour VESC

  • Bonjour à tous,

    Il y a de cela quelques mois (voir peut etre années :) ) j'avais posté un message pour vous demander si certain d'entre vous utilisais des VESC à la place de l'IONI.

    Apres avoir acquis un MIGE 130st, j'ai décidé de me lancer un peu dans du dev.

    Et bien, ca marche :

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    Une tuerie par rapport au T300Rs... le jour et la nuit... et pourtant, je ne suis qu'au debut des réglages :P

    J'utilise MMOS, un VESC et un MIGE ; le tout alimenté par une batterie de 36V.

    Un peu de technique pour ceux qui ont construit leur volant :

    • Un mige 130-15015 avec un encoder ABI 2500ppr (j'ai un biss-c 22b dans un tiroir pour plus tard :P ) :)
    • Un MMOS qui est alimenté en +5V par le VESC, et qui recoit le signal ABI de l'encoder, et qui envoie un signal PWM+DIR (à 8.2khz sur la video) <= tout ce qu'il y a de plus classique :oui:
    • Un VESC qui est alimenté par une batterie de 36V Li-Ion, qui recoit le signal AB de l'encoder et le signal PWM+DIR et qui commande le Mige. :yes:
    • Une Batterie de 36V, qui est couplé avec un BMS 2 entrée pour recharger automatiquement la batterie quand elle se vide. Pourquoi une batterie : pour stocker le courant de regen plutôt que de le perdre en chaleur... Une alimentation de 36V avec un gros condo pourrait tout aussi bien fonctionner...

    En attendant une interface HID un poil plus complète, je continue avec MMOS ;)

    Au plaisir d'échanger avec vous.

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

  • Adaptation du paramétrage pour passer à 35khz : le controleur recalcul maintenant la position du moteur et la génération du signal au moteur 35000 fois/s. Le FOC (Field oriented contrôle) marche aux petits oignons...

    Effet ressenti : un feeling plus direct des transitions de couple, mais aussi plus de souplesse dans les effets, plus aucun bruit dans le moteur.

    Moteur réglé à 7A, je me fais beaucoup brassé, je n'imagine pas monter au dela...

    Vincent

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

  • je te lis avec attention pour savoir jus-qu 'ou tu peu aller , moi aussi en MMOS

    n oubliez pas qu un con qui marche ira toujours plus loin qu 'un intellectuel assis

    AMD 5800X3D W10 RTX4070Super 3X27pouces et Pico 4 MMOS2014 Ionicube

    :aspi:

  • je suis en cours de migration pour sortir de MMOS : j'explore plein de piste : VNWheel, OpenFFBoard, Etienne... :-D

    merci à tous pour leur patience : autant je me "débrouille" en commande numérique de moteur (FOC), autant je suis une buse finie sur l'HID :P

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

    Message modifié 1 fois, dernière modification par Carlton (26 mars 2020 à 15:43).

  • des nouvelles fraiches de cette nuit.

    Première session en condition réelle : hormis le fait que j'ai oublié de virer le deadzone de 2% du volant pour la vidéo.

    Le feeling est topissime :

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    Il ne me reste plus qu'à apprendre à piloter :D :D :D

    Le petit clic que vous entendez vient de ma pédal de frein, ca vous donne une idée du bruit du volant :)

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

  • Le support moteur avec les trous dans la table :ptdr::mdr:

    Par contre le volant dans le jeu n'a pas l'air de suivre proportionnellement le volant en vrai, comme s'il y avait un facteur multiplicateur entre les deux, c'est la vidéo ?

    Vais finir par craquer et par changer mes shunts moi, surtout que j'ai fait marcher le custom hid sur T4.0 :roll:

  • je vois que tu avance et j ai un volant qui ne sert pas chez moi je veut bien te le céder le diamètre est de 270mm se sera au pire plus confortable

    n oubliez pas qu un con qui marche ira toujours plus loin qu 'un intellectuel assis

    AMD 5800X3D W10 RTX4070Super 3X27pouces et Pico 4 MMOS2014 Ionicube

    :aspi:

  • j ai bien une idée!!!!!!!:hihihi::hihihi::hihihi::hihihi:

    n oubliez pas qu un con qui marche ira toujours plus loin qu 'un intellectuel assis

    AMD 5800X3D W10 RTX4070Super 3X27pouces et Pico 4 MMOS2014 Ionicube

    :aspi:

  • si completement!!!:hihihi:

    n oubliez pas qu un con qui marche ira toujours plus loin qu 'un intellectuel assis

    AMD 5800X3D W10 RTX4070Super 3X27pouces et Pico 4 MMOS2014 Ionicube

    :aspi:

  • humm, alors les vitesses sont auto, sans shifter, je suis marron :)

    Pour la synchro c'est réglé : pb de calibration dans le jeu, maintenant je suis au poil :P

    pour la roue, j'en ai acheté une, je l'attends... Zut... En tout cas pour un controleur de moteur à 60€, je suis hyper content du résultat :D

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

  • hâte d avoir tout les détails techniques alors!!!!

    n oubliez pas qu un con qui marche ira toujours plus loin qu 'un intellectuel assis

    AMD 5800X3D W10 RTX4070Super 3X27pouces et Pico 4 MMOS2014 Ionicube

    :aspi:

  • Hello,

    un petit retour sur les détails techniques, et la config :

    Alimentation HID Driver Moteur Encoder Moteur
    Batterie 36v SMT32 Discovery VESC 4.12 ABI Mige 15015
    BMS 10A MMOS FW FFB basé sur la 4.2 CPR 2,5k 2,3Kwh - 20Nm
    PWM+DIR 16kHz Field Oriented Control + Encoder ABI 35Nm possible...
    15e 60e 300e


    Comme vous pouvez le voir, il s'agit d'une config "MMOS" standard, à part le VESC qui remplace l'IONI et la batterie. Dans les jeu, la détection marche toute seule :P

    Pourquoi ces choix :

    • Le vesc est un contrôleur de moteur Brushless en OpenHardware et OpenSource qui vaut env 60 euro et qui gère le FOC.(http://vedder.se/2015/01/vesc-open-source-esc/)
    • La batterie : surprenant au premier abord, n'est ce pas, un FFB sur batterie, ca fait pas sérieux ;) et bien tout simplement pour récupérer le courant généré par le BEMF, à la place de la vilaine résistance de 10ohm.

    J'ai du apporté une modification sur le VESC, j'ai remplacé les deux résistances de mesure de courant de 0,001mOhm par des 0,005. Il faut donc faire un coup de fer à souder. Je vais tester avec un VESC d'origine un de ces jours mais je pense que le fealing sera moins bon.

    Le FOC est une méthode de contrôle des moteurs qui permet de réduire drastiquement le bruit dans le moteur, de maximiser le couple et surtout de réduire la consommation. A titre d'exemple, quand je donne 4A au moteur (6Nm), je consomme 0,15Ah sur la batterie. Comment ? et bien parce que l'impulsion dure tellement peut de temps sur la bonne bobine du moteur que cela décharge très peut la batterie. Une batterie 10s2p vaut dans les 20e :) il ne faut pas oublier le chargeur ! :)

    Les fréquences de mises à jours du moteur sont les suivantes :

    • 16kHz pour le signal PWM
    • 35kHz pour le calcul de position de moteur et sont déplacements
    • Je vous fait grâce des plus de 100 paramètres qui permettent de régler le comportement du FOC pour le moteur et l'application que l'on en fait ;)

    Le VESC se met à jour et se paramètre en USB à l'aide d'un client (vesc-project).

    Cette config est fonctionnelle et répond très très précisément. Je suis passé d'un T300rs à ce setup... et... j'ai un T300 à vendre :) La souplesse et la fluidité du DD donne l'impression d'avoir un vrai volant dans les mains.

    La suite : passer sur un encoder SINCOS de 22b, mais pour ca, il faut que je remplace MMOS, et passe le FW FFB en 100% numérique pour retirer le PWM. Je réfléchis à plusieurs solutions sur ce sujet ;) Tester avec un VESC d'origine. Rajouter un filtre passe bas sur l'entrée PWM, mettre un limiteur de couple max (Nm max/s), mettre un détecteur de lâcher de volant, rajouter un "reconstruction filter"... Du plus qui ne changera pas la qualité du FFB, mais son confort d'utilisation général. Monter en terme de couple !

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

  • Passe directement à un encodeur absolu Biss-C, le prix est le même alors que le sincos n'est pas absolu. A condition d'en trouver, à un prix raisonnable....

    Et l'implémentation sera aussi beaucoup plus simple je pense (si elle n'est pas déjà faite).

  • Hello, je me suis planté, c'est bien un biss-c que j'ai : jkd-4-22PF-G05BL-B-0.3m

    un prix raisonnable, je ne sais pas, c'est toujours un coût :-D mais pour un produit de ce type, j'ai trouvé ca acceptable.

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)

  • nono67

    Si tu cherches un biss-c, regarde la référence ci-dessus

    Core I5-12600K - ASUS Z690 - Sound BlasterX AE-5 Plus - RTX 3080 FE - 32Go RAM - Châssis Motedis X-Dream - Volant Thomconcept Simucube 1 small mige 130ST-M10010 (20 Nm) Biss-c - Samsung 32/9 G9 49" 5120x1440 - Bass-shakers - Heusinkveld Pédales Sim Ultimate+ - Heusinkveld Handbrake - Shifter Manu-Factory SSH14 - OSP Simpro Vocore 5"

    Mon cockpit     Mon SimXperience G-Belt      Mes Dash

  • en tout ca c'est ce que j'ai compris

    Carlton te répondra car moi, je n'y connais rien

    Core I5-12600K - ASUS Z690 - Sound BlasterX AE-5 Plus - RTX 3080 FE - 32Go RAM - Châssis Motedis X-Dream - Volant Thomconcept Simucube 1 small mige 130ST-M10010 (20 Nm) Biss-c - Samsung 32/9 G9 49" 5120x1440 - Bass-shakers - Heusinkveld Pédales Sim Ultimate+ - Heusinkveld Handbrake - Shifter Manu-Factory SSH14 - OSP Simpro Vocore 5"

    Mon cockpit     Mon SimXperience G-Belt      Mes Dash

  • Je ne sais pas s'il marche, en tout cas, c'est celui que j'ai acheté.

    Mais comme MMOS ne le gere pas, je peux pas l'utiliser... ou alors je n'ai pas vu l'option :)

    Volant DIY (OpenFFBoard + BusCAN + VESC + Mige15015 + BissC c.f. forum pour plus d'info), Pédales DIY (LoadCell, capteur à effet hall, impression 3d, sans fil), Roue DIY (16 boutons, 4 encodeurs, sans fil)