Guia CNC Brasil - Tudo sobre CNC, Router, Laser, Torno e 3D Print
SOFTWARES => Outros => Tópico iniciado por: Marcio f. Cruz em 06 de Outubro de 2008, 12:20
-
Olá a todos:
Estou pretendendo desenvolver um software que leia o arquivo já em "G-CODE" e, envie códigos pela porta LPT1... no caso, para o motor SM 1.8 E8590.
Quando concluído este software, pretendo postar no fórum...
Gostaria de saber se alguém tem algum manual dos códigos internos que são enviados para a porta LPT1, afim que o Eixo X e Y "faça o trabalho"...
O Mach 3, tem muitas funções e, gostaria de fazer um com funções reduzidas...
Obrigado!
-
Marcio,
Não sei se entendí direito, mas pergunto o que realmente deseja fazer quando diz que quer desenvolver um programa que leia código-G e envie códigods pela LPT...
Se for um programa de controle de máquinas, sugiro que antes de começar a empreita, dê uma boa pesquisada no assunto...
-
Estou pretendendo desenvolver um software ...
Aviso aos navegantes:
O que é enviado à porta paralela são pulsos interpolados com temporização muito precisa que comandam os drivers e não códigos ... a tarefa não é nada trivial sob Windows como seria o envio de códigos apenas ... se vc não dominar Windows o suficiente para fazer com ele se comporte como SO de tempo real e não for capaz de escrever rotinas em assembly, é melhor se conformar e usar o que há no mercado.
A interface do MAch é mesmo confusa e poluída, mas ele tem a grande virtude de permitir a criação das telas ao gosto do freguês ... vc pode tb considerar outro prog, o KCAM, por exemplo ou o EMC2 (Linux).
Reiterando enfaticamente o que já disse o Fábio: estude como todo o sistema é montado, o software, a eletrônica, a mecânica ... o buraco é muito mais embaixo ... ;D
-
Bem mais embaixo... :)
-
Bom dia, Fábio e Jorge, tudo bem com vocês?
Então, eu tenho o domínio de envio de comandos de configuração para a porta LPT1 e mesmo USB... já trabalhei com alguns periféricos... O que os softwares enviam, mesmo em Assembler ou linguagem C++, são caracteres como por exemplo #27'a', #13'3'444' que, são enviados a uma frequência, controlada pelo software, afim que o motor tenham certo comportamento no eixo X e Y imaginário... E, po outro lado... o programa fica "escutando" a porta USB ou LPT1, tendo o resultado da leitura do comportamento da máquina, cujo equipamento envia sobre seu status...
O motor que vou fazer testes é o SM1.8-E8590-MN... Eu não achei um manual deste equipamento... Mas, acredito que, é "aberto" para desenvolvedores, ter tipo de um SDK "Software Development Kit"... que, quem eventualmente se aventurar, possa enviar comandos para ela..
Por exemplo, impressoras matriciais tem no final de seu manual um apêndice com a lista de todos os comandos que a gente pode configurar ela, como: Tamanho do papel, deixar negrito, condensado, fonte draft, etc... e, estes comandos eu envio sem o "conhecimento" do Windows, ou seja, envio direto pela porta serial... ou mesmo LPT1...
O Mach 3, pelo que vi, funciona bem mas, o que ele faz internamente é enviar e receber comandos a porta (USB ou LPT1) e, estes comandos, estão numa "linguagem" que o driver entende, fazendo ele fazer determinada ordem... O que preciso, é destes códigos, uma tabela, com os comandos que são enviados por exemplo:
Eixo X rodando a 10 RPM: #13x10
Eixo Y rodando a 30 RPM: #13y0
Algo assim...
Se vocês tiverem este manual, eu pego e, tento fazer uns testes... Acredito que eu possa conseguir... Depois, fazendo estes testes, eu leio uma tabela de códigos G e, interpreto linha a linha e envio comando por comando... É claro... uma coisa de cada vez, primeiro, preciso resolver o problema da comunicação..
Obrigado!
-
... O que os softwares enviam, mesmo em Assembler ou linguagem C++, são caracteres como por exemplo #27'a', #13'3'444' que, são enviados a uma frequência, controlada pelo software, afim que o motor tenham certo comportamento no eixo X e Y imaginário.. E, po outro lado... o programa fica "escutando" a porta USB ou LPT1, tendo o resultado da leitura do comportamento da máquina, cujo equipamento envia sobre seu status...
Entendí, mas sugiro que dê uma boa analizada como todos os sistemas cnc atuais funcionam, e tenho certeza que muitos aspectos irão ficar mais claros a você...
Tudo isso está mais que resolvido hoje em dia, e acho que seria muito interessante você estudar bem antes de se meter nessa área.
A aproximação do assunto não pode ser simplista (porque não é) e já está resolvida - Não tente reinvantar a roda ;)
O motor que vou fazer testes é o SM1.8-E8590-MN... Eu não achei um manual deste equipamento... Mas, acredito que, é "aberto" para desenvolvedores, ter tipo de um SDK "Software Development Kit"... que, quem eventualmente se aventurar, possa enviar comandos para ela..
Que fique bem claro! Motor é apenas uma parte do sistema.
O motor por si só não faz nada, nem é possível acioná-lo sem um driver de potência.
Por exemplo, impressoras matriciais tem no final de seu manual um apêndice com a lista de todos os comandos que a gente pode configurar ela, como: Tamanho do papel, deixar negrito, condensado, fonte draft, etc... e, estes comandos eu envio sem o "conhecimento" do Windows, ou seja, envio direto pela porta serial... ou mesmo LPT1...
Sim - este papel é feito pelos programas de controle que conhecemos, e só nos preocupamos em gerar os arquivos, tarefa esta já bem séria e cheia de variáveis não muito simples de se dominar...
O Mach 3, pelo que vi, funciona bem mas, o que ele faz internamente é enviar e receber comandos a porta (USB ou LPT1) e, estes comandos, estão numa "linguagem" que o driver entende, fazendo ele fazer determinada ordem...
Ledo engano! - sugiro estudar bem o assunto...
Se vocês tiverem este manual, eu pego e, tento fazer uns testes... Acredito que eu possa conseguir... Depois, fazendo estes testes, eu leio uma tabela de códigos G e, interpreto linha a linha e envio comando por comando... É claro... uma coisa de cada vez, primeiro, preciso resolver o problema da comunicação..
Para começar a aprender o que é código-G, pode ler alguma coisa aqui:
http://www.mundocnc.com.br/temas.php
Leia e depois conversaremos.
-
Lerei as páginas que você me enviou...
Muito obrigado por tudo!
-
O Mach 3, pelo que vi, funciona bem mas, o que ele faz internamente é enviar e receber comandos a porta (USB ou LPT1) e, estes comandos, estão numa "linguagem" que o driver entende, fazendo ele fazer determinada ordem... O que preciso, é destes códigos, uma tabela, com os comandos que são enviados por exemplo:
Eixo X rodando a 10 RPM: #13x10
Eixo Y rodando a 30 RPM: #13y0
Algo assim...
Como diz bem o Fábio: Ledo engano !
o que todos os softwares controladores / interpretadores fazem é escrever nos registradores da porta paralela os bits diretamente ... ou seja, aqui a coisa é extremamente simples. O qu e não é tão trivial é fazer isto de modo a interpolar a movimentação de diversos eixos - tipicamente três, mas pode ser mais - e de maneira que a temporização seja muito exata. MUITO ! Reflita sobre o que isto significa, é mais críico do que parece à primeira vista ...
procure entender de uma vez por todas: os drivers são "burros", só entendem basicamente duas coisas, quando dar um passo e para que lado ... tudo o mais é administrado pelo programa de controle.
-
Márcio, não sei se vc entende de Linux,
mas aqui no fórum tem um tópico sobre o OpenCam, como ele é opensource, talvez de para vc estudar os códigos e ter uma idéia de como funciona as coisas.
segue o link para o tópico
http://www.guiacnc.com.br/forum/index.php/topic,457.0.html
espero que seja útil
um abraço
Jost Dayan
-
Muito obrigado, Jost!
Realmente para mim é um "admirável mundo novo" e, muito obrigado pela atenção de todos..
As coisas são mais embaixo, tenho que "baixar a cabeça" e, estudar muito o que vocês estão me indicando, antes de eu pensar em projetar alguma coisa...
-
Pessoal Boa noite!
Desculpe meter a colher no assunto mais, em todo lugar que eu pesquiso sobre o assunto de programação relacionada a CNC encontro muita resistência sobre isso!
Principalmente em relação a programação em Delphi, por que toda esta resistência em desenvolver um programa seja ele qual for em planta forma Delphi?
E principalmente vejo pessoas gastarem rios de dinheiro em CNC caseira que mais parece uma industrial ou melhor que da baile em maquinas industriais, porem usam um programa que ao meu ver é uma porcaria por vários ângulos!
Cadê o pessoal bom de papo e de informação que quando vc pergunta sobre um lápis eles entregam uma floresta inteira!
Acho que já esta na hora de colocarmos a mão na massa e desenvolvermos um software de qualidade e que se adapte anos e não nós nos adaptar a ele!
Bom peço desculpas se ofendi alguém não era esta minha intenção, só estou cansado da mesma conversa mole temos que mudar isso!!!
-
... por que toda esta resistência em desenvolver um programa seja ele qual for em planta forma Delphi? ... usam um programa que ao meu ver é uma porcaria por vários ângulos!
Emerson, fique inteiramente à vontade para apresentar seu programa com a plataforma que bem entender. Eu já ficaria muito satisfeito se for ao menos comparável às porcarias que nós outros os menos dotados usamos.
-
Meu caro emerson voçe tem certeza do que esta afirmando,Eu tambem as vezes dou uma de programador e sei que e muinto dificil fazer uma programa para controlar qualquer coisa, o pessol que desenvolveram esses programas que voçe chama de porcaria, devem ter dado o sangue para funciorem bem, O turbo por exemplo, para mim e uma obra prima, Acho que mereciam mais respeito
-
Emerson
...Acho que já esta na hora de colocarmos a mão na massa e desenvolvermos um software de qualidade e que se adapte anos e não nós nos adaptar a ele!...
quando alguém acha alguma coisa ela simplesmente não tem certeza de nada ... mas eu gostaria de acompanhar o desenvolvimento e consequentemente o funcionamento de um software de qualidade.
Sinta-se a vontade para desenvolvê-lo e mostrar as qualidades de uma forma no mínimo profissional. :)
abrax!
-
Ola pessoal!
Percebi que meu comentário causou um pequeno distúrbio, e é isso que eu gosto, pois se começarmos a discutir (é claro discutir para melhor de forma profissional e não para piorar) começaremos a entender as dificuldades de um e os benefícios de outros!
Não sou programador sou uma pessoa que gosta de desafios e conheci o Delphi por um amigo meu que é programador,sei que não é fácil programar seja em qualquer linguagem eu mesmo já tentei algumas fezes.
Porem quando eu ouvi falar em plotter CNC ou melhor do mundo que gira em torno da CNC eu pensava a mesma coisa, isso é loucura fica muito mais barato e fácil comprar uma do que montar, aqui mesmo na empresa onde trabalho temos um problema que seria facilmente contornado com uma plotter CNC porem eles acham um absurdo terem que desenvolver uma maquina para isso, eles acham que um dia vai cair do céu uma maquina para fazer o que eles querem porem esta maquina não existe!
É como minha sugestão pode ser difícil mais não impossível, com um pouco de paciência e ajuda é claro de amigos podemos qual quer coisa!
Temos muitos exemplos de coisas aparentemente impossível de se fazer a alguns anos atrás, e hoje elas estão ai! Exemplo um avião que pode levar qualquer pessoa para o espaço!
-
Ola pessoal!
não deu para eu fazer uma analize melhor sobre este programa pois estou um pouco sem tempo mais acho que vale a pena dar uma olhada assim que eu tiver um tempo eu posto oque descobrir!
seque o link http://www.geocities.com/pancary/
-
???
-
??? ???
Percebi que meu comentário causou um pequeno distúrbio
... coisas de humanos ...
e é isso que eu gosto
... não diga!! mesmo?? :o
É como minha sugestão pode ser difícil mais não impossível
... pensei que faria (ou teria pronto) o software superior ...
com um pouco de paciência e ajuda é claro de amigos podemos qual quer coisa!
... essa frase "motivadora" deveria ser abolida da comunicação para alguns ...
...não deu para eu fazer uma analize melhor sobre este programa...
acho q estou entendendo ... mas retiro o que disse sobre participar ... vejo que não terei tanto tempo assim ...