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

recherche script

Discussion dans 'Mach' créé par v tec, 30 Janvier 2015.

  1. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
    recherche script
    bonjour a tous, je cherche comment ecrire une macro pour dire


    arreter le programme
    revenir au debut du programme




    en fait c est pour mettre sur un robot, en cas d erreur, il se met en position de secu, et arrete le programme

    mais l operateur est obligé de cliquer sur debut programme, puis depart, et ca ne marhe pas toujours super bien, des fois, il repart la ou il etait

    merci
     
  2. dh42

    dh42 Compagnon

    Messages:
    3 978
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    recherche script
    Salut,

    essai ça (testé sur un bouton)

    Code:
    Sub Main()
    
    	While (ismoving) 'tant que les axes bougent ; envoyer bouton "Pause"
    		dobutton (1)
    	Wend
    		
    	dobutton (2) 'envoyer bouton 'rembobiner le Gcode'
    
    End Sub     
    
    ++
    David
     
  3. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
  4. dh42

    dh42 Compagnon

    Messages:
    3 978
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    recherche script
    Salut,

    C'est bien DoButton() ; ça marche aussi avec DoOemButton() .... mais pas avec les mêmes codes ...

    ++
    David
     
  5. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
    recherche script
    j ai essayé

    dobutton(2) ne fait rien

    et dooembutton(2) envoi sur la page "manuel"


    edit: a priori ca serait rewind, soit 1002
     
  6. dh42

    dh42 Compagnon

    Messages:
    3 978
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    recherche script
    Alors utilise MachScreen pour connaitre les n° utilisés pour le bouton Pause et le bouton Rembobiner (rewind); peut être sont il différents sur ton interface (je me base sur l'interface US d'origine ; version 3.042.036 de Mach)

    Oui, DoOemButton n'utilise pas les mêmes code que DoButton

    en OEM, pause = 1001 et rewind = 1002

    ++
    David
     
  7. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
  8. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
    recherche script
    c est good ca marche

    par contre est ce qu il est possible d activer l arret d urgence?


    stop cest 1003, pause c est 1001, mais j ai pas trouver l arret d urgence



    en fait l arret d urgence active la fonction enable des drivers


    ce qui fait que si le robot se met en securité, si il se met en arret d urgence, les moteurs vont pouvoir se refroidir, si on intervient pas de suite


    et lorsqu on desactivera l arret d urgence logiciel, enable s en levera
     
  9. dh42

    dh42 Compagnon

    Messages:
    3 978
    Inscrit:
    4 Septembre 2009
    Localité:
    Près de St Etienne (42)
    recherche script
    Salut,

    DoButton(21) OU DoOemButton(1021)

    (testé à la place du Rewind dans l'exemple de code que je t'ai donné plus haut)

    ++
    David
     
  10. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
  11. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
  12. ingenieu59

    ingenieu59 Compagnon

    Messages:
    1 065
    Inscrit:
    10 Septembre 2013
    Localité:
    cassel 59
    recherche script
    Bonjour,

    on peut avoir des photos de nono le petit robot!!!

    ça m' a toujours fait rêver les petits robots.

    Qui sait, un jour j' en ferai un!!! :-D
     
  13. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
    recherche script
    alors je comprend pas ca ne marche pas si je test dooembutton(1021) seul ca marche mais dans la macro non

    If isactive(input4) Then
    activatesignal(output2)
    sleep(200)
    deactivatesignal(output2)
    While Not isactive(input3)
    Wend
    While isactive(input3)
    Wend
    Exit Sub
    End If
    code"g01X-10.24 Y-7.42 Z-3.14 A20.46 B-9.49 C0 F1000"
    code"g01x0y0z0a0b0"
    Dim Msg, Style, Title, Response, MyString
    Msg = "pas de bouteille présente dans l'étiqueteuse,vérifier et appuyer sur depart" ' Define message.
    'Style = vbYesNo + vbCritical + vbDefaultButton2 ' Define buttons.
    Style = 0 ' Define buttons.
    Title = "PROBLEME" ' Define title.
    ' context.
    ' Display message.
    Response = MsgBox(Msg, Style, Title)
    If Response = vbYes Then ' User chose Yes.
    MyString = "ok" ' Perform some action.
    doOEMbutton (1021)
    sleep(2000)
    dooembutton(1002)
    exit sub
    End If
    Exit Sub


    mais je sens que j ai une coquille qq part


    en gros si l entrée 4 est active
    j envoi une impulsion de la sortie 2 pour envoyer une etiquette
    j attend la lecture de l entrée 3 0->1->0 pour sortie de la macro


    sinon
    position de secu 1 puis 2
    un stop du programme
    un rewind
    un arret d urgence
    un message expliquant le probleme

    on clique sur ok, on sort de la macro pret a recommencer le programme quand on aura appuyer sur depart

    edit: si je retraduit ce que j ai ecrit, car celui la avait ete fait avec un exemple retravaillé

    If isactive(input4) Then 'si il y a une bouteille presente dans l etiqueteuse
    activatesignal(output2) 'impulsion etiqueteuse
    sleep(200)
    deactivatesignal(output2)
    While Not isactive(input3)
    Wend
    While isactive(input3)
    Wend 'tant que le capteur d etiquette a pas fait 0->1
    Exit Sub

    else 'sinon

    code"g01X-10.24 Y-7.42 Z-3.14 A20.46 B-9.49 C0 F1000" 'mvmt secu 1
    code"g01x0y0z0a0b0" 'mvmt secu 2
    sleep(200)
    dooembutton(1002) 'rembobinage gcode
    sleep(200)
    While (isestop() = 0) 'tant que pas d'Estop
    doOEMbutton (1021)
    sleep(50)
    Wend
    sleep(200)
    Dim Msg, Style, Title, Response, MyString
    Msg = "pas de bouteille présente dans l'étiqueteuse,vérifier et appuyer sur depart" ' Define message.
    'Style = vbok
    Style = 0 ' Define buttons.
    Title = "PROBLEME" ' Define title.
    ' context.
    ' Display message.
    Response = MsgBox(Msg, Style, Title)
    If Response = vbok Then ' User chose ok.
    MyString = "ok" ' Perform some action.
    exit sub
    end if



    right?
     
  14. v tec

    v tec Compagnon

    Messages:
    1 552
    Inscrit:
    6 Janvier 2012
  15. ingenieu59

    ingenieu59 Compagnon

    Messages:
    1 065
    Inscrit:
    10 Septembre 2013
    Localité:
    cassel 59
    recherche script
    Re,

    il est génial ce bras robotisé .

    Sais-tu que tu peux remplacer mach3 par un automate siemens ou mitsubishi avec commande moteurs pas à pas.
    Ainsi, en programmant un cycle, tu aurais la possibilité de le faire tourner en boucle .
    Bien sûr, cela a un coût . Mais si c' est pour travailler 8 H par jour pour faire les bouteilles,
    il serait vite rentabilisé.

    Avec un automate, tu gères les moteurs pàp , l' air comprimé et le tapis .
     
Chargement...
Articles en relation
  1. dsmx
    Réponses:
    2
    Affichages:
    889
  2. Anthony Pourchet
    Réponses:
    6
    Affichages:
    823
  3. FRED32270
    Réponses:
    0
    Affichages:
    543
  4. MATHIEU79200
    Réponses:
    0
    Affichages:
    985
  5. Clyde'n
    Réponses:
    4
    Affichages:
    796

Partager cette page