Projeto: Controlando Servo Motor com Emotiv Epoc (Interface Cérebro-Computador)

Projeto que desenvolvi para o meu TCC onde utilizei o Arduino e o Emotiv Epoc headset pra controlar dois servo motores a partir de ondas cerebrais.

O Epoc é uma Interface Cérebro-Computador que utiliza EEG (Eletroencefalografia) para captar as ondas cerebrais e interagir com o computador.

Basicamente, desenvolvi uma aplicação em C/C++ que funciona como middleware, integrando os dispositivos.

Assim que der um tempo eu disponibilizo o código e o projeto aqui no blog. 😉

UPDATE 15/04/2013: Várias pessoas entram em contato pedindo o código do projeto, por isso, estou disponibilizando ele no meu GitHub, apenas peço para que os que forem utilizar manter as informações do autor (no caso, eu) e se o código lhe foi útil compartilhe suas experiências e ajude outras pessoas, isso fortalece a comunidade open source e serve também de incentivo. Para acessar o repositório acesse:

https://github.com/renatopeterman/emotiv-epoc-servomotor-control.

36 pensou em “Projeto: Controlando Servo Motor com Emotiv Epoc (Interface Cérebro-Computador)

  1. Renato parabéns pelo seu projeto, ficou muito bom.
    Estou com uma equipe de iniciação cientifíca desenvolvendo uma interface cerebro-computador também através de EEG.

  2. Pingback: Construindo Dispositivos Controlados pelo Cérebro | Diário de Nilton Felipe

  3. Olá Renato, estou iniciando uma pesquisa de Doutorado com o EEG da Emotiv e gostaria de uma ajuda técnica caso possa me ajudar. Depois de gravar as atividades pelo TestBench SKD como posso abrir o arquivo .edf para possível análise estatística?

    Obrigado pela atenção.

    • Olá Thiago,

      Acredito que o Emotiv tenha mudado bastante desde quando desenvolvi este projeto, não cheguei a trabalhar com o TestBench porque minha versão não permitia acesso a dados de EEG.
      Desculpe por não poder ajudar.

      Renato

  4. Bom dia Renato,
    sou professor e estou desenvolvendo atividades com Mindware e EMOTIV EPOC com alunos com transtorno cognitivo e tem surtido efeitos. Gostei muito desse projeto era o que estava faltando. Ja comprei o EMOTIV EPOC e estou aprendendo. Te peço gentilmente que me ajude a configurar e entender como implementar esses codigos no VISUAL STUDIO e nos emotiv. Obrigado.

  5. Pingback: Interface Cérebro-Máquina: Sua mente no controle | Lellis Blog

  6. Olá Renato! primeiramente parabéns pelo seu trabalho com o Emotiv. Você poderia compartilhar o código comigo também? Estou fazendo um estudo sobre o EMOTIV (não TCC) para apresentar na faculdade nesta sexta-feira e acho que seu “caso de uso” é muito interessante. Obrigado 🙂

  7. renato
    eu estou querendo desenvolver projetos eeg qual equipamento devo usar o neuroSky ou o Emotiv Epoc .Qual seria mais facil ??
    poderia me enviar o codigo tb ??

    • Olá Guilherme, tudo bem ?

      Quando fui comprar, dei uma pesquisada a respeito de ambos. Acabei optando pelo Emotiv, na época me pareceu mais confiável e com mais recursos que o NeuroSky.
      Não conheço o SDK da NeuroSky, então não tenho como falar a respeito. Sobre o do Epoc, achei bem tranquilo, tinha uma boa documentação, e de pra se virar tranquilo.
      Vou enviar o código no seu e-mail.
      Qualquer dúvida estou a disposição.

      Abraço!

  8. E ai Renato, tudo bom?

    Gostaria de perguntar qual equipamento devo comprar, pois no site da Emotic Epoc temos dois equipamentos, o EPOC neuroheadset (que custa $299,00) e o Neuroheadset EEG (que custa $799,00). Não sei a diferença entre eles e nem qual devo comprar. Também queria perguntar se é necessário adquirir junto algum kit de desenvolvimento disponibilizado no site.

    Muito obrigrado.

    • Olá Matheus, tudo bem ?

      O meu é a versão developer edition e já veio com o SDK para Windows.
      Se você deseja desenvolver softwares que se comuniquem com o Epoc, você irá precisar do SDK, caso contrário você apenas conseguirá utiliza-lo com os softwares já existentes e desenvolvidos para o headset (disponiveis no site).
      Não sei como está funcionando isso hoje, se é preciso comprar o SDK separado etc… quanto comprei, ele já veio acompanhado do SDK para Windows.
      Essa versão EEG provavelmente permite acesso aos dados de EEG do dispositivo. Na versão básica, se não me engano, não é possível realizar esse tipo de leitura.
      Aconselho confirmar essas informações no site da Emotiv, mas basicamente é isso.
      Qualquer dúvida estou a disposição.

      Grande abraço!

  9. Parabéns pelo projeto, Renato.
    Cara, estou começando o estudo em cima do EPOC e estou meio perdido agora, no momento do desenvolvimento.
    Você se importaria em compartilhar o código?
    Abraço.

  10. Renato, parabéns pelo projeto… Apenas uma dúvida, a API acompanha o Emotiv Headset? Até onde eu consigo desenvolver com a versão Free? Também estou pensando em desenvolver meu TCC com o Emotiv!

    Obrigado,
    Murilo

  11. Cara muito show seu trabalho! Gostaria de sua ajuda sobre o Emotiv Epoc. Estou com um desse equipamento e com poquissimo tempo para desenvolver alguma aplicação em um robô mas não sei como programa-lo. Agradeceria muito se pudesse me ajudar,
    Obrigado.

    Eliseu Sartori.

  12. Pingback: Controlando dois (ou mais) servo motores com Arduino. | Blog do Renato Peterman

  13. I like the helpful information you provide in your articles. I will bookmark your blog and check again here regularly. I am quite sure I will learn plenty of new stuff right here! Best of luck for the next! Thanks for sharing…….

    • Olá Ícaro, tudo bem ?…

      Nesse projeto utilizei a Api que detecta os movimentos faciais, como eu tinha pouco tempo pra desenvolver, optei por esse caminho, mas é possivel sim utilizar apenas o pensamento (cognitivo), mas ainda não implementei por falta de tempo, não é tão simples como parece. Envolve uma série de fatores.

      Abraço.

  14. Olá Renato, belo projeto o seu !!!
    Agora, preciso de sua ajuda: estou fazendo uma aplicação para arduino, e preciso controlar dois servo motores, mas como eu faço isso usanto a porta serial ?
    com um servo deu certo.. já ta pronto, mas e com dois servos ? como eu faço a divisão da informação para enviar via serial…. para controlar cada servo independente. Eu utilizo o arduino, 2 servos, e a linguagem de programação é Java… fico no aguardo. abraços !!!

    • Olá Marcelo, tudo bem ?

      Eu fiz da seguinte forma, atribui um caracter no final da string, por exemplo “180a” faz com que o o servo “a” gire 180 graus, “010b” o servo “b” gira 10 graus.
      Vou enviar o código do programa do arduino no seu e-mail.

      Abraço,
      Renato Peterman

  15. Oi Renato, gostaria muito de manter contato com vc para desenvolvimento de outras funcionalidades com o Emotiv. Sou artista multimeios e um dos criadores do “App Invisível” em Realidade Aumentada com reconhecimento de imgens para iPhones. Vamos nos falando. Parabéns pelas suas pesquisas. Um forte abraço.

Deixe um comentário

O seu endereço de e-mail não será publicado.

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.