Show Posts
|
|
Pages: 1 2 3 [4] 5 6 7
|
|
48
|
Forum 2005-2010 (read only) / Portugues / Re: Problema com servo
|
on: July 18, 2010, 09:06:38 am
|
Sim, é que todos os exemplos de servo no arduino usavam a própria tensão do arduino, até mesmo os grandes, e os micro servos, como no meu exemplo, só comigo que não funcionou. Mas de qualquer modo, consegui 
|
|
|
|
|
49
|
Forum 2005-2010 (read only) / Portugues / Re: Problema com servo
|
on: July 18, 2010, 07:59:36 am
|
Bom pessoal, resolvi o problema e vou deixar aqui pra caso alguém precise. Não sei porque mas esse servo não funciona com a tensão oferecida pelo arduino, então conectei o 5v e o gnd de uma fonte externa, compartilhei o ground do arduino e da fonte externa e controlei o sinal por uma porta do arduino. Funcionou perfeitamente. Espero ajudar alguém! 
|
|
|
|
|
50
|
Forum 2005-2010 (read only) / Portugues / Problema com servo
|
on: July 16, 2010, 04:48:21 pm
|
|
Olá pessoal, comprei um micro servo e quando conecto no arduino e tento usar os exemplos que tem, tipo o knob ou sweep, eles não funcionam, o servo simplismente gira pra direita e quando atinge o limite fica tentando girar ainda, meio que forçando.
O que pode ser? Obrigado!
|
|
|
|
|
54
|
Forum 2005-2010 (read only) / Portugues / Re: Fotocélula acende led errado
|
on: July 03, 2010, 04:59:04 pm
|
|
Pessoal, resolvi o problema e espero que sirva para alguma pessoa. As vezes a luz variava entre os valores mínimos pra ela acender e os valores máximos, então eu coloquei um espaço de 10 entre eles e funcionou, ou acende ou apaga.
Tá aí o novo código:
const int ledPin = 13; int valor = 0; int analogico = 0;
void setup() { pinMode(ledPin, OUTPUT); pinMode(analogico, INPUT); }
void loop(){ valor = analogRead(analogico); int val = map(valor, 0, 1023, 0, 100); if (val<50) { digitalWrite(ledPin, HIGH); } else if (val>60) digitalWrite(ledPin, LOW); }
|
|
|
|
|
55
|
Forum 2005-2010 (read only) / Portugues / Fotocélula acende led errado
|
on: July 03, 2010, 01:07:20 pm
|
Olá pessoal, coloquei uma fotocélula e tá tudo ok com ela, testei o analógico e tudo e no serial dá de 0 a 1023 normal... Daí fiz um código pro pino 0 do analógico ler a fotocélula, e se a luminosidade for maior que 60, desligar o led, se for menor, ligar o LED. Até que funcionou, mas eu queria saber se, já que com o código que eu fiz, ou o led está ligado ou desligado, por que o meu led acende com várias intensidades dependendo da iluminação? Vejam o código: const int ledPin = 13; int valor = 0; int analogico = 0; void setup() { pinMode(ledPin, OUTPUT); pinMode(analogico, INPUT); } void loop(){ valor = analogRead(analogico); int val = map(valor, 0, 1023, 0, 100); if (val >= 60) { digitalWrite(ledPin, LOW); } else { digitalWrite(ledPin, HIGH); } } Espero que possam me ajudar. Valeu! 
|
|
|
|
|
56
|
Forum 2005-2010 (read only) / Portugues / Dúvida sobre transistores e arduino
|
on: July 03, 2010, 02:15:06 pm
|
Olá pessoal, tenho um transistor 2n3094 aqui. Se eu colocar um resistor numa saída do arduino e colocar na base dele, o transistor acende o LED. Queria saber se existe uma voltagem mínima pro transistor funcionar, e uma máxima. E se o transistor deveria apenas ligar ou não, ou ligar com várias intensidades, dependendo da tensão na base? Obrigado 
|
|
|
|
|
57
|
Forum 2005-2010 (read only) / Portugues / Re: como alimentar com 12v?
|
on: June 28, 2010, 06:24:45 pm
|
|
Olá. Mesmo sendo um motor de 3v o arduino não aguenta, além disso os pinos só podem ser positivos. Até usando transistores eu testei mas não aguenta, inclusive estou procurando algum modo de controlar motores no arduino também, é claro que usando alguns componentes externos...
Boa sorte!
|
|
|
|
|
58
|
Forum 2005-2010 (read only) / Portugues / Re: como alimentar com 12v?
|
on: June 27, 2010, 08:17:44 am
|
|
Sim, o seu raciocínio está certo, porém pra mudar de negativo pra positivo só usando vários transistores mesmo, só com código não dá, o seu código no arduino seria mais ou menos assim:
//Defina o número dos pinos de saída do arduino void setup() { Serial.begin(9600) //Defina os pinos que serão de saída e entrada } void loop() { int status = Serial.read(); if (status=="cima") { //faça o motor ir pra cima } if (status=="baixo") { //faça o motor ir pra baixo } if (status=="esquerda") { //faça o motor ir pra esquerda } if (status=="direita") { //faça o motor ir pra direita } }
Se você não vai usar servos, a melhor saída aqui eu acho que seriam transistores. Mesmo assim você não conseguiria um movimento preciso, porque não conseguiria fazer o motor parar onde quer, o braço ficaria "caído"
|
|
|
|
|
59
|
Forum 2005-2010 (read only) / Portugues / Re: como alimentar com 12v?
|
on: June 26, 2010, 05:27:59 pm
|
Olá, você pode usar as saídas do arduino pra excitar a base do transistor e fazer ele passar uma corrente (12v) pros motores. Além disso, já que você quer algo preciso, como um braço mecânico, recomendo usar servos, são tipo motores, só que tem o positivo e negativo, e o sinal, esse sinal é ligado na saída do arduino, e no código você pode mandar ele ir pro ângulo que você quiser. 
|
|
|
|
|