Autor Tópico: bobinadora cnc, alguém tem uma idéia?  (Lida 14769 vezes)

Description:

0 Membros e 2 Visitantes estão vendo este tópico.

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderador
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #30 Online: 25 de Abril de 2011, 11:53 »
Samuel,

Esqueci de comentar, o fato de só ter gerado 1 camada, me parece algo do Mach3, pois no EMC2 roda até o final (50 camadas ou 5000 espiras). Neste programa eu usei o REPEAT ao invés do WHILE, poderia ser isso.

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #31 Online: 25 de Abril de 2011, 14:32 »
Olá gil, mas te confesso que ta confuso ainda pra eu entender essa parada toda, hehehe.
to achando que vou fazer é o código todo na mão msm, ruim vai ser quando tiver medidas diferentes e tiver que fazer tudo de novo, hehehe.
vou ir tentando aprender mais enquanto isso.

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderador
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #32 Online: 25 de Abril de 2011, 15:10 »
No EMC2 está rodando bem!! Me desculpe...., mais simples do que isso??  :)

Voce pode tentar algo ainda mais simples, usando números ao invés de variáveis:

( Parâmetros do programa                                )
#1000 = 5000    ( total de espiras )
#1001 = 20.0    ( largura do carretel, mm )
#1002 = 0.200   ( bitola do fio, mm )
#1003 = 0.0000  ( posição inicial X, mm )
#1004 = 500     ( velocidade de avanço )
(=======================================================)
( Variáveis internas do programa                        )
#1010 = [#1001 / #1002]   ( espiras por camada )
#1011 = [#1000 / #1010]   ( camadas )
#1012 = [#1003 + #1001 ]  ( posição final X, mm )
#1013 = #1010             ( contador de espiras )
#1014 = #1012             ( posição final do X da camada)
(=======================================================)
G00 X#1003 Y0 Z0
G92 A0
F#1004

