collapse

* Posts Recentes

é preciso ter cuidado com ESD? por senso
[Hoje às 01:15]


Potênciometro 4.7 ou 5 KOhm com switch por brunus
[Ontem às 19:35]


Bibliotecas para arduino e drivers de stepper - o problema da 'distracção' por SerraCabo
[Ontem às 02:12]


Zener BZW04-105? por brunus
[11 de Dezembro de 2018, 17:34]


Artigo 11, 13 e os restantes por jm_araujo
[10 de Dezembro de 2018, 11:05]


Compra Colectiva Mouser N3-2018 (limite 25 Nov) por Hugu
[10 de Dezembro de 2018, 01:07]


Ajuda para reparar Luzes de LED de Natal por brunus
[09 de Dezembro de 2018, 00:59]


Como reproteger as pontas de cobre do ferros de soldar? por brunus
[09 de Dezembro de 2018, 00:12]


Usar steppers de 5 pontas como se fossem de 4 pontas por SerraCabo
[08 de Dezembro de 2018, 21:18]


LusoRobótica - Website - Estado actual por Tech_JA
[06 de Dezembro de 2018, 09:18]

Autor Tópico: Detectar "gestures"/gestos com sensor capacitivo (desenvolvimento de algoritmo)  (Lida 1101 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.586
  • 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