Estou tentando fazer uma máquina DrawBot (http://www.marginallyclever.com/) ou Polargraph (http://www.instructables.com/id/Polargraph-Drawing-Machine/?ALLSTEPS), as duas tem o mesmo principio, mas o firmware para Arduino da Drawbot é um interpretador de G-CODE o que é bem

interessante, enquanto o firmware da Polargraph é uma codificação inventada pelo autor da máquina. 

No momento tenho uns velhos motores de impressoras Epson e estou usando um Motor Shield Adafruit para tocar os mesmos. Se gostar da brincadeira, me arriscarei a comprar os motores de passo vendidos na loja do LdG.

Se alguém se aventurou nesta empreitada, deixe aqui suas impressões e vamos trocando umas ideias.

Exibições: 2382

Responder esta

Respostas a este tópico

As polias que serão encaixadas no eixo dos motores, comprei numa papelaria fita para máquina de calcular. 

A polia já fixada no eixo do motor. A partir da polia deverá ser enrolado um fio, o seu tamanho depende do tamanho do cavalete, e a outra extremidade vai fixada na gôndola. 

La Gôndola: um transferidor comprado em papelaria, uma haste em L, duas polias pequenas, que sejam bem lisas para não fornecerem atrito com as argolas. 

Para fixar a caneta, adaptei uma abraçadeira para guidão de bicicleta. O pequeno gancho branco à esquerda, serve para fixar um contra-peso a gôndola, para dar maior estabilidade a caneta.

Detalhe das polias e das argolas, onde serão amarrados os fios que vem das polias dos motores. Essas polias tem que ser bem lisas, com pouco atrito com as argolas. 

Eu usei uma espécie de placa de eucatex velha que eu tinha aqui em casa, deu tudo certo, fiz os "cases" para o motor, o local para colocar o arduino e a protoboard(Onde estão ligados os uln2003) porém no código deu pau, já que o código é feito para o motor shield da Adafruit. O meu motor de passo tem 6 fios, dois vão no positivo e o resto, cada um em um pin do uln. e no código lá, não tem disso. Já tentei aumentar os pins no código com (2, 3, 4, 5).... e nada. Alguém não saberia alguma saída para quem não tem o shield? Lembrando que o motor recebe os sinais, pois quando eu envio algum comando pelo programinha do drawbot, ele faz alguns barulhos, treme, está com o mesmo problema que eu tinha antes de descobrir a pinagem dos meus motores. Ou seja, o problema é no código mesmo. 

Marcos. Os motores de 6 fios podem funcionar como bipolares ou unipolares. Precisa ver como vc. está fazendo a ligação e o acionamento. Veja isso: http://www.ppgel.net.br/uaisoccer/downloads/1272062510.pdf

Não é forçando uma porta do Arduino em cada fio do motor que resolve a questão (isso acho que vc. já descobriu). Precisa ver se é o positivo ou o negativo que deve ser ligado aos comuns das 2 bobinas (isso é muito importante). E se as portas tem que ser acionadas ou desligadas para que o sinal chegue nas bobinas (atentar para a ordem corretas com que a(s) bobina(s) devem receber o sinal)...e o principal: Se o comum é positivo, os sinais devem ser negativos e se o comum é negativo os sinais devem ser positivos.

Isso acima se a ligação for unipolar. Para fazer bipolar tem que alternadamente inverter o sinal colocado em cada ponta da bobina (o comum não é utilizado).

Uma dica é a seguinte. Para se testar motores de passo não é necessário todo um circuito, é necessário ligar os comuns das bobinas e com um (ou 2) ir fazendo curtos nos fios na sequência correta, ele deve girar um passo de cada vez. repetindo a sequencia ele dará diversos passos.

Outra dica: Vá anotando as cores que você aciona os fios até obter o resultado desejado e use esta "tabela" para acionar a sequência das bobinas no programa.

Boa sorte.

Opa Euclides, valeu pela dica, mas a pinagem eu já descobri, tanto que brinquei com o motor em outras coisas, o meu problema mesmo é em relação ao código, pois ele é feito para o motor shield da Adafruit, então usar tips ou o uln2003 complica, afinal, eu preciso de 4 pinos do arduino, que são dois para direita e dois para esquerda ( A alimentação vem de fora do Arduino, hehehe, eu uso 16v, na verdade eu deveria estar usando 12v).

PS:São seis fios, dois verdes que são ligados no positivo. Depois são:

Amarelo e azul que dando "carga" primeiro no amarelo (Ou azul) e depois no azul, ele roda 1 passo a esquerda.

Depois:

Branco e vermelho, que dando "carga" no branco e depois no vermelho, ou vice-versa, ele roda um passo a direita. 

Com certeza o problema está no código. 

O software não funciona para outros tipos de drivers, somente para o Adafruit, aqui tem um esquema dele: http://www.ladyada.net/images/mshield/mshieldv1-schem.png ; veja que ele tem um CI 74595, que se liga a dois L293. 

O sujeito que fez o DrawBot, enxugou a biblioteca da Adafruit e chamou de <AFMotorDrawbot.h>, acredito que dê para adaptar esta biblioteca para rodar o seu driver, mas não encontrei ninguém que tenha feito isso ainda. 

Então, eu estou quebrando a cabeça pois eu tenho certeza que o problema é no código. Eu estou vendo aqui onde eu posso mudar para fazer ele entender os oito pinos (Quatro para cada motor) sem afetar a comunicação dele com o programinha. Valeu pelo esquema, mas eu tenho certeza que o problema está no código, eu vou enxugar também, hehe, desmontar, montar, acredito que seja possível. Abraços. 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço