collapse collapse

* Links de Robótica

* Posts Recentes

+ LASERs por dropes
[16 de Julho de 2025, 12:38]


Cerca eléctrica por SerraCabo
[14 de Junho de 2025, 23:26]


Alguém arranja motores? por almamater
[10 de Junho de 2025, 22:34]


Condensador 4.7uF 0603 por brunus
[09 de Junho de 2025, 15:52]


Lenovo IdeaPad 3 Não liga por jm_araujo
[07 de Maio de 2025, 19:10]


Identificar Diodo Zenner por filjoa
[01 de Maio de 2025, 23:07]


Meu novo robô por dropes
[18 de Março de 2025, 14:51]


JBL partybox On-The-Go por almamater
[21 de Fevereiro de 2025, 23:32]


Talking Reverse Engineering with an Absolute Legend! por SerraCabo
[13 de Fevereiro de 2025, 09:56]


Motoserra Stihl 120C por brunus
[11 de Fevereiro de 2025, 16:29]

* LusoRobótica - Robótica em Portugal

A robótica é uma das ciências mais desafiantes. A perfeita fusão harmoniosa entre um sem fim número de ciências faz da robótica um excelente desafio, que nos convida a imergir neste grandioso mundo da tecnologia, e utilizar a construção de robots como uma forma única de explorar todas as ideias que nos surgem no dia-a-dia.

Junta-te a nós e aprende como a robótica pode mudar a maneira como observas o mundo. Ajuda-nos a desmistificar a robótica em Portugal!
24 de Abril de 2009, 22:58 por amgcgoncalves | Visualizações: 16791 | Comentários: 18

Tenho para vos mostrar um projecto muito pequeno, mas com o seu sumo. Trata-se de um projecto de tutorial/iniciação à manipulação de leituras analógicas utilizando as potencialidades do nosso já tão estimado Arduino.


Trata-se de um mecanismo para acender/apagar um LED consoante a presença de uma variação de som (neste caso, um estalar de dedos).
O sensor de som que utilizei foi homemade e foi completamente baseado neste: http://www.reconnsworld.com/forum/read.php?9,10. Gostei da resposta em potência. Serve perfeitamente para todos estes pequenos gadgets.
A principal preocupação foi garantir um bom limite inferior para gerar uma reacção apenas a sons secos e com uma potência considerável.
Há bastantes melhorias a fazer, como o cálculo sistemático do ambiente de ruído para uma melhor obtenção do limite superior para ignorar som e tudo mais. Mas por agora fica só algo que se veja.
Nunca utilizem um micro-controlador para fazer apenas isto, é a última sugestão que vos deixo. ;D

Aqui vai o video:



Código: [Seleccione]
#define INPUT_PIN 5
#define OUTPUT_PIN 3
#define NOISE_GATE 300
#define DELAY 100

unsigned char state;
unsigned short rd;

void setup() {}

void loop() {
  rd = analogRead(INPUT_PIN);
  if (rd > NOISE_GATE) {
    state = ~state;
    analogWrite(OUTPUT_PIN, state);
    delay(DELAY);
  }
}

Dúvidas, questões ou sugestões são bem-vindas. =)
24 de Abril de 2009, 20:54 por metRo_ | Visualizações: 17476 | Comentários: 11

Olá,
Tenho andado a brincar com o lcd e então cá vai mais uma dessas brincadeiras :P
Desta vez estou a tentar fazer algo parecido com um osciloscópio. Ainda tem alguns erros e ainda está em desenvolvimento mas vou postando porque não sei quando voltarei a pegar nisto, tanto pode ser hoje como daqui a um mês :D

Explicação

Para começar tem que se explicar que o LCD esta dividido em 6 linhas e cada linha tem 48 colunas e os dados são enviados para cada coluna de uma linha.

Nesta imagem podem ver os pixeis do LCD ao pormenor.

Quando convertemos um valor analógico em digital usando 10bits este é convertido num valor de 0 a 1023.
Por isso vamos ter que mapear este valor para o tamanho do lcd. Este processo vai ter que ser divido em vários passos pois não basta mapear o valor de 0 a 1023 num de 0 a 48 (altura do lcd) por que por exemplo para 1023 teríamos 48, mas não nos é permitido dizer ao lcd simplesmente liga o pixel 48 no eixo dos x.

Então vamos começar por mapear o valor lido de 0 a 5, isto é, vamos ver em que linha se encontra o valor lido.
Código: [Seleccione]
int limiteInf = 0;
int limiteSup = 1023;
pot=analogRead(0);
yValueLine=map(pot,limiteInf,limiteSup,0,5);

Agora já sabemos em que linha se encontra o valor que lemos, já sabemos onde vamos ter que escrever o valor.
Agora vem o segundo passo, pois dentro da linha onde vamos escrever temos uma coluna com 8 bits, temos que saber a que bit esse valor corresponde.

Para este passo temos que saber como é que a função map divide os valores. Neste caso podemos ver que esse valor é 204, fazendo 1022/5 = 204,4 em que o inteiro é 204.
1022/5 porque só se obtém 5 depois do mapeamento quanto tempos o valor 1023 por isso só há uma hipótese para se obter o máximo(enquanto que para outros valores, o valor da saída do mapeamento corresponde a um intervalo de 204 valores).

Então depois de sabermos este valor vamos então calcular o valor a que corresponde a entrada na colunca de 8 bits da linha em cima calculada.
Para isso vamos pegar no valor lido(em baixo o pot) e a este valor vamos subtrair os valores que correspondem a colunas abaixo deste.
Para um valor lido de 500 podemos verificar que corresponde a linha 2, agora vamos tirar a estes 500 os valores da linha 0 e 1, isto é: 204*2 = 408 e ficamos com 500-408= 92.
Este valor, 92, vai ser agora mapeado nos 8 bits da coluna. O valor lido na linha pode ir de 0 a 203.
O código que se segue executa o que acabei de explicar.

Código: [Seleccione]
yValueLine=map(pot,limiteInf,limiteSup,0,5);
tempTeste = abs(pot-204*(yValueLine));
yValue=map(tempTeste,0,203,1,8

O código todo encontra-se em anexo, aviso que isto está em desenvolvimento e que tem muitos erros e o código não está organizado.

Vídeo
Liguei um gerador de sinais, com frequencia de 1Hz e fui alternando entre onda sinusoidal, triangular, quadrada, assim como aumentar e diminuir a amplitude do sinal.


Tópicos Importantes
Arduino + LCD Nokia 3310! - PCD8544 / OM6206
22 de Abril de 2009, 13:14 por Njay | Visualizações: 8304 | Comentários: 5

Uma autêntica barata robótica.

A aposta no desenvolvimento de robot cada vez mais semelhantes com os animais continua e este exemplo de uma barata robótica surpreende-nos pela sua velocidade e simplicidade na construção. Os robots estão cada vez mais semelhantes aos animais, e qualquer dia chega a nossa vez :P


Vejam este incrível vídeo do robot em acção:


http://www.botjunkie.com/2009/04/17/video-friday-stanford-sprawlbots/

(texto por TigPT)
Páginas: 1 ... 129 130 [131] 132 133 ... 187

* Quem está online

  • user Google

* Estatística LusoRobótica

  • stats Total de Membros: 4.072
  • stats Total de Mensagens: 106.831
  • stats Total de Tópicos: 9.100
  • stats Total de Categorias: 8
  • stats Total de Quadros: 71
  • stats Recorde utilizadores online: 1.666