Différences entre versions de « Projets:Motorized head support »

De wikiup
Sauter à la navigation Sauter à la recherche
 
(42 versions intermédiaires par un autre utilisateur non affichées)
Ligne 1 : Ligne 1 :
 +
[[File:appui_tete_motorise_vue_arriere_trois_quart.jpg|400px|right]]
 +
 
== Project overview ==
 
== Project overview ==
 
To manufacture a low-cost assistive device to support and allow the rotation of the head of a person whose muscular deficiency in the neck area does not allow them neither a natural support of their head nor a natural rotation from left to right (rotation of the head is impossible muscularly, only articularly). Mathilde does not wish to get yet another remote control button to make use of this functionality because she already has several of them and she cannot always access them depending on the situation.
 
To manufacture a low-cost assistive device to support and allow the rotation of the head of a person whose muscular deficiency in the neck area does not allow them neither a natural support of their head nor a natural rotation from left to right (rotation of the head is impossible muscularly, only articularly). Mathilde does not wish to get yet another remote control button to make use of this functionality because she already has several of them and she cannot always access them depending on the situation.
  
 
== Design brief ==
 
== Design brief ==
 +
The device must :
 +
 +
*support the weight of the head,
 +
*allow for 30° left rotation, 30° right rotation,
 +
*be electronically controlled on demand,
 +
*withstand daily use under all conditions (vibration, humidity, heat,...),
 +
*be hermetic enough not to allow hair to get caught in the mechanism,
 +
*weatherproof,
 +
*take into account the fact that Mathilde is going to be equipped with a new chair.
  
 
== Existing prototype(s) analysis ==
 
== Existing prototype(s) analysis ==
 +
This solution exists on the market but only as a non electrified version
 +
 +
The following solution has been tested and is suitable for Mathilde, except for the lack of electrical assistance.
 +
http://www.medifab.co.nz/products/wheelchair-seating/axion-rotary-interface-wheelchair-headrests
 +
 +
[[File:support_tete_rotatif_commerce.gif]]
 +
 +
Example of a commercial rotary interface: https://media.wix.com/ugd/3c5a2b_070f4373519443e69189391e8c695b87.pdf
 +
 +
Details regarding the bearing mechanism: http://ot-sieber.ch/wp-content/uploads/2016/03/DSC_0052_3-180x180.jpg
  
 
== Team (Project leader and contributors) ==
 
== Team (Project leader and contributors) ==
Ligne 161 : Ligne 182 :
  
 
==Source files==
 
==Source files==
 +
[[Media:code DUPLICATE.zip|Download the code]]
 +
 +
[[Media:documents.zip|Download the documents]]
  
==Etapes de fabrication pas à pas==
+
[[Media:images sources.zip|Download the pictures]]
  
===Étape 1 - Vue légendée du prototype final===
+
[[Media:models.zip|Download the 3D models(STL)]]
  
[[File:Vue_legendee.png|400px]] [[File:Vue_legendee2.png|400px]]
+
==Step by step manufacturing process==
  
===Étape 2 - Fabrication de la pièce de liaison entre rail et support réglable de l'appui-tête du fauteuil===
+
===Step 1 - Captioned view of the final prototype===
  
La pièce de liaison entre le rail et le support réglable de l'appui-tête fixé sur le fauteuil a été réalisé à partir de trois fers plats soudés entre eux.
+
[[File:Vue_legendee translated.png|500px]][[File:Vue_legendee2 translated.png|500px]]
Se référer au fichier "piece entre rail et fauteuil.stl"
 
  
[[Media:support entre rail et fauteuil.stl|Télécharger le stl support entre rail et fauteuil ]]
+
===Step 2 - Fabrication of the connecting piece between the rail and the adjustable support of the chair head restraint===
  
[[File:piece_entre_rail_et_fauteuil.png|400px]]
+
The connecting piece between the rail and the adjustable support of the head restraint attached to the chair was made from three flat bars welded together. Refer to the file "support entre rail et fauteuil.stl".
  
[[File:cotes_piece_liaison_rail_support_appui-tete.png|900px]]
+
[[Media:support entre rail et fauteuil.stl|Download the stl file support between rail and chair ]]
  
===Étape 3 - Fabrication du rail===
+
[[File:piece_entre_rail_et_fauteuil.png|400px]][[File:cotes_piece_liaison_rail_support_appui-tete.png|900px]]
  
Pour fabriquer le rail , prendre la plaque d'aluminium 4G (voir image pour les côtes) et ajuster la courbe à la ceintreuse comme sur le fichier STL. IL est éventuellement possible de faire un gabarit en carton ou imprimé en 3D pour vérifier et ajuster la courbe.
+
===Step 3 - Rail fabrication===
  
Voir la manipulation en vidéo ici :
+
To manufacture the rail, take the 4G aluminum plate (see picture for dimensions) and adjust the curvature of the bending machine as seen on STL file. It might be possible to make a cardboard or 3D printed installation template to check and adjust the curve.
 +
Watch how to proceed here :
  
 
https://youtu.be/oLzzKH7SkhM
 
https://youtu.be/oLzzKH7SkhM
Ligne 191 : Ligne 215 :
 
https://youtu.be/mCTa5f2ztH4
 
https://youtu.be/mCTa5f2ztH4
  
Percer ensuite des trous et les filter pour les butées de fin de course dont la position est à ajuster selon le degré de mouvement voulu ou l'angle de rotation de la tête qui doit rester confortable pour l'usager
+
Then drill the holes and filter them for the end stop switches, the position of which is to be adjusted according to the desired degree of movement or the head rotation, which must remain comfortable for the user.
 
 
[[:File:rail.stl]]
 
  
[[File:dimensions rail.png|400px]]
+
[[Media:rail.stl|Download the stl rail file]]
  
[[File:rail_ceintreuse.png|400px]]
+
[[File:dimensions rail.png|600px]] [[File:rail_ceintreuse.png|600px]]
  
===Étape 4 - Fabrication de la rotule===
+
===Step 4 - Fabrication of the mounting ball===
  
En fonction de l’appui-tête de la personne, il faudra ajuster la taille de la rotule.
+
Depending on the person's head restraint, the dimensions of the mounting ball will need to be adjusted. If the model corresponds to this one, ask a machinist to manufacture it out of 4G aluminium according to the STL model (rotule.stl). It will then be necessary to drill and filter it (for a CHc-M5X15 screw) to attach it. Caution : add a steel locking pin to the baseplate of the ball joint parallel to the screw which also goes on the on the mounting ball support to avoid the rotation of the ball on itself.
Si le modèle correspond à celui-ci rapprochez-vous d’un tourneur pour la réaliser en aluminium 4G suivant le
 
modèle STL (rotule.stl) . Il faudra ensuite la percer et filter (pour une vis CHc-M5X15)pour permettre sa fixation.
 
Attention ajout d’un ergo en acier sur l’embase de la rotule parallèle à la vis et qui va également sur le
 
sur le support de la rotule pour éviter que la rotule tourne sur elle-même.
 
  
[[:File:rotule model.stl]]
+
[[Media:rotule model.stl|Download the stl rotule model file]]
  
 
[[File:rotule 1.png|400px]]
 
[[File:rotule 1.png|400px]]
  
[[File:usinage_rotule.jpg|400px]]
+
[[File:rotule_usinee.jpg|400px]][[File:usinage_rotule.jpg|600px]]
 
 
[[File:rotule_usinee.jpg|400px]]
 
 
 
===Étape 5 - Fabrication de la plaque de fixation de la rotule et des galets===
 
  
Fabriquer la plaque de fixation de la rotule avec une plieuse en se basant sur le fichier plaquerotule.stl.
+
===Step 5 - Fabrication of the ball mounting plate and rollers===
  
Fabriquer les 4 galets (galets à réa de 5mm -le creux intérieur en largeur, et l’épaulement du réa de 2.5mm)
+
Manufacture the ball mounting plate with a folding machine based on the plaquerotule.stl file.
Tourner en pom C (pom C=matériau plastique) les 4 galets de diamètre extérieur 15mm et 10mm en diamètre intérieur et les aléser pour les roulements qui viennent se loger aux deux extrémités.
 
  
[[:File:galet_perce.stl]]
+
Manufacture the four rollers (5mm sheave rollers inside groove width and 2.5mm shoulder sheave)
[[:File:plaquerotule.stl]]
+
Machine the four rollers in POM-C plastic material (Nylacast Polyacetal POM-C otherwise known as Acetal Copolymer is an engineered plastic) with an outer diameter of 15mm and inner diameter of 10mm. Bore them for the rollers that attach at the two extremities.
  
[[File:galets.png|400px]]
+
[[Media:galet_perce.stl|Download the stl file galet_perce]]
  
[[File:plaque_rotule.png|400px]]
+
[[Media:plaquerotule.stl|Download the stl file plaquerotule]]
  
