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

SOFTWARES => Controle => Mach 2/3 => Tópico iniciado por: cesarbackes em 19 de Outubro de 2015, 13:55

Título: Alteração Macro M5
Enviado por: cesarbackes em 19 de Outubro de 2015, 13:55
Boa tarde,

Gostaria de saber se teria como adicionar na macro M5, um comando para Aguardar um sinal de entrada para executar o comando?

Exemplo, programação chama o M5, mas ele só execute após receber um sinal na entrada 1 que vai ser manda por um sensor.
 a parte de ligação já fiz, Só gostaria de saber como ficaria a linha de comando.

Desde já agradeço pela atenção.
Título: Re:Alteração Macro M5
Enviado por: F.Gilii em 20 de Outubro de 2015, 08:40
Tem como fazer, mas não seria aconselhável na macro M5, pois esta é padrão para desligar o spindle.

Explique melhor oi que quer fazer (ou o que precisa) e quem sabe possa te apontar um caminho.
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 20 de Outubro de 2015, 11:42
Coloquei um servo motor ASD-B2 na função de internal speed, ele vai fazer a função de uma punçonadeira, só que ele precisa parar sempre numa mesma posição para que o punção não fique para baixo.
Ideia era colocar um sensor para quando eu mandasse parar o servo, só executasse o comando quando passar pelo sensor.
Título: Re:Alteração Macro M5
Enviado por: F.Gilii em 20 de Outubro de 2015, 12:34
Imagino que tenha que usar dois sensores dispostos de forma a informar quando o punção está no alto, e um circuito que informe ao drive que irá ter uma parada - nesse momento deve existir um comando que diz ao drive para frear até a parada completa e que deve parar com um sensor acionado isto é, com o punção no alto.

Uma vez parado, o outro sensor informa ao Mach3 que está acionado (ou ao contrário, informa que está aberto), e este libera a movimentação do cnc...

Já não lembro mais de todas as funções do drive desse servo, mas se não me engano ele tem como sinalizar quando o servo está parado (via software) - acho que se pode programar para informar "Zero Speed" por uma das saídas digitais...

Talvez ainda (como alternativa) dê para configurar o drive para parar sempre na posição de index do encoder, mas não sei se funcionaria caso estiver usando alguma redução na saída no servo...
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 20 de Outubro de 2015, 13:50
O modelo ADB - B2 não tem a função de HOME, caso tivesse faria por ele, dessa linha o modelo A2 tem essa função.
Mas se tivesse como implementar a função somente parar aguar um sinal do INPUT, já resolveria meu problema.
Título: Re:Alteração Macro M5
Enviado por: dck em 20 de Outubro de 2015, 14:48
Para implementar na macro o código seria mais ou menos este.


SystemWaitfor(18)       'Aguarda a Entrada 1
Título: Re:Alteração Macro M5
Enviado por: F.Gilii em 20 de Outubro de 2015, 14:49
Falando de linguagem de macro, o Mach3 tem um comando que espera por um sinal de entrada para executar algo...

Por exemplo:

...
SystemWaitFor(input1) 'aguarda um sinal na entrada 1
DoOEMButton 1000      'executa o comando RUN
...
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 20 de Outubro de 2015, 19:03
Fiz alguns testes aqui
Mas não obtive resultado

-----

SystemWaitFor(input1)
DoSpinStop()

------
Título: Re:Alteração Macro M5
Enviado por: dck em 21 de Outubro de 2015, 17:34
Mas aconteceu alguma coisa ou não aconteceu nada?
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 21 de Outubro de 2015, 18:08
Ele desativou o spindle mesmo a input 1 desativada.

fiz outro teste também não obtive resultado.

rem #define INPUT1 30

SystemWaitFor(30)
DoSpinStop()
Título: Re:Alteração Macro M5
Enviado por: F.Gilii em 22 de Outubro de 2015, 06:46
Mas voce configurou algum pino de entrada para o sensor? se sim, qual o pino usado?

Eu te dei um exemplo que usa a entrada 1 - precisa acertar a entrada meu caro!
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 22 de Outubro de 2015, 07:48
Bom dia,
Sim define o sinal de entrada na INPUT #1 pino 10 da porta paralela 1
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 22 de Outubro de 2015, 07:58
Usando o Automated Setup of inputs
Título: Re:Alteração Macro M5
Enviado por: cesarbackes em 22 de Outubro de 2015, 08:38
Bom dia pessoal,
Boas novas, o problema foi resolvido.

Obrigado à todos pelas dicas.

Colocando o comando SystemWaitFor(INPUT1) ele funciona, mas como na mesma macro tinha o comando de DoSpinStop ()
ele executava toda a macro e ficava aguardando pelo sinal na entrada 1.
Solução: criei uma macro nova "M800" colocando Somente o comando SystemWaitFor(INPUT1) e fazendo com que ela execute antes do m5 no programa.

Cabeçaria final do G-code ficou


m800
m5
m30
%
%