LusoRobótica - Robótica em Português
Robótica => Discussão geral sobre robótica => Tópico iniciado por: LordNelthon em 07 de Dezembro de 2009, 12:12
-
Boas,
Gostava de saber qual a diferença entre o vosso Servo - Large e o Servo - Full Rotation (isto só para ter uma ideia). Eu estou a criar um projecto que consiste num carro comandado por pc. A minha grande duvida reside apenas nos motores, posso liga-los directamente ao arduino ou será melhor uma fonte externa e o uso do L293D.
Cumps :)
-
Boas,
O Servo - Large só têm 180º de liberdade, tendo um batente no fim e no início.
O Servo - Full Rotation têm 360º de liberdade, e funciona como um servo normal modificado para rotação contínua, contudo este vem "modificado" de fábrica e calibrado para ser utilizado como um motor normal mas fácil de utilizar como um servo. (Não necessita de controlador de motores como o L293d, basta ligar a alimentação (recomendado de 5~6v) e o pin de sinal a uma saída PWM do microcontrolador que estiver a utilizar.
-
"vosso", de quem?... Mas pelo nome parece ser um servo normal e um servo de rotação contínua.
O eixo dos servos normais não dá voltas completas, apenas faz por exemplo meia volta mas chegando ao fim da meia-volta apenas pode voltar para trás. Uma placa controladora como um arduino pode dizer-lhe "vira para aqui" ou "vira para ali", e ele, uma vez na posição final, "faz força" para se manter nessa posição.
Já num servo de rotação contínua o eixo roda livremente e pode ser acopolado a rodas. Neste tipo de servo já não tens um controlo preciso da posição do eixo, mas podes controlar o sentido da rotação e a velocidade de rotação.
Um servo já tem embutida toda a electrónica de controlo de potência e só precisa de um sinal de baixissima potência para o controlar, pelo que não precisa de um L293D. O L293D é usado quando queres controlar pequenos motores eléctricos DC normais, que não têm nenhuma electrónica de controlo.
Não vais conseguir controlar servos directamente a partir do PC, porque não há interfaces de hardware adequadas e porque os servos precisam de um sinal de controlo muito preciso. Precisarás de uma "peça" entre o PC e os servos (ou motores DC) para fazer a "mediação" entre ambos, usando uma porta USB, LPT ou COM, e que pode ser um arduino, um pinguino, qualquer outra placa de controlo ou microcontrolador, ou até lógica digital discreta.
-
Boas,
O Servo - Large só têm 180º de liberdade, tendo um batente no fim e no início.
O Servo - Full Rotation têm 360º de liberdade, e funciona como um servo normal modificado para rotação contínua, contudo este vem "modificado" de fábrica e calibrado para ser utilizado como um motor normal mas fácil de utilizar como um servo. (Não necessita de controlador de motores como o L293d, basta ligar a alimentação (recomendado de 5~6v) e o pin de sinal a uma saída PWM do microcontrolador que estiver a utilizar.
Ok, obrigado pela informação. :)
"vosso", de quem?... Mas pelo nome parece ser um servo normal e um servo de rotação contínua.
O eixo dos servos normais não dá voltas completas, apenas faz por exemplo meia volta mas chegando ao fim da meia-volta apenas pode voltar para trás. Uma placa controladora como um arduino pode dizer-lhe "vira para aqui" ou "vira para ali", e ele, uma vez na posição final, "faz força" para se manter nessa posição.
Já num servo de rotação contínua o eixo roda livremente e pode ser acopolado a rodas. Neste tipo de servo já não tens um controlo preciso da posição do eixo, mas podes controlar o sentido da rotação e a velocidade de rotação.
Um servo já tem embutida toda a electrónica de controlo de potência e só precisa de um sinal de baixissima potência para o controlar, pelo que não precisa de um L293D. O L293D é usado quando queres controlar pequenos motores eléctricos DC normais, que não têm nenhuma electrónica de controlo.
Não vais conseguir controlar servos directamente a partir do PC, porque não há interfaces de hardware adequadas e porque os servos precisam de um sinal de controlo muito preciso. Precisarás de uma "peça" entre o PC e os servos (ou motores DC) para fazer a "mediação" entre ambos, usando uma porta USB, LPT ou COM, e que pode ser um arduino, um pinguino, qualquer outra placa de controlo ou microcontrolador, ou até lógica digital discreta.
Referia-me aos que estão na loja da LusoRobótica. (dai referir "vosso").
Quanto a controlar os motores por PC não é para já. Primeiro vou fazer o carro com fio nos controlos e só depois a comunicação por PC, que vai envolver um segundo arduino que comunica através de RF.
EDIT: Como inverto a rotação num servo?
-
Um servo de rotação continua tem para PWM de 50% o estado parado, desde 50% até 0% ele vai acelerando até que atinge velocidade máxima nesse sentido aos 0%, o mesmo acontece de 50% até 100% onde a velocidade mínima nesse sentido é 51% e a velocidade máxima neste segundo sentido é nos 100%.
-
Um servo de rotação continua tem para PWM de 50% o estado parado, desde 50% até 0% ele vai acelerando até que atinge velocidade máxima nesse sentido aos 0%, o mesmo acontece de 50% até 100% onde a velocidade mínima nesse sentido é 51% e a velocidade máxima neste segundo sentido é nos 100%.
Mais uma vez obrigado. :)
-
Eu comprei a pouco um servo de 180, abri-o e modifiquei para os 360, no entanto tenho que usar um L293D como se fosse um motor?
-
Eu comprei a pouco um servo de 180, abri-o e modifiquei para os 360, no entanto tenho que usar um L293D como se fosse um motor?
Não, porque os servos já incluem o seu próprio controlador (driver).
Usa-lo tal e qual como usavas.
Mandas os impulsos para ir para os 90º, ele para, mais do que isso anda para a frente e menos que isso anda para trás. A velocidade é tanto maior quanto maior a distância para os 90º.
É 90º se centraste bem o potenciómetro.
-
Eu comprei a pouco um servo de 180, abri-o e modifiquei para os 360, no entanto tenho que usar um L293D como se fosse um motor?
Depende da modificação que fizeste.
-
Eu comprei a pouco um servo de 180, abri-o e modifiquei para os 360, no entanto tenho que usar um L293D como se fosse um motor?
Depende da modificação que fizeste.
Basicamente abri-o e cortei um pedaço de plastico que impedia o servo de fazer os 360º. Era basicamente um batente.
-
Se ele já roda todo, agora só falta alinhar o potenciómetro nos 90º.
-
Se ele já roda todo, agora só falta alinhar o potenciómetro nos 90º.
Neste caso não roda todo. Roda apenas 180º tal como antes de cortar o batente. No entanto, manualmente roda os 360º. Já fiz umas pesquisas e julgo ter de soldar umas resistências.
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fwww.dprg.org%2Fprojects%2F1998-04b%2Fsh19.jpg&hash=c66bdea7982261542655b7d53f652213943213ac)
Alguém dá outra sugestão?
-
A sugestao é centrar o potenciometro e depois impedi-lo que rodar com o servo, tanto se pode cortar o encaixe, etc etc.
-
A solução com as duas reistências pode não funcionar pois pode não estar calibrado para ir para os 90º mesmo ao centro do potênciómetro. Por isso aconselho, como já disse 2 vezes, como já disse o jorge_rc, a regulares o potenciometro para que quando mandas o sinal dos 90º o motor não mexa. Isto para evitar soldaduras... Faz melhor ainda do que essas 2 resistências.
É claro que tens de impedir que o potenciometro rode com o movimento da "cabeça"... da parte de fora está o batente que cortaste, mas da parte de dentro está uma falha que faz rodar o pot. Tens de alargar essa "falha" para que o pot esteja sempre no mesmo sítio.
-
A solução com as duas reistências pode não funcionar pois pode não estar calibrado para ir para os 90º mesmo ao centro do potênciómetro. Por isso aconselho, como já disse 2 vezes, como já disse o jorge_rc, a regulares o potenciometro para que quando mandas o sinal dos 90º o motor não mexa. Isto para evitar soldaduras... Faz melhor ainda do que essas 2 resistências.
É claro que tens de impedir que o potenciometro rode com o movimento da "cabeça"... da parte de fora está o batente que cortaste, mas da parte de dentro está uma falha que faz rodar o pot. Tens de alargar essa "falha" para que o pot esteja sempre no mesmo sítio.
A sugestao é centrar o potenciometro e depois impedi-lo que rodar com o servo, tanto se pode cortar o encaixe, etc etc.
Obrigado. Para ser franco, não tinha entendido bem, daí ter perguntado novamente.
Vou testar e depois digo alguma coisa. Obrigado.
-
Procura na secção dos tutoriais.
-
A sugestao é centrar o potenciometro e depois impedi-lo que rodar com o servo, tanto se pode cortar o encaixe, etc etc.
A solução com as duas reistências pode não funcionar pois pode não estar calibrado para ir para os 90º mesmo ao centro do potênciómetro. Por isso aconselho, como já disse 2 vezes, como já disse o jorge_rc, a regulares o potenciometro para que quando mandas o sinal dos 90º o motor não mexa. Isto para evitar soldaduras... Faz melhor ainda do que essas 2 resistências.
É claro que tens de impedir que o potenciometro rode com o movimento da "cabeça"... da parte de fora está o batente que cortaste, mas da parte de dentro está uma falha que faz rodar o pot. Tens de alargar essa "falha" para que o pot esteja sempre no mesmo sítio.
Boas novamente. Tentei fazer o que me disseram, mas há um problema. O eixo que faz rodar as rodas dentadas é o mesmo eixo que roda do potenciómetro. Para colocar o potenciómetro sempre estático tinha de cortar esse eixo. E fazendo isso o eixo não tem como ficar no sitio. Fiz-me entender?
Reparei que o potenciómetro tem um batente que o impede de rodar totalmente. Cortando-o acabam-se os problemas ou não tem nada a ver?
-
Procura na secção dos tutoriais.