Script python pour trouver le centre d'une pièce

Le logiciel le plus complet pour piloter GRBL
Avatar du membre
scalaire00
Pied Tendre Actif
Messages : 15
Enregistré le : 08 nov. 2019, 20:12
Localisation : Nord du 77
A été remercié : 1 fois
Contact :

Re: Script python pour trouver le centre d'une pièce

Message non lu par scalaire00 » 21 nov. 2019, 14:51

Palpage axe X

Code : Tout sélectionner

%_DiaOutil = app.entry("Entrez diametre de l'outils:");
%_long = app.entry("Entrez la longueur de la piece:");
%_posXmoins = float();
%_posXplus = float();
%_posXmi = float();
%_posYmoins = float();
%_posYplus = float();
%_posYmi = float();
%msg Debut de Sondage
(=======  Z  =========)
G92 x0 y0 z0 	(# Reset des offsets )
G38.2 Z-45 F100	(# Sonde en Z de 45 mm maximum a 100 mm/min)
G91 G0 Z 0.5	(# remonte de 0.5 mm rapidement)
G38.2 Z-5 F10 	(# Sondage de precision en Z de 5 mm maximum a 10 mm/min)
G10 L20 P1 Z0 	(# stocke ce qui a ete trouve comme position Z0)
G91 G0 Z3 		(# remonte le Z de 3mm rapidement en position de securite)
(# =======  palpage X nega =========)
(# G91 G0 X-[float(_long) / 2 + (float(_DiaOutil) * 2) ] Recule en X rapidement de )
(#la moitie de la longueur + 2 x diametre outil )
G91 G0 X-[float(_long)/2 + 5] 	(# Recule en X rapidement de la moitie de la longueur + 5 mm )
G91 G0 Z-4 						(# descend de 4 mm rapidement, en preparation du sondage en X)
G38.2 X20 F50 					(# Sonde en x de 20 mm maximum a 50 mm/min)
G91 G0 X-0.5 					(# decale en X de -0.5 mm rapidement)
G38.2 x5 F10 					(# Sondage de precision en x de -5 mm maximum a 10 mm/min)
G10 L20 P1 x0 					(# stocke ce qui a ete trouve comme position x0)
G92 x0 							(# reset offset Axe X)
%wait							(# Attente GRBL)
%_posXmoins = float(wx)			(# stock la valeur trouvee dans la variable _posXmi )
G91 G0 Z5 						(# remonte de 5 mm rapidement)
(# =======  palpage X posi =========)
G91 G0 X[str(float(_long) + 11) ]  	(# deplacement rapide vers l'autre face de la piece)
G91 G0 Z-4 							(# descend de 5mm rapidement, en preparation du sondage en X)
G38.2 X-20 F50 						(# Sonde en x de 20 mm maximum a 50 mm/min)
G91 G0 X0.5 					(# decale en X de 0.5 mm rapidement)
G38.2 x-5 F10 					(# Sondage de precision en x de -5 mm maximum a 10 mm/min)
%wait							(# Attente GRBL)
%_posXplus = float(wx)			(# stock la valeur de _poXmi dans offset X )
G91 G0 Z5 						(# remonte de 5mm rapidement)
(# G92 X[str(_posXmi)]) 		(# stock la valeur de _poXmi dans offset X )
G4 P2							(# Pause de 2s)
%_posXmi = float((_posXplus - _posXmoins)/2)
%wait
( G90 G0 X[_posXmi])
%wait
%msg Sondage Termine

Palpage axe Y

Code : Tout sélectionner

%_DiaOutil = app.entry("Entrez diametre de l'outils:");
%_larg = app.entry("Entrez la largeur de la piece:");
%_posYmoins = float();
%_posYplus = float();
%_posYmi = float();
%msg Debut de Sondage
(=======  Z  =========)
G92 x0 y0 z0 		(# Reset des offsets )
G38.2 Z-45 F100; 	(# Sonde en Z de 45 mm maximum a 100 mm/min)
G91 G0 Z 0.5		(# remonte de 0.5 mm rapidement)
G38.2 Z-5 F10 		(# Sondage de precision en Z de 5 mm maximum a 10 mm/min)
G10 L20 P1 Z0 		(# stock la valeur trouvee dans G54 Z0)
G91 G0 Z3 			(# remonte de 3 mm rapidement)
(# =======  palpage X nega =========)
G91 G0 Y-[float(_larg)/2 + 5] 	(# Recule en Y rapidement de la moitie de la longueur + 5 mm )
G91 G0 Z-4 						(# descend de 5 mm rapidement, en preparation du sondage en Y)
G38.2 Y20 F50 					(# Sonde en Y de 20 mm maximum a 50 mm/min)
G91 G0 Y-0.5 					(# decale en Y de -0.5 mm rapidement)
G38.2 Y5 F10 					(# Sondage de precision en Y de 5 mm maximum a 10 mm/min)
G92 Y0 							(# reset offset Axe Y)
%wait
%_posYmoins = float(wy)			(# stock la valeur trouvee dans la variable _posYmi )
(# G38.4 Y-1 F20 )				(# Remonte de 1mm a vitesse lente, declenche lorsque le )
(# contact est perdu. Devrait aider a ameliorer la precision)
G91 G0 Z3 						(# remonte de 3mm rapidement)
(# =======  palpage Y posi =========)
G91 G0 Y[str(float(_larg) + 5) ]  	(# deplacement rapide vers l'autre face de la piece)
G91 G0 Z-4 							(# descend de 5mm rapidement, en preparation du sondage en Y)
G38.2 Y-20 F50 						(# Sonde en Y de 20 mm maximum a 50 mm/min)
G91 G0 Y0.5 					(# decale en Y de 0.5 mm rapidement)
G38.2 Y-5 F10 					(# Sondage de precision en Y de -5 mm maximum a 10 mm/min)
%wait
%_posYplus = floatY(wy)				(# stock la valeur de _poXmi dans offset Y )
G91 G0 Z5 							(# remonte de 5mm rapidement)
G4 P2	(# Pause de 2s)
%_posYmi = float((_posYplus - _posYmoins)/2)
%wait
( G90 G0 X[_posYmi])
(# =======  palpage Y posi =========)
(# =======  palpage Y nega =========)
%wait
%msg Sondage Termine
Pour le déplacement au centre un truc comme ça devrait marcher ( pas encore tester )

Code : Tout sélectionner

(# Déplacement au centre de XY)
G0 z10
%_posiX = float(wx);
%_posiY = float(wy);
%_demiX = _posiX / 2;
%_demiY = _posiY / 2;
G90 x[_demiX] y[_demiY]
G92 X0 Y0
Tu sais pas si on peut utiliser des sous-programmes dans les scipts? parce qu'il faut aussi un script pour trouver le centre d'un alésage, ca fait encore deux boutons de plus.
Avatar du membre
DranerB
Administrateur
Messages : 1693
Enregistré le : 31 janv. 2019, 11:56
Localisation : Bourbon-Lancy, France
A remercié : 101 fois
A été remercié : 195 fois
Contact :

Re: Script python pour trouver le centre d'une pièce

Message non lu par DranerB » 21 nov. 2019, 19:47

Je regardes tout ça dès que j'ai un peu de temps. Merci! Pour les sous programmes, je ne pense pas.
Bien Cordialement,
Bernard
Image
rgodin
Pied Tendre
Messages : 9
Enregistré le : 03 mai 2020, 06:22

Re: Script python pour trouver le centre d'une pièce

Message non lu par rgodin » 23 juin 2020, 18:59

Bonjour,
Est-ce que quelqu’un a trouvé une solution au problème à savoir l’execution du code Python avant la fin du G-Code. Des nouvelles à propos de la commande wait qui semble avoir un bug ?
C’est dommage bCNC propose des fonctions intéressantes mais visiblement les macros ont toujours des problèmes. J’ai essayé de poser la question sur le site bCNC mais pas de réponse pour le moment. On dirait que le logiciel n’est plus trop mis à jour.
Je suis en train de faire des essais sur CNCjs et wait fonctionne sans problème. J’hésite du coup à l’utiliser pour remplacer bCNC. Tu as un avis sur CNCjs Bernard ?
Merci.
Avatar du membre
DranerB
Administrateur
Messages : 1693
Enregistré le : 31 janv. 2019, 11:56
Localisation : Bourbon-Lancy, France
A remercié : 101 fois
A été remercié : 195 fois
Contact :

Re: Script python pour trouver le centre d'une pièce

Message non lu par DranerB » 23 juin 2020, 19:05

rgodin a écrit :
23 juin 2020, 18:59
Bonjour,
Est-ce que quelqu’un a trouvé une solution au problème à savoir l’execution du code Python avant la fin du G-Code. Des nouvelles à propos de la commande wait qui semble avoir un bug ?
C’est dommage bCNC propose des fonctions intéressantes mais visiblement les macros ont toujours des problèmes. J’ai essayé de poser la question sur le site bCNC mais pas de réponse pour le moment. On dirait que le logiciel n’est plus trop mis à jour.
Je suis en train de faire des essais sur CNCjs et wait fonctionne sans problème. J’hésite du coup à l’utiliser pour remplacer bCNC. Tu as un avis sur CNCjs Bernard ?
Merci.
Bonjour,

J'ai passé un temps fou avec un des développeurs de bCNC avec cette histoire de macros, mais ça finissait par tourner en rond, avec la très désagréable impression que le gars, malgré sa bonne volonté, n'ayant pas de machine CNC, avait toutes les peines du monde à comprendre de quoi je parlais et ce que je voulais faire.

Je ne connais pas CNCjs, mais je vais y jeter un œil, du coup.
Bien Cordialement,
Bernard
Image
rgodin
Pied Tendre
Messages : 9
Enregistré le : 03 mai 2020, 06:22

Re: Script python pour trouver le centre d'une pièce

Message non lu par rgodin » 23 juin 2020, 20:13

Merci pour ta réponse... Je crois qu’après ce que tu viens de dire, il y a peu de chances que ça évolue du côté macro...
Bonne soirée
Avatar du membre
DranerB
Administrateur
Messages : 1693
Enregistré le : 31 janv. 2019, 11:56
Localisation : Bourbon-Lancy, France
A remercié : 101 fois
A été remercié : 195 fois
Contact :

Re: Script python pour trouver le centre d'une pièce

Message non lu par DranerB » 24 juin 2020, 11:58

Bon, je viens d'installer CNCjs sur mon Raspberry Pi 4, mais faut pas avoir peur de Linux et des loooongues lignes de commandes. Le processus est plutôt tortueux. Ça m'a pris au moins 2 heures, sans doute pas loin des 3, mais je n'ai pas chronométré. Bref, ça fonctionne, je vais explorer ça un peu plus en détails.
Bien Cordialement,
Bernard
Image
jean-claude garnier
Apprenti Confirmé
Messages : 92
Enregistré le : 04 mai 2019, 03:37
Localisation : Capitale des Gaules
A remercié : 3 fois
A été remercié : 18 fois

Re: Script python pour trouver le centre d'une pièce

Message non lu par jean-claude garnier » 24 juin 2020, 13:05

DranerB a écrit :
24 juin 2020, 11:58
Bon, je viens d'installer CNCjs sur mon Raspberry Pi 4
Allons bon moi j'ai fait l'inverse, j'ai plus longtemps utilisé CNCjs et j'ai installé bCNC pour ne pas mourir idiot.
Oserai-je avouer que je trouve bCNC bordélique et trop compliqué alors que CNCjs non ?

....Allez, j'ose.....
Image
Avatar du membre
DranerB
Administrateur
Messages : 1693
Enregistré le : 31 janv. 2019, 11:56
Localisation : Bourbon-Lancy, France
A remercié : 101 fois
A été remercié : 195 fois
Contact :

Re: Script python pour trouver le centre d'une pièce

Message non lu par DranerB » 24 juin 2020, 13:47

jean-claude garnier a écrit :
24 juin 2020, 13:05
DranerB a écrit :
24 juin 2020, 11:58
Bon, je viens d'installer CNCjs sur mon Raspberry Pi 4
Allons bon moi j'ai fait l'inverse, j'ai plus longtemps utilisé CNCjs et j'ai installé bCNC pour ne pas mourir idiot.
Oserai-je avouer que je trouve bCNC bordélique et trop compliqué alors que CNCjs non ?

....Allez, j'ose.....
Bordélique, je ne sais pas, moi je m'y retrouve bien. Mais c'est peut-être juste parce que j'ai l'habitude (du bordel). Pour CNCjs, je n'ai pas encore d'avis, ne m'en étant pas encore servi. A première vue, quand même bien moins de possibilités que bCNC.

PS- Pour ce qui est juste de l'installation sur Raspebrry Pi 4, bCNC est 100 000 fois plus simple à installer que CNCjs!
Bien Cordialement,
Bernard
Image
jean-claude garnier
Apprenti Confirmé
Messages : 92
Enregistré le : 04 mai 2019, 03:37
Localisation : Capitale des Gaules
A remercié : 3 fois
A été remercié : 18 fois

Re: Script python pour trouver le centre d'une pièce

Message non lu par jean-claude garnier » 24 juin 2020, 14:05

DranerB a écrit :
24 juin 2020, 13:47
A première vue, quand même bien moins de possibilités que bCNC.
En effet, les boutons programmables notamment sont un sacré atout
Je concède qu'il y a beaucoup de possibilités, mais est-ce qu'on les utilise ?

Quand tu auras fait le tour, dis-nous ce que tu ne peux pas faire avec.
Image
rgodin
Pied Tendre
Messages : 9
Enregistré le : 03 mai 2020, 06:22

Re: Script python pour trouver le centre d'une pièce

Message non lu par rgodin » 24 juin 2020, 15:18

Comme Bernard, CNCjs est moins complet, mais pour un usinage normal je pense que ça suffit. Je trouve l’interface mieux fini... Le changement d’outils n’existe pas mais y a une macro sur le wiki de CNCjs. Je suis en train de bosser sur ces foutues macros. On verra si CNCjs est exempt de bugs. Je programme notamment sur le palpage d’un cercle pour en trouver le milieu.... Dès que ça marche je vous la communique et vous me direz si ça fonctionne bien...
en fait si bCNC était debuggé avec la fonction wait ce serait le rêve...
Dans tous les cas si vous pouvez me donner votre avis les plus et les moins sur chacun je suis preneur...
Répondre