Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Piloter une CNC avec Raspberry PI
Piloter une CNC avec Raspberry PI
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Merci je vais voir çà. Effectivement je préfèrerai assurer, je pense que je vais me construire ma carte d'adaptation, j'ai tout ce qu'il faut dans les tiroirs, il faut juste que je trouve l'empreinte Eagle de la DB25.
RE: c'est bon, trouvé, c'est dans le répertoire con-subd, au prix ou elle est je vais la faire moi-même.
Et le PI fournit le 3.3v et le 5vcc, un vrai conte de fée.
RE: c'est bon, trouvé, c'est dans le répertoire con-subd, au prix ou elle est je vais la faire moi-même.
Et le PI fournit le 3.3v et le 5vcc, un vrai conte de fée.
Piloter une CNC avec Raspberry PI
Aïe vous êtes entrain de me dire que je peux flingué mon Rpi avec un retour 5V ?
je vais devoir investir pour assuré les arrières.
@F6FC0 ça fonctionne comment les pcb que tu montre plus haut sur alivavite ?
@++
@F6FC0 ça fonctionne comment les pcb que tu montre plus haut sur alivavite ?
@++
Piloter une CNC avec Raspberry PI
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Attends que j'ai fais mes essais, si c'est concluant tu n'auras qu'à recopier. Mais oui c'est plus prudent de mettre une carte en interface au prix ou est le PI.
Ces modules sont des adaptateurs de niveaux TTL . Ils font la transition entre 3.3 <--> 5v dans les deux sens, tu rentres avec du 5vcc et tu sors avec du 3.3 ou le contraire dans l'autre sens sur les mêmes broches. Il faut lui fournir du 3.3 et du 5v et il fait tout le boulot.
Moi pour l'instant je suis en train d'essayer de piger cette histoire de masque GPIO. En gros je comprends le principe mais ce que je ne pige pas c'est pourquoi il a mis certaines cases en jaune.
https://www.e-techno-tutos.com/2023/12/ ... e-du-gpio/
Mal expliqué, j'ai compris en regardant son tableur, c'est juste pour la forme, il suffit de recopier le même masque et çà devrait rouler mais ne n'aime pas trop faire des trucs en double-aveugle.
En fait la valeur 27152376 évite de prendre en compte toutes les broches d'alim et gnd.
Ces modules sont des adaptateurs de niveaux TTL . Ils font la transition entre 3.3 <--> 5v dans les deux sens, tu rentres avec du 5vcc et tu sors avec du 3.3 ou le contraire dans l'autre sens sur les mêmes broches. Il faut lui fournir du 3.3 et du 5v et il fait tout le boulot.
Moi pour l'instant je suis en train d'essayer de piger cette histoire de masque GPIO. En gros je comprends le principe mais ce que je ne pige pas c'est pourquoi il a mis certaines cases en jaune.
https://www.e-techno-tutos.com/2023/12/ ... e-du-gpio/
Mal expliqué, j'ai compris en regardant son tableur, c'est juste pour la forme, il suffit de recopier le même masque et çà devrait rouler mais ne n'aime pas trop faire des trucs en double-aveugle.
En fait la valeur 27152376 évite de prendre en compte toutes les broches d'alim et gnd.
Piloter une CNC avec Raspberry PI
Oui j'avoue ne pas trop comprendre le tableau
J'ai demander de mon côté a chatgpt voici ce qu'il retourne (a prendre avec des pincettes) :
J'ai demander a chatgpt de décortiqué la ligne
loadrt hal_pi_gpio dir=27152376 exclude=0
Voilà le retour :
Apparemment exclude permet d'inclure ou d'exclure certaines pine.
Si ça peut aider a avancer
@++
J'ai demander de mon côté a chatgpt voici ce qu'il retourne (a prendre avec des pincettes) :
1. Qu'est-ce qu'un tableau de masque dans le HAL ?
Le masque est une valeur binaire ou hexadécimale qui indique quelles broches ou fonctionnalités sont activées pour une certaine opération. Les masques sont souvent utilisés pour :
Configurer les broches GPIO en entrée ou en sortie.
Activer ou désactiver des fonctions spécifiques.
Mapper des signaux à des broches physiques.
2. Identifier les broches GPIO disponibles
Pour un Raspberry Pi :
Utilisez la commande suivante pour lister les broches GPIO disponibles :
gpio readall
Cela affiche un tableau des broches avec leur numéro, leur état actuel et leur configuration.
Notez les numéros des broches que vous souhaitez utiliser (par exemple, GPIO17, GPIO18, etc.).
3. Créer un masque pour les broches sélectionnées
Les broches sont représentées sous forme de bits dans un entier binaire :
Chaque bit représente une broche.
Un bit à 1 signifie que la broche est activée, et 0 signifie qu'elle est désactivée.
Par exemple, si vous voulez activer GPIO17 et GPIO18, leur position dans le masque sera respectivement les bits 17 et 18 :
Masque binaire : 0000 0000 0000 0011 0000 0000 0000 0000
Masque hexadécimal équivalent : 0x00030000
4. Configurer les broches dans le fichier HAL
Dans le fichier .hal, vous utilisez des commandes pour attribuer ces masques à des fonctionnalités spécifiques. Par exemple :
loadrt hal_gpio cfg="0x00030000"
Cela charge un composant pour les broches GPIO spécifiées par le masque.
5. Exemple complet d'utilisation d'un masque dans le fichier HAL
Voici un exemple d'utilisation pour configurer deux broches GPIO en sortie :
Activez les broches GPIO17 et GPIO18 avec un masque.
Configurez-les comme sorties.
Fichier HAL :
# Charger le module GPIO avec le masque des broches 17 et 18
loadrt hal_gpio cfg="0x00030000"
# Connecter des signaux à ces broches
addf hal_gpio.read servo-thread
addf hal_gpio.write servo-thread
# Configurer GPIO17 comme sortie pour activer un moteur
setp hal_gpio.0.out-00 TRUE
6. Déboguer le tableau de masques
Utilisez la commande suivante dans LinuxCNC pour tester votre configuration :
halrun
Puis chargez vos fichiers .hal et vérifiez avec :
show pin
show param
Cela permet de vérifier si les broches GPIO sont correctement mappées et fonctionnent comme attendu.
J'ai demander a chatgpt de décortiqué la ligne
loadrt hal_pi_gpio dir=27152376 exclude=0
Voilà le retour :
Analysons cette commande spécifique et son impact dans le fichier HAL de LinuxCNC :
1. Commande décomposée :
loadrt hal_pi_gpio dir=27152376 exclude=0
loadrt hal_pi_gpio :
Charge le module hal_pi_gpio, qui permet à LinuxCNC d'accéder et de contrôler les broches GPIO du Raspberry Pi.
dir=27152376 :
Définit la direction (input ou output) des broches GPIO utilisées. Cette valeur est un masque binaire ou un équivalent décimal.
exclude=0 :
Indique que toutes les broches GPIO du Raspberry Pi sont disponibles pour être configurées. La valeur 0 signifie que rien n'est exclu.
2. Décryptage du masque dir=27152376 :
La valeur 27152376 est un entier décimal. Convertissons-la en binaire pour identifier quelles broches GPIO sont configurées en entrée (0) ou en sortie (1).
Convertissons 27152376 en binaire :
27152376 (décimal) = 0001 1010 1101 1011 0111 1001 1000 (binaire)
Chaque bit de ce nombre représente une broche GPIO, en commençant par la broche 0 (bit le plus à droite).
0 : La broche est configurée en entrée.
1 : La broche est configurée en sortie.
Alignons ce masque avec les broches GPIO :
GPIO 0 (bit 0) : 0 → Entrée
GPIO 1 (bit 1) : 0 → Entrée
GPIO 2 (bit 2) : 0 → Entrée
GPIO 3 (bit 3) : 1 → Sortie
GPIO 4 (bit 4) : 1 → Sortie
...
GPIO 31 (bit 31) : 0 → Entrée
On peut résumer ainsi :
Les GPIO configurées en sortie sont : GPIO3, GPIO4, GPIO5, GPIO7, GPIO8, GPIO9, GPIO10, GPIO11, GPIO12, GPIO14, GPIO15, GPIO17, GPIO18, GPIO19, GPIO20, GPIO22, GPIO23.
3. Configurer les broches restantes :
Si vous devez exclure certaines broches (par exemple, réservées pour d'autres fonctions comme I2C ou UART), modifiez le paramètre exclude. Par exemple :
loadrt hal_pi_gpio dir=27152376 exclude=0x00003000
Ici, les broches GPIO12 et GPIO13 (bits 12 et 13) sont exclues.
4. Tester et vérifier la configuration :
Après avoir ajouté cette commande dans votre fichier .hal :
Lancez LinuxCNC ou utilisez halrun pour tester.
Vérifiez les broches GPIO configurées avec :
show pin
Assurez-vous que les broches configurées répondent comme prévu (entrée ou sortie).
Apparemment exclude permet d'inclure ou d'exclure certaines pine.
Si ça peut aider a avancer
@++
Piloter une CNC avec Raspberry PI
Piloter une CNC avec Raspberry PI
F6FCO a écrit :J'ai bien pigé le principe, la seule question que je me pose c'est pourquoi il a coloré certaines lignes en jaune, apparemment çà n'a aucun rapport.
J'ai une conversation avec le créateur du blog avec qui j’ai déjà échanger par mail. Je vais simplement lui demander ont sera fixer. Qu'est ce que tu en pense ?
Je vous tiens au courant des que j'ai la réponse
@++
Piloter une CNC avec Raspberry PI
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Demande lui pour valider mais j'ai compris pour la couleur jaune, c'est simplement les pins réglées en input.
Pour le reste c'est assez simple et on le comprend en examinant les opérations sur les cellules du tableur:
- il faut mettre la valeur 1 dans la colonne D (in=0 / out=1, le contraire des PIC) pour déterminer si elle sera en entrée ou en sortie. Tu détermines ainsi ta colonne "mask" en multipliant la valeur de la colonne E par 1 ou 0.
- Pour obtenir la valeur finale tu additionnes les valeurs de la colonne G et la colonne F et tu obtiens ainsi la valeur finale à placer dans le HAL.
Finalement on n'a rien à toucher, on aurait aussi bien pu le faire d'une autre manière suivant l'affectation des pins choisie. Ce qu'il a fait est bon, il faut placer la valeur 27152376 dans le HAL.
Je vais faire le PCB d'interface, mais au lieu de le dessiner en dur je vais le rendre souple en le faisant réglable par des straps sur barette.
Pour le reste c'est assez simple et on le comprend en examinant les opérations sur les cellules du tableur:
- il faut mettre la valeur 1 dans la colonne D (in=0 / out=1, le contraire des PIC) pour déterminer si elle sera en entrée ou en sortie. Tu détermines ainsi ta colonne "mask" en multipliant la valeur de la colonne E par 1 ou 0.
- Pour obtenir la valeur finale tu additionnes les valeurs de la colonne G et la colonne F et tu obtiens ainsi la valeur finale à placer dans le HAL.
Finalement on n'a rien à toucher, on aurait aussi bien pu le faire d'une autre manière suivant l'affectation des pins choisie. Ce qu'il a fait est bon, il faut placer la valeur 27152376 dans le HAL.
Je vais faire le PCB d'interface, mais au lieu de le dessiner en dur je vais le rendre souple en le faisant réglable par des straps sur barette.
Piloter une CNC avec Raspberry PI
Oui c'est bien ça. Voici sa réponse toute fraîche :
Mais si j'ai bien compris la c'est configurer pour 4 axes. Nous avons besoin que de 3 axes. Car après il faut des pins pour les fin de course, big red button etc.... ?
@++
Les lignes jaunes sont les lignes configurees en entrée IN ( colonne 3 à zero).
Comme précisé avant le tableau, certains broches ne sont pas modifiables
et doivent dans tous les cas rester à zéro => broches 3-5-7-27-28. Les broches 8-10-11-12-16-
18 et 13 peuvent elles être configurees en sorties.
Mais si j'ai bien compris la c'est configurer pour 4 axes. Nous avons besoin que de 3 axes. Car après il faut des pins pour les fin de course, big red button etc.... ?
@++
Piloter une CNC avec Raspberry PI
- F6FCO

Expert- Messages : 2846
- Âge : 99
- Enregistré en : décembre 2017
- Localisation : Banlieue sud de Klyntar
- Contact :
Oui c'est çà, pour simplifier l'explication chaque pin à une valeur propre (colonne E) et on additionne les valeurs des pins configurées en OUT, çà donne la valeur finale à mettre dans le HAL. c'est plus simple avec les PIC
Le 4eme axe on n'en a pas besoin pour graver des PCB, je n'en tiens pas compte avec l'interface. En gros un 4 axe c'est pour faire tourner la pièce et faire de la sculpture en révolution, pratique si tu veux te sculpter des pions de jeu d'échec par exemple. Un mandrin est bridé sur la table et la pièce tourne pendant la gravure.
https://www.facebook.com/cnc.router.sfa ... id=SEO----
https://www.geekbuying.com/item/TWO-TRE ... rans/en/fr
Le 4eme axe on n'en a pas besoin pour graver des PCB, je n'en tiens pas compte avec l'interface. En gros un 4 axe c'est pour faire tourner la pièce et faire de la sculpture en révolution, pratique si tu veux te sculpter des pions de jeu d'échec par exemple. Un mandrin est bridé sur la table et la pièce tourne pendant la gravure.
https://www.facebook.com/cnc.router.sfa ... id=SEO----
https://www.geekbuying.com/item/TWO-TRE ... rans/en/fr
Retourner vers « Coin Fourre-tout »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 5 invités
