collapse

* Posts Recentes

Circuito Microfone que funcione por almamater
[Ontem às 17:14]


Emulador NES em ESP32 por dropes
[22 de Abril de 2024, 14:14]


Arame de Estendal por almamater
[18 de Abril de 2024, 16:16]


O que é isto ? por SerraCabo
[12 de Abril de 2024, 14:20]


Amplificador - Rockboard HA 1 In-Ear por almamater
[11 de Abril de 2024, 20:46]


Meu novo robô por josecarlos
[29 de Março de 2024, 18:30]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]

Autor Tópico: RC car  (Lida 33460 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #45 em: 28 de Agosto de 2012, 01:46 »
Actualizacao seguem umas fotos:



















Estou a pensar em usar esse comando, mas o problema é que o arduino Uno e shield com o xbee nao cabem dentro do telecomando, e nao queria estar só a tirar o joysticks, queria mesmo usar o telecomando todo até porque se torna mais pratico :) estava a pensar num arduino mini mas dps tb nao dá para o shield :S

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #46 em: 28 de Agosto de 2012, 01:52 »
Livra-te da doença que são os shields..
Eu num nunchuck enfiei um atmega8 dip de 28 patas, se usasses um nRF do ebay, ficava o atmega e o nrf de um dos lados, se tirares os motores de vibração e do outro lado dá para meter uma célula LiPo de 1000mAh.
Avr fanboy

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #47 em: 28 de Agosto de 2012, 03:26 »
mas para que serve o nRF ? para meter os xbee a comunicar nao preciso dos shields ?

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #48 em: 28 de Agosto de 2012, 14:24 »
O nRF é um módulo de comunição, muito mais barato que os Xbee, claro que podes usar Xbee sem o shield, o shield é basicamente um conjunto de header soldados num pedaço de pcb.
Avr fanboy

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #49 em: 28 de Agosto de 2012, 19:27 »
agora já que os comprei vou usar :) qual é a distancia maxima de comunicação desses nRF ? agora o objectivo é arranjar uma maneira de meter um arduino e o xbee dentro desse comando... mas como ?

qual é a diferenca este isto:

http://www.ptrobotics.com/product.php?id_product=1434

http://www.ptrobotics.com/product.php?id_product=230

mesmo que um desses brinquedos dê para adaptar dentro do comando, fico sem saber como adaptar o modulo xbee... até agora tinha sempre visto projectos em que usavam o shield...
Quando comprei isto nao tinha ideia de usar mesmo um telecomando estava a pensar em fazer um numa pcb e tal, mas agora com ele ali, vejo que se torna até muito mais pratico dps quando andar a brincar com o carro !

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #50 em: 28 de Agosto de 2012, 19:30 »
O nano tem interface USB/FTDI para o programares o mini não, usas outro arduino ou um cabo usb-serial com DTR para o auto-reset, os nomes são parvos e para o tamanho de cada estão trocados..

Então, ligas meia duzia de fios, os Xbee é rx tx alimentação e pouco mais, esse é um dos efeitos de só se usar shields e bibliotecas de código já feitas, nunca sabes como funciona..
Avr fanboy

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #51 em: 28 de Agosto de 2012, 20:07 »
mas tu tinhas me dito por ai em algures que os xbee´s nao se podiam utilizar sem os shield, isto é, que nao dava para ligar directamente ao arduino sem passar primeiro pelo shield... pelo menos foi o que entendi !

Agora neste caso por exemplo do nano, já fiz uma pesquisa rápida e tb há shield para os xbee mas neste caso fico no mesmo porque já fica mto grande... mas dá para meter os xbee a funcar no nano sem shield ?

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #52 em: 28 de Agosto de 2012, 21:09 »
O shield é isto:
http://www.arduino.cc/en/uploads/Main/XbeeShieldSchematic.pdf

Ou seja, um divisor de tensão para que o Tx do arduino chegue ao Xbee com 3.3v, uns transistores não sei bem para quê, e um regulador de tensão de 3.3v, porque o Xbee funciona a 3.3v.
Avr fanboy

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #53 em: 07 de Setembro de 2012, 02:12 »
Bem o gajo ja vira com o joystick mas ainda atrofia nao sei pk... tenho que fazer mais uns testes aquilo.

Mas no joystick, quando este nao está a virar para lado nenhum, ele tem que asumir que valor ?

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #54 em: 07 de Setembro de 2012, 02:15 »
Supostamente metade da tensão que estás a aplicar, se for 5v são cerca de 2.5v, com adc do arduino que é de 10 bits deve andar por volta de 512 contagens, mas como o joystick não vai totalmente a 0 nem a 1023, nem o centro é precisamente 512, tens de meter isso a imprimir na consola para veres os valores, mas para o centro para parar, adicionas uma histerese ai de 10 contagens, ou seja, se o valor for entre 502 e 522 assumes que está parado, tambem podes fazer umas funções para calibrar isso automático.
Avr fanboy

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #55 em: 07 de Setembro de 2012, 02:23 »
pois... entao o problema deve estar ai... é que ele na consola nao esta mesmo a 512 e o servo atrofia... mostra-me um exemplo de uma histerese de 10 contagens, nao sei o que é isso :S já agora outro exemplo de como calibrar isto automaticamente, se calhar até era a melhor solução :P pk quando viro todo para direita ou todo para a esquerda o o servo atrofia e fica com tiques, provavelmente isso resolvia com uma histerese ou calibração automatico como tinhas dito... desconheco!

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #56 em: 07 de Setembro de 2012, 02:39 »
Citar
adicionas uma histerese ai de 10 contagens, ou seja, se o valor for entre 502 e 522 assumes que está parad

Esta parte é bastante simples, é um if, acho que o texto é explicito..
Código: [Seleccione]
if(potVal>502 & potVal<522){  //assume que joystick está ao centro
     //codigo aqui
}


Estás a dar que valores aos servos?
Mostra ai o código.
Avr fanboy

Offline Bony

  • Mini Robot
  • *
  • Mensagens: 397
Re: RC car
« Responder #57 em: 07 de Setembro de 2012, 03:19 »
Deixo aqui um video do problema:

ao principio do filme o servo esta desligado dps ligo ele vira todo para a esquerda sozinho e nem estou a carregar em nada do joystick :| dps viro para a direita ele vira na boa, mas dps quando esta totalmente virado para a direita fica com aqueles tiques, e o mesmo acontece quando viro totalmente para a esquerda, sem carregar em nada no joystick ele fica tb virado para a esquerda com dos tiques :|

este é o codigo que estou a usar, nao vejo nada de errado:

Código: [Seleccione]

#include <Servo.h>
 
const int servo1 = 3;       // first servo
const int joyH = 4;        // Joystick Horizontal Axis
const int joyV = 5;        // Joystick vertical Axis
 
int servoVal;           // variable to read the value from the analog pin
 
Servo myservo1;  // create servo object to control a servo
 
 
 
void setup() {
 
  // Servo
  myservo1.attach(servo1);  // attaches the servo
 
  // Inizialize Serial
  Serial.begin(9600);
}
 
 
void loop(){
 
    // Display Joystick values using the serial monitor
    outputJoystick();
 
    // Read the horizontal joystick value  (value between 0 and 1023)
    servoVal = analogRead(joyV);
    servoVal = map(servoVal, 0, 1023, 70, 180);     // scale it to use it with the servo (result between 70 and 180)
 
    myservo1.write(servoVal);                          // sets the servo position according to the scaled value
 
    delay(15);                                     // waits for the servo to get there
 
}
 
 
/**
* Display joystick values
*/
void outputJoystick(){
 
    Serial.print(analogRead(joyH));
    Serial.print ("---");
    Serial.print(analogRead(joyV));
    Serial.println ("----------------");
}


Deixo aqui uns print´s dos valores do monitor:
- Quando nao estou a carregar em nada no joystick:

http://i296.photobucket.com/albums/mm184/CrazyBony/RC%20Xuning/Semcarregaremnada.jpg[/img]]

- Tudo para a direita:

http://i296.photobucket.com/albums/mm184/CrazyBony/RC%20Xuning/Tudoparaadireita.jpg[/img]]

- Tudo para a esquerda:

http://i296.photobucket.com/albums/mm184/CrazyBony/RC%20Xuning/Tudoparaaesquerda.jpg[/img]]


Offline zordlyon

  • Mini Robot
  • *
  • Mensagens: 1.768
Re: RC car
« Responder #58 em: 07 de Setembro de 2012, 10:40 »
Eu nunca lidei com esta função mas já experimentas te nesta linha mudar:

servoVal = map(servoVal, 0, 1023, 70, 180);

para:

servoVal = map(servoVal, 0, 1023, 0, 180);
Cumprimentos,
André Carvalho.

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: RC car
« Responder #59 em: 07 de Setembro de 2012, 15:03 »
O servo tremer muito possivelmente é porque estás a exceder os limites do servo e o motor do servo está a forçar as engranagens contra os batentes de plástico.
Avr fanboy