Guia CNC Brasil - Tudo sobre CNC, Router, Laser, Torno e 3D Print
SOFTWARES => Controle => Mach 2/3 => Tópico iniciado por: matrix em 24 de Dezembro de 2012, 14:58
-
Ola a todos, antes de mais, e como a data deste post é 24 de dezembro, um bom natal para todos.
Preciso de criar um script VB em que um eixo se movimente em + ou - até uma entrada seja activada.
Caso tivesse uma cordenada seria exemplo:
code "x200"
mas eu quero que se mova sempre até uma entrada seja activada exemplo:
code "x+"
stop when input1=1
Alguma ideia.
obrigado
-
Por que nao usar o probe input que já funciona assim???
-
Obrigado pela resposta,
Não sei como funciona o probe, de qualquer forma eu acho que estaria limitado apenas á entrada do probe, ou eu posso
usar mais alguma entrada ser ser a do probe?
-
Eu creio que tudo dependa do que voce quer fazer...
Dá para fazer praticamente qualquer coisa com VB + Mach3, mas lembre-se que é importante definir o que se deseja ou precisa para se criar a lógica da coisa toda.
-
Fábio, tenho a perfeita noção que posso fazer tudo com VB, como sabe já tenho feito algumas coisitas, mas sempre com
a vossa ajuda, ou com ajuda de pesquiza na net, com algumas dicas dos comandos eu acho que consigo chegar lá.
Este post é para começar a tirar duvidas para um projecto que ainda está em mente, precisaria de um probe para medir a ferramenta e outro para medir a espessura do material a usinar.
Já tive a fazer a fazer uns teste com a entrada do probe, e acho que posso usar a mesma entrada para dois probes diferentes.
A minha duvida é, se por qualquer motivo não for possivel utilizar a mesma entrada (Probe) para os dois probes, será que posso
usar uma outra entrada para o efeito?
-
À princípio o Mach3 tem uma entrada (hard coded) que lê o que um probe está sinalizando.
O comando é G31 e pode ser usado em qualquer eixo (um de cada vez).
Já que os comandos são para leitura de ferramentas o melhor é usar os valores contidos em 3 variáveis do sistema - var(2000) p/ X, var(2001) p/ Y e var(2002) p/ o Z porque não se deve ler o valor contido nos DROs.
Um exemplo de código em VB seria:
Code "G31 Z-100.0 F200"
While IsMoving()
Wend
ZProbePos = GetVar(2002)
Como só tem uma entrada de probe, talvez o caminho seja fazer botões com funções distintas - um para ler a ferramenta e outro para ler a posição do material.
-
Sim, se usar a mesma entrada, teria que ter duas macros diferentes.
Porque não se deve ler os valores contidos nas DROs?
Obrigado.
-
Porque não se deve ler os valores contidos nas DROs?
Quando se envia um eixo para fazer um contato (com um probe por exemplo) o movimento não se interrompe de imediato!
O eixo continua a se mover um pouco porque há um retardo desde o momento do contato até a atualização dos digitais.
Quando o contato é feito, o valor da dimensão é guardado na variável var# e caso haja necessidade de ter a medida deslocada real, deve-se usar estes valores e não dos DROs