collapse

* Posts Recentes

Maneira correta de ler o ADC do Arduino ? por jm_araujo
[Hoje às 00:20]


Gearbox por josecarlos
[Ontem às 23:10]


Impedância (ou porque é que eu não percebo nada disto). por vasco
[Ontem às 22:20]


[Tutorial] Faz a tua própria PCB por edeweld
[Ontem às 17:15]


BostonDynamics - Vai uma mãozinha? por josecarlos
[20 de Outubro de 2018, 11:57]


Tipos de "fontes de energia" por Njay
[20 de Outubro de 2018, 01:53]


HX711 por senso
[17 de Outubro de 2018, 23:36]


LR, passado, presente e futuro por beirao
[17 de Outubro de 2018, 22:54]


PCB de passadeira por beirao
[17 de Outubro de 2018, 22:51]


Proteções gerais de um circuito por KammutierSpule
[17 de Outubro de 2018, 17:33]

Autor Tópico: Detectar "gestures"/gestos com sensor capacitivo (desenvolvimento de algoritmo)  (Lida 1041 vezes)

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

Offline samc

  • Mini Robot
  • *
  • Mensagens: 438
Viva, comprei recentemente uma breakout board com um sensor capacitivo para um projeto pessoal e gostava de criar um “slide bar” mais ou menos precisa através dos 12 elétrodos disponíveis. Já tenho o sensor a funcionar corretamente a detetar os toques, o meu “problema” agora é escrever o código que detete os gestos: deslizar o dedo para a direita ou esquerda e interpretar o gesto.
Pesquisei na internet por código para “gestures” e encontrei muita coisa sobre deteção de movimentos em camaras IR, mas nada simples sobre o que eu pretendo fazer.

A minha ideia para a criação do algoritmo é interpretar o gesto como um vetor (com direção e magnitude). Ou seja, tenho uma array com os elétrodos em fila [0, 1, …, 10, 11], o primeiro elétrodo a ser tocado corresponde à coordenada inicial. Nesse instante o temporizador é iniciado e é terminado quando deixa de receber sinal que o último elétrodo foi tocado ou após o período de tempo definido para a duração de um gesto normal (1 s por exemplo). O último elétrodo corresponde à coordenada final do vetor e a duração do gesto corresponde à magnitude.
Ao interpretar o vetor posso definir se o gesto de deslizar foi feito numa forma crescente (para a direita) ou decrescente e a “velocidade” com que foi executado (correspondente a uma maior “intensidade”).

Não sei se a minha abordagem a este problema faz sentido e se vale a pena tentar começar a escrever o código por aqui. O estranho é que isto é uma aplicação tão comum e ubíqua que fico surpreso com a minha ineficácia em encontrar algum código ou biblioteca com a interpretação destes gestos de forma a eu me basear/analisar o código.

Será que conhecem algum código na Internet que eu possa utilizar como base?
« Última modificação: 29 de Outubro de 2014, 19:02 por samc »

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.563
  • Helpdesk do sitio
Re: Algoritmo para detectar gestures sensor capacitivo
« Responder #1 em: 28 de Outubro de 2014, 17:22 »
A Atmel(e outros) têm ic's dedicados que implementam esse tipo de coisas em hardware, convinha saber que chips/sensores estás a usar.
Nunca usei, mas tens tambem uma biblioteca da Atmel para implementar sensores capacitivos em micros sem capacidade para tal, chamada Qtouch.
Avr fanboy

Offline samc

  • Mini Robot
  • *
  • Mensagens: 438
Re: Algoritmo para detectar gestures sensor capacitivo
« Responder #2 em: 28 de Outubro de 2014, 17:47 »
Estou a usar o "vulgar" e barato MPR121 (datasheet: https://www.sparkfun.com/datasheets/Components/MPR121.pdf)
A página 2 da datasheet até apresenta algumas sugestões para o padrão dos elétrodos como quero utilizar (exemplo C)
Vou ver a tal biblioteca, obrigado