Show Posts
Pages: [1]
1  Forum 2005-2010 (read only) / Portugues / ajuda ae on: September 05, 2010, 03:05:32 pm
olá pessoal eu vim aqui para peidr a ajuda de vcs para um assunto que esta me deixando de cabaça quente, eu fiz uma programação de arduino, era para ser uma bengala sensorial em que na hora q o sensor ultrasonico detecta-se algo mandaria o motor DC funcionar..

Porem procurei no forum no site do arduino, e me disseram para fazer um  tal de PWM e uma Ponte H.
A Ponte H eu fiz, porem soh com ela nao funcionou, eu peguei a ponte H desse site: http://lusorobotica.com/index.php?topic=1565.0

Porem nao funcinou, acho eu pelo fato de nao ter o PWM.
Se puderem me explicar melhor como funciona o PWM e se puderem me passar o circuito eletrico de um eu agradeço...

a Programação que eu fiz é essa:


// pinagem do sensor
const int pingPin = 7; // o pino em que eu vou colocar o sensor
const int readPin = 8;
const int buzzPin = 9;
// pinagem do motor vibratorio
const int motorL = 3;
const int motorR = 1;

void setup()
{
  Serial.begin(9600); //onde tudo começa
  //codigo sensor
  //pinMode(motorL, OUTPUT);
  pinMode(motorR, OUTPUT);
  
  long microsecondsToCentimeters(long microseconds);
  
}

void loop() {
  long duration, inches, cm, microseconds ;
  
  

  pinMode(buzzPin, OUTPUT); // dizendo que o sensor ira enviar dados
  pinMode(motorR, OUTPUT); //dizendo que o motor tambem ira enviar
  pinMode(pingPin, OUTPUT); // As linhas a seguir esta dizendo que o sensor irá enviar a cada 2 microsegundos
  digitalWrite(pingPin, LOW);
  delayMicroseconds(2);
  digitalWrite(pingPin, HIGH);
  delayMicroseconds(5);
  digitalWrite(pingPin, LOW);
  
  pinMode(readPin, INPUT);
 // int duration = pulseIn(readPin, HIGH);
  //cm = microsecondsToCentimeters(duration);
       //motor vibratorio
  //digitalWrite(motorR,LOW);
  //digitalWrite(motorL,HIGH);
  //delay(5000);
  //digitalWrite(motorL,LOW);
  //digitalWrite(motorR,HIGH);
  //delay(5000);

  
     if (cm<10) { // se cm for menor q tal
  pinMode (motorR, HIGH );
  }
}
  

  long microsecondsToCentimeters(long microseconds)
{
 
  return microseconds / 29 / 2 ;
    
}

se for tbm algo errado com minha programação me avisem, sou leigo para essas coisas de arduino e programação.
  
2  Forum 2005-2010 (read only) / Portugues / Re: Duvida Pessoal >,< on: July 27, 2010, 06:26:58 pm
Opa Vlw ae cara...
desculpa a demora para responder, é porque eu estava aprendendo a função MAP... Para que ela servia e talz...
Vlw agora vo começar a fazer os testes e talz...
Se mais alguem quiser dar opinião, ou quem saber me ajudar a melhorar a programação agradeço muito...

Obrigados a todos que leram esse meu topico, e aquele que me respondeu, pois me ajudou muito....


Obrigado denovo a todos, flws smiley-wink
3  Forum 2005-2010 (read only) / Portugues / Re: Duvida Pessoal >,< on: July 21, 2010, 07:06:48 pm
antes de tudo obrigado pelo ajuda...
soh nao entendi muito bem, como colocar a distancia...

Esses 440, 880  seria a distancia minima e maxima em centimetros??

E gostei da ideia do som, porem acho q nao é viavel agora para mim, pois seria meio dificil para um cego ouvir o som em certos lugares...

E outra coisa, nao entendi muito bem como colocar o motor, se puder me esplicar melhor, ou quem sabe, fazer um pequeno esboço no paint sei lá seria de muito agrado....

se puder tirar essa minha duvida eu agradeço ^^

Obs:  a minha que eu fiz está muito errada??
Obs²: aqui ta dizendo que o Dist_Min nao foi declarado, se puder solucionar tambem ^^

Obrigado a todos que estao lendo sou meio leigo nessas coisas de programação, entao desculpe qualquer pergunta "idiota"
4  Forum 2005-2010 (read only) / Portugues / Duvida Pessoal >,< on: July 20, 2010, 01:45:37 pm
Olá pessoal do forum arduino, preciso muito da ajuda de vocês na minha programação.
Estou fazendo uma bengala para cegos, em que nela terá um sensor, quando esse sensor detectar alguma coisa ele ligará um motor vibratorio para alertar o cego que tem alguma coisa na frente dele. quando o objeto nao estiver mais na frente dele o motor deverá parar. O sensor que vou usar é o : "Ping Ultrasonic Range Finder"
Fiz minha programação certinha e talz...
Porem nao sei se está certo, se tiver algum erro me falem por favor?

Programação:

// pinagem do sensor
const int pingPin = 7; // o pino em que eu vou colocar o sensor
const int readPin = 8;
const int buzzPin = 9;
// pinagem do motor vibratorio
const int vibradorPin = 0;


void setup()
{
  Serial.begin(9600); //onde tudo começa
  //codigo sensor
  
  long microsecondsToCentimeters(long microseconds);
  
}

void loop() {
  long duration, inches, cm, microseconds ;
  
  

  pinMode(buzzPin, OUTPUT); // dizendo que o sensor ira enviar dados
  pinMode(vibradorPin, OUTPUT); //dizendo que o motor tambem ira enviar
  pinMode(pingPin, OUTPUT); // As linhas a seguir esta dizendo que o sensor irá enviar a cada 2 microsegundos
  digitalWrite(pingPin, LOW);
  delayMicroseconds(2);
  digitalWrite(pingPin, HIGH);
  delayMicroseconds(5);
  digitalWrite(pingPin, LOW);
  
  pinMode(readPin, INPUT);
 // int duration = pulseIn(readPin, HIGH);
  //cm = microsecondsToCentimeters(duration);

  
  
 
     if (cm<50) { // se cm for menor q tal
  pinMode ( vibradorPin, HIGH );
  }
}
  

  long microsecondsToCentimeters(long microseconds)
{
 
  return microseconds / 29 / 2 ;
    
}
  

5  Forum 2005-2010 (read only) / Portugues / Por Favor me Ajudem on: May 15, 2010, 01:24:05 pm
Olá pessoal, antes de tudo já estou agradecendo, pelo menos por vocês lerem isso !

Agora vou explicar meu problema, eu estou fazendo um trabalho (TCC) que é fazer uma Bengala com sensor ultrasonico para detectar objetos, e na hora que ele detectar ele tem que mandar uma vibrasao para o cego perceber que tem um objeto na sua frente.

Meu problema é o seguinte, em que portas eu coloco esse motor de vibração e qual a programação que eu devo usar ?
O motor que quero usar, pode ser aqueles que vem bem simples que vem em controles de video games...

Desde já agradeço a ajuda !
Pages: [1]