LusoRobótica - Robótica em Português
Sistemas específicos => Arduino / AVR => Tópico iniciado por: amando96 em 28 de Março de 2009, 19:39
-
Bem queria adicionar mais uns servos ao woody ;D mas reparo que só as saidas 9 e 10 funcionam com servos, é suposto ser assim? ??? experimentei ligar o servo ao pino 6 não deu, mas se ligar um LED e faze-lo ligar e desligar gradualmente dá, mesmo no pino 6 ??? o problema não é dos servos... eles funcionam, mas só nos pinos 9 e 10 :( nem o 11 funciona... :o
o que está mal?
-
só tenho a dizer que isso é deveras estranho :s
-
Da documentação do Arduino:
Servo library
This library allows an Arduino board to control one or two RC (hobby) servo motors on pins 9 and 10.
-
Da documentação do Arduino:
Servo library
This library allows an Arduino board to control one or two RC (hobby) servo motors on pins 9 and 10.
á pois lol
agora tenho de fazer uma biblioteca... :'(
;D bem já estava a assuatar-me quando né nada de mais... :)
-
a biblioteca ServoTimer2 dá até 8 servos
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1230479947 (http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1230479947)
-
Exacto, se não utilizares a biblioteca ServoTimer2, só podes fazer PWM nos pins que dizem PWM, pois nos restantes ele faz um output analógico (não é bem mas podes considerar).
Assim para mandar as ondas quadradas, precisas realmente de fazer com o ServoTimer2 que o guibot postou.
-
mas há 6 pinos que dizem PWM e pelos vistos a biblioteca servo só funciona com 2, 9 e 10.
-
Sinceramente nunca utilizei essas libs por não ter tido necessidade, gosto do meu amigo analogWrite(byte pin,byte valor); :D
-
Existem de facto 6 saídas PWM. Elas estão agrupadas em pares, sendo cada par controlado por um timer do AVR. Pelo menos um dos timers deve estar a ser usado como contador de tempo, o que inviabiliza a sua utilização para PWM. Outro é usado pela biblioteca Servo e o outro está livre para outras brincadeiras...
-
como é que instalo bibliotecas? eu faço o que me dizem no site arduino/harware/libraries, e nada vou importar bibliotecas,e diz-me que dentro do servotimer2 existe servo, eu importo, e diz #include <Servo.h> mas não é suposto ser <servotimer2.h>???
obrigado
-
Acho que não fica a aparecer no menu, mas se meteres manualmente no código o nome da lib, ele depois a compilar faz tudo bem.
Testa ;)
-
25: error: ServoTimer2.h: No such file or directory :'(
éia pá...
-
25: error: ServoTimer2.h: No such file or directory :'(
éia pá...
já testaste com esta API:
http://www.arduino.cc/playground/ComponentLib/Servo (http://www.arduino.cc/playground/ComponentLib/Servo)
Para ver se dá...
-
esse ai só funciona com 2 servos... certo? eu sempre usei <Servo.h> e só me deixa usar servos no pino 9 e 10...
-
esse ai só funciona com 2 servos... certo? eu sempre usei <Servo.h> e só me deixa usar servos no pino 9 e 10...
Acho que responde:
The Software Servo Library can drive servos on all of your pins simultaneously. The API is patterned after the wiring.org servo library but the code is different. You are not limited to 8 servos, but you must call the Servo::refresh() method at least once every 50ms or so to keep your servos updating.
-
Não sei como é que o ambiente do Arduino gere isso, mas para o compilador uma biblioteca tem 2 partes: o ficheiro include ou header file (.h) e o código, que pode ou não já estar compilado. Que ficheiros trás essa lib servo2? Provavelmente basta copiar isso para .../hardware/libraries/.
-
então quando n tenho essa biblioteca <Servo.h> só dá para dois servos, e quando a tenho dá para 8? o mesmo <Servo.h>???
-
Esta lib foi a que depois foi alterada para SoftwareServo para evitar incompatibilidades por ter o mesmo nome que a Servo.h que vem por defeito.
-
ahh então mesmo pondo <Servo.h> vai dar para controlar mais que dois servos?
-
Deves usar Servo2.h.
-
http://s498.photobucket.com/albums/rr346/AmandoAbreu/?action=view¤t=arduinothing.jpg (http://s498.photobucket.com/albums/rr346/AmandoAbreu/?action=view¤t=arduinothing.jpg)
faço isso e aparece-me <Servo.h> ??? devo ter instalado mal? ou então... n sei xD
-
Pensei que a biblioteca trouxesse um ficheiro Servo2.h para se poder continuar a usar a Servo. Abre o zip, o que lá estiver (Servo.h ou Servo2.h) é o que deves usar.
-
Ola a todos... e desculpem estar a desenterrar este tópico!!! :D
Estou com o mesmo problema que aqui foi debatido, e no entanto já li o tópico todo e não percebi como proceder correctamente. Ou seja, tenho um código para introduzir no arduino, que necessita de uma biblioteca que o arduino actualmente não tem.
A minha duvida é como meter/enviar essa biblioteca para o arduino? Para posteriormente conseguir enviar o código que quero.
-
se usas windows procura a pasta Arduino/Hardware/libraries - é aí que deves instalar as bibliotecas
-
Depois diz se conseguiste iMartins87.
-
Sim é mesmo isso... já consegui.
Como tenho o arduino à pouco tempo, ainda esta a aprender as coisas iniciais. ;D
Obrigado pela ajuda.
-
É para isso que estamos cá ;)