Guia CNC Brasil - Tudo sobre CNC, Router, Laser, Torno e 3D Print

SOFTWARES => Controle => Mach 2/3 => Tópico iniciado por: Cássio Alvarenga em 17 de Julho de 2012, 14:23

Título: Erro Macro ToolChange
Enviado por: Cássio Alvarenga em 17 de Julho de 2012, 14:23
Pessoal,

  Estou fazendo uma macro para trocar as ferramentas do torno que estou construindo, porem estou com problemas na escrita do comando em VB Scrip,   Ele sempre mostra a mensagem "Ferramenta invalida" independente da ferramenta (escolhida no M6 T**), creio que o problema esteja logo após o comando IF, alguem sabe como é escrito?

 Segue o Codigo:

Código: [Selecionar]
tool = GetSelectedTool() 
SetCurrentTool( tool )

toolnew = GetSelectedTool()
toolold = GetOemdro(824)
Dim MOVI
 
 If (toolnew < 1)Or(toolnew > 16 ) Then
MsgBox (" Numero de ferramenta invalida !!!")
message(" Numero de ferramenta invalida !!!")
Call Code("M30")
end
End If

message(" Trocando ferramenta")

If (toolnew = toolold) Then
message("Ferramenta ja em uso")
end
End If

If (toolnew > toolold) Then
MOVI = (toolnew - toolold)*22.5
End If

If (toolold > toolnew) Then
MOVI = 16-(toolold - toolnew)*22.5
End If





CODE "G00 C10"
While ISMOVING()
Wend

CODE "G92 C0"
While ISMOVING()
Wend

CODE "G00 C" & MOVI
While ISMOVING()
Wend

CODE "G92 C0"
While ISMOVING()
Wend

CODE "G01 C-10"
While ISMOVING()
Wend

CODE "G92 C0"
While ISMOVING()
Wend
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 17 de Julho de 2012, 15:03
Rodei seu script no Mach3 e notei que este erro acontece quando a ferramenta atual está em 0.


Experimentei criar umas 4 ou 5 ferramentas gravadas na tabela de ferramentas, e chamei manualmente uma delas - o script não deu erro

O erro está nesta linha:
 If (toolnew < 1)Or(toolnew > 16 ) Then
MsgBox (" Numero de ferramenta invalida !!!")

Editado:
Na verdade não é um erro porque voce criou este limite entre a ferramenta 1 e 16, logo ferramenta 0 está fora do escopo.

Creio que a lógica esteja incompleta - faltaria uma mensagem sugerindo que se coloque o numero da ferramenta certa, ou se crie uma macro de inicialização do Mach3 que faça ele colocar a ferramenta 1 como inicial
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 17 de Julho de 2012, 15:13
Tem um outro erro.

Quando se escolhe uma ferramenta qualquer entre 1 e 16, o script fica em loop na mensagem "Ferramenta já em Uso".

Talvez este erro esteja acontecendo porque não ví nenhuma confirmação de sinal avisando se a ferramenta está ou não onde deveria.

É como se a lógica estivesse incompleta.
Título: Re:Erro Macro ToolChange
Enviado por: Cássio Alvarenga em 17 de Julho de 2012, 16:01
Primeiramente, Obrigado Fabio.

 Consertei o  primeiro erro, ficou assim:

If (toolnew < 0)Or(toolnew > 16 ) Then
MsgBox (" Numero de ferramenta invalida !!!")




 Agora a mensagem "ferramenta já em uso" eu agarrei...

If (toolnew = toolold) Then
message("Ferramenta ja em uso")
end
End If


 Era para o programa exibir a mensagem somente se a ferramenta nova for igual a antiga (toolnew = toolold) então exibe a mensagem e executa o "end" que ignora o resto da macro.

 
   Creio que a DRO do toolold não seja essa "824" que peguei na tabela: http://www.machsupport.com/MachCustomizeWiki/index.php?title=OEM_DROs (http://www.machsupport.com/MachCustomizeWiki/index.php?title=OEM_DROs)  Acho que mudei enquanto fazia as novas telas, mas não acho a referencia...

 Sabe como vejo a lista de DROs?

 
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 17 de Julho de 2012, 16:14
Vê se isso funciona:

Código: [Selecionar]

Num_Positions = 16   
  tool = GetSelectedTool()
While Tool > Num_Positions
Tool = Question ("Numero de Ferramenta Invalido, Novo Numero?")
Wend
Old_pos = GetDRO (5)
New_Pos = (Tool-1)*360/Num_positions
Move_Dis = New_Pos - Old_Pos
If Abs(Move_Dis) >180 Then
  If Move_Dis < 0 Then
    Move_Dis = 360 + Move_Dis
  Else
    Move_Dis = Move_Dis - 360
  End If
