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

mach3 assistant

Discussion dans 'Mach' créé par marchand, 12 Février 2012.

  1. marchand

    marchand Nouveau

    Messages:
    30
    Inscrit:
    7 Novembre 2006
    Localité:
    niort 79000 niort
    mach3 assistant
    bonjour a tous
    j'ais fais un assistant pour un bobinage qui marche bien avec mach3
    mais pouvez vous me dire comment coder pour eviter les repetitions de codage avec des boucles
    merci
    alain assistant.jpg
     
  2. valentin

    valentin Compagnon

    Messages:
    608
    Inscrit:
    30 Juillet 2008
    Localité:
    pas de calais france
    mach3 assistant
    bonjour
    dur dur de taider avec une image de code
    precise un peu tes variables
    pas la peine de mettre a chaque fois avance

    pour les boucles je vois tres bien un appelle de
    sous programme et de variable #100= ect...
    M98 P100 L le nombre appelle
    M30

    O100
    ------
    M99
     
  3. marchand

    marchand Nouveau

    Messages:
    30
    Inscrit:
    7 Novembre 2006
    Localité:
    niort 79000 niort
  4. valentin

    valentin Compagnon

    Messages:
    608
    Inscrit:
    30 Juillet 2008
    Localité:
    pas de calais france
    mach3 assistant
    bonjour
    deja a premiere vue tu peux faire sa
    tu ajoute une variable marqueur=0
    et tu teste la variable si elle est plus petite que zpasse

    marqueur=0
    OpenTeachFile "BOBINNAGE"
    code "(diametre du fil " & DIAMETREFIL & " )"
    CODE "(nombre de couche " & ZPASSE & " )"
    code "G00 X" & PASX & " Y" & PASY & " Z" & PASZ
    If marqueur<ZPASSE Then
    Code "G01 F"& AVANCEBOBINAGE & " X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*360 ) & "(1couche)"
    code "M01"
    marqueur=marqueur+1
    End If
    If marqueur<ZPASSE Then
    code "G01 F"& AVANCEBOBINAGE & " X" & PASX & " A" & (1/ DIAMETREFIL*LONGUEURBOBINAGE*720) & "(2 couches)"
    marqueur=marqueur+1
    End If
    If marqueur<ZPASSE Then
    code "G01 F"& AVANCEBOBINAGE & " X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*1080)& "(3couche)"
    marqueur=marqueur+1
    End If

    ect....
     
  5. marchand

    marchand Nouveau

    Messages:
    30
    Inscrit:
    7 Novembre 2006
    Localité:
    niort 79000 niort
  6. valentin

    valentin Compagnon

    Messages:
    608
    Inscrit:
    30 Juillet 2008
    Localité:
    pas de calais france
    mach3 assistant
    bonjour
    ou pour simplifier encore
    pas tester

    boucle while
    et select case
    pour voir quelle ligne est paire ou pas
    compteur=0
    OpenTeachFile "BOBINNAGE"
    code "(diametre du fil " & DIAMETREFIL & " )"
    CODE "(nombre de couche " & ZPASSE & " )"
    code "G00 X" & PASX & " Y" & PASY & " Z" & PASZ
    Code "G01 F"& AVANCEBOBINAGE & " X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*360 ) & "(1couche)"
    code "M01"
    compteur=compteur+1
    while compteur < zpasse
    chiffrepairoupas=compteur mod 2
    Select Case chiffrepairoupas
    Case 0
    Code "G01 F"& AVANCEBOBINAGE & " X" & PASX & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur) )
    case 1
    code "G01 F"& AVANCEBOBINAGE & " X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur))

    compteur=comteur+1
    wend
    ect..
     
  7. marchand

    marchand Nouveau

    Messages:
    30
    Inscrit:
    7 Novembre 2006
    Localité:
    niort 79000 niort
  8. valentin

    valentin Compagnon

    Messages:
    608
    Inscrit:
    30 Juillet 2008
    Localité:
    pas de calais france
    mach3 assistant
    bonjour
    essai en mettant end select


    compteur=0
    OpenTeachFile "BOBINNAGE"
    code "(diametre du fil " & DIAMETREFIL & " )"
    CODE "(nombre de couche " & ZPASSE & " )"
    code "G00 X" & PASX & " Y" & PASY & " Z" & PASZ
    Code "G01 F"& AVANCEBOBINAGE & " X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*360 ) & "(1couche)"
    code "M01"
    compteur=compteur+1
    while compteur < zpasse
    chiffrepairoupas=compteur mod 2
    Select Case chiffrepairoupas
    Case 0
    Code "G01 F"& AVANCEBOBINAGE & " X" & PASX & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur) )
    case 1
    code "G01 F"& AVANCEBOBINAGE & " X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur))
    end select
    compteur=comteur+1
    wend
     
  9. valentin

    valentin Compagnon

    Messages:
    608
    Inscrit:
    30 Juillet 2008
    Localité:
    pas de calais france
    mach3 assistant
    bonjour
    viens essayer en modifiant les parametres



    Sub Main()
    PASX = 0
    PASY = 0
    PASZ= 20
    ZAPPROCHE = 20
    LONGUEURBOBINAGE =30
    ZPASSE=15
    AVANCEBOBINAGE = 800
    VITESSE = 500
    OUTIL = 1
    PVITESSE=200
    FINPOSITIONX=0
    FINPOSITIONY=0
    FINPOSITIONZ=50
    DIAMETREFIL=0.3
    compteur=0
    OpenTeachFile "BOBINNAGE.tap"
    code "(diametre du fil " & DIAMETREFIL & " )"
    CODE "(nombre de couche " & ZPASSE & " )"
    code "G00 X" & PASX & " Y" & PASY & " Z" & PASZ
    Code "G01 F"& AVANCEBOBINAGE
    compteur=compteur+1
    Code "G01 X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*360 ) & "(" & compteur & "couche)"
    code "M01"
    While compteur < zpasse
    chiffrepairoupas=compteur Mod 2
    Select Case chiffrepairoupas
    Case 0
    code "G01 X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur))& "(" & compteur & "couche)"
    Case 1
    Code "G01 X" & PASX & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur) )& "(" & compteur & "couche)"
    End Select

    compteur=compteur+1
    Wend

    Code"M30"
    Code " "
    CloseTeachFile
    Call LoadStandardLayout()
    Call LoadTeachFile()
    End Sub
     
  10. marchand

    marchand Nouveau

    Messages:
    30
    Inscrit:
    7 Novembre 2006
    Localité:
    niort 79000 niort
    mach3 assistant
    sa marche bien merci mais avec un petit souci j'ais 2 fois la premiere couche
    et il faudrais conserver le M01 apret la 1er couche
    alain
     
  11. valentin

    valentin Compagnon

    Messages:
    608
    Inscrit:
    30 Juillet 2008
    Localité:
    pas de calais france
    mach3 assistant
    bonjour
    fais comme ci dessous pour le M01

    Sub Main()

    PASX = 0
    PASY = 0
    PASZ= 20
    ZAPPROCHE = 20
    LONGUEURBOBINAGE =30
    ZPASSE=15
    AVANCEBOBINAGE = 800
    VITESSE = 500
    OUTIL = 1
    PVITESSE=200
    FINPOSITIONX=0
    FINPOSITIONY=0
    FINPOSITIONZ=50
    DIAMETREFIL=0.3
    compteur=0
    OpenTeachFile "BOBINNAGE.tap"
    code "(diametre du fil " & DIAMETREFIL & " )"
    CODE "(nombre de couche " & ZPASSE & " )"
    code "G00 X" & PASX & " Y" & PASY & " Z" & PASZ
    Code "G01 F"& AVANCEBOBINAGE
    compteur=compteur+1



    While compteur < zpasse
    chiffrepairoupas=compteur Mod 2
    Select Case chiffrepairoupas
    Case 0
    code "G01 X" & ( LONGUEURBOBINAGE+PASX) & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur))& "(" & compteur & "couche)"


    Case 1
    Code "G01 X" & PASX & " A" &(1/ DIAMETREFIL*LONGUEURBOBINAGE*(360*compteur) )& "(" & compteur & "couche)"

    End Select

    If compteur=1 Then code "M01"
    compteur=compteur+1
    Wend

    Code"M30"
    Code " "
    CloseTeachFile
    Call LoadStandardLayout()
    Call LoadTeachFile()
    End Sub
     
  12. marchand

    marchand Nouveau

    Messages:
    30
    Inscrit:
    7 Novembre 2006
    Localité:
    niort 79000 niort
Chargement...

Partager cette page