Autor Tópico: Macro para Oxicorte com pre-aquecimento e jato de corte.  (Lida 1929 vezes)

Description:

0 Membros e 1 Visitante estão vendo este tópico.

Offline dck

  • Novato
  • *
  • Posts: 69
  • Sexo: Masculino
  • GUIA CNC
  • Cidade - UF: Porto Alegre
  • Nome:: Douglas
  • Profissão: Técnico
Macro para Oxicorte com pre-aquecimento e jato de corte.
« Online: 29 de Dezembro de 2014, 20:49 »
Olá pessoal,

Estou trabalhando na edição da tela do mach3 para uma máquina para cortar somente em oxicorte.
Segue abaixo a macro m3 que estou usando para o pre-aquecimento da chapa e tempo de retardo da  perfuração.

DRO1 = GetUserDRO(2222) * 1000  //Tempo de pre-aquecimento
DRO2 = GetUserDRO(2223) * 1000  //Tempo de Retardo da perfuração

ActivateSignal(OUTPUT2) //Ativa a saída 2 de pre-aquecimento

Sleep (DRO1) //Aguarda o tempo de pre-aquecimento
DoSpinCW()   //Ativa a saída 1 para o jato de corte
DeactivateSignal(OUTPUT2) //Desativa a saída 2 de pre-aquecimento


Sleep (DRO2)  // Aguarda o tempo de retardo da perfuração e libera a máquina para andar.



A macro funciona normalmente porém quando coloco um tempo superior a 32s que da o total de 32000ms no DRO1 ele não funciona e apresenta um erro.

Eu gostaria de saber se algum dos colegas tem alguma dica para resolver este problema.

Abraço a todos e fico no aguardo de alguma dica...

Offline Cássio Alvarenga

  • Moderador
  • CNCMASTER
  • ******
  • Posts: 3429
  • Sexo: Masculino
    • www.vatech.ind.br
  • Cidade - UF: Belo Horizonte - MG
  • Profissão: Empresario / Engenheiro Mecânico
Re:Macro para Oxicorte com pre-aquecimento e jato de corte.
« Resposta #1 Online: 29 de Dezembro de 2014, 22:22 »
Uma solução, mas por outro caminho: Fazer com que o CAM gere a pausa no G-code.

Offline Joao Henrique

  • Fuso
  • **
  • Posts: 135
  • Sexo: Masculino
  • GUIA CNC
  • Cidade - UF: Sete Lagoas, MG
  • Nome:: João Henrique
  • Profissão: Instrutor Técnico
Re:Macro para Oxicorte com pre-aquecimento e jato de corte.
« Resposta #2 Online: 30 de Dezembro de 2014, 22:52 »
Coloque uma pausa com 32s e logo após outra(s) com o tempo restante.

Offline Joao Henrique

  • Fuso
  • **
  • Posts: 135
  • Sexo: Masculino
  • GUIA CNC
  • Cidade - UF: Sete Lagoas, MG
  • Nome:: João Henrique
  • Profissão: Instrutor Técnico
Re:Macro para Oxicorte com pre-aquecimento e jato de corte.
« Resposta #3 Online: 30 de Dezembro de 2014, 22:56 »
Só depois vi que está pegando o tempo digitado, desconsidere a resposta acima.

Offline dck

  • Novato
  • *
  • Posts: 69
  • Sexo: Masculino
  • GUIA CNC
  • Cidade - UF: Porto Alegre
  • Nome:: Douglas
  • Profissão: Técnico
Re:Macro para Oxicorte com pre-aquecimento e jato de corte.
« Resposta #4 Online: 31 de Dezembro de 2014, 15:20 »
Não pretendo gerar a pausa no CAM, pois este tempo pode variar de acordo com o ajuste dos gases ou aquecimento da chapa entre outros fatores.

Consegui resolver o problema da seguinte forma.

DRO1 = GetUserDRO(2222) *  1000
DRO2 = GetUserDRO(2223) *  1000


ActivateSignal(OUTPUT2)

 
 while (DRO1 > 0) //Fica rodando o While ate que o tempo for menor que zero
   call setoemDro(2224, DROV) //Mostra a contagem regressiva na tela
   SLEEP (100) //Aguarda 100ms
   DRO1 = DRO1 - 105 //Apos aguardar 100ms diminui 105


   DROV = DRO1 / 1000
   if (DRO1 < 0)  then
       call setoemDro(2224, 0)
   end if
     
 Wend


   DoSpinCW()
   DeactivateSignal(Output2)


 

/** * */