Ceux qui suivent ShamWerks sur Facebook ont déjà eu un aperçu du bouzin en Janvier 2015! Il était temps de le finaliser cet article!
J'étais tombé sur une photo de banc de contrôle d'arbre à cames, sur le blog de Vince/PanelVan (ici)...
Comme je venais d'acheter un AAC perfo pour le KG, l'idée d'en visualiser les courbes (et de vérifier les données fournies par le constructeur!) me plaisait bien, et j'étais sûr qu'il était possible de bricoler ça à moindre coût... Et je suis d'un naturel têtu.
Ben oui, en y réfléchissant bien, il doit y avoir moyen de jeter ensemble un moteur pas-à-pas, un pied à coulisse digital (les modèles chinois ont une sortie série), et un Arduino pour contrôler tout ce p'tit monde et remonter les données vers un PC via le câble USB... Non?
Pour ceux qui n'aiment pas la lecture (aka "TL ; DR Team")
Bref, après "quelques" heures de bricolage, j'ai un banc fonctionnel : voilà le résultat, en vidéo :
(à voir en plein écran, HD 720p minimum pour voir les détails des résultats)
Désolé pour la qualité moyenne de la vidéo, qui en plus ne montre pas la dernière version du soft... J'vous en referai une avec un meilleur éclairage à l'occasion!
Maintenant, pour les curieux qui n'ont pas peur de la lecture... Continuez à scroller!
Electronique
J'utilise un arduino pour faire l'interface avec le PC, mais il ne peut pas contrôler le moteur en direct, il lui faut un étage de puissance (driver) ; j'en ai trouvé un modèle chinois à base de L298, pour moins de 5 € sur dx.com (ici).
Attention, si vous utilisez le même driver, ne faites pas confiance au régulateur 5V intégré : je comptais l'utiliser, mais il a cramé au premier branchement ; je m'en suis sorti avec un condensateur claqué sur l'arduino...
Dans la série made-in-china, j'achète aussi un pied à coulisse digital pour 15 €... D'ailleurs, ça serait à refaire, j'investirais un peu plus sur ce poste : si la partie électronique reste identique sur tous les modèles, il n'en va pas de même pour la partie "mécanique". Les modèles premier prix ont tendance à "accrocher" un peu dans leurs mouvements, ce qui peut engendrer des erreurs de mesure.
Comme je n'ai pas envie d'avoir une pile qui s'use dans le pied à coulisse, je fais un petit montage pour l'alimenter en 1.64 V avec un régulateur LM317, qui génère cette tension depuis le 5V présent sur l'Arduino (la pile d'origine fait 1.5V).
Je colle aussi deux transistors pour remonter les signaux (clock et data) du pied à coulisse vers un niveau que l'Arduino accepte (2.5V minimum). Un peu overkill comme méthode, y'aurait a priori moyen d'éviter les transistors en alimentant le pied à coulisse avec une tension supérieure, mais je trouvais pas ça clean...
Le pied à coulisse est démonté pour pouvoir souder directement le câble de sortie dessus (câble de téléphone, ça marche très bien!) ; il existe des câbles spécifiques aux pieds à coulisse, mais ils sont vendus plus chers que le pied lui même, alors je préfère l'option soudure! Le câble est ensuite fixé au pied à coulisse avec deux serflex pour éviter les contraintes sur les soudures, qui finiraient forcément par lâcher...
Après validation sur du montage sur platine d’essai (qui marche du premier coup, j'en suis le premier surpris!), je passe mon petit circuit sur une plaque à bandes.
Vous trouverez ci-après le schéma de mon circuit. Attention, je n'ai pas la prétention de dire que c'est la meilleure façon de faire, l'électronique c'est pas mon métier... Mais mon montage fonctionne, libre à vous de l'améliorer/modifier selon vos besoins!
Le modèle Sketchup est téléchargeable : ICI (4Mo).
Composants :
C2 : condensateur polarisé au tantale - 1 µF - 35 V
R1: 240 Ω
R3: 75 Ω
R2, R4, R5, R6: 10 kΩ
Les résistances sont toutes des couche métal 1/2W 5%. Pour information, R1 et R3 sont celles qui "règlent" le régulateur de tension (Reg) pour qu'il donne 1.64V...
Les sites suivants m'ont bien aidé dans la conception de mon circuit :
Coté banc maintenant : il faut faire quelque chose qui tient un peu la route, si on veut avoir des mesures un tant soit peu sérieuses.
Je pars d'un profilé Bosch Rexroth 45x45mm, acheté sur eBay, mais à l'avenir je passerai plutôt par Motedis, ils sont moins chers et ont tous les accessoires qui vont avec...
Les rainures permettent de déplacer les supports, et le pied à coulisse, rendant le banc adaptable pour pouvoir mesurer d'autres AAC que des VW.
Pour le moteur pas à pas, comme j'ai désossé pas mal d'imprimantes et de photocopieurs dans le passé, j'ai un petit stock de moteurs/transmissions de coté... Donc j'ai pioché dans mes réserves : j'ai trouvé un moteur 200 pas par tour, avec une démultiplication 1/3 à courroie crantée ; on se retrouve donc avec 600 pas à la sortie, soit 0.6° d'incréments sur 360°... Pas mal!
Je tourne dans une chute de rond d'alu un adaptateur pour mon moteur PàP, et un autre pour l'AAC (avec vis de pression en nylon pour pas marquer le palier de l'AAC), reliés par un coupleur flexible. En l'état actuel du système, il faudra tourner un nouvel adaptateur pour chaque AAC qui aurait un diamètre différent... Acceptable pour moi, mais un montage avec un petit mandrin devrait être envisageable pour éviter ça.
Avec des roulements de roller, un bout de cornière et des chutes d'alu, je fais une paire de supports pour l'AAC d'un coté, et pour l'adaptateur de sortie du moteur pas-à-pas de l'autre.
Enfin, le pied à coulisse est fixé sur une cornière ; je coupe un poussoir à la disqueuse (finition au tour) pour le fixer sur le bec du pied, ce qui permet d'avoir une cinématique identique à celle des poussoirs dans le moteur.
La sortie du moteur est connectée l'adaptateur AAC avec un accouplement flexible en aluminium (5€ en Chine, encore...), qui permet de pardonner un peu les erreurs d'alignement. C'est un 10mm-10mm, que je réalèse au tour à 12mm pour l'ajuster sur les pièces que j'avais déjà faites.
Pour finir, pour protéger l'électronique, je bricole un boitier avec une chute de plexi ; deux coup de scie sauteuse, un coup de décapeur thermique pour plier... Le résultat est loin d'être parfait esthétiquement, mais il fait son boulot de protection!
Je tourne des entretoises pour fixer les circuits électroniques dans un bout de rond PVC... Oui, je sais, des vis nylon, ça aurait été mieux, j'ai fait avec ce que j'avais dans les tiroirs hein, en mode récup'!
Là, le système est utilisable en l'état, même s'il y a des points qui mériteront d'être améliorés.
Sur ces photos on voit que le rappel du pied à coulisse se fait grâce à des élastiques : ça ne fonctionnait pas parfaitement, le PàC ne coulissait pas bien, ce qui donnait des erreurs de mesure.
Sur la vidéo en début d'article, on voit que c'est un poids (une rallonge de clé à cliquet, qui tient sur le poussoir avec un aimant néodyme) qui joue maintenant ce rôle de rappel ; ça fonctionne nettement mieux comme ça!
Évolution du banc
Bon, en l'état ça fonctionne mais on peut améliorer tout ça... Alors que j'étais en train finaliser cet article, un pote m'a donné une bonne idée pour simplifier le déplacement du pied à coulisse (merci aSa!), du coup voilà déjà la première évolution du banc!
L'idée, c'est d'utiliser un levier à serrage excentrique pour verrouiller plus facilement le pied à coulisse ; il se trouve que les leviers de serrage de selle Décathlon à 5€ (décidément tout est à 5€ dans cet article!!) font parfaitement l'affaire (voir ici).
Alors hop, commande chez Motedis de quelques longueurs du même profilé 45x45mm (j'ai pris des longueurs de 10cm, 15cm et 25cm, n'étant pas certain de comment j'allais procéder - prix HT : respectivement 1.27€, 1.64€, 2.38€). Je leur ai aussi commandé des blocs taraudés (écrous en T), prévus pour les glissières du profilé (0.30€HT pièce - à ce prix là je m'emmerdebête même pas à bricoler!).
Au passage je rigidifie le support du pied à coulisse (deux équerres le tiennent maintenant), pour m'assurer qu'il reste bien péremptoire perpendiculaire au banc.
Le résultat est parfait (cf. vidéo) : déplacer le pied à coulisse se fait en quelques secondes, il n'y a plus à galérer avec une clé, et surtout plus à ajuster le poussoir sur l'axe de l'AAC. Top!
Je repasse par la case tour à métaux, pour refaire l'adaptateur AAC : il n'était pas bien ajusté sur la portée de ce dernier, ce qui engendrait un décalage cyclique, et les erreurs de mesure qui vont avec.
Et comme je viens de rentrer du stock de POM (PolyOxyMéthylène), je fabrique 2 adaptateurs : un pour AAC Type 1 (Ø 25 mm), et un pour AAC pied moulé (Ø 24 mm). Les deux ont un diamètre extérieur identique (Ø 34 mm) pour pouvoir les changer sans avoir à modifier la hauteur des supports sur roulement.
Coté palpeur, le poussoir que j'avais modifié pour monter sur le bec du pied à coulisse m'a lâché : l'acier est très dur, et n'a aucune élasticité ; j'ai serré un peu fermement et il a cassé comme du verre.
J'en ai refabriqué un, cette fois-ci en faisant 2 points de soudure au MIG en haut de la fente, pour empêcher toute "ouverture" au serrage. Plus de problème maintenant, même en serrant un peu fort.
Dans la foulée, j'ai fait un autre palpeur avec un vieux poussoir pour pied-moulé ; même méthode : disqueuse, 2 points de soudure, perçage/taraudage. Je vais comme ça pouvoir mesurer mon arbre à came "Okrasa" (Joe Ruiz) pour pied moulé : le poussoir Type 1 ne fonctionne pas avec un AAC pied moulé, la came est trop petite et le poussoir touche les zones brutes de fonderie... Merci au passage à Eric "Underdog" Simon de m'avoir trouvé un vieux poussoir pied moulé à sacrifier!
Et voilà le résultat!
J'ai aussi rajouté un bout de profilé avec une pointe pour aligner précisément les AAC sur le repère de la poulie : ça permet d'aligner précisément les courbes pour pouvoir les comparer dans le logiciel.
Logiciel
Maintenant coté PC, il fallait un bout de logiciel pour piloter le banc, en recevoir les données et les afficher de façon intelligente...
Je m'y suis collé et j'ai pondu CamWerks.
Si ça vous intéresse, voilà le soft, licence open source GPL, téléchargeable et utilisable gratuitement. Support limité par contre... J'vous aime bien, mais j'ai pas que ça à faire!
Il s'agit d'une application Java, il vous faudra donc avoir Java 1.7 minimum d'installé sur votre machine pour l'utiliser.
Dézippez l'archive Zip, et lancez sur "CamWerks.jar", ça devrait marcher...
Si vous voulez simplement voir les fichiers résultants de mes tests :
Le zip vous suffira : je vous ai inclus dedans les fichiers résultant des différents AAC que j'avais sous la main (fichiers avec extension ".cam", dans le dossier "Cam Files"), même si vous n'avez pas le banc vous pourrez quand même les afficher dans l'application.
Si vous voulez vous monter un banc comme le mien :
La c'est un poil plus compliqué, il vous faudra :
Flasher votre arduino :
installer la librairie Arduino Serial Command sur votre IDE (télécharger ici - elle permet de gérer la comm USB)
flasher l'arduino avec le fichier "sketch_CamWerks.ino" (il est dans le Zip, dans le dossier "Arduino")
Installer la librairie RXTX de communication parallèle pour pouvoir communiquer avec l'Arduino (le site originel rxtx.qbang.org est down, mais je vous ai mis à disposition la librarie ici : binaire / source).
edit 20210819 : Paulo de afrautotecnica m'a indiqué que la librairie RXTX ne fonctionnait pas sur Windows 10 64bits, mais une version compatible est disponible ici : fizzed.com/oss/rxtx-for-java. Merci Paulo pour ce partage!
Pour être sûr que ces librairies restent disponibles, je les ai aussi mises à disposition ici :
Validation : une fois l'Arduino connecté et flashé, depuis l'outil "Serial Monitor" de l'IDE, vous pouvez essayer d'envoyer les commandes suivantes pour vérifier le comportement de l'Arduino :
PING : l'Arduino répond PING_ACK.
STEP : l'Arduino répond STEP_ACK, et le moteur pas-à-pas avance d'un pas.
MEASURE : l'Arduino répond la valeur de la mesure du pied à coulisse.
Pour toute autre commande envoyée l'Arduino devrait laconiquement répondre "What?".
Pour ceux qui voudraient mettre les mains dans le code, j'ai mis le source du projet sur GitHub : attention, le code n'est vraiment pas beau à voir, j'ai fait ça à la va vite, en mode copier-coller...
C'est ici que ça se passe : https://github.com/ShamWerks/camwerks
Cycles de mesure :
Il arrive qu'il y ait des imprécisions lors de la prise de mesure : pied à coulisse qui grippe, poussière sur la came... Et on se retrouve avec un décrochement sur la courbe ; généralement pas grand chose, quelques centièmes tout au plus... Mais pour éviter ça j'ai implémenté une mesure sur plusieurs cycles : la came est mesurée N fois (un tour complet à chaque cycle), puis la moyenne de chaque point est calculée, ce qui lisse les erreurs éventuelles. Le temps de mesure de la came est multiplié d'autant, mais je ne pense pas que ce soit un problème de devoir attendre un peu plus.
Vue des profils de cames en bout d'AAC :
Il m'aura fallu faire appel à un ami chercheur en maths à l'INRIA/CNRS pour réussir à dériver cette vue depuis les données mesurées! (merci JB pour l'après-midi thé-biscuit-maths).
Le résultat n'est pas parfait, et il ne serait de toutes façons correct qu'avec un poussoir plat, si le poussoir est arrondi (c'est le cas sur les pieds-moulés), ou type "roulement", le rendu sera erroné.
De plus j'ai du ajouter un algorithme de lissage (moyenne sur fenêtre glissante) pour que les cames aient une bonne représentation ; le résultat est à prendre avec des pincettes, donc.
Historique des versions :
2017-04-05 : version 0.1 : première version mise en ligne
2019-11-27 : version 0.2 : mise à jour pour fixer un bug qui faisait s'arrêter le cycle de mesure après 1 step du moteur (l'arrondi d'une variable de type double qui passait en valeur "infinie?! J'ai patché à l'arrache mais il faudrait que je trouve la source du problème à l'ocasion)
Résultats
Voilà le résultat des mesures des différents AAC que j'avais sous la main...
Comme vous pouvez le voir, le premier onglet est un Rapport Détaillé qui donne différentes informations : durée d'ouverture en fonction de la levée, levée max, levée à la soupape en fonction du rapport des culbuteurs, lobe center et croisement.
Le second onglet présente les courbes de levée de chaque came ; le troisième et dernier onglet propose une vue du profil des cames.
Enfin, j'ai prévu une option dans le logiciel pour comparer 2 AAC, qui permet de superposer les courbes de 2 arbres à cames pour visualiser leur différence.
Arbre à cames L&G R280 Lobe 108°
Bon, ben y'a plus qu'à passer au banc mon L&G R280 Lobe 108 tout neuf, et comparer le résultat avec sa fiche technique!
Voilà ce que j'ai mesuré avec mon banc :
Et maintenant, comparaison avec les données fournies par L&G (l'épure d'admission de distribution est donnée par L&G pour 1.27mm). Les résultats parlent d'eux mêmes :
Valeur donnée par L&G
Valeur mesurée CamWerks
Cylindre 1
Cylindre 2
Adm.
Ech.
Adm.
Ech.
Levée de came
9.19 mm
9.23 mm
9.13 mm
9.17 mm
9.13 mm
Levée avec culbus 1.25
11.49 mm
11.54 mm
11.41 mm
11.46 mm
11.41 mm
Levée avec culbus 1.4
12.87 mm
12.92 mm
12.78 mm
12.84 mm
12.78 mm
Durée ouverture admission
242°
242.23°
241.42°
Durée ouverture échappement
242°
239.09°
243.19°
Durée de croisement
26°
25.68°
26.15°
Lobe Center
108°
108.6°
108.0°
Pas mal non??
Le plus gros écart se trouve sur la durée d'ouverture d'échappement, où j'ai un delta de -2.91° / +1.19°, c'est un peu beaucoup... Je vais vérifier la façon dont je calcule le "peak" de ma came. Selon Sylvain de Classic-Store (qui n'a pas hésité à m’appeler et passer 20 minutes au téléphone avec moi pour discuter mesure AAC, alors que je leur avais juste envoyer une question technique par mail... Super service, merci!!), il n'est pas rare d'avoir un ou deux degrés d’écart sur un AAC, du fait de l'usure de la matrice qui sert à les fabriquer en usine. Pas déconnant comme résultat, donc.
Par contre je n'ai pas encore réussi à calculer les avances d'ouverture et retards de fermeture... C'est une donnée qui dépend de la position de l'AAC par rapport au vilebrequin (enfin, les PMH/PMB en fait), et je n'ai pas encore réussi à intégrer cette info dans mes formules de calcul (pour le moment!).
Je n'ai pas non plus la "durée commerciale" : c'est une valeur qui n'a pas beaucoup d’intérêt de toutes façons, la levée à laquelle elle est mesurée étant choisie arbitrairement par les constructeurs. Ce sont les durées à 1mm et 1.27mm qui permettent de comparer les AAC... Dans le cas présent, les 280° de durée commerciale sont atteints autour de 0.48mm de levée.
Arbre à cames 1600 Origine :
Ci-dessous, comparaison de mes mesures avec les caractéristiques d'origine de l'AAC VW 1600.
Attention, les valeurs d'origine proviennent de forums VW (Flat4ever et TheSamba), je ne suis pas complètement certain de mes sources... D'ailleurs, si vous avez mieux, je suis preneur!!
Valeur VW d'origine
Valeur mesurée CamWerks
Cylindre 1
Cylindre 2
Adm.
Ech.
Adm.
Ech.
Adm.
Ech.
Levée de came
0.754 mm
0.724 mm
7.65 mm
7.16 mm
7.34 mm
7.18 mm
Durée ouverture admission @0.50
250°
257.04°
246.00°
Durée ouverture échappement @0.50
250°
250.80°
252.80°
Durée ouverture admission @1.27
214-218°
216.16°
209.91°
Durée ouverture échappement @1.27
214-218°
215.65°
216.93°
Lobe Center
108°
105.6°
107.4°
En tous cas, c'est toujours dans les clous des specs d'origine!
Notez que l'AAC mesuré est d'occasion, donc potentiellement usé, donc le résultat peut varier légèrement...
Comparatif 1600 Origine vs. L&G R280 Lobe 108°
Arbre à cames Pied Moulé Origine :
Ma courbe n'est pas belle sur la vue des profils, ma mesure des crêtes ne doit pas être propre...
Arbre à cames Pied Moulé "Okrasa" / Joe Ruiz :
Comparatif AAC pied moulé d'origine et la version Okrasa
Conclusion et évolutions à prévoir...
Je ne suis pas satisfait de mes poussoirs modifiés que je fixe sur le bec du PàC... ils ne sont pas bien parallèles à l'AAC (en même temps, la meuleuse d'angle c'est pas exactement un instrument de précision hein), du coup ils ne portent pas bien à plat sur la came... A refaire.
Et coté logiciel, je voudrais rajouter les durées d'ouverture sur le diagramme des cames...
Les résultats obtenus sont cohérents et reproductibles (delta de l'ordre 3 centièmes max entre deux mesures) ; pour un truc bricolé sur un coin de table, je suis plutôt content du résultat. Par contre je n'ai aucune certitude quant à leur exactitude. Il me faudrait pour ça comparer mes résultats à ceux obtenus avec un vrai banc de mesure pro... J'ai peut-être un plan pour ça, à suivre.
Bref, ce banc de mesure est à considérer comme un prototype, une "preuve de concept", pas un projet finalisé... Mais il fait déjà son boulot ; en espérant que ça donne des idées à d'autres!
FAQ / Questions & Reponses
IMPORTANT!
Si vous souhaitez vous lancer dans la fabrication d'un banc de mesure d'AAC comme le mien, merci de bien lire ci-dessous avant...
1. Est-ce que tu fournis du support sur ton soft? / Est-ce que je peux monter un driver L298xxx? / Pourquoi j'ai une erreur xxx quand je lance ton soft? Je n'arrive pas à communiquer avec l'arduino?
Je ne peux fournir qu'une aide très limitée. Entre mon boulot et mon gamin je n'ai que très, très peu de temps libre. J'ai déjà plusieurs personnes qui se sont lancées dans ce projet, mais ont échoué faute de connaissances en electronique, informatique, et arduino... Et je n'ai pas été en mesure de les aider à distance.
Après, c'est un projet qui n'est pas très compliqué, mais il faut avoir déjà joué avec un arduino pour ne pas se casser les dents sur la communication avec le PC. Je vous recommande alors de passer un peu de temps sur Youtube pour apprendre à utiliser/programmer un arduino, avant de vous lancer.
2. Est-ce que tu vends des pièces / des kits complets pour monter un banc CamWerks?
Non, je ne vends pas de kits, ni de pièces. J'ai principalement monté ce banc comme un prototype, en utilisant des pièces qui trainaient dans mon atelier, si vous voulez faire quelque chose d'équivalent, il vous faudra adapter.