Autor Tema: Ayuda macro ATC para torno  (Leído 6784 veces)

delichon

  • Visitante
Ayuda macro ATC para torno
« en: 15 Mayo 2014, 00:15 »
Hola a todos. Como dice el enunciado estoy liado buscando un macro para un ATC de 8 herramientas. En la busqueda encontre un macro https://www.machsupport.com/forum/index.php?topic=25198.0 , no hay mucha información y lo peor en ingles, no me llevo bien con el.
El macro es el siguiente lleva al eje X y Z a una posición (0.2 mm), seguidamente desbloquea la torreta para poder girar. La segunda parte ubica donde esta cada herramienta ( en rojo) el eje A girara a la herramienta seleccionada para luego el amarre de la torreta.

Cargo este macro en el M6Start del Mach. En Confi. Gen. activo el cambio automatico.
Solicito una herramienta, X y Z se ubican a 0.2 mm y hay me quedo, el eje A no se mueve. El eje A esta bien configurado ya que me permite realizar movimientos de grados en manual.
Alguien domina este tema?, falta algo que se me escapa.
Gracias



Code"G53 X0.2"                              'Mover ejes a pocisción
While Ismoving()
Wend                         
Code"G53 Z0.2"
While Ismoving()
Wend

If GetCurrentTool() = 1 then        ' Verificar herramienta#
   Code"G0 A0.000"         ' mover a posición   
While Ismoving()           'esperar a que el movimiento se detenga   
Wend
   End If

If GetCurrentTool() = 2 then
   Code"G0 A45"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 3 then
   Code"G0 A90"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 4 then
   Code"G0 A135"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 5 then
   Code"G0 A180"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 6 then
   Code"G0 A225"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 7 then
   Code"G0 A270"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 8 then
   Code"G0 A315"
   While Ismoving()
   Wend
   End If

End

« última modificación: 15 Mayo 2014, 00:42 por delichon »

borondes2010

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #1 en: 15 Mayo 2014, 10:23 »
Siento no poder ayudarte..aggggggg haber si algun guru del CNC se pone las pilas y te echa un cable...lo que si me gustaria es ver ese ATC .baba .baba

anino

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #2 en: 15 Mayo 2014, 15:31 »
Buenas!

Veamos, el problema en si no esta en la macro, tienes que tener una línea que active la macro, y otra línea que prosiga el programa una vez finalizada la macro.

Un saludo

delichon

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #3 en: 15 Mayo 2014, 17:53 »
Buenas.
Michel el ATC esta en fase de diseño, lo único que te puedo decir es que llevara un servo de 200W con encoder absoluto, pero como soy un pejilleras prefiero tener lo que me cuesta mas probado, ósea la electrónica. Sera parecido al del maestro tessen con 8 estaciones
Anino la macro entra ya que me realiza los posicionamientos de  los dos ejes, lo que no entera que herramienta coger.

Gracias

borondes2010

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #4 en: 15 Mayo 2014, 19:53 »
Haber yo de esto ni zorra..pero vamos a ver tu llamas al G53 que es para variar el decalaje de origen..osea el cero de origen..con g53 lo llmas a una nueva posicion segura definida por ti para que cambie de herramienta y luego utilizas el cambiador como un 4 eje mandandole girar los grados de las distintas posiciones de las herramientas de la torreta..haz una prueba en el mach3 y en vez de usar el mach3 de torno usa el de fresa y prueba a ver si ejecuta bien el asunto...normalmente el cambio de herramienta va asociado a la letra T y el numero de la herrameinta a usar..por ejemplo T1..claro esta que eso va asociado a una macro interna del control que hace girar la torreta ATC hasta los grados que tiene asociados la llamada de herramienta en funcion del numero de estaciones del ATC..lo que no se es como decirle a mach3 como hacer eso directamente..en modo fresadora esta claro que lo va a hacer sin macro ni leches nada mas que programes el numero de grados que quieres que gire y la velocidad de avance a la que quieres que lo haga..prueba a hacer una cosa en la macro que tienes y  que en vez G0 A45 POR EJEMPLO..ponle A45 F300 HABER SI ASI SE TE MUEVE A 45 GRADOS OSEA A LA SEGUNDA HERRAMIENTA DEL ATC..no se es que esto me queda bastante grande la verdad..

delichon

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #5 en: 15 Mayo 2014, 22:19 »
Buenas.
Michel el eje A funciona de maravilla muevo A45 F3000 y lo clava, el problema viene que la macro entra ya que posiciona los ejes a 0.02

Code"G53 X0.2"                              'Mover ejes a posición
While Ismoving()
Wend                         
Code"G53 Z0.2"
While Ismoving()
Wend

A  partir de este punto no avanza, no se si falta algo en la macro o que leches pasa pero no posiciona la herramienta pedida.
Lo que es una virgeria es el encoder cortas alimentación paras el pc, lo vuelves a arrancar todo y pones un A0 sin realizar origen y lo clava, el servo lleva una alimentación de 5v para hacer un backup de la posición del encoder y el encoder lleva su batería, por eso no pierde datos cuando se para.
Saludos

borondes2010

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #6 en: 15 Mayo 2014, 22:31 »
No se es que esa macro no la acabo de entender muy bien por eso mi respuesta estaba claro que era equivocada..todavia me queda demasiado que aprender en tema CNC..a ver si alguien que sepa que en este foro ay mucho crack del CNC coño se moja y pierde un poco el tiempo haber si se logra resolver tu problema ya que es un tema de mucho interes para cuando se quiere poner un cambiador de herramientas..yo la verdad es que no puedo aportar nada mas por absoluta falta de conocimientos.

anino

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #7 en: 15 Mayo 2014, 22:43 »
Yo estoy igual que Michel, no se cual es tu problema realmente, que se te mueve el x y el z ?   .confuso2 .confuso2 .confuso2

Un saludo.

delichon

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #8 en: 15 Mayo 2014, 23:57 »
Yo estoy igual que Michel, no se cual es tu problema realmente, que se te mueve el x y el z ?   .confuso2 .confuso2 .confuso2

Un saludo.

Hola anino el problema es que no se posiciona el eje A, que es el cambiador , a la herramienta solicitada imagínate pido la T5, eje X y Z se posicionan a 0.02mm (PRIMERA PARTE DE LA MACRO) y ya esta el eje A ni se cosca a que posición tiene que ir, que seria a A180.0 que es la ubicación de la T5.

Code"G53 X0.2"                              'Mover ejes a posición
While Ismoving()
Wend                         
Code"G53 Z0.2"
While Ismoving()
Wend


Michel, esta parte es donde esta ubicadas las herramientas desde la T1 a la T8 en grados, y por comparación la macro busca la herramienta y te posiciona el eje A, el =1 ten se refiere a la T1, así sucesivamente.
If GetCurrentTool() = 1 then        ' Verificar herramienta#
   Code"G0 A0.000"         ' mover a posición   
While Ismoving()           'esperar a que el movimiento se detenga   
Wend
   End If

If GetCurrentTool() = 2 then
   Code"G0 A45"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 3 then
   Code"G0 A90"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 4 then
   Code"G0 A135"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 5 then
   Code"G0 A180"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 6 then
   Code"G0 A225"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 7 then
   Code"G0 A270"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 8 then
   Code"G0 A315"
   While Ismoving()
   Wend
   End If

End



No se explicarlo mejor, pero funciona así, luego faltarían las señales de seguridad que si piston adelante o atrás, el 0 cargador, pero no lo e puesto para no liarlo.
Saludos y gracias
« última modificación: 15 Mayo 2014, 23:59 por delichon »

anino

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #9 en: 16 Mayo 2014, 00:19 »
Buenas, ahora ya lo tengo claro.

Bien, la estructura del If está correcta, por lo que tienes que comprobar si la variable GetCurrentTool toma algún valor distinto de 0, si no es así está claro que no te funcionará.

prueba a poner en vez de:
If GetCurrentTool() = 1 then
   Code"G0 A0.000"       
