e a parte eletrônica coloquei em uma carcaça de receptor de tv a cabo. Na parte eletrônica substitui a placa controladora TB6560 pela A4988, alterando as conexões ao Arduino, substituído o PRO MINI pelo Arduino Uno, ainda estou terminando a alteração do código para exibir de forma mais objetiva e simplificada por estar usando o display 16x2 i2c em vez do Display 20x4 i2c. Ainda está em teste, depois de alguns testes vou fazer a em estrutura definitiva mais robusta e a caixa eletrônica em ACM. Parabéns para os amigos que fizeram o código. As alterações que fiz foi para se adequar ao que eu tinha no momento de peça, como a A4988 que tive que incluir mais uma variável no código: Enable para habilitar e desabilitar o motor de passo quando o mesmo não estiver em uso. Quando concluir vou postar aqui o resultado e o detalhe das alterações, caso alguém precise fazer da mesma forma que fiz.…
Adicionado por Adno Carvalho ao 1:33 em 24 abril 2022
ões, e uma delas eu encontrei aqui recentemente, como é uma função bem interessante eu resolvi colocar na minha maquina, a função faz o seguinte, qundo vou fazer um enrolamento tenho que ajustar a guia do fio para o início do carretel, quando termina de enrolar, a guia para em um ponto qualquer, ai aterto um botão (coloquei tecla A) para a guia voltar ao ponto inicial, ta funcionando da seguinte forma:
coloco para fazer o enrolamento e escolho o sentido da esquerda para a direita, se no monento que terminar o enrolamento a guia estiver indo da esquerda para a direita, a função returnHome funciona normal, se estiver indo da direita para a esquerda não funciona, esse é o probleminha amigos, segue anexo o codigo.
bob_EEPROM_I2C_CT.zip …
o essas fotos postadas de uma maquina de um menbro garagista Charles Cristiano,e eu acho que sera bem simples montala pois é parecida com uma maquina que a minha esposa trabalha la na empresa so que essa é controlada com PIC.
bobinadeira.png
bobinadeira2.png
bobinadeira3.png
Então funcionaria assim:
1-move o espalhador ate a posição inicial do carretel precionando o botao de avanço e salva no botao de enter
2-move o espalhador ate a posição final do carretel precionando o botao de avanço e salva no botao de enter
3-digita quantidade de espiras (teclado numerico) precione enter
4-digitar a bitola do fio que sera usado
5-selecionar se vai ter parada ou não no termino de cada camada ou enrolar ate o fim do total das espiras
6-selecionar se vai ter ou não CT no trafo
por enquanto é isso ,mas sei que estou esquecendo de alguns detalhes que postarei mais tarde e anexarei fotos dos motores que tenho.
Se alguem tiver sujestões sobre o tipo de mecanismo e motores a ser usado eu asseitarem de bom grado,os meus recursos são limitados ,pois estou desempregado e ferei essa maquina para ver se consigo fabricar trafos para vender ,para o sustento de minha familia,a coisa esta feia e emprego esta muito dificil
um forte abraço para todos
ola pessoal
esses são os motores que tenho
não sei se servem
motor ac 110v por indução
20200229_135615.jpg
motor de passo
20200303_192445.jpg
20200303_192500.jpg
…
exatamente no momento que completar as voltas programadas, não será problema. Certo?
Se for assim, não vejo problema em usar motor de escova.
Um recurso que pode minimizar este problema, é usar o recurso (acho que o JGAM lembra 2319??)
de 3 velocidades, High speed, Intermediate speed e low speed.
Ao chegar perto do valor definido, o motor é reduzido para uma velocidade intermediaria,
ao chegar mas perto ainda , é reduzido para uma velocidade baixa, e por fim corta a alimentação
e põe a bobina do motor em curto com auxilio de um rele, que fará um freio dinâmico nele.
Outras duvidas minha? como você informará ao seu programa qtas voltas quer que o motor gire?
Que tipo de interface usará para entrar estes dados?
Você só tem este code que postou, ou tem algum outro?
Rui
…
Adicionado por mineirin RV ao 11:01 em 27 agosto 2016
locar um motor para girar o carretel do bobina (eu não sei qual é a rotação maxima desse motor ,se for muito baixa comprarei um que atinja uma velocidade maior).
O outro motor vou usar para o espalhador
eu fiz uma montagem provisoria para teste com uma parte de uma impressora,para justamente testar essa parte de rotação maxima e o espalhador sera o compartimento dos cartuchos que se deslocara para a esquerda e para direita.
Funcionando corretamente ,eu montarei um mecanismo mais resistente com chapas metalicas
tera um teclado para configurar a quantidade de espiras,bitola do fio,inicio e fim das camadas do enrrolamento.
Se alguem puder me ajudar no programa ficarei muito grato,pois não sei por onde começar.
estou enviando as fotos na minha mecanica em anexo
aceito qualquer sugestão
agradeço desde ja
…
c.php?f=2&t=175155 pelos videos que eu, as inlutrações lá no forum e com a simulação no proteus, dá para perceber que se trata de um projeto bem legal, o problema é: ele foi escrito no code:blocks para o Atemega328P de 32 pinos, e eu verifiquei o Arduino uno, ele não tem todos os pinos do chip disponiveis, por essa razão não consegui testar o funcionamento na pratica, a minha pergunta é, exxiste a pocibilidade de passar esse código para a IDE do Arduino ou mudar o display para I2C?
Seguindo orientações la do forum russo, eu só consegui trocar os texto da tela para portugues, eu já entendo muito poco do arduino, e o code:blocks eu nunca tinha visto, segue em anexo os arquivos, com arquivo proteus para simulação.
winding_machine.zip
está lançado o desafio, rsrs boa sorte
…
ão é só uma frase de efeito, é a mais pura verdade.
Além de aprender técnicas, também aprendi conhecer melhor as presoas. Enfim, foi um grande aprendizado.
Neste aprendizado, tive a oportunidade de também ensinar quem queria ser ensinado e as vezes de somente ajudar, pois não fazia parte do projeto de vida do amigo aprender as técnicas, ele só precisava do seu projeto funcionando.
Aos amigos que senti que ao ensinar ou ajudar, o projeto dele traria algum beneficio econômico, sugeri que se obtivesse exito no meu esforço, eu queria ser recompensado.
A minha recompensa deveria ser em forma de fotos muito especiais. Eu pedi a eles que próximo ao natal, com parte do que lucrassem, comprasse brinquedos, e os distribuísse entre crianças carente de sua comunidades.
Vários concordaram e graças aos esforços e um olhar de DEUS, eu ia conseguindo ajuda-los. Hoje, sinto que o natal se aproxima, e já estou ansioso para ver estas lindas fotos. Já recebi umas fotos da amiga KT com os brinquedos comprados.
Só faltam fotos com sorrisos das crianças.
http://labdegaragem.com/photo/20181111-215627?context=latest.
Para facilitar vida dos amigos , segue uma relação daqueles que se dispuseram a enviar fotos
http://labdegaragem.com/forum/topics/precisando-de-ajudar-pra-fazer-um-contador http://labdegaragem.com/forum/topics/temporizador-digital-a-partir-de-1-segundo http://labdegaragem.com/forum/topics/ensacadeira-de-argamassas-arduino http://labdegaragem.com/forum/topics/bobinadeira-autom-tica-controlada-com-arduino http://labdegaragem.com/forum/topics/incremento-no-arduino-a-partir-de-um-n-mero http://labdegaragem.com/forum/topics/recebendo-sinal-rf-433-92mz-e-criando-button-para-gravar-valor http://labdegaragem.com/forum/topics/tratar-dados-via-serial-no-arduino http://labdegaragem.com/forum/topics/seladora http://labdegaragem.com/profile/luizcarlossilveira
mineirinRV…
Adicionado por mineirin RV ao 10:15 em 11 dezembro 2018
Isto não é só uma frase de efeito, é a mais pura verdade.Além de aprender técnicas, também aprendi conhecer melhor as pessoas.Emfim, foi um grande aprendizado.
Neste aprendizado, tive a oportunidade de também ensinar, quem queria ser ensinado,
as vezes de somente ajudar, pois não fazia parte do projeto de vida do amigo aprender as técnicas,ele só precisa do seu projeto funcionando.
Aos amigos que senti, que ao ensinar ou ajudar, o projeto dele traria algum beneficio econômico,sugeri que se obtivesse exito no meu esforço, eu queria ser recompensado.A minha recompensa deveria ser em forma de fotos muito especiais.
Eu pedi a eles que próximo ao natal, com parte do que lucrassem, comprasse brinquedos, e osdistribuísse entre crianças carente de sua comunidades.
Vários concordaram e graças aos esforços e um olhar de DEUS, eu ia conseguindo ajuda-los.Hoje, sinto que o natal se aproxima, e já estou ansioso para ver estas lindas fotos.
Já recebi umas fotos da amiga KT, com os brinquedos comprados.http://labdegaragem.com/photo/20181111-215627?context=latest.
só falta foto dos sorrisos das crianças.
Para facilitar vida dos amigos ,segue uma relação daqueles que se dispuseram a enviar fotos
http://labdegaragem.com/forum/topics/precisando-de-ajudar-pra-fazer-um-contadorhttp://labdegaragem.com/forum/topics/temporizador-digital-a-partir-de-1-segundohttp://labdegaragem.com/forum/topics/ensacadeira-de-argamassas-arduinohttp://labdegaragem.com/forum/topics/bobinadeira-autom-tica-controlada-com-arduinohttp://labdegaragem.com/forum/topics/incremento-no-arduino-a-partir-de-um-n-merohttp://labdegaragem.com/forum/topics/recebendo-sinal-rf-433-92mz-e-criando-button-para-gravar-valorhttp://labdegaragem.com/forum/topics/tratar-dados-via-serial-no-arduinohttp://labdegaragem.com/forum/topics/seladorahttp://labdegaragem.com/profile/luizcarlossilveira
mineirinRV…
Adicionado por mineirin RV ao 21:22 em 9 dezembro 2018
motor tem um encoder com um contador de voltas e de fente p/ o motor uso um servo motor p/ definir a posição do carretel onde o fio está sendo enrolado.
Preciso postar informações antes do serviço começar, vou usar variáveis que definem a quantidade máxima de voltas, posicionamento inicial e final do servo e mostrar a quantidade de voltas p/ controle, resolvi usar a tv para postar as informações, aqui que veio o problema, quando coloco o servo motor p/ funcionar a tv não apresenta imagem. já usei uma biblioteca alternativa p/ o servo, e mesmo assim nada.
segue meu código apenas com a função de contador, tv e a função de servo, grande abraço a todos.
#include <TVout.h>#include <fontALL.h>#include <PWMServo.h>PWMServo myservo; //SERVOint val; //ENCODERint encoder0PinA = 3; //ENCODERint encoder0PinB = 4; //ENCODERint encoder0Pos = 0; //ENCODERint encoder0PinALast = LOW; //ENCODERint n = LOW; //ENCODERint pos = 35; //SERVOint sentido = 0; // se sentido for 0, incrementar// caso contrario, decrementar.TVout TV; // Variável TV
void setup() {
pinMode (encoder0PinA, INPUT); //ENCODER pinMode (encoder0PinB, INPUT); //ENCODER
TV.begin(NTSC, 120, 96); TV.select_font(font6x8);
myservo.attach(SERVO_PIN_B);
}
void loop() {
// Contador
n = digitalRead(encoder0PinA); if ((encoder0PinALast == LOW) && (n == HIGH)) { if (digitalRead(encoder0PinB) == LOW) { encoder0Pos--; } else { encoder0Pos++; }
// TV
TV.clear_screen(); TV.println(0, 0, "Pickup Winder 1.0"); TV.println(0, 20, "Turns:"); TV.println(40, 20, encoder0Pos); TV.delay(0);
//Servo
if (sentido == 0) { pos++; if (pos >= 65) { sentido = 1; } }
else if (sentido != 0) { pos--; if (pos <= 35) { sentido = 0; } }
myservo.write(pos);
} encoder0PinALast = n; }…
ra dar um numero de voltas que eu determinar, nesse caso, são 700 voltas. andei pesquisando varios tutoriais, mas esta dificil de achar a solução.
Num tutorial, eu fiz essa pergunta, e o autor me disse o seguinte
Brincando com Ideias1 hora atrás
Olá Eduardo! Se eu entendi o seu objetivo, é isso mesmo. Você pode usar uma variável para contar as voltas. A cada volta, você acrescenta o valor 1 .E repete a execução até que a variável tenha o valor de 700.Mas o importante é considerar o tipo do motor que você esta usando para dar as voltas.
Se for um motor DC ou mesmo um motor AC, você precisará de algum tipo de sensor para que o Arduino possa contar as voltas.Vamos supor que o sensor envia um pulso lógico para o Arduino a cada volta do motor. Então você pode usar o laço WHILE, a cada pulso acrescentar 1 à variável e na condição do WHILE executar até que a variável seja igual a 700.
Se for um motor de passo, você consegue controlar as voltas pelo próprio Arduino e não precisa de um sensor. Basta usar um laço FOR, que por sua vez irá usar uma variável para contar as voltas.
Espero ter ajudado, amigo! Um grande abraço.
Mas eu preciso de um programa exemplo.
Ja tenho todo o radware montado, a ponte H e a Chave, Encoder, Óptico Arduino Fim De Curso,
: minor-bidi'>https://www.youtube.com/watch?v=R17Cmgx_kJ8
Tenho um motor com disco encoder, igual a esse:
http://produto.mercadolivre.com.br/MLB-700861324-motor-12v-com-disco-de-encoder-18mil-rotacoes-_JM
Num outro tutorial, eu teria que saber os pulsos por volta, nesse caso, ele configurou para 20 voltas
32 pulsos por volta, ele configurou para dar 20 voltas e parar.
https://www.youtube.com/watch?v=R17Cmgx_kJ8
TENHO ESSE PROGRAMA ABAIXO, MAS COMO ADAPTA-LO?
O disco que estamos usando tem 20 aberturas, e esse número deve ser colocado no programa (linha 11), original tinha 20 ) que vai usar essa informação para calcular a rotação do motor.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//Programa: Sensor de velocidade Arduino LM393
//Autor: Arduino e Cia
//Pino ligado ao pino D0 do sensor
int pino_D0 = 2;
int rpm;
volatile byte pulsos;
unsigned long timeold;
//Altere o numero abaixo de acordo com o seu disco encoder
unsigned int pulsos_por_volta = 63;
void contador()
{
//Incrementa contador
pulsos++;
}
void setup()
{
Serial.begin(9600);
//Pino do sensor como entrada
pinMode(pino_D0, INPUT);
//Interrupcao 0 - pino digital 2
//Aciona o contador a cada pulso
attachInterrupt(0, contador, FALLING);
pulsos = 0;
rpm = 0;
timeold = 0;
}
void loop()
{
//Atualiza contador a cada segundo
if (millis() - timeold >= 1000)
{
//Desabilita interrupcao durante o calculo
detachInterrupt(0);
rpm = (60 * 1000 / pulsos_por_volta ) / (millis() - timeold) * pulsos;
timeold = millis();
pulsos = 0;
//Mostra o valor de RPM no serial monitor
Serial.print("RPM = ");
Serial.println(rpm, DEC);
//Habilita interrupcao
attachInterrupt(0, contador, FALLING);
}
}OBRIGADO
…