Boa noite Pessoal.

Eu gostaria de repetir um sinal PWM do pino 9 do Arduíno para 04 motores.

Estava estudando sobre expansores CD4053 e também comunicação I2C, com PCF8574.

Porém gostaria de saber se tem um CI que não sejá um expansor de portas, mas seja capaz de repetir um sinal " valor", ou sejá quero que o valor enviado pelo pino 9 faça com que os 4 motores rodem na mesma velocidade.

Se puderem me ajudar agradeço.

Atc.

L2K.

Exibições: 842

Responder esta

Respostas a este tópico

Vc quer exatamente o mesmo sinal nos 4 ?

Se sim vc poderia, em tese, ligar direto o mesmo fio nos 4. 

A capacidade de corrente de uma porta é muito maior do que drenam 4 portas.

Caso queira mesmo um circuito e tal vc pode usar um integrado lógico que gere na saída o mesmo que recebe na entrada... Um 74LS08 por ex é uma porta OR. Se vc ligar 1 das entradas no pino e a outra no GND a saída será igual a essa entrada.

Mas para isso vc tem que ligar 4 entradas no pino do arduino...

Outra seria colocar um transistor... 

Mas veja lá na especificação do arduino qual a corrente maxima de saída e na do motor qual a de entrada no pino de PWM. Deve dar pra ligar direto sim.

oi Leandro, boa noite.

    Não me parece 100% claro o que vc precisa. Mas pelo que entendi, você já está gerando um sinal PWM no pino 9 do Arduino, e apenas quer replicar esse sinal para os Drivers de 4 Motores, os quais estarão portanto na mesma velocidade, já que são controlados pelo mesmo sinal PWM "lógico".

      Observe que há a possibilidade deste sinal do pino 9 controlar diretamente todos os quatros Drivers externos dos motores. Isto porque os drivers dos motores provavelmente não puxam muita corrente do pino de saída PWM (neste caso o "9"). Mas talvez esta não seja a melhor opção em termos técnicos, pois seria desejável que existisse um circuito intermediário mínimo entre o Driver do Motor e sua saída PWM do Arduino. Porque? simplesmente porquê não é impossível que algum spike de tensão retorne do Driver do Motor para o sinal PWM, ou seja, retorne para o pino de saída PWM do Arduino. Se isso ocorre, e se este spike for forte o suficiente (vai depender do Driver do Motor, e do próprio Motor), poderá danificar definitivamente o ATmega328 (o processador do Arduino). Sendo 4 Motores, as chances disso ocorrer aumentam 4 vezes.

      Então um circuito intermediário seria de bom senso, pois se algum skipe retornar, quem aguentará o "tranco" será esse circuito intermediário. Além disso, se este circuito intermediário vier a danificar, seria mais fácil (e barato) trocar o mesmo do que trocar o ATmega (pois além disso este necessitaria ser também programado, o que nem sempre é possível em campo).

     Para tal, existem CIs específicos para fazer isto, mas nem sempre são muito populares e comuns. Mas também há ótimas opções em séries de CIs mais comuns. Para este seu caso, eu recomendaria o uso de um 74HC367, que é fácil de ser encontrado e de baixo custo. Veja a ligação do mesmo para seu caso específico:

    As ligações são muito simples. Observe que os pinos estão numerados com a pinagem padrão do HC367.  Este CI possui 6 "Drivers de Linha", que podem ser usados de forma independente. Para o seu caso, note que 4 desses drivers tem suas entradas (pinos 2, 4, 6, e 10) conectadas ao pino 9 do Arduino, o qual gera o sinal PWM "lógico". Já as saídas (pinos 3, 5, 7, e 9) desses 4 drivers, vão para o controle "separado" dos Drivers dos seus 4 Motores.

      Observe também que "sobram" 2 drivers de linha no HC367. Estes não podem ficar "largados" de qualquer jeito. Se vc não os usar, ligue as entradas (pinos 12 e 14) conforme mostro na figura (as saídas destes podem ficar sem conexão, sem problema).

      Há também dois pinos no HC367, que são os "Output Enable#" dos 6 drivers de linha. Estes são os pinos 1 e 15. O HC367 é um driver de linha com saídas em "Tri-State", uma característica que não será usada na sua aplicação. Assim para que os drivers estejam sempre "habilitados", os pinos 1 e 15 devem ser "aterrados", conforme mostro na figura.

      Note também que é preciso alimentar o HC367, e isto é feito pelos pinos 8 (o GND) e 16 (o VCC). Isto também está indicado na figura.  Para a alimentação, aconselho usar a mesma alimentação da placa do Arduino, ou seja, 5V proveniente do conector "Power" do Arduino. Claro, o GND do HC367 deve ser ligado ao GND do Arduino também.

      Há uma forma de vc proteger ainda mais o Sistema contra eventuais "spikes" vindos dos Drivers dos Motores. Caso deseje fazer isso, veja como na figura a seguir:

      Os diodos devem ser ligados exatamente como mostrado na figura (não podem ser invertidos!!!). Note que em cada saída de controle, há um par de diodos ligados, os quais providenciam proteção extra contra spikes de tensão que possam vir a retornar dos Drivers dos Motores. Assim são 8 diodos (2 em cada saída). Recomendo o 1N4148, que é um diodo de sinal de uso geral, e que dará conta. Outra opção é o BAT85, mais incomum de se encontrar (é do tipo "Schottky"), mas protegerá da mesma forma. A tensão de 5V indicada na figura, deve ser obrigatoriamente a mesma que alimenta o HC367.

      Finalizando, caso tenha alguma dificuldade em encontrar o HC367, veja que há uma grande quantidade outros drivers de linha que vc pode usar, como o HC244, HC245, HC4050, HC4010, e uma infinidade de outros. Mas cada um tem uma pinagem diferente, então atente para fazer as ligações corretas, caso use outro driver de linha.

      Segue um datasheet do HC367:   link para datasheet do 74HC367

      Bem, espero que seja isso que vc precisa. Espero ter ajudado, e espero que de alguma forma estas informações e técnicas ajudem outros que tem dúvida sobre como replicar sinais digitais através destes drivers.

      Abrçs,

      Elcids

ah esqueci de mencionar:

      O datasheet que está no link do post, sugere que o HC367 possui apenas encapsulamento SO-16 ou TSSOP-16. No entanto, dei azar de indicar este datasheet que não menciona o encapsulamento DIP-16.

      Assim para aqueles que usam o DIP para facilitar as ligações (seja em placa seja em proto-board), não será um problema, pois o HC367 e os demais drivers de linha que mencionei, todos também são fabricados em encapsulamento DIP.

    Assim, ainda em tempo:

          HC367 (NXP)

          HC367 (ST)

          HC367(Texas)

     Abrçs,

     Elcids

Boa noite.

Obrigado pela ajuda.

Vou testar ligando direto e também com uso de algum CI para comparar os resultados.

Atc.

L2K.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço