collapse

* Posts Recentes

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]


Emulador NES em ESP32 por dropes
[10 de Abril de 2024, 15:30]


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]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: Tr3s µMouse - Micromouse  (Lida 84710 vezes)

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

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #150 em: 17 de Setembro de 2012, 14:11 »
O preço são os portes de envio mais o que quiserem dar :P

Não tenho problemas em dizer que me deve ter ficado 2€/2,5€ cada uma.

Update:
Fiz as contas e cada placa ficou em 2,15€.
Volto a dizer, so peço que paguem os portes de envio, que deve ser o custo de uma carta normal, ou seja, o selo. Se quiserem dar mais alguma coisa, agradeço imenso. Só não aceito é que dêm mais do que custou cada placa. O objectivo nunca foi ganhar dinheiro!
« Última modificação: 17 de Setembro de 2012, 14:26 por tr3s »
Tr3s
Daniel Gonçalves

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #151 em: 17 de Setembro de 2012, 14:37 »
Ah esqueci-me de referir que o pagamento não tem de ser monetário. Aceito trocas :D
Microcontroladores, servos, motores, conversores, etc
Tr3s
Daniel Gonçalves

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Tr3s µMouse - Micromouse
« Responder #152 em: 17 de Setembro de 2012, 15:35 »
Três, onde é que se arranja motores e rodinhas para o bicho, se conseguisses arranjar um par de motores e de rodas era mesmo fantástico.
Avr fanboy

Offline Hugu

  • Mini Robot
  • *
  • Mensagens: 5.602
  • Keyboard not found. Press any key to continue.
    • [url=www.g7electronica.net]G7 Electrónica.net[/url]
Re: Tr3s µMouse - Micromouse
« Responder #153 em: 17 de Setembro de 2012, 15:51 »
Três, onde é que se arranja motores e rodinhas para o bicho, se conseguisses arranjar um par de motores e de rodas era mesmo fantástico.
ya o maior problema é mm os comps/acessorios k tu arranjaste pro uMouse.. eu tb tava interessado num uMouse, mas era mais os comps k a propria pcb, pk a pcb, basta mandar fazer qdo calhasse :)

Ou entao deixa a lista dos comps e sitio onde compraste pra ver se o pessoal se orientava tb! :)

Já agora, que novidades tem a nova versao da pcb do uMouse?..

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #154 em: 17 de Setembro de 2012, 16:01 »
Ah sim pessoal, vou fornecer essa informação toda! Até os esquemas  e eagle files que usei para poderem orientar-se!

Senso, os motores que uso sao os de uns microservos que tinha para aqui. Daqueles rascoffs da dealextreme que tremiam por todo o lado e nunca paravam 2x no mesmo sitio. Custaram uns 2/3usd cada um como saltavam e n eram fidedignos arranquei-lhes o motor que até é bastante bom (muito rotativo, diga-se) e aproveitei a caixa do servo para manter o motor no sitio e nivelado!
As rodas sao umas de SlotCar que comprei na loja de brinquedos do DolceVita tejo!

« Última modificação: 17 de Setembro de 2012, 16:03 por tr3s »
Tr3s
Daniel Gonçalves

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Tr3s µMouse - Micromouse
« Responder #155 em: 17 de Setembro de 2012, 16:23 »
Então se ainda tiveres stock fico com uma pcb tambem, queres que te mande pm com a morada?
Avr fanboy

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #156 em: 17 de Setembro de 2012, 16:36 »
Há ainda ;)

Eu mais logo mando pm de confirmação a todos :) e depois peço a morada
Tr3s
Daniel Gonçalves

Offline amando96

  • Mini Robot
  • *
  • Mensagens: 1.631
  • MAC address? But I have windows...
    • Projects, News, Blog, Tutorials
Re: Tr3s µMouse - Micromouse
« Responder #157 em: 17 de Setembro de 2012, 22:12 »
E para quando um vídeo?  :D

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #158 em: 17 de Setembro de 2012, 22:41 »
Video so quando tiver o novo feito.
Para dizer a verdade, estou em dois projectos ao mesmo tempo, o que é um pouco mau.
Um deles é um microrato ligeiramente maior e outro é um microrato da categoria Half-size. Este ultimo posso dizer que está a ser HARDCORE de fazer...

:D lá para o Natal ha novidades :P
Tr3s
Daniel Gonçalves

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Tr3s µMouse - Micromouse
« Responder #159 em: 17 de Setembro de 2012, 22:50 »
Half-size é que tamanho já agora?
Avr fanboy

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #160 em: 17 de Setembro de 2012, 22:59 »
Nos campeonatos os micros desta categoria rondam 4,5~5cmx4,5~5cm.
O que estou a fazer é de 4,5cm x 5cm e neste momento usa um atmega328 tqfp mas que quero substituir por um STM32f3 ou 4... tenho de abrir um tópico de STM32 para saber o que a comunidade faz e usa com esta familia de  microcontroladores! :D
Tr3s
Daniel Gonçalves

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #161 em: 18 de Setembro de 2012, 00:04 »
Bem pessoal, aqui vai a lista de material:



SFH4550 - LED IR - http://search.digikey.com/scripts/DkSearch/dksus.dll?vendor=0&keywords=SFH4550   0.53$

BPW77NA - Sensor IR - http://search.digikey.com/scripts/DkSearch/dksus.dll?vendor=0&keywords=BPW77NA 2.66$

751-1182-1-ND - LED vermelho - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=751-1182-1-ND 0.5$

TB6612FNG - H-Bridge - http://www.digikey.com/product-detail/en/TB6612FNG(O,C8,EL)/TB6612FNG(OC8EL)CT-ND/1730134 2.03$

CD74HC4067 - Multiplexer 16 canais - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=296-9226-1-ND 0.91$

FZT489TA - Transistor NPN - http://www.digikey.pt/product-detail/en/FZT489TA/FZT489CT-ND/990980 0.62$

401-2013-1-ND - Interruptor - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=401-2013-1-ND 1.54$

P150GCT-ND - Resistencia de 150 Ohm - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P150GCT-ND 0.1$

P300GCT-ND - Resistencia de 300 Ohm - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P300GCT-ND 0.1$

P1.0kGCT-ND - Resistencia de 1K Ohm - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P1.0kGCT-ND   0.1$

P10kGCT-ND - Resistencia de 10k Ohm - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=P10kGCT-ND   0.1$

445-3454-1-ND - Condensador de 470nF - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=445-3454-1-ND 0.1$

490-1512-1-ND - Condensador de 10nF - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=490-1512-1-ND 0.1$

490-1575-1-ND - Condensador de 100nF - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=490-1575-1-ND 0.1$

445-5084-1-ND - Condensador de 3,3nF - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=445-5084-1-ND 0.1$

445-1273-1-ND - Condensador de 22pF - http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=445-1273-1-ND 0.1$

LY3200/LY3100 (o 3100 há na mauser e é mais barato) - gyro
MMA7361 - acelerometro

Este é o material básico que acho que devem ter, adicionem aqui o atmega, headers, bateria e cristal de 16MHz.
Deixo de fora o Acelerometro e o Gyro (as resistencias e condensadores estão incluidos na lista de qualquer forma), porque mesmo não sendo caros, ficam ao criterio de cada um).
De fora fica também o QRD1114 e o LDR o ultimo porque se arranja facilmente e se calhar até tem por casa.

Deixo ainda em anexo um xls com o material assim como os ficheiros de eagle.
No post seguinte deixo código de Arduino para lerem os sensores e assim, qué tudo feito através do Mux.
Os sensores ir são o mais caro, mas são muito bons.

Mais uma vez, este é o material que recomendo mas podem usar qualquer outro desde que compativel. Com os leds e fototransistores não ha grande problema, mas cuidado com os mux e ponte-h porque a pinagem pode mudar.

Update: Os preços sao em USD!
« Última modificação: 18 de Setembro de 2012, 11:13 por tr3s »
Tr3s
Daniel Gonçalves

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #162 em: 18 de Setembro de 2012, 00:14 »
Fica aqui o codigo de Arduino para testar sensores e girar motores :P

Citar

#define AINPUT A2
#define MUX_S0 8
#define MUX_S1 7
#define MUX_S2 4
#define MUX_S3 2
#define SENSOR_LF 0x0F
#define SENSOR_LS 0x01
#define SENSOR_RS 0x05
#define SENSOR_RF 0x07
#define ACC_X 0x02
#define ACC_Y 0x03
#define ACC_Z 0x04
#define QRD1114 0x06
#define LDR 0x0
#define IR_LEDS 11
#define MOTOR_R 1
#define MOTOR_L 0
#define MOTOR_R_IN1 A0
#define MOTOR_R_IN2 12
#define MOTOR_R_PWM 9
#define MOTOR_R_LED 6
#define MOTOR_L_IN1 A1
#define MOTOR_L_IN2 13
#define MOTOR_L_PWM 10
#define MOTOR_L_LED 5
#define MAX_DUTYCYCLE 255

int lf, ls, rs, rf, ax, ay, az, ldr, qrd = 0;

void setup() {
  pinMode(AINPUT, INPUT);
  pinMode(MUX_S0, OUTPUT);
  pinMode(MUX_S1, OUTPUT);
  pinMode(MUX_S2, OUTPUT);
  pinMode(MUX_S3, OUTPUT);
  pinMode(IR_LEDS, OUTPUT);
  
  pinMode(MOTOR_R_IN1, OUTPUT);
  pinMode(MOTOR_R_IN2, OUTPUT);
  pinMode(MOTOR_R_PWM, OUTPUT);
  pinMode(MOTOR_R_LED, OUTPUT);
  pinMode(MOTOR_L_IN1, OUTPUT);
  pinMode(MOTOR_L_IN2, OUTPUT);
  pinMode(MOTOR_L_PWM, OUTPUT);
  pinMode(MOTOR_L_LED, OUTPUT);
  //analogReference(INTERNAL);
  Serial.begin(9600);
  
  digitalWrite(IR_LEDS, HIGH);
}