End If
Code "G00 G91 A" & Move_Dis
While IsMoving ()
Wend
Call SetDRO(3 , New_Pos )
Code "G90"


  SetCurrentTool( tool )


Para esta macro funcionar voce precisa ter um eixo A configurado e deve deixar habilitado o comando "Auto Tool change" na janela "General Config"

Editado:
Esta é uma macro para um revolver de 16 posições, portanto o eixo A deve ser angular... e não tem a lógica de ligar ou desligar contatos também...
Título: Re:Erro Macro ToolChange
Enviado por: Cássio Alvarenga em 17 de Julho de 2012, 16:30
Dá erro de copilação, veja em anexo...  :-\


  Mas este macro não serve no meu caso, pois fiz o porta ferramenta com catraca, e ele pode girar só de um lado. Se tiver na ferramenta 6 e mudar para 5 por exemplo, vai agarrar... No macro que escrevi ele é obrigado á dar a volta.
Título: Re:Erro Macro ToolChange
Enviado por: Cássio Alvarenga em 17 de Julho de 2012, 16:36
Esta copilando sim, esqueci de apagar um "wend" no final...

 Parece que este funfa!!  ;D ;D 

 Vou modificar ele para trabalhar com catraca e posto aqui os resultados...

 Obrigado Fabio!
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 17 de Julho de 2012, 16:43
Voce viu que tem uma parte da macro que faz a correção para fazer virar pelo caminho mais curto - é só eliminar alí...
Título: Re:Erro Macro ToolChange
Enviado por: Cássio Alvarenga em 17 de Julho de 2012, 16:57
Vou dar uma olhada, Tenho que acrescentar uma linha para andar 10º a mais e depois voltar 10º para os pinos da catraca encaixar.
Título: Re:Erro Macro ToolChange
Enviado por: Cássio Alvarenga em 17 de Julho de 2012, 17:20
Outra coisa...

 O "Old_pos = GetDRO (5)" não devia ser  (3)? ???

veja: http://www.machsupport.com/MachCustomizeWiki/index.php?title=Standard_DROs (http://www.machsupport.com/MachCustomizeWiki/index.php?title=Standard_DROs)
Título: Re:Erro Macro ToolChange
Enviado por: coruja em 17 de Julho de 2012, 21:31

Na verdade não é um erro porque voce criou este limite entre a ferramenta 1 e 16, logo ferramenta 0 está fora do escopo.


Creio que a ferramenta 1 e 16 tb estão fora do escopo. <1 e >16 considera da 2 a 15.
Título: Re:Erro Macro ToolChange
Enviado por: RGG em 28 de Agosto de 2012, 16:03
Oi pessoal.
Onde é que eu insiro uma macro no mach3,é no VB script?
Grato.
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 28 de Agosto de 2012, 17:21
Reginaldo,

Depende do que voce quer fazer...
Título: Re:Erro Macro ToolChange
Enviado por: RGG em 28 de Agosto de 2012, 19:22
Fabio
Estou desenvolvendo uma pequena fresadora 3 eixos e gostaria de fazer a troca de ferramenta automatica (com magazine giratório,como nas fresadoras profissionais) e estou começando a estudar como fazer no mach3,mas não encontro o caminho inicial.
Você pode me dar umas dicas?
Grato,Reginaldo
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 31 de Agosto de 2012, 08:33
Reginaldo,

Como voce já determinou como será feito o magazine (rotativo), agora voce deve pensar em como será feito o controle.

Há diversas formas de fazer isso, e isso é que vai determinar como será feita a lógica da coisa.

Existem magazines sequenciais e outros mais complexos, com controle e lógica de posição e presença.

Veja como quer fazer e aí criamos alguma coisa.
Título: Re:Erro Macro ToolChange
Enviado por: RGG em 02 de Setembro de 2012, 08:15
Fabio
Estou pensando usar este modelo,mas fabrica-lo ok
Grato,Reginaldo
Título: Re:Erro Macro ToolChange
Enviado por: F.Gilii em 02 de Setembro de 2012, 13:01
Interessante - quantas estações?
Título: Re:Erro Macro ToolChange
Enviado por: RGG em 03 de Setembro de 2012, 05:10
Fabio
Penso em fazer um pequeno  para 10 ferramentas por exemplo.
a parte mecânica eu tenho bom recurso,a parte de programação no mach3 que sou leigo.
Aquele programinha que o Cassio Alvarenga fez para o torno,serviria para este modelo "foto" para meu projeto?
Grato,Reginaldo