While Ismoving()     
Wend
   End If
esto otro:
If GetCurrentTool() = 0 then
   Code"G0 A5.000"       
While Ismoving()     
Wend
   End If


delichon

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #10 en: 16 Mayo 2014, 00:29 »
Gracias anino lo probare mañana ya que ahora estoy trabajando  .idea

borondes2010

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #11 en: 16 Mayo 2014, 08:57 »
OK ahora comprendo la macro...lo que no se como resolver el problema que tienes..ja ja .brinda

Desconectado varoniberico

  • Aprendiz
  • *
  • Join Date: Mar 2011
  • Mensajes: 1568
  • Ubicación: Torrevieja (Alicante) España
Re:Ayuda macro ATC para torno
« Respuesta #12 en: 16 Mayo 2014, 13:31 »
Hola delinchon , yo no estoy muy puesto en programación pero , te puedo recomendar que leas los manuales de programación de los FAGOR En donde vienen diferentes macros y recuerdo haber visto alguna de la índole que mencionas, con la particularidad de que viene en perfecto español y ademas vienen las diferentes posibilidades de errores mas comunes que se cometen al programar, a lo mejor tienes la solución o un rayo de luz a tu problema.
Tendrás que registrarte en la pagina de inicio si no no te deja descargar.
http://www2.fagorautomation.com/_bin/descargas.php
Un saludo .brinda .brinda .brinda .brinda
"Nadie esta tan vació como aquel que esta lleno de si mismo."

Desconectado tessen

  • Aprendiz
  • *
  • Join Date: Abr 2010
  • Mensajes: 388
  • Ubicación: Malaga
Re:Ayuda macro ATC para torno
« Respuesta #13 en: 16 Mayo 2014, 16:25 »
Hola, no soy ningún experto (ni novato casi) en programación, pero esto lo he probado y funciona bien

pon esto dentro de M6Start.m1s

 tool = GetSelectedTool()
 SetCurrentTool( tool )


ActivateSignal(output2)      'desbloqueo de torreta, la electrovalvula esta comandada por la salida 2 en este caso

Sleep(1000)     'tiempo en ms dado para que acabe el movimiento

If GetCurrentTool() = 1 Then        ' comprueba la herramienta #
   Code"G0 A0"            'mueve el eje A
   While Ismoving()       'espera que el movimiento acabe
   Wend
   End If

If GetCurrentTool() = 2 Then
   Code"G0 A45"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 3 Then
   Code"G0 A90"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 4 Then
   Code"G0 A135"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 5 Then
   Code"G0 A180"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 6 Then
   Code"G0 A225"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 7 Then
   Code"G0 A270"
   While Ismoving()
   Wend
   End If

If GetCurrentTool() = 8 Then
   Code"G0 A315"
   While Ismoving()
   Wend
   End If

DeactivateSignal(output2)        'vuelve a bloquear la torreta
Sleep(2000)           

End


salud 2  .brinda

delichon

  • Visitante
Re:Ayuda macro ATC para torno
« Respuesta #14 en: 29 Mayo 2014, 09:25 »
Bueno la macro empieza a funcionar pero a dado guerra. Gracias a tessen a salido, a el le funcionaba a la primera pero yo tenia unos fallos. El probaba sobre la versión fresadora y en MDI  las ordenes se le ejecutaban T2 M6 ejemplo.
Al probar yo su macro no conseguía ningún movimiento del eje, solo funcionaba repitiendo la orden T202. Leyendo con mi penoso ingles el manual del torno del Mach intuí que no hace caso al T2 M6 por eso ni se inmutaba en los movimientos, solo cuando se pone con el factor de corrección de la herramienta el puñetero T202.
Pero por que tenia que duplicar la entrada de herramienta. Pues el puto Mach, yo tenia una versión un poco antigua y en español, ha sido cambiar a la nueva y todo perfecto.
Ahora queda depurar la macro como la señales de seguridad, redes del pistón neumático etc,, pero ya estoy contento.
Gracias tessen