1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies. En savoir plus.

Petite aide pour mon créer mon post-pro

Discussion dans 'CamBam' créé par kredyl, 11 Mai 2014.

  1. kredyl

    kredyl Apprenti

    Messages:
    63
    Inscrit:
    11 Mai 2013
    Petite aide pour mon créer mon post-pro
    Bonjour à tous!

    Je modifie un post-pro CB (le default) afin qu il soit compatible pour ma fraiseuse (qui est en SELCA S1000.)
    J ai complété les équivalences dans le tableau, éliminer les espaces etc etc .... sure cela pas de problème! :P

    il y a juste un point ou je ne trouve pas d info :sad:
    Je n arrive pas à enlever le G1 lors des déplacements en travail en Z, sachant que je dois le garder pour le X et Y.
    Je demande comment faire pour modifier le post-pro faut-il réaliser un scritp?

    Voici un petit exemple:
    M3 S1000
    Z10.000R>>>>>>>ok
    X10.000Y40.000R>>>>>>>ok
    deplacement en rapide R a la fin des côtes OK
    G1Z-5.000F300.000>>>>>>>NOK [/color]>>>>>>>>Z-5.000F300 OK
    G3X20.000Y30.000I20.000J40.000F800.000
    G1X60.000
    G2X80.000Y10.000I60.000J10.000
    G1Y0.000
    G1X0.000
    G1X20.000Y30.000
    G1X60.000Z-3.987
    G2X80.000Y10.000I60.000J10.000
    G1Y0.000Z-2.939
    G1X0.000Z-0.913
    G1X20.000Y30.000Z0.000
    Z10.000R
    M5
    M30

    merci pour votre aide! :smt002
     
  2. Davidokuma

    Davidokuma Apprenti

    Messages:
    175
    Inscrit:
    4 Juillet 2012
    Petite aide pour mon créer mon post-pro
    Re: Petite aide pour mon crée mon post-pro

    Salut, je ne connait pas CamBam, alors tu dit "Je n arrive pas à enlever le G1 lors des déplacements en travail en Z, sachant que je dois le garder pour le X et Y" Donc si je comprend bien, les déplacement avec l'axe Z ta pas besoin de lui mettre un G1, Et sa fait quoi a la machine si tu le laisse avec le G1, sa fonctionne pas ???
     
  3. kredyl

    kredyl Apprenti

    Messages:
    63
    Inscrit:
    11 Mai 2013
    Petite aide pour mon créer mon post-pro
    Re: Petite aide pour mon crée mon post-pro

    Salut Davidokuma!
    G1 avec Z c est pas reconnue :(
    Bizarre je ne sais pas, mais chez SELCA c est comme ça, du moins avec le SELCA S1000.
    Pars exemple, si je veux un déplacement en rapide, le G0 n'est pas reconnu, je dois mettre mes coordonnées suivi de R pour rapide
    Le G1-2-3 est exclusif pour les axes X Y, pour les déplacements en Z je met Z-50F200 deslcente à -50mm a la vitesse de 200, si je ne précise pas la vitesse F il ira chercher la dernière enregistré.

    Du coup c est assé compliqué de crée le post pro en "ISO",car le langage selca s utilise généralement avec le projet 2 qui est une programmation Géométrique de Profil

    Pour info:
    Le langage PROGET 2' du constructeur SELCA utilise 5 codes G, pouvant être assimilés à 5 instruments du dessinateur industriel.
    G20 pour le compas dans le cas de cercles de centre et rayon connus.
    G21 pour le gabarit multi rayons pour les rayons de raccordement.
    G13 pour le rapporteur d'angle dans le cas de droite inclinée.
    G10 et G11 pour la règle.
     
  4. Davidokuma

    Davidokuma Apprenti

    Messages:
    175
    Inscrit:
    4 Juillet 2012
    Petite aide pour mon créer mon post-pro
    Re: Petite aide pour mon crée mon post-pro

    Ha ok, Après quand tu sort le programme tu peut l'ouvrir avec le Wordpad ??? après tu fais remplacer tout "G1Z" par "Z" mais c'est vrai que modifier directement le Post pro serai mieux, mais malheureusement je peut pas t'aider pour cambam !!!
     
  5. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Re: Petite aide pour mon crée mon post-pro

    Salut,

    Je ne suis pas sur que ton problème puisse se résoudre uniquement avec les post-pro de Cambam car s'il est possible de définir comment est sorti le G1 ou le G0, il n'est pas possible d'avoir une définition différente en fonction des axes, autrement dit, si on supprime le G1 pour le Z, ça le supprimera aussi pour le X et le Y.

    Il est par contre possible de le résoudre par post traitement, c'est à dire en analysant le Gcode pour y détecter la présence de G1 Z G0Z etc .. et modifier le Gcode en conséquence. Ce post traitement peut être lancé par le post processeur ... mais c'est à toi de faire le code de post traitement du Gcode. (avec passage d'argument par la ligne de commande)

    ++
    David
     
  6. kredyl

    kredyl Apprenti

    Messages:
    63
    Inscrit:
    11 Mai 2013
    Petite aide pour mon créer mon post-pro
    Re: Petite aide pour mon crée mon post-pro

    Effectivement le c est mon problème pour le G1

    Pour le G0, j ai trouvé la solution, il m a suffit de remplacer le G0 par R et de modifié sa position sur le tableau des équivalences.

    C est j ai bien compris il faut que je réalise un script, qui va analyser le Gcode, et qui va supprimer le G1 sur toutes les lignes en Z?

    merci
     
  7. kredyl

    kredyl Apprenti

    Messages:
    63
    Inscrit:
    11 Mai 2013
    Petite aide pour mon créer mon post-pro
    Re: Petite aide pour mon crée mon post-pro

    Effectivement, sur une prog simple je peux le faire, mais si il y a 200 lignes c est un peu plus long^^
     
  8. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Salut,

    Oui, si ce n'est que ce n'est pas vraiment un script (au sens Cambam du terme), mais une application séparée (un .exe) capable de recevoir des paramètres par la ligne de commande (comme un prog sous MSdos). Tu peux le faire en VB en C ou tout autre langage susceptible de créer un .exe. (Python si installé sur ton PC)

    Le mieux est de faire le max de modif via le post pro et le moins possible via le prog externe.

    Si je comprends bien, une fois que ton PP à fait ses conversions, ça se limiterais à un remplacement des G0ZXX et G1ZXX par ZXXR et ZXX ? ... ça ne doit pas être trop difficile à faire en VB ou en Python (je ne connais pas la syntaxe de ce dernier).

    Il y a un article (en anglais) plus détaillé ici.
    http://www.cambam.co.uk/forum/index.php?topic=3677.0

    ++
    David
     
    Dernière édition par un modérateur: 16 Avril 2015
  9. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Re

    Peut tu mettre ton post pro en pièce jointe ?

    je regarderais si je peux y ajouter le post traitement.

    Edit: j'ai un post traitement qui semble marcher (fait en VB), si tu met ton PP en pièce jointe, je pourrais le tester et te mettre l'exe en pièce jointe (+ la manip pour l'installer)

    ++
    David
     
  10. kredyl

    kredyl Apprenti

    Messages:
    63
    Inscrit:
    11 Mai 2013
  11. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Salut,

    Ok, cool si ça marche.

    Oui, c'est bien le bon fichier.

    ++
    David
     
  12. kredyl

    kredyl Apprenti

    Messages:
    63
    Inscrit:
    11 Mai 2013
    Petite aide pour mon créer mon post-pro
    Re,

    J aurai encore besoin d un p'tit coup de main :oops:

    le post pro marche, si je le corrige à la main, mais j aimerai savoir si il y possible de modifier 2 - 3 choses.

    L'affichage des nombres ce fait sous le format 0.xxx or ma machine reconnais ce format pour les distances mais pas pour les vitesse F ( vitesse d avance)
    Est-ce possible de garder le format 0.xxx pour les distances en mm et 0 pour les vitesses (F200 et non F200.00) car quand je change le format dans le post pro il me le change sur tous.

    Lors de l usinage peut-on faire descendre la fraise hors du brut?

    Peut-on changer {$g81} {$_x} {$_y} {$_z} {$_r} {$_f} par {$g81} {$_x} {$_y} {$_z} {$_i} {$_j} {$_f}?


    Merci
     
  13. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Salut,

    Non, pas en modifiant le format des nombres ; il faut traiter ça dans l'exe de post traitement , je regarde si je peux ajouter ça.

    Oui, tu peux te servir des entrées dans la matière en mode "tangent" par exemple.

    Non, le G81 est une instruction de perçage par cycle (donc uniquement un mouvement vertical) i et j servent à définir un arc de cercle et n'ont rien à faire dans un G81 (cambam les connait mais ne les accepte pas dans une macro de perçage).

    ++
    David
     
  14. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Re

    Voila le fichier modifié pour gérer le F sans point.

    et le code pour ceux que ça intéresse.

    Code:
    Imports System.IO
    Module Module1
        Sub Main(args() As String)
    
            'post traitement pour SELCA V 1.00
            'remplace G1Zxxx par Zxx
            'dh42 - 2014
    
            Dim line, line_out As String
            Dim fname, outname As String
    
            fname = args(0)
    
            If fname <> "" Then
                outname = Left(fname, Len(fname) - 3)   'nom complet sans le '.nc'
    
                Try
                    Using sr As StreamReader = New StreamReader(fname)
    
                        FileOpen(1, outname & ".tmp", OpenMode.Output)
    
                        Do
                            line = sr.ReadLine()
                            'MsgBox(line)
    
                            ' .... traiter les lignes
                            line_out = Replace(line, "G1Z", "Z")
    
                            'traitement du F (supprimer décimale)
                            IntegerFeedRate(line_out)
    
                            PrintLine(1, line_out)
    
                        Loop Until line Is Nothing
                        sr.Close()
                        FileClose(1)
    
                        FileSystem.Kill(fname)  'effacer ancien fichier .nc
                        FileSystem.Rename(outname & ".tmp", outname & ".nc")   'renommer le fichier temporaire en .nc
    
                    End Using
    
                Catch E As Exception
                    ' gestion erreurs
    
                    MsgBox("Erreur" & E.Message)
    
                End Try
    
            End If
    
    
        End Sub
    
        Sub IntegerFeedRate(ByRef s As String)
    
            Dim s_mod As String
            Dim f_pos As Long   'position du ctr F dans la ligne
            Dim speed As String 'la vitesse d'avance
    
            ' tester si ligne à traiter
            s_mod = Trim(s) 'supprimer tous les espaces
            If Len(s_mod) = 0 Then Exit Sub 'sortir si chaine vide
            If Left(s_mod, 1) = "(" Then Exit Sub '  sortir si commentaire
    
            'chercher si un "F" dans la ligne
    
            f_pos = InStr(s_mod, "F")
    
            If f_pos <> 0 Then
    
                'lire la V pour F
    
                speed = Right(s_mod, Len(s_mod) - f_pos)    'lire la valeur texte
    
                speed = Format(Val(speed), "0") 'mettre au format entier
    
                'generer la nouvelle chaine
                s = Left(s_mod, f_pos - 1) & "F" & speed
    
            End If
    
        End Sub
    End Module
    

    ++
    David Voir la pièce jointe Selca.rar
     
  15. dh42

    dh42 Compagnon

    Messages:
    3 979
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    Petite aide pour mon créer mon post-pro
    Salut,

    Alors j'ai trouvé un document pour les commandes sur Selca ; par contre c'est pas pour le 1000 mais ça doit pouvoir servir de référence.

    http://www.kcsales.us/documents/hand_book_G_06.05.pdf

    Sur le G81, le paramètre "I" est facultatif et le R mis par CB devra être convertis en J

    si tu utilise le débourrage, CB sort un G83 avec les paramètres P Q et R

    P = pause, Q = incrément débourrage, R=hauteur rétraction qui devraient être convertis en
    K,I,J

    je t'ai fait un deuxième .exe qui traite les G81/82/83 ... à voir si ça correspond à ce que comprends ta machine.

    ++
    David Voir la pièce jointe SelcaV1.02.rar
    ↑  traitement G1Zxxx -&gt; Zxx
    supprime décimale sur F
    traitement des ctr dans op de perçage
     
    Dernière édition par un modérateur: 16 Avril 2015
Chargement...

Partager cette page