Autor Tópico: Mach3  (Lida 1587 vezes)

Description:

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

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Mach3
« Online: 26 de Julho de 2018, 23:23 »
Olá, a todos!
Estou criando uma maquina, e vou usar nela, quatro cilindros de dupla ação com duas solenoides cada cilindro...
Preciso controlar todas as solenoides pelo MACH3, usando os códigos M.
Alguém pode me ajudar com exemplos de programação e criação dos códigos, caso não de pra usar os códigos existentes...
Obrigado!


Offline F.Gilii

  • Administrador
  • CNCMASTER
  • *******
  • Posts: 13796
  • Sexo: Masculino
  • Consultoria, Automação e Construção de Máquinas
  • Cidade - UF: Atibaia - SP
  • Nome:: Fabio Gilii
  • Profissão: Tec. Mecanica de Precisão
Re:Mach3
« Resposta #1 Online: 27 de Julho de 2018, 09:08 »
Exemplo de macro para acionar uma determinada saída :
Código: [Selecionar]
ActivateSignal(Output1) 'este comando liga a saída 1 - na janela portas e pinos, ajustar qual será o pino da saída#1(output#1)

Para desligar a saída 1:
Código: [Selecionar]
DeactivateSignal(Output1)

Macro para ligar uma saída, deixa-la ligada por um tempo e desligar:
Código: [Selecionar]
ActivateSignal(Output1)
Sleep 1000 ' pausa de 1 segundo
DeactivateSignal(Output1)

Estas macros devem ser gravadas com um nome padronizado e diferente dos que já existem (a não ser casos especiais) e devem de preferencia começar com o numero 500 - por exemplo "M500.M1S"
« Última modificação: 27 de Julho de 2018, 09:10 por F.Gilii »

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Re:Mach3
« Resposta #2 Online: 27 de Julho de 2018, 20:58 »
Obrigado Fábio! Todos os cilindros irão avançar e recuar rapidamente em momentos diferentes, com uma determinanda força cada um...
No projeto vou usar dois servos motores também,
Eu consigo controlar os servos e os cilindros juntos sem criar as macros ou preciso criar mesmo?
Quando se cria as macros, eu configuro o código "M" junto ?
Desde ja agradeço!

Offline F.Gilii

  • Administrador
  • CNCMASTER
  • *******
  • Posts: 13796
  • Sexo: Masculino
  • Consultoria, Automação e Construção de Máquinas
  • Cidade - UF: Atibaia - SP
  • Nome:: Fabio Gilii
  • Profissão: Tec. Mecanica de Precisão
Re:Mach3
« Resposta #3 Online: 28 de Julho de 2018, 09:03 »
Guilherme,

Para poder te ajudar melhor seria bom conhecer de antemão o que precisa ser feito, pois não se esqueça que o Mach3 não é um CLP - preciso saber detalhadamente a sequencia de operações para poder dizer qualquer coisa

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Re:Mach3
« Resposta #4 Online: 29 de Julho de 2018, 22:14 »
Obrigado Fábio...
Olha, preciso avançar o primeiro cilindro e manter por um determinado tempo, logo em seguida preciso que o servo motor de algumas voltas que ainda não sei dizer o quanto...
Logo após isso, preciso avançar o segundo cilindro e recuar o primeiro cilindro que estava avançado, e em seguida avançar e recuar rapidamente o terceiro cilindro, na sequencia preciso recuar o segundo cilindro que estava avançado, e recuar o quarto cilindro que iniciará o circuito avançado, ai preciso que o quinto cilindro avance e recue rapidamente... Depois avançar o quarto cilindro novamente para iniciar o ciclo novamente...


Por ultima ação o servo numero dois irá dar uma pequena volta em graus....


Será assim a sequencia dos servos e cilindros controlados,
Será 5 cilindros no total, e não 4 como eu tinha dito antes....


Obrigado pela atenção....
 
Se não entendeu a sequencia, eu tento explicar mais detalhadamente...


Estou meio sem tempo, por isso estou explicando desta maneira!
Obrigado!


Offline F.Gilii

  • Administrador
  • CNCMASTER
  • *******
  • Posts: 13796
  • Sexo: Masculino
  • Consultoria, Automação e Construção de Máquinas
  • Cidade - UF: Atibaia - SP
  • Nome:: Fabio Gilii
  • Profissão: Tec. Mecanica de Precisão
Re:Mach3
« Resposta #5 Online: 30 de Julho de 2018, 10:20 »
Olha, preciso avançar o primeiro cilindro e manter por um determinado tempo, logo em seguida preciso que o servo motor de algumas voltas que ainda não sei dizer o quanto...
Vamos dar nomes aos bois:
cilindro 1 = Output#1
Cilindro 2 = Output#2
Cilindro 3 = Output#3
Cilindro 4 = Output#4
Cilindro 5 = Output#5

Servo 1 = eixo X
Servo 2 = eixo Y
Note que seria necessário ter alguns parâmetros de controle, como pontos iniciais ou origens para certos movimentos - dependendo da aplicação talvez seja importante ter também sensores de final de curso nos pistões para criar um intertravamento na logica de forma que haja um certo sincronismo nos movimentos.
Entenda que o Mach3 (da forma simples) não é um CLP. - Abaixo um exemplo de como pode ser feito (passo a passo)
Código: [Selecionar]
Activatesignal(Output1) 'avança cilindro#1
Sleep 5000 'pausa de 5 segundos
While Ismoving()
Wend
Code "G01 X500 F500"  'Aciona o servo 1 uma certa distancia (ou giros) à uma certa velocidade
While Ismoving()
Wend
Citar
Logo após isso, preciso avançar o segundo cilindro e recuar o primeiro cilindro que estava avançado, e em seguida avançar e recuar rapidamente o terceiro cilindro...
Código: [Selecionar]
ActivateSignal(Output2)
DeactivateSignal(Output1)
ActivateSignal(Output3)
Sleep 200
DeactivateSignal(Output3)
Citar
..., na sequencia preciso recuar o segundo cilindro que estava avançado, e recuar o quarto cilindro que iniciará o circuito avançado, ai preciso que o quinto cilindro avance e recue rapidamente... Depois avançar o quarto cilindro novamente para iniciar o ciclo novamente...
Na sua lógica faltou dizer quando o quarto cilindro avança...
Código: [Selecionar]
DeactivateSignal(output2)
Sleep 100
DeactivateSignal(Output4)
Sleep 100
ActivateSignal(Output5)
Sleep100
DeactivateSignal(Output5)
Sleep 100
ActivateSignal(Output4)
...


Citar
Por ultima ação o servo numero dois irá dar uma pequena volta em graus....
Código: [Selecionar]
Code "G01 Y360 F1000" ' aciona servo 2 tantos graus (no exemplo 360) à uma certa velocidade

Claro que é uma forma simples, e deve ter erros, mas esta é a idéia proposta por voce:
Código: [Selecionar]
Activatesignal(Output1) 'avança cilindro#1
Sleep 5000 'pausa de 5 segundos
While Ismoving()
Wend
Code "G01 X500 F500"  'Aciona o servo 1 uma certa distancia (ou giros) à uma certa velocidade
While Ismoving()
Wend

ActivateSignal(Output2)
DeactivateSignal(Output1)
ActivateSignal(Output3)
Sleep 200
DeactivateSignal(Output3)

DeactivateSignal(output2)
Sleep 100
DeactivateSignal(Output4)
Sleep 100
ActivateSignal(Output5)
Sleep100
DeactivateSignal(Output5)
Sleep 100
ActivateSignal(Output4)
...

Code "G01 Y360 F1000" ' aciona servo 2 tantos graus (no exemplo 360) à uma certa velocidade

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Re:Mach3
« Resposta #6 Online: 30 de Julho de 2018, 13:26 »
Obrigado Fábio....
 Me ajudou muito!
Só mais uma dúvida!
Esses outputs vão virar códigos M ?

Offline F.Gilii

  • Administrador
  • CNCMASTER
  • *******
  • Posts: 13796
  • Sexo: Masculino
  • Consultoria, Automação e Construção de Máquinas
  • Cidade - UF: Atibaia - SP
  • Nome:: Fabio Gilii
  • Profissão: Tec. Mecanica de Precisão
Re:Mach3
« Resposta #7 Online: 30 de Julho de 2018, 14:32 »
Não - na verdade esta codificação que postei acima é quem vira código M

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Re:Mach3
« Resposta #8 Online: 30 de Julho de 2018, 16:08 »

bom...eu já vi onde digito a nova macro..
Gilii , o próprio nome da pasta é o código "M" que vou usar no G-code ?
Ou seja; se sim, quando ler M500 (por exemplo) a maquina vai executar toda aquela lógica ?

Offline F.Gilii

  • Administrador
  • CNCMASTER
  • *******
  • Posts: 13796
  • Sexo: Masculino
  • Consultoria, Automação e Construção de Máquinas
  • Cidade - UF: Atibaia - SP
  • Nome:: Fabio Gilii
  • Profissão: Tec. Mecanica de Precisão
Re:Mach3
« Resposta #9 Online: 30 de Julho de 2018, 16:38 »
bom...eu já vi onde digito a nova macro..
Dentro do Mach3, no menu "Operator > VBScript Editor" - vai abrir um programa de edição e criação de macros... é alí que você escreve todos estes códigos acima.

Citar
Gilii , o próprio nome da pasta é o código "M" que vou usar no G-code ?
Na hora de salvar, você terá que gravar esta macro dentro da pasta do perfil que está usando na sua maquina - por exemplo dentro de "C:\Mach3\Macros\Mach3Mill" - e aí você coloca um nome - por exemplo "M500.M1S"

Depois feche o programa de edição de macros.

Citar
Ou seja; se sim, quando ler M500 (por exemplo) a maquina vai executar toda aquela lógica ?
Sim - se você criar um arquivo de corte (*.tap) e dentro dele estiver escrito "M500", o Mach3 vai chamar esta macro e executá-la


Para testes da própria macro, você pode usar a janela de edição de macros e rodar a macro passo a passo apertando a tecla " >|| "

Cuidado - o Mach3 não reage bem com mais de uma janela de edição aberta ao mesmo tempo, portanto atenção ao que estiver fazendo

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Re:Mach3
« Resposta #10 Online: 30 de Julho de 2018, 16:52 »
muito obrigado.
com sua preciosa ajuda , acho que vou conseguir ....rsrs

Offline Guilherme Henrique da Sil

  • Novato
  • *
  • Posts: 7
  • Sexo: Masculino
  • GUIA CNC BRASIL
  • Cidade - UF: Piracicaba SP
  • Nome:: Guilherme
  • Profissão: Técnico em Mecatrônica
Re:Mach3
« Resposta #11 Online: 30 de Julho de 2018, 22:45 »
Boa noite Gilii, obrigado pela atenção...
 Os códigos que vc mandou explicando o ativamento dos outputs, são apenas para o avanço dos cilindros?... Porque eles ativam a solenoide apenas para o avanço, e a solenoide para o recuo?
Seria uma saida output para cada solenoide? 
Se sim, eu teria 10 solenoides, e não teria 10 saidas outputs na placa! Ou teria?
Oque eu posso fazer?
Desculpe o incômodo e obrigado novamente!

Offline F.Gilii

  • Administrador
  • CNCMASTER
  • *******
  • Posts: 13796
  • Sexo: Masculino
  • Consultoria, Automação e Construção de Máquinas
  • Cidade - UF: Atibaia - SP
  • Nome:: Fabio Gilii
  • Profissão: Tec. Mecanica de Precisão
Re:Mach3
« Resposta #12 Online: 31 de Julho de 2018, 08:24 »
Penso que existem diversas maneiras de esfolar o gato.

Uma válvula de duas vias faz o serviço - a outra alternativa é uma válvula para cada direção...

Como falei, depende de como você vai montar a coisa toda - não tem uma receita de bolo

O Mach3 pode controlar até 20 outputs, mas lembre-se que você tem limitação de postas (no máximo duas portas paralelas) sendo cada porta tem 13 pinos que podem ser usados como saídas, mas você tem pinos usados para acionamento de motores e algum extra...

Pense bem
« Última modificação: 31 de Julho de 2018, 08:27 por F.Gilii »

 

/** * */