Clip & block : un kit pour du montage électronique

64
23
avr.
2020
Do It Yourself

Clip & block est un kit de construction libre (CC By‑SA 4.0) qui permet de créer des structures solides avec une imprimante 3D pour les projets électroniques basés sur Arduino. Il se compose de pièces qu’il est possible d’assembler et de démonter facilement pour ajouter et retirer différents composants. Bien qu’il soit utilisable, c’est la première fois que je documente ce projet, il est donc en développement. Vous pouvez voir quelques exemples de réalisations à la fin de cette dépêche.

Sommaire

Démarrer avec Clip & block en une heure

Imprimer votre premier Clip & block

J’ai conçu Clip & block pour que ce soit simple à imprimer (pas de support, possibilité de l’imprimer dans tous les sens, pas trop de précision nécessaire, car les formes sont simples). Commencez par cloner le projet sur GitLab.

Première étape, vous allez imprimer vos deux premières pièces, un clip et un bloqueur.

Pour les pièces :

  • aller dans le répertoire basic ;
  • récupérer une pièce I-3.stl ;
  • récupérer une pièce I-4.stl.

I-3.stl → la lettre I désigne la forme de la pièce, le chiffre 3 indique le nombre de trous.

Pour le clip et le bloqueur :

  • aller dans le répertoire clips ;
  • récupérer un blocker-2.stl (de préférence, le mettre à plat, cela se fait très bien avec Cura) ;
  • récupérer un clip-2.stl (comme pour le bloqueur, le mettre à plat, en le tournant à 90°).

Le chiffre 2 indique la hauteur du clip (assemblage de deux pièces). Le blocker-2.stl va fonctionner avec le clip-2.stl.

Première impression

Notez qu’il ne faut pas beaucoup de plastique pour ces pièces de base (2 g et 0,83 m avec mes réglages pour ces quatre pièces). Après plusieurs essais, cette taille (9,6 mm × 9,6 mm × 4,8 mm) m’a paru être un bon compromis. Plus petit, les manipulations deviennent difficiles (mais peut‑être qu’il faudrait que je teste à nouveau en 6,4 mm × 6,4 mm × 3,2 mm).

Vous pouvez maintenant assembler ces pièces ! Pour démonter, il faut pousser le bloqueur par l’autre côté à l’aide d’un petit outil pointu. Si vous imprimez un deuxième clip et un deuxième bloqueur, vous pourrez apprécier la solidité du montage !

Les différentes pièces

Pièces existantes

Dans le répertoire basic, vous trouverez un grand nombre de pièces générées (75 à ce jour). Elles sont classées en fonction de leur forme et du nombre de trous qu’elles comportent (en une, deux ou trois dimensions). Pour s’y retrouver, voici quelques exemples :

Nom Image Description
I-3 I I : en long, 3 trous en longueur
LF-3-2 LF LF : en L à plat, 3 en longueur, 2 de l’autre côté
L-2-1-1 L L : en L, 2 en longueur, 1 en hauteur, 1 en largeur
L-2-2-3 L L : en L, 2 en longueur, 2 en hauteur, 3 en largeur
U-2-2-2 L U : en U
P-2-2 L P : pièce à plat
C-2-2-1 L C : cube, 2 en longueur, 2 en hauteur, 1 en largeur
IR-3 I IR : en long, bouts arrondis, (pour des pièces en rotation)
IH-3 I IH : en long, demi‑hauteur
IHR-3 I IHR : en long, demi‑hauteur, bouts arrondis

Il y a certaines redondances (C et P, par exemple), il faudrait que je fasse le ménage…

Créer ses pièces sur mesure

Si vous ne trouvez pas votre bonheur dans ces fichiers STL, il est possible de créer, avec OpenSCAD, vos propres pièces assez simplement. Voici par exemple comment créer une pièce P‑2‑3 (pièce à plat en 2 × 3) :

  • ouvrez le fichier clip_and_block.scad
  • modifiez le paramètre model pour le type de pièce à P ;
  • modifiez le paramètre length1 pour la longueur à 2 ;
  • modifiez le paramètre length2 pour la largeur à 3 ;
  • vous pouvez ensuite faire un rendu avec la touche F6 ;
  • et exportez en STL depuis OpenSCAD.

OpenSCAD

Le fichier list-plates.txt et le script generate-plates.py

Pour automatiser la génération des fichiers STL, j’ai créé le fichier list-plates.txt qui liste toutes les pièces. Le script generate-plates.py lit ce fichier et lance les commandes OpenSCAD avec les paramètres qui vont bien.

Les pièces pour composants électroniques

C’est ici la partie intéressante du projet : pouvoir intégrer des composants électroniques dans vos montages.

Les composants pris en charge

J’ai créé un certain nombre de pièces qui permettent d’inclure des composants. Elles se trouvent dans le répertoire stl/electronic.

Voici par exemple les deux pièces qui permettent d’inclure un NodeMCU (j’utilise beaucoup cette carte) :
NodeMCU

Il existe bien d’autres variantes de ces pièces, avec plus ou moins de trous, des trous d’un seul côté, etc. Voici la liste des composants pris en charge dans Clip & block, cette liste pourra (assez) facilement être étendue :

Nom Image Description
18650x2 Batterie holder 18650 Alimentation 7,4 V
18650 Batterie shield V3 18650 Alimentation USB + 3,3 V + 5 V + recharge
BME 280 BME280 Température + pression
Breadboard 25 trous breadboard25 Connexion
Bouton 14 × 20 button Bouton
D1 Mini D1-mini Carte de développement
DC Motor with gearbox DC-motor Moteur à courant continu démultiplié
L9110s Driver motor l9110S Driver moteur à courant continu
NodeMCU nodemcu Carte de développement
OLED 128 × 64 Afficheur OLED Afficheur OLED
SG90 (une seule variante, à améliorer) oled Servomoteur
Simple switch TM1637 Interrupteur
Afficheur TM1637 TM1637 Afficheur 4 × 7 segments

Il existe plusieurs variantes pour chaque composant, je vous laisse les découvrir.

Créer ses pièces pour ses composants

Vous pouvez créer des pièces pour vos composants. Pour cela, vous devez modéliser la pièce sans trous avec votre modeleur préféré. Ensuite, pour pouvoir ajouter des trous Clip & Block autour, il faut veiller à ce que longueur et largeur soient des multiples de 9,6 mm et que la hauteur soit de 4,8 mm.

Vous pouvez ensuite ajouter les trous grâce à OpenSCAD.

Créer le fichier STL de son composant

Voici par exemple comment j’ai procédé pour l’afficheur TM1637 :

  • j’ai créé une pièce pour le dessus et une pour le dessous pour prendre l’afficheur « en sandwich » ;
  • puis, j’ai créé des bords autour du composant pour obtenir un multiple de 9,6 (ici, 48 mm : 5 trous × 28,8 mm et 3 trous × 4,8 mm).

Dessous :
TM1637

Dessus :
TM1637

Ajouter les trous avec OpenSCAD

Ensuite, il est possible d’ajouter les trous autour de votre montage grâce à OpenSCAD :

  • ouvrez le fichier clip_and_block.scad ;
  • déposez votre fichier STL dans le dossier import ;
  • modifiez le paramètre model pour le type de pièce à F (Filename) — pour des trous de demi‐hauteur, choisissez FH ;
  • dans le tableau holeArray, entrez les coordonnées de vos trous (il faut tester pour trouver les bons) ;
  • dans le tableau finalRotate, vous pouvez tourner votre modèle final pour qu’il soit à plat ;
  • dans le tableau finalMirror, vous pouvez faire une rotation de votre modèle.

TM1637

Utiliser le fichier list-elec.csv le script generate-elec.py

J’ai également automatisé la génération des fichiers STL. J’ai créé le fichier list-elec.csv qui liste toutes les pièces pour composants. Vous pouvez voir dans ce fichier que vous pouvez indiquer toutes les options OpenSCAD.

list-elec

Le script generate-plates.py lit ce fichier et lance la commande OpenSCAD avec les paramètres. Je vais peut‑être fusionner les fichiers list-plates.txt et list-elec.csv prochainement.

Mes réalisations

Voici ce que j’ai réalisé avec les Clip & blocks — je pourrai, si vous me le demandez, détailler ces projets :

Ces projets fonctionnent plutôt bien, et je m’en sers régulièrement. Voici pour moi les qualités et les défauts de Clip & block :

  • qualités :
    • solidité,
    • facile de faire des modifications,
    • pas besoin de réimprimer l’ensemble pour les modifications ;
  • défauts :
    • manque de pièces « esthétiques » ou de finition, ou même de sécurité (caches, couvercles, etc.),
    • sécurisation des connecteurs Dupont par des pièces spéciales,
    • organisation des fils.

La suite ?

J’ai aujourd’hui un peu moins de temps pour m’occuper de ce projet. Cependant, je trouve dommage de le laisser à l’abandon, c’est pourquoi je vous demande de l’aide. Alors, de quoi ai‑je besoin ?

Tester

La première chose que j’aimerais savoir c’est si ce projet fonctionne chez vous, si cela peut répondre à un besoin (ou le créer ?). Donc, merci de tester en suivant la première partie de cet article !

Quelques idées d’évolutions

  • ajouter des composants (selon vos besoins) ;
  • sécuriser les connecteurs ou créer des passe‑fils ;
  • créer des pièces décoratives ou de finition pour que les produits finaux soient plus esthétiques et/ou sécuritaire ;
  • ajouter des éléments de types roue (j’ai déjà travaillé dessus) et engrenage ;
  • faire des manuels avec LDCad ;
  • créer d’autres projets basés sur ce kit.

Créer une communauté

Jusqu’à maintenant, je n’ai que mon GitLab. Mais je viens de créer un compte Mastodon pour discuter et échanger, si l’on pouvait être deux ou trois, cela dynamiserait les choses. :)