void loop() {
  lf = readAnalogMuxPeripheral(SENSOR_LF);
  ls = readAnalogMuxPeripheral(SENSOR_LS);    
  rs = readAnalogMuxPeripheral(SENSOR_RS);
  rf = readAnalogMuxPeripheral(SENSOR_RF);
//  ax = readAnalogMuxPeripheral(ACC_X);
//  ay = readAnalogMuxPeripheral(ACC_Y);
//  az = readAnalogMuxPeripheral(ACC_Z);
//  ldr = readAnalogMuxPeripheral(LDR);
//  qrd = readAnalogMuxPeripheral(QRD1114);  
  Serial.print("@");
  Serial.print(lf);
  Serial.print(",");
  Serial.print(ls);
  Serial.print(",");
  Serial.print(rs);
  Serial.print(",");
  Serial.print(rf);
  Serial.print(",");
  Serial.print(ax);
  Serial.print(",");
  Serial.print(ay);
  Serial.print(",");
  Serial.print(az);
  Serial.print(",");
  Serial.print(ldr);
  Serial.print(",");
  Serial.print(qrd);
  Serial.print(";");
  
  // para ter o micromouse virado de frente para o obstaculo a sua frente
  if ((rf-lf) > 25){
    motorReverse(MOTOR_R, map(rf - lf, 0, 200, 105, 200));
    motorForward(MOTOR_L, map(rf - lf, 0, 200, 105, 200));
  }
  else if((lf-rf) > 25){
    motorReverse(MOTOR_L, map(lf - rf, 0, 200, 105, 200));
    motorForward(MOTOR_R, map(lf - rf, 0, 200, 105, 200));
  }
  else{
    motorStop(MOTOR_R);
    motorStop(MOTOR_L);
  }
}

int readAnalogMuxPeripheral(byte sensor){
  setMuxSelectors(sensor);
  return analogRead(AINPUT);
}

void setMuxSelectors(byte sel){
  digitalWrite(MUX_S0, ((sel&0x01) > 0)?HIGH:LOW);
  digitalWrite(MUX_S1, ((sel&0x02) > 0)?HIGH:LOW);
  digitalWrite(MUX_S2, ((sel&0x04) > 0)?HIGH:LOW);
  digitalWrite(MUX_S3, ((sel&0x08) > 0)?HIGH:LOW);
}

void motorForward(byte motor, byte spd){
  digitalWrite((motor != 0)?MOTOR_R_IN1:MOTOR_L_IN1, HIGH);
  digitalWrite((motor != 0)?MOTOR_R_IN2:MOTOR_L_IN2, LOW);
  analogWrite((motor != 0)?MOTOR_R_PWM:MOTOR_L_PWM, spd);
  analogWrite((motor != 0)?MOTOR_R_LED:MOTOR_L_LED, spd);
}

void motorReverse(byte motor, byte spd){
  digitalWrite((motor != 0)?MOTOR_R_IN1:MOTOR_L_IN1, LOW);
  digitalWrite((motor != 0)?MOTOR_R_IN2:MOTOR_L_IN2, HIGH);
  analogWrite((motor != 0)?MOTOR_R_PWM:MOTOR_L_PWM, spd);
  analogWrite((motor != 0)?MOTOR_R_LED:MOTOR_L_LED, spd);
}

void motorStop(byte motor){
  digitalWrite((motor != 0)?MOTOR_R_IN1:MOTOR_L_IN1, HIGH);
  digitalWrite((motor != 0)?MOTOR_R_IN2:MOTOR_L_IN2, HIGH);
  digitalWrite((motor != 0)?MOTOR_R_PWM:MOTOR_L_PWM, LOW);
  digitalWrite((motor != 0)?MOTOR_R_LED:MOTOR_L_LED, LOW);
}


« Última modificação: 18 de Setembro de 2012, 00:18 por tr3s »
Tr3s
Daniel Gonçalves

Offline JPCarvalho

  • Mini Robot
  • *
  • Mensagens: 42
Re: Tr3s µMouse - Micromouse
« Responder #163 em: 18 de Setembro de 2012, 12:31 »
Tres consegues fazer um apanhado de quanto fica no final o robot com tudo incluido?  :D

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Tr3s µMouse - Micromouse
« Responder #164 em: 18 de Setembro de 2012, 14:22 »
JPCarvalho, sem incluir os preços do ATmega, cristal e gyro+acelerometro. Fica aí nuns 20~25usd (15~19€) mas também estamos a falar em compra de material à unidade. Comprando a quantidades ficará mais barato claro.

Nesse preço incluí as resistencias, leds ir + sensores, ponte h, mux, interruptor, leds status, etc... pelos preços da digikey. É uma questão de procurar material mais barato e depende do que cada um quer fazer. Ha pessoas que se calhar nao querem usar os sensores IR todos ou ate mesmo nenhum. Varia sempre ;)
Tr3s
Daniel Gonçalves