O100 REPEAT[50]
  G01 X#1014 A#1013
  #1013 = [#1013 + 100]
  O110 IF[#1014 EQ 0 ]
    #1014 = 20.0   
  O110 ELSE
    #1014 = 0.0
  O110 ENDIF
O100 ENDREPEAT

M30

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #33 Online: 25 de Abril de 2011, 18:08 »
Gil, desculpe talvez vc tenha me interpretado mal, não quero que vc faça a programação pra mim, eu estou tentando entender os comandos aqui, mas você já esta sendo de uma ajuda enorme, eu é que tenho que correr atraz da minha necessidade você esta me ajudando porque é um camarada muito gente boa, desculpe se fiz parecer que queria que me ensinasse tudo, ok?

Blackmore, desculpe esqueci de falar de você, suas respostas também foram de grande ajuda, e também do Gilli, todos que aqui postaram foram essenciais em minha pesquisa.
« Última modificação: 25 de Abril de 2011, 18:10 por samuelluthier »

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #34 Online: 25 de Abril de 2011, 18:53 »
Gil aonde ta escrito


O100 REPEAT[50]
esse 50 dentro dos colchetes significa a quantidade de vezes que vai repetir correto?

a questão do mach não entender o repeat, se eu apenas colocar while isso pode ser feito sem que altere a programação, e nem de nenhum problema? por exemplo

O100 WHILE[50]

isso pode ser feito ou tenho que mudar mais alguma coisa?

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderador
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #35 Online: 25 de Abril de 2011, 20:38 »
Dê uma lida na documentação do Mach3, no EMC2, o REPEAT executa um conjunto de instruções um certo número de vezes. Já o WHILE, excuta as instruções enquanto ("while") uma certa condição for verdadeira (exemplo: contador < limite máximo).

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #36 Online: 26 de Abril de 2011, 09:14 »
Gil, to começando a entender, mas no caso esses parametros e as variaveis internas, são sempre nesse formato? não estou querendo mudar é só pra saber se em qualquer programação que fizer vai ser dessa forma, pelo menos referente aos captadores.

obrigado Gil vou dar uma caçada aqui na documentação do Mach e do EMC2.

abração.

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderador
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #37 Online: 26 de Abril de 2011, 12:36 »
Samuel,

Gil, to começando a entender, mas no caso esses parametros e as variaveis internas, são sempre nesse formato? não estou querendo mudar é só pra saber se em qualquer programação que fizer vai ser dessa forma, pelo menos referente aos captadores.

obrigado Gil vou dar uma caçada aqui na documentação do Mach e do EMC2.

abração.

Não sei se entendi, o "formato" que se refere seria a forma de representar usando # e números? E não variáveis literais?

Abraços,

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #38 Online: 26 de Abril de 2011, 16:33 »
isso mesmo gil, essa questão do #1000 e logo em seguida #1001 e assim sucessivamente, e quando vc passa para a outra parte logo abaixo dos ifens ------------------------
vc passa a usar #1010 e pelo que entendi se tivesse outra camada abaixo você usaria #1020 correto? por enquanto é essa a minha dúvida, mas certamente terei mais, hehe.

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:bobinadora cnc, alguém tem uma idéia?
« Resposta #39 Online: 26 de Abril de 2011, 16:53 »
No Mach3, se voce quer que uma rotina se repita "N" vezes, pode-se usar um comando M98 Pxxx Lxx, onde:
- M98 é a chada de um subprograma (ou rotina)
- Pxxx é o Nome do subprograma (ou rotina - p.ex P002)
- Lxx é a quantidade de vezes que se quer a repetição - p.ex L5 (5 vezes)

Um exemplo de código:
%
O0001 (PROGRAMA PRINCIPAL)
G00 G90 G43
etc..
M98 P002 L5
M30

O002 (SUB PROGRAMA)
...
(linhas de programa)
...
M99
%

Note que o sub programa começa com a letra "O" (não zero)...

Sugestão: - se quer fazer um programa como o Gil sugere usando variáveis na repetição, basta criar uma variável que controla as quantidades de repetições e inseri-la na frente da letra "L" - por exemplo a variavel #1111=5 e na chamada assim: M98 P002 L#1111

Deveria funcionar
« Última modificação: 26 de Abril de 2011, 17:35 por F.Gilii »

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #40 Online: 26 de Abril de 2011, 18:23 »
Fabio, amanhã releio sua resposta, hj tenho que ir pra faculdade.
amanhã vejo se entendo melhor. é muita informação em pouco tempo, hehehe, não tenho neuronios suficientes para tamanha velocidade.
abração e obrigado.

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #41 Online: 27 de Abril de 2011, 12:40 »
Gilli ve se eu entendi?
fiz um programinha simples só pra ver se é isso.


%
O0001 (PROGRAMA PRINCIPAL)
G00 G90
M98 P008 L3
M30

O008 (SUB PROGRAMA)
G0 X0 A0
G01 X10 A80
G01 X0 A160
G01 X10 A240
G01 X0 A320
M99
%


só mais uma pergunta, o M98 é pra repetir, e o M99 é pra avisar que é pra voltar ao inicio onde começa a repetiçã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:bobinadora cnc, alguém tem uma idéia?
« Resposta #42 Online: 27 de Abril de 2011, 12:59 »
, o M98 é pra repetir, e o M99 é pra avisar que é pra voltar ao inicio onde começa a repetição?
M98 - é o comando de leitura de uma subrotina
P008 - é o nome (ou a chamada) da subrotina (que começa com a letra "O")
L3 - é a quantidade de vezes que quer que a subrotina se repita

Offline samuelluthier

  • Hobby
  • ****
  • Posts: 305
  • Sexo: Masculino
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #43 Online: 27 de Abril de 2011, 13:24 »
To começando a entender.
mas esse código que eu fiz ta correto ou tem erros nele?

Offline minilathe

  • How to ask questions - The Smart Way...
  • Moderador
  • CNCMASTER
  • ******
  • Posts: 4295
  • Sexo: Masculino
  • http://science-lakes.com/article43-html.html
  • Cidade - UF: Rio de Janeiro - RJ
  • Nome:: Gil Pinheiro
  • Profissão: Engenheiro e professor universitário
Re:bobinadora cnc, alguém tem uma idéia?
« Resposta #44 Online: 27 de Abril de 2011, 13:58 »
Samuel,

Consegui fazer uma versão mais auto-explicativa do programa em EMC2:

( Código paramétrico gerado a mão                       )
( Por: Gil Pinheiro - minilathe                         )
( Bobina exemplo com:                                   )
( N=5000 espiras, largura 20 mm, 100 espiras por camada )
( espiras unidas, bitola do fio = 20/100 = 0,2 mm       )
( Nota: Só executa camadas inteiras                     )
(=======================================================)
( Parâmetros do programa                                )
#<tot_espiras> = 5000    ( total de espiras )
#<l_carretel>  = 20.0    ( largura do carretel, mm )
#<diam_fio>    = 0.200   ( bitola do fio, mm )
#<x_min>       = 5.000   ( posição inicial X, mm )
#<vel>         = 500     ( velocidade de avanço )
(=======================================================)
( Variáveis internas do programa                        )
#<esp_camada> = [#<l_carretel> / #<diam_fio>]  ( espiras por camada )
#<tot_camadas> = [#<tot_espiras> / #<esp_camada>] ( camadas )
#<x_max> = [#<x_min> + #<l_carretel> ]  ( posição final X, mm )
#<c_espiras> = #<esp_camada>            ( contador de espiras )
#<x_final> = #<x_max>           ( posição final do X da camada)
(=======================================================)
G00 X#<x_min> Y0 Z0
G92 A0
F#<vel>

O100 REPEAT[ #<tot_camadas> ]

  G01 X#<x_final> A#<c_espiras>
  #<c_espiras> = [ #<c_espiras> + #<esp_camada> ]

  O110 IF[ #<x_final> EQ #<x_max> ]
    #<x_final> = #<x_min>
  O110 ELSE
    #<x_final> = #<x_max>
  O110 ENDIF

O100 ENDREPEAT

M30
« Última modificação: 27 de Abril de 2011, 14:02 por minilathe »

 

/** * */