Aller plus loin

  • # jouet ?

    Posté par  (site web personnel) . Évalué à 6.

    Tu devrais vendre un kit pour monter la voiture, tu aurais du succès :)

    "La première sécurité est la liberté"

    • [^] # Re: jouet ?

      Posté par  (site web personnel) . Évalué à 4.

      Ça manque de finition :) mais merci pour l'encouragement !
      Sinon, si tu le sens, il y en a à peu près pour 10€ d'électronique et ça se commande en wifi avec le gyroscope du téléphone ou avec un nunchuck…

      • [^] # Re: jouet ?

        Posté par  (site web personnel, Mastodon) . Évalué à 4.

        Oui mais il faut une imprimante 3D. C est ce que je reproche a l open hardware/matériel. Ne pas etre en vente tel quel. Après tu est encore qu un tout petit projet. Mais je pense que c est un moyen de financer le projet. Tu mettre en vente la mini voiture a monter 50 euros au minimum. Même si c est cher, on sais que c est réparable et open source alors ca se paye. En fait peut importe le prix même excessif cela te fera toujours une rentrée pour donner plus de chance au projet.

        Sous licence Creative common. Lisez, copiez, modifiez faites en ce que vous voulez.

        • [^] # Re: jouet ?

          Posté par  (site web personnel) . Évalué à 4.

          Avant de mettre en vente quoi que ce soit, je préfère fiabiliser / démocratiser la chose…
          Le but n'est pas d'encombrer les placards, et, même à 50 €, il faut mieux à mon avis, que je continue à faire mon métier :)
          C'est vrai que tout le monde n'a pas une imprimante 3D, mais beaucoup en ont une et ne savent pas quoi en faire :)

          • [^] # Re: jouet ?

            Posté par  . Évalué à 3.

            Je suis peut-être trop optimiste, ou trop pigeon… Mais pour moi un voiture opensource, hackable, pilotable en wifi, je serais prêt à mettre bien plus de 50€ même si les finitions sont imparfaites (la durée de vie est plus importante). Là je me fais des drones roulant à base de voiture électrique démontée pour retirer la carrosserie + EeePC fixé dessus avec des élastiques et du scotch donc quelques bords mal coupés ne me dérangeraient pas ;-)

            Bien sûr ça ne va pas suffire pour abandonner ton métier mais tu pourrais les vendre occasionnellement, uniquement sur commande. Tu annonces les délais (commande des pièces, montage, expédition) avec une marge pour que tu n'aies pas de pression à livrer immédiatement. Et tu ne fabriques que lorsque qqun en demande une. À la limite tu en garde 2 en stock pour avoir une petite marge… Pas pour "faire de l'argent", le but serait plus d'avoir une base d'utilisateurs qui vont donner des idées et des demandes d'évolutions pour démarrer une petite communauté. Parce que bon l'imprimante 3D c'est quand même très bloquant quand on en a pas.

            • [^] # Re: jouet ?

              Posté par  (site web personnel) . Évalué à 1.

              Mon imprimante 3D, je l'ai payée 140€ il y a 3 ans (creality ender 2)… Parfois il y a des problèmes, mais c'est assez facilement réparable.
              Il ne faut pas hésiter à franchir le pas, il y a de plus en plus de choses sympas à imprimer ;)

      • [^] # Re: jouet ?

        Posté par  (site web personnel) . Évalué à 6.

        Il existe déjà des kits "scientifique" à 20€ en plastique bien plus fragile.

        Tu peux faire quelques pièces de finitions supplémentaires, mais ce n'est pas utile. C'est le gros point noir de lego boost : il y a énormément de petites pièces, ainsi créer un nouveau design est long et complexe.

        Ensuite, si tu peux rajouter des capteurs, cela rend plus de choses possibles :
        - bumper "fiable", c'est très facile d'en faire qui ne s'enclenche pas
        - combo magnétomètre, accéléromètre, gyroscope, il y en a plein pour les drones, et le code pour en faire de mini central inertiel existe déjà.
        - capteur angulaire par résistance variable (potentiomètre), ce n'est pas sans doute pas très résistant à l'usure, mais c'est bien moins couteux et fiable pour mesurer un déplacement angulaire (servo moteur), qu'un compteur d'impulsion + capteur à effet hall (pour le reset)
        - pouvoir avoir la consommation des moteurs permettraient sans doute de faire des commandes plus fine (mesure d'intensité)

        "La première sécurité est la liberté"

        • [^] # Re: jouet ?

          Posté par  (site web personnel) . Évalué à 4. Dernière modification le 25 avril 2020 à 11:31.

          Tout cela, c'est de très bonnes idées, et c'est tout à fait faisable :)
          Ce que je voulais faire avec mon tracteur, c'était une tondeuse pour petites surfaces en y mettant des ciseaux ou un truc comme ça.
          Mais ma carte principale est une esp8266 et je n'ai déjà plus d'E/S. Donc, mon idée a été de mettre une autre carte fille arduino nano et de la brancher au port série de l'esp8266.
          Cela fonctionne, j'envoie des commandes à l'esp, si cette commande commence par la lettre A, il transfère à l'arduino nano.
          Donc, il n'y a plus qu'à le réaliser !

        • [^] # Re: jouet ?

          Posté par  . Évalué à 2.

          J'ai fais un support pour un écran ( mini12864 ) en mécano pour le mettre sur ma moto. C'est un affichage du rapport engagée, vitesse par gps ( plus précise ), température et diverses informations de temps.

          Mon gosse préfère les legos, je lui pique ces mécanos.

          Promis, je ferais quelques choses si je me remets à l'imprimante 3D ( que j'avais vampiriser à l'époque pour reprendre l'écran pour ma moto ( le seul que j'avais sous la main permettant une lecture en plein soleil ). En attendant, les vis mécano donne un bon look. Il faut cacher les boulons par contre.

  • # Excellente idée / standardisation ?

    Posté par  . Évalué à 3.

    C'est génial pour prototyper plus rapidement : de disposer de blocs standards pour construire les 80% de la structure et d'imprimer éventuellement juste en complément le(s) adaptateur(s) qui bloque correctement un composant spécifique.

    Je comprends qu'actuellement la dimension de base est définie « aussi petite que possible mais qui s'imprime et manipule bien »; ne serait-ce pas pertinent d'utiliser un multiple entier de millimètres pour faciliter le calcul ? Voire de 2,54 mm mais pour l'emprunte mécanique il me semble que ce sont généralement des mm entiers ?
    Quid d'un adaptateur pour Lego ? :)

    aussi sur le salon xmpp:linuxfr@chat.jabberfr.org?join

    • [^] # Re: Excellente idée / standardisation ?

      Posté par  (site web personnel) . Évalué à 5.

      Alors, j'étais parti sur 128, parce que c'est facile de diviser par 2, puis par 2, etc (bon on est bien placé pour comprendre cela en informatique).
      Et puis, 128, c'était trop gros et 64 trop petit, donc 96 entre les deux était un bon compromis. J'ai refait des tests la semaine dernière en 64 et ça le fait pas, c'est trop petit.

      J'ai déjà imprimé des legos, et c'est presque la génèse de ce projet. Avec une imprimante 3D, en PLA, c'est difficile d'arriver à un résultat correct. Normalement, avec Clip & blocks, c'est super facile. Par contre, faire des adaptateurs, c'est une super idée.

      Pour prototyper, c'est effectivement bien, tu n'as pas à réimprimer à chaque fois et tu peux souvent réutiliser des pièces pour un autre montage.

  • # Licence non-libre

    Posté par  (Mastodon) . Évalué à 2. Dernière modification le 24 avril 2020 à 19:32.

    Super chouette projet.

    Je me demandais pourquoi le choix d'une licence non-libre si j'ai bien vu (NC) ? C'est susceptible d'évoluer ?

    Édit: enfin, c'est pas très clair pour moi la licence que tu utilises. D'après la dépêche cela semble du libre libre alors que quand je suis le lien vers le projet de voiture, c'est une licence non commerciale.

    Si je pose la question, c'est que je suis proche d'un petit magasin de jouets et je leur aurait bien proposé de participer au projet en vendant des kits. Mais évidemment, si c'est NC…

    Surtout, ne pas tout prendre au sérieux !

    • [^] # Re: Licence non-libre

      Posté par  (site web personnel) . Évalué à 5.

      Pour être honnête, j'ai choisi la licence en 5 minutes pour que cette dépêche soit publiée. J'ai besoin d'aide pour comprendre cela.
      Je pensais avoir choisi une licence qui permet l'utilisation commerciale à condition de citer l'auteur du projet.
      Tu peux m'éclairer sur ce sujet ?

      • [^] # Re: Licence non-libre

        Posté par  (Mastodon) . Évalué à 5.

        Euh, comment dire ? Moi et les licences ? C'est pas vraiment ma spécialité :-)

        La licence que tu indiques dans la dépêche permet effectivement l'utilisation commerciale à condition de citer l'auteur du projet.

        En fait, en écrivant mon commentaire, je m'étais intéressé au micro-tracteur que tu indiques être basé sur un autre projet FF RC-Car qui lui est sous une licence non-commerciale.

        Et là, je ne sais pas, sous quelle licence se trouve précisément ton projet de micro-tracteur. Et comme je suis pas très doué avec les licences, je ne sais pas en dire bien plus.

        Surtout, ne pas tout prendre au sérieux !

  • # Excellent, on monte un site à la "thingiverse" dédié aux réalisations faites avec clip & block ?

    Posté par  . Évalué à 4.

    Hello,
    pour moi c'est le genre de révolution qu'on devrait généraliser … et pour que ça soit accessible au plus grand nombre il me semble qu'il faudrait un site sur lequel on pourrait télécharger "toutes les pièces pour le rc-car" puis "toutes les pièces pour le réveil matin" et ainsi de suite … un site donc de toutes les réalisations faites avec clip&block

    comme ça, demain j'ai besoin d'un … je sais pas moi … tiens un support pour mon raspi pour ma télé hop je regarde si ça n'existe pas déjà, si oui je télécharge en étant sûr que c'est un objet réutilisable/modifiable/réparable et sinon … ben je me retrousse les manches pour le créer et ensuite le verser à la communauté

    oui au début on aura que 2 ou 3 objets mais il faut bien commencer un jour !

    en tout cas moi je suis fan de clip & block :-)

    bravo !

    eric.linuxfr@sud-ouest.org

  • # Nom de pièce en doublon

    Posté par  . Évalué à 1.

    Dans la liste des pièces existantes, le nom "L-2-1-1" revient deux fois ; je suppose que la 2ème pièce avec ce nom s'appelle en fait "L-2-2-3".

  • # Super travail !

    Posté par  . Évalué à -1. Dernière modification le 27 avril 2020 à 20:50.

    Félicitations, c'est du très bon boulot.
    Au moins il y a des gens qui mettent intelligemment le confinement à profit ;-)

  • # Avancées

    Posté par  (site web personnel) . Évalué à 2.

    Merci pour l'article en une !!
    J'ai beaucoup travaillé sur le projet depuis la publication de cet article (ajout de png pour les pièces, adaptateurs pour legos, connecteurs dupont). N'hésitez pas à me suivre sur mon compte mastodon, j'essaye de poster mes avancés très régulièrement :)
    Et surtout faites des tests de votre côté et partagez également !!

    • [^] # Re: Avancées

      Posté par  . Évalué à 1. Dernière modification le 13 mai 2020 à 09:34.

      Super idée le connecteur pour fiabiliser les connecteurs dupont ! J'ai testé plusieurs types de connecteurs mais je reviens toujours aux duponts, mais ils ont tendance à sauter facilement (l'un de mes projets, c'est une table lumineuse multicolore pour la classe de maternelle de ma compagne, et ça saute régulièrement !)

      Dans l'ensemble, le jeu de blocs à imprimer c'est super. J'ai aussi une Ender 2, mais je n'ai jamais vraiment réussi à me mettre à la modélisation ; ces blocs, ça m'ouvre plein de perspective !

      Et je pense que je vais tester la voiture avec mes enfants :)

      • [^] # Re: Avancées

        Posté par  (site web personnel) . Évalué à 2.

        Cool ! Je vais bientôt construire la 3ieme version de ma voiture et j'essayerais de mettre les choses sur mastodon…
        N'hésites pas à m'envoyer tes avancées !!

      • [^] # Re: Avancées

        Posté par  (site web personnel) . Évalué à 2.

        Mince et j'ai oublié de répondre au sujet des connecteurs dupont, cela n'est pas très clair sur mes photos, mais, en particulier lorsque c'est une connexion mâle/femelle, c'est très efficace.
        Et puis, n'hésites pas si tu as d'autres montages à faire et que tu as besoin de modéliser un composant… Je serais curieux de voir ta table lumineuse :)

      • [^] # Re: Avancées

        Posté par  (site web personnel) . Évalué à 4.

        Niveau connecteur en coupe e=m6 à l'époque, on a testé plein de truc, le plus simple était les petites nappes HE10 autodénudante, et pas un bidule à souder par fils. Cela marche très bien si moins de 1A par fils.

        Pour la patate, les molex étaient imbattable en niveau qualité prix (gros connecteur interne de PC).

        "La première sécurité est la liberté"

  • # Matière

    Posté par  . Évalué à 1.

    On peut les faire en bois ? C'est plus joli et surtout recyclable. Par exemple, comme https://iameco.com

    • [^] # Re: Matière

      Posté par  (site web personnel, Mastodon) . Évalué à 2. Dernière modification le 14 mai 2020 à 14:23.

      Le bois n'est pas recyclable, réemployable, peut-être, mais pas recyclable, c'est une notion différente. Une coque en papier pourrait être recyclable par contre et ce serait tout à fait possible. Le papier très compressé est très solide, léger et ne brûle pas facilement. Jules Verne en avait fait le matériau de l'aéronef de Robur le Conquérant.

      En revanche, le bois (comme le papier qui en est issu), ça repousse, pas comme le métal et certains plastiques.

      « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

      • [^] # Re: Matière

        Posté par  . Évalué à 0.

        On peut aussi le brûler pour faire de l'énergie thermique (chauffage urbain, à partir du bois récupéré dans les déchetteries).

    • [^] # Re: Matière

      Posté par  (site web personnel) . Évalué à 3.

      C'est vraiment conçu pour les imprimantes 3D et pour l'instant, les imprimantes 3D, c'est en grande partie du plastique (même si il existe des filament contenant du bois).
      Le PLA, je crois que ce n'est pas une matière issue du pétrole. Je ne suis pas spécialiste, mais il y en a qui est bio-sourcé.
      Mais j'ai hâte que l'on puisse imprimer à partir de bouteilles de laits, eau, etc. et que l'on puisse réutiliser le plastique des pièces qui ont été manquées.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.