===Étape 6 - Impression des pièces en 3D (faire simulation temps d'impression dans Cura)===
+
[[File:galets.png|400px]] [[File:plaque_rotule.png|400px]]
  
Imprimer l’ensemble des pièces situées dans le dossier « STL/A imprimer »
+
===Step 6 - 3D printing of the components (simulate printing time in Cura)===
* Matériau du filament : de préférence ABS ou PLA
 
* Paramétrage sur Cura : Densité : 90 % de remplissage, qualité 0.2.
 
  
Il s'agit d'imprimer les butées, le support moteur, le support à capteur de fin de course et le capot protecteur
+
Print every component located in the " STL/A print " folder.
 +
* Filament material: preferably ABS or PLA
 +
* Cura configuration settings : Density: 90 % filling, quality 0.2.
  
[[:File:butees.stl]]
+
Printout of end stops, motor mount, limit switch sensor lug as well as the protective cover.
  
[[:File:capot.stl]]
+
[[Media:butees.stl|Download the butees.stl file]]
  
[[:File:support_capteurs_fin_course.stl]]
+
[[Media:capot.stl|Download the capot.stl file]]
  
[[:File:support_moteur.stl]]
+
[[Media:support_capteurs_fin_course.stl|Download the support_capteurs_fin_course.stl file]]
  
[[File:support_moteur.png|400px]]
+
[[Media:support_moteur.stl|Download the support_moteur file]]
  
[[File:butees.png|400px]]
+
[[File:support_moteur.png|400px]] [[File:butees.png|400px]] [[File:capot_brosse.jpg|400px]] [[File:support_capteurs_fin_course.png|400px]]
  
[[File:capot_brosse.jpg|400px]]
+
===Step 7 - Fabrication of the electronic circuit===
 
+
Required components:
[[File:support_capteurs_fin_course.png|400px]]
 
 
 
===Étape 7 - Réalisation du circuit électronique===
 
Composants nécessaires:
 
  
  
 
*Arduino-NANO
 
*Arduino-NANO
*resistance-1K
+
*resistor-1K
 
*micro-switch
 
*micro-switch
 
*nema17-42SHD0228
 
*nema17-42SHD0228
 
*veroboard
 
*veroboard
*batterie-12V
+
*battery-12V
*carte-big-easy-driver
+
*big-easy-driver card
 
___________________________________
 
___________________________________
*PCB (auquel il faut ajouter le circuit on/off )
+
*PCB (to which the on/off circuit must be added)
*Fichier arduino (code)
+
*Arduino file (code)
  
[[Media:code.zip|Télécharger le code]]
+
[[Media:code.zip|Download the code]]
  
Réaliser ou faire fabriquer le circuit imprimé en vous référant au schema et PCB (Appuiteteschemav1.2.jpg, appui-tete-PCBv1.2.png) ci-dessous.
+
Manufacture or have the printed circuit board made by referring to the schematic and PCB below (Headrestschemav1.2.jpg, headrests-PCBv1.2.png).
 +
[[File:Appui_tete_schema_v1.2.jpg|850px]] [[File:appui-tete-PCB_v1.2.png|800px]]
  
Téléverser le code sur la carte Arduino.
+
Upload the code to the Arduino board.
  
 
<pre>
 
<pre>
Ligne 465 : Ligne 475 :
 
</pre>
 
</pre>
  
La carte arduino est alimentée en 5V depuis la sortie 5V de la carte easy driver. Raccorder le 24V du PCB aux batteries du fauteuil (voir Schema_batterie.jpg).
+
The arduino card is powered with 5V from the 5V output of the easy driver card. Connect the 24V from the PCB to the chair batteries (see Schema_batterie.jpg).
 
 
Ajouter le circuit interrupteur ON/OFF led en image ci-contre afin de pouvoir éteindre le dispositif et ne pas consommer de batterie pour rien :)
 
 
 
[[File:Appui_tete_schema_v1.2.jpg|400px]]
 
  
[[File:appui-tete-PCB_v1.2.png|400px]]
+
Add the LED ON/OFF switch circuit (presented on the provided picture) to be able to switch off the device and not use battery power for nothing. :)
  
 
[[File:interrupteur_on_off_led.png|400px]]
 
[[File:interrupteur_on_off_led.png|400px]]
Ligne 477 : Ligne 483 :
 
[[File:Schema_batterie 1.jpg|400px]]
 
[[File:Schema_batterie 1.jpg|400px]]
  
===Étape 8 - Mise en place du circuit dans le boîtier du circuit électronique===
+
===Step 8 - Installation of the circuit in the electronic circuit box===
  
Composant nécessaire:
+
Required component:
  
*boitier-derivation-electrique
+
*electrical junction box
  
Positionner le circuit dans le boitier de dérivation électrique étanche dont voici la référence :
+
Place the circuit in the waterproof electrical junction box.
https://www.leroymerlin.fr/v3/p/produits/boite-de-derivation-etanche-en-saillie-debflex-8-entrees-e29160
+
Waterproof electrical junction box reference: https://www.leroymerlin.fr/v3/p/produits/boite-de-derivation-etanche-en-saillie-debflex-8-entrees-e29160
  
Ce boitier sera fixé à l'arrière du fauteuil.
+
The box will be mounted to the rear of the chair.
  
===Étape 9 - Assemblage du bouton ou système choisi pour commander l'appui-tête rotatif===
+
===Step 9 - Assembly of the button or system, chosen to control the rotary head restraint===
  
Assembler le bouton en se référant au schéma.
+
Assemble the button according to the following diagram.
Prévoir une longueur de câble suffisamment longue pour le relier au PCB situé dans le boîtier qui a été fixé à l’arrière du fauteuil.
+
Prepare the cable length in advance to connect the cable to the PCB located in the housing that has been mounted to the rear of the chair.
  
===Étape 10 - Fixation de la poulie GT2 bore 5 sur moteur NEMA17 (ajouter ref vis)===
+
===Step 10 - Mounting of the GT2 bore 5 pulley to the NEMA17 stepper motor===
  
Composants nécessaires:
+
Required components:
  
*poulie-GT2-bore5-20dents
+
*pulley-GT2-bore5-20toothed
 
*nema17
 
*nema17
  
Enfiler la poulie la poulie GT2 bore (trou) 5 20 dents sur l'axe du moteur Nema17. Puis la fixer avec les deux vis sans tête de blocage de la poulie.
+
Thread the GT2 bore 5 20toothed pulley on the shaft of the Nema17 motor. Then attach it with two screws with no locking head of the pulley.
  
Se référer à l'image du schéma global.
+
Refer to the picture of the global diagram.
  
===Étape 11 - Fixation du moteur+poulie sur support moteur===
+
===Step 11 - Attaching the motor + pulley, to the motor support===
  
Composant nécessaire:
+
Required component:
  
*vis-M3-12
+
*screw-M3-12
  
Fixer l'ensemble moteur+poulie sur le support moteur avec 2 vis M3x12.
+
Attach the set motor + pulley on the motor support using two M3x12 screws.
  
===Étape 12 - Fixation roulements pour coulissage de la courroie===
+
===Étape 12 - Mounting the bearings to run the strap===
  
Composants nécessaires:
+
Required components:
  
*roulement-F624ZZ
+
*bearings-F624ZZ
*rondelles
+
*rings
  
Fixer les 4 roulements à bille F624ZZ mis 2 par 2 en mirroir avec l'épaulement vers l'extérieur, avec des rondelles entre la vis et le roulement, pour éviter de comprimer la partie extérieure du roulement. Et de l'autre coté de la plaque du support moteur, on vient fixer la vis de M4x20 (ou 25) avec un écrou nylstop.
+
Attach the four ball bearings F624ZZ placed in mirror pairs with the outer pointed shoulder, with the rings placed between the screw and the bearing, to avoid compressing the outer part of the bearing. And on the other side of the motor support plate, place the M4x20 (or 25) screw with a nylstop nut.
  
===Étape 13 - Câblage des capteurs de fin de course (end-stop)===
+
===Step 13 - Wiring of the end-stop switch sensors===
  
Composants nécessaires:
+
Required components:
  
 
*micro-switch
 
*micro-switch
*fil-de-cablage-monobrin-0.2
+
*monofilament-0.2
  
Souder les fils sur les capteurs de fin de course (autrement dit end stop ou microswitchs). Prévoir une longueur de fil suffisante pour aller jusqu'au boitier où se situe le circuit électronique.
+
Weld the wires to the end-stop switches (also called microswitches). Prepare sufficient wire length to reach the housing where the electronic circuit is located.
  
===Étape 14 - Montage des capteurs de fin de course sur leur support===
+
===Step 14 - Mounting end stop switch sensors on their support===
  
Composants nécessaires:
+
Required components:
  
*vis CHc-M2X16
+
*screw CHc-M2X16
*ecrous-M2
+
* M2 nuts
  
Assembler les capteurs de fin de courses (microswitchs) à leurs supports avec 2 vis CHc-M2X16 chacun et l'écrou
+
Assemble the end stop switches (microswitches) to their supports with 2 screws CHc-M2X16 each and their respective nut.
associé
 
  
===Étape 15 - Assemblage support des capteurs de fin de course sur support moteur (add photo)===
+
===Step 15 - Installation of the end stop switch sensors support on the motor support===
  
Composants nécessaires:
+
Required components:
  
*vis CHc-M3x14
+
*screw CHc-M3x14
*ecrous-nylstop-M3
+
* nylstop nut M3
  
Fixer les support des capteurs de fin de course sur le support moteur avec 2 vis CHc-M3x14 qui sont fixées sur le Nema 17.
+
Attach the end stop switch sensor brackets to the motor support with 2 screws CHc-M3x14 which are mounted to the Nema 17.
  
 
[[File:Fixation_support_fin_de_course_sur_support_moteur.jpg|400px]]
 
[[File:Fixation_support_fin_de_course_sur_support_moteur.jpg|400px]]
  
===Étape 16 - Préparation des galets===
+
===Step 16 - Preparation of the rollers===
  
Introduire de part et d'autre de chaque galet un roulement MR84ZZ. Insérer par la force les roulements (2 par galet) dans les galets.
+
Insert an MR84ZZ bearing on both sides of each roller. Forcibly insert the bearings (two per roller) in the rollers.
  
===Étape 17 - Assemblage des galets sur la plaque de fixation de la rotule (add photo+précision nb vis)===
+
===Step 17 - Installation of the rollers on the baseplate of the mounting ball===
  
Composants nécessaires:
+
Required components:
*vis-CHc-M5X35
+
*screw-CHc-M5X35
*ecrou-nylstop
+
*nylstop nut
  
Assembler les galets sur la plaque de fixation de la rotule avec les vis CHc-M4X35 et écrous nylstop M4. Ne pas visser à fond et laisser du jeu pour l'assemblage sur le rail.
+
Attach the rollers on the baseplate of the mounting ball with the CHc-M4X35 screws and M4 nylstop nuts. Do not tighten the screws all the way and leave some looseness for the installation on the rail.
  
 
[[File:assemblage_galet_sur_plaque_fixation.jpg|400px]]
 
[[File:assemblage_galet_sur_plaque_fixation.jpg|400px]]
  
===Étape 18 - Assemblage de la rotule sur la plaque support rotule===
+
===Step 17 - Assembly of the rollers on the baseplate of the mounting ball===
  
Composants nécessaires:
+
Required components:
*vis-CHc-M5X15
+
* screw-CHc-M5X35
*rondelle
+
* nylstop nut
  
Assembler la rotule et son ergo sur la plaque avec la vis CHc-M5X15 et sa rondelle (il faut penser à mettre du frein filet si ça se déserre trop souvent).
+
Place the rollers on the installation plate of the mounting ball with the CHc-M4X35 screws and M4 nylstop nuts. Do not tighten the screws all the way and leave some looseness for assembly on the rail.
  
 
https://youtu.be/SlecIxJOSQ0
 
https://youtu.be/SlecIxJOSQ0
  
===Étape 19 - Assemblage de plaque rotule sur le rail de guidage (add photo+vis ref)===
+
===Step 19 - Installation of the mounting ball baseplate on the guide rail===
  
Enfiler la plaque rotule sur le rail de guidage.
+
Thread the mounting ball baseplate on the guide rail.
  
Serrer les écrous de fixation des galets en ne les serrant pas trop fort pour que le coulissement soit correct.
+
Tighten the fixing nuts securing the rollers. Do not tighten them too much to ensure correct sliding.
  
===Étape 20 - Fixation de la cornière aluminium sur la plaque de support rotule===
+
===Step 20 - Installation of the aluminium angle on the mounting ball support baseplate===
  
Composants nécessaires:
+
Required components:
*vis-M3
+
*screw-M3
*ecrous-nylstop-M3
+
*nylstop nut-M3
  
Fixer la cornière aluminium sur la plaque de support rotule.
+
Attach the angle iron to the mounting ball support baseplate.
La corniere de 20x20 sur 31 mm de longueur + 2 vis M3 avec écrous nylstop + 2 vis (ref+longueur???)
+
The angle iron is 20x20, 31 mm length + 2 M3 screws with nylstop nuts + 2 screws
  
===Étape 21 - Pose, tension et fixation de la courroie===
+
===Step 21 - Set up, tensioning and fastening of the strap===
  
Pose, tension et fixation de la courroie GT2 de largeur 6 mm, pas de 2 mm et longueur environ 35mm ou ajuster la longueur selon la course du rail. La fixer à chaque extrémité en la faisant passer par le trou prévu sur la butée de fin de course, et la fixer avec un cerflex sur le côté extérieur. Les crans de la courroie doivent être orientés vers le rail.
+
Set up, tensioning and fastening of the strap GT2, 6 mm width, 2 mm pitch and approximately 35mm in length or adjust the length according to the pathing of the rail. Fasten the strap to each extremity by making it go through the specified opening on the end stop switch, then secure it with a serflex on the outer side. The notches of strap must be pointed towards the rail.
  
Fixation de l'appui-tête : https://urlz.fr/bjPY
+
Installation of the head restraint : https://urlz.fr/bjPY
  
Fixation courroie : https://youtu.be/NXCGfeGCh6I
+
Fastening of the strap : https://youtu.be/NXCGfeGCh6I
  
===Étape 22 - Video du montage===
+
===Step 22 - Assembly video===
  
 
https://urlz.fr/bjPs
 
https://urlz.fr/bjPs
  
==Durée de fabrication du prototype final==
+
==Final prototype fabrication timeframe==
  
==Journal de bord==
+
==Event log==
 
===Date: xx/xx/2020===
 
===Date: xx/xx/2020===
  
  
 
[[Category:Projets]]
 
[[Category:Projets]]

Version actuelle datée du 2 juin 2021 à 10:39

Appui tete motorise vue arriere trois quart.jpg

Project overview

To manufacture a low-cost assistive device to support and allow the rotation of the head of a person whose muscular deficiency in the neck area does not allow them neither a natural support of their head nor a natural rotation from left to right (rotation of the head is impossible muscularly, only articularly). Mathilde does not wish to get yet another remote control button to make use of this functionality because she already has several of them and she cannot always access them depending on the situation.

Design brief

The device must :

  • support the weight of the head,
  • allow for 30° left rotation, 30° right rotation,
  • be electronically controlled on demand,
  • withstand daily use under all conditions (vibration, humidity, heat,...),
  • be hermetic enough not to allow hair to get caught in the mechanism,
  • weatherproof,
  • take into account the fact that Mathilde is going to be equipped with a new chair.

Existing prototype(s) analysis

This solution exists on the market but only as a non electrified version

The following solution has been tested and is suitable for Mathilde, except for the lack of electrical assistance. http://www.medifab.co.nz/products/wheelchair-seating/axion-rotary-interface-wheelchair-headrests

Support tete rotatif commerce.gif

Example of a commercial rotary interface: https://media.wix.com/ugd/3c5a2b_070f4373519443e69189391e8c695b87.pdf

Details regarding the bearing mechanism: http://ot-sieber.ch/wp-content/uploads/2016/03/DSC_0052_3-180x180.jpg

Team (Project leader and contributors)

  • Project leader(s) :

Mathilde Fuchs

  • Designers/Contributors :

Philippe Pacotte, Stéphane Godin, André Bécot, Jean-Pierre Legrand, Yves Le Chevalier, Christian Fromentin, Danke, Francis Esnault, Jean-François Duguest, Brice Besançon, Yohann Véron,

  • Animator (Project coordinator)

Delphine Bézier

  • Referent fabmanager

Delphine Bézier

  • Documentation manager

Required components

# Component Quantity Price
1 Arduino-NANO 1 ?
2 resistor-1K 4 ?
3 micro-switch 4 ?
4 nema17-42SHD0228 1 ?
5 veroboard 1 ?
6 battery-12V 2 ?
7 big-easy-driver card 1 ?
8 branch circuit box 1 ?
9 pulley-GT2-bore5-20toothed 1 ?
10 nema17 1 ?
11 screw-M3-12 2 ?
12 bearing-F624ZZ 4 ?
13 end plate 4 ?
14 monofilament wiring-0.2 1 ?
15 screw CHc-M2X16 2 ?
16 nut-M2 2 ?
17 screw CHc-M3x14 2 ?
18 nuts-nylstop-M3 4 ?
19 screw-CHc-M5X35 1 ?
20 nut-nylstop 1 ?
21 screw-CHc-M5X15 1 ?
22 end plate 1 ?
23 screw-M3 2 ?

Required tools

Cost

Estimated timeframe

Source files

Download the code

Download the documents

Download the pictures

Download the 3D models(STL)

Step by step manufacturing process

Step 1 - Captioned view of the final prototype

Vue legendee translated.pngVue legendee2 translated.png

Step 2 - Fabrication of the connecting piece between the rail and the adjustable support of the chair head restraint

The connecting piece between the rail and the adjustable support of the head restraint attached to the chair was made from three flat bars welded together. Refer to the file "support entre rail et fauteuil.stl".

Download the stl file support between rail and chair

Piece entre rail et fauteuil.pngCotes piece liaison rail support appui-tete.png

Step 3 - Rail fabrication

To manufacture the rail, take the 4G aluminum plate (see picture for dimensions) and adjust the curvature of the bending machine as seen on STL file. It might be possible to make a cardboard or 3D printed installation template to check and adjust the curve. Watch how to proceed here :

https://youtu.be/oLzzKH7SkhM

https://youtu.be/36KCF7G6KE4

https://youtu.be/mCTa5f2ztH4

Then drill the holes and filter them for the end stop switches, the position of which is to be adjusted according to the desired degree of movement or the head rotation, which must remain comfortable for the user.

Download the stl rail file

Dimensions rail.png Rail ceintreuse.png

Step 4 - Fabrication of the mounting ball

Depending on the person's head restraint, the dimensions of the mounting ball will need to be adjusted. If the model corresponds to this one, ask a machinist to manufacture it out of 4G aluminium according to the STL model (rotule.stl). It will then be necessary to drill and filter it (for a CHc-M5X15 screw) to attach it. Caution : add a steel locking pin to the baseplate of the ball joint parallel to the screw which also goes on the on the mounting ball support to avoid the rotation of the ball on itself.

Download the stl rotule model file

Rotule 1.png

Rotule usinee.jpgUsinage rotule.jpg

Step 5 - Fabrication of the ball mounting plate and rollers

Manufacture the ball mounting plate with a folding machine based on the plaquerotule.stl file.

Manufacture the four rollers (5mm sheave rollers inside groove width and 2.5mm shoulder sheave) Machine the four rollers in POM-C plastic material (Nylacast Polyacetal POM-C otherwise known as Acetal Copolymer is an engineered plastic) with an outer diameter of 15mm and inner diameter of 10mm. Bore them for the rollers that attach at the two extremities.

Download the stl file galet_perce

Download the stl file plaquerotule

Galets.png Plaque rotule.png

Step 6 - 3D printing of the components (simulate printing time in Cura)

Print every component located in the " STL/A print " folder.

  • Filament material: preferably ABS or PLA
  • Cura configuration settings : Density: 90 % filling, quality 0.2.

Printout of end stops, motor mount, limit switch sensor lug as well as the protective cover.

Download the butees.stl file

Download the capot.stl file

Download the support_capteurs_fin_course.stl file

Download the support_moteur file

Support moteur.png Butees.png Capot brosse.jpg Support capteurs fin course.png

Step 7 - Fabrication of the electronic circuit

Required components:


  • Arduino-NANO
  • resistor-1K
  • micro-switch
  • nema17-42SHD0228
  • veroboard
  • battery-12V
  • big-easy-driver card

___________________________________

  • PCB (to which the on/off circuit must be added)
  • Arduino file (code)

Download the code

Manufacture or have the printed circuit board made by referring to the schematic and PCB below (Headrestschemav1.2.jpg, headrests-PCBv1.2.png). Appui tete schema v1.2.jpg Appui-tete-PCB v1.2.png

Upload the code to the Arduino board.

#include "cli.h"
#include "config.h"


#include "command.h"


// task definition for periodic scheduling 1ms
//void motorControl(Task* me);
//Task schedule (1, motorControl);



void setup() {

  // intialize command
  cli_open ();
  
  // initialize motor
  load_config ();
  get_stepper()->setMaxSpeed (get_speed());
  get_stepper()->setAcceleration (get_accel());
  // initialize led
  pinMode(LED, OUTPUT);
  digitalWrite (LED, LOW);

  // initialize buttons
  pinMode(BTN_RIGHT, INPUT);
  pinMode(BTN_LEFT, INPUT);

  // stepper microstep
  pinMode (MOTOR_MS1, OUTPUT),
  pinMode (MOTOR_MS2, OUTPUT);
  digitalWrite (MOTOR_MS1, LOW); // todo place config in config.h
  digitalWrite (MOTOR_MS2, LOW);

  //endstop
  pinMode (ENDSTOP_LEFT, INPUT),
  pinMode (ENDSTOP_RIGHT, INPUT);
  
  
  // run scheduler
  //SoftTimer.add(&schedule);

}

// function :SensorLeft
//
// Description :
// return te logic state of the left sensor
//
// Return :
// true if the left sensor is active. Otherwise false
boolean SensorLeft ()
{
  if (get_force_left () > 0)
    return (true);
  return (digitalRead (BTN_LEFT)== BTN_LEFT_ACTIVE_STATE ? true : false);
}

// function :SensorRight
//
// Description :
// return te logic state of the right sensor
//
// Return :
// true if the right sensor is active. Otherwise false
boolean SensorRight()
{
  if (get_force_right () > 0)
    return (true);
  return (digitalRead (BTN_RIGHT) == BTN_RIGHT_ACTIVE_STATE ? true : false);
}

// function :EndStopLeft
//
// Description :
// return the logic state of the left endstop sensor
//
// Return :
// true if the left endstop is active. Otherwise false
boolean EndStopLeft ()
{
  return (digitalRead (ENDSTOP_LEFT) == ENDSTOP_LEFT_STATE ? true : false); 
}

// function :EndStopRight
//
// Description :
// return the logic state of the right endstop sensor
//
// Return :
// true if the right endstop is active. Otherwise false
boolean EndStopRight ()
{
  return (digitalRead (ENDSTOP_RIGHT) == ENDSTOP_RIGHT_STATE ?  true : false); 
}

int RIGHT_MOVE = 1;
int LEFT_MOVE = -1;
int STOP_MOVE = 0;

//void turnOn(Task* me)
//{

//}


// Function: motorControl
//
// Description :
// The function is called every 1 ms. check command sensor and enstop and control the motor
//
// 
//void motorControl(Task* me)
void loop ()
{
  AccelStepper *pstepper = get_stepper ();
  
  // put your main code here, to run repeatedly:

  int step = 0;
  // decide move
  int move = STOP_MOVE;

  boolean right = SensorRight ();
  boolean left = SensorLeft ();
  
  boolean endl = EndStopLeft ();
  boolean endr = EndStopRight ();

 
  
 if (endr || endl)
  digitalWrite (LED, HIGH);
  else
  digitalWrite (LED,LOW);
 
 //endr = false;
 //endl=false;
  if (right == left)
  {
    move = STOP_MOVE;
    
    //digitalWrite(LED, LOW);
  }
  else if (right==true)
  {
    if (endr)
    {
      move=STOP_MOVE;
    }
    else
    {
      move = RIGHT_MOVE;
      pstepper->move (20000);
      //digitalWrite(LED, HIGH);
    }
  }
  else if (left == true)
  {
    if (endl)
    {
      move=STOP_MOVE;
    }
    else
    {
      move = LEFT_MOVE;
      pstepper->move(-20000);
      //digitalWrite(LED, HIGH);
    }
  }

  // motor control
  if (move != STOP_MOVE)
  {
    pstepper->run();
  }
  else
  {
    //stepper1.disableOutputs();
    pstepper->setSpeed(0);
    pstepper->setCurrentPosition (0);
  }

  // process command
   CLI.process();
}

The arduino card is powered with 5V from the 5V output of the easy driver card. Connect the 24V from the PCB to the chair batteries (see Schema_batterie.jpg).

Add the LED ON/OFF switch circuit (presented on the provided picture) to be able to switch off the device and not use battery power for nothing. :)

Interrupteur on off led.png

Schema batterie 1.jpg

Step 8 - Installation of the circuit in the electronic circuit box

Required component:

  • electrical junction box

Place the circuit in the waterproof electrical junction box. Waterproof electrical junction box reference: https://www.leroymerlin.fr/v3/p/produits/boite-de-derivation-etanche-en-saillie-debflex-8-entrees-e29160

The box will be mounted to the rear of the chair.

Step 9 - Assembly of the button or system, chosen to control the rotary head restraint

Assemble the button according to the following diagram. Prepare the cable length in advance to connect the cable to the PCB located in the housing that has been mounted to the rear of the chair.

Step 10 - Mounting of the GT2 bore 5 pulley to the NEMA17 stepper motor

Required components:

  • pulley-GT2-bore5-20toothed
  • nema17

Thread the GT2 bore 5 20toothed pulley on the shaft of the Nema17 motor. Then attach it with two screws with no locking head of the pulley.

Refer to the picture of the global diagram.

Step 11 - Attaching the motor + pulley, to the motor support

Required component:

  • screw-M3-12

Attach the set motor + pulley on the motor support using two M3x12 screws.

Étape 12 - Mounting the bearings to run the strap

Required components:

  • bearings-F624ZZ
  • rings

Attach the four ball bearings F624ZZ placed in mirror pairs with the outer pointed shoulder, with the rings placed between the screw and the bearing, to avoid compressing the outer part of the bearing. And on the other side of the motor support plate, place the M4x20 (or 25) screw with a nylstop nut.

Step 13 - Wiring of the end-stop switch sensors

Required components:

  • micro-switch
  • monofilament-0.2

Weld the wires to the end-stop switches (also called microswitches). Prepare sufficient wire length to reach the housing where the electronic circuit is located.

Step 14 - Mounting end stop switch sensors on their support

Required components:

  • screw CHc-M2X16
  • M2 nuts

Assemble the end stop switches (microswitches) to their supports with 2 screws CHc-M2X16 each and their respective nut.

Step 15 - Installation of the end stop switch sensors support on the motor support

Required components:

  • screw CHc-M3x14
  • nylstop nut M3

Attach the end stop switch sensor brackets to the motor support with 2 screws CHc-M3x14 which are mounted to the Nema 17.

Fixation support fin de course sur support moteur.jpg

Step 16 - Preparation of the rollers

Insert an MR84ZZ bearing on both sides of each roller. Forcibly insert the bearings (two per roller) in the rollers.

Step 17 - Installation of the rollers on the baseplate of the mounting ball

Required components:

  • screw-CHc-M5X35
  • nylstop nut

Attach the rollers on the baseplate of the mounting ball with the CHc-M4X35 screws and M4 nylstop nuts. Do not tighten the screws all the way and leave some looseness for the installation on the rail.

Assemblage galet sur plaque fixation.jpg

Step 17 - Assembly of the rollers on the baseplate of the mounting ball

Required components:

  • screw-CHc-M5X35
  • nylstop nut

Place the rollers on the installation plate of the mounting ball with the CHc-M4X35 screws and M4 nylstop nuts. Do not tighten the screws all the way and leave some looseness for assembly on the rail.

https://youtu.be/SlecIxJOSQ0

Step 19 - Installation of the mounting ball baseplate on the guide rail

Thread the mounting ball baseplate on the guide rail.

Tighten the fixing nuts securing the rollers. Do not tighten them too much to ensure correct sliding.

Step 20 - Installation of the aluminium angle on the mounting ball support baseplate

Required components:

  • screw-M3
  • nylstop nut-M3

Attach the angle iron to the mounting ball support baseplate. The angle iron is 20x20, 31 mm length + 2 M3 screws with nylstop nuts + 2 screws

Step 21 - Set up, tensioning and fastening of the strap

Set up, tensioning and fastening of the strap GT2, 6 mm width, 2 mm pitch and approximately 35mm in length or adjust the length according to the pathing of the rail. Fasten the strap to each extremity by making it go through the specified opening on the end stop switch, then secure it with a serflex on the outer side. The notches of strap must be pointed towards the rail.

Installation of the head restraint : https://urlz.fr/bjPY

Fastening of the strap : https://youtu.be/NXCGfeGCh6I

Step 22 - Assembly video

https://urlz.fr/bjPs

Final prototype fabrication timeframe

Event log

Date: xx/xx/2020