Projetando um monitor EMG baseado em Arduino

Eletromiografia (EMG) é um procedimento médico que avalia as condições de saúde dos músculos e células nervosas. Essas células transmitem sinais elétricos que fazem os músculos se contraírem ou relaxarem. A EMG é usada para ler esses sinais e plotá-los como números ou gráficos.

Normalmente, o EMG é realizado por médicos como parte de uma ferramenta de diagnóstico que pode detectar um distúrbio muscular ou nervoso em potencial. No entanto, os sensores de EMG também são usados ​​em aplicações eletrônicas controladas por músculos — como para controlar um servo motor ou braço robótico usando movimentos semelhantes aos músculos.

Neste projeto, usaremos um sensor EMG baseado em AD8226 para plotar um gráfico EMG com a ajuda do Arduino. O AD8226 é um amplificador de instrumentação amplamente usado para projetar sensores. Ele fornece ganhos de 1 a 1000. Ele também é amplamente usado em instrumentações médicas, amplificadores de ponte, controle de processos industriais e sistemas portáteis de aquisição de dados.

Aqui, aprenderemos como fazer a interface de um sensor EMG baseado em AD8226 com o Arduino UNO e plotar as atividades elétricas de um grupo muscular no Arduino UNO. O sensor pode ser usado para medir a ativação de qualquer grupo de músculos, incluindo bíceps, quadríceps, panturrilhas, etc.

Componentes

1. Arduino UNO x1
2. Sensor EMG baseado em AD8226 x1
3. Almofadas de eletrodo de 52 mm x3
4. Um cabo de conexão de 3 fios x1
5. Baterias de 9V x2
6. Fios de conexão e fios de jumper

Programas

  • IDE do Arduino

O sensor EMG
O dispositivo EMG usado neste projeto é um sensor muscular/eletromiografia diferencial de 3 derivações. Ele vem com uma porta de cabo integrada de 3,5 mm que pode ser usada para conectar eletrodos EMG/ECG regulares.

Embora o sensor não seja um dispositivo EMG de nível industrial, ele é eficaz para medir e monitorar a ativação muscular. Ele pode ser usado para robótica, próteses e uma variedade de aplicações de controle.

A placa do sensor tem esta configuração de pinos:

O sensor é ideal para uso com microcontroladores. Ao contrário de sensores médicos de nível industrial, no entanto, ele não emite sinais EMG brutos. Em vez disso, um sinal amplificado, retificado e suave é entregue, o qual pode ser lido no pino de entrada analógico do Arduino (ou qualquer outro microcontrolador).

A placa é alimentada por tensão DC que varia de +/-3,5 a +/-18V. A tensão do sinal de saída pode variar até 0V. O ganho do sensor pode ser alterado usando um potenciômetro integrado, que pode ser ajustado entre 0,002 para 0,01Ω a 20.700 para 100KΩ no potenciômetro. O sinal diferencial de saída pode variar de 0mV até a tensão/ganho de alimentação.

A placa do sensor usa um amplificador de instrumentação AD8226. Ele requer apenas um resistor externo para definir o ganho de 1 a 1000. O amplificador opera em fontes, variando entre +/-1,35 a +/-18 V (para fontes duplas) e 2,2 a 36 V (para uma única fonte).

Ele também pode lidar com tensões além de sua tensão rail-to-rail. Por exemplo, mesmo com uma fonte de 5V, o IC pode suportar até +/-35V.

O AD8226 é um amplificador de formato pequeno, multicanal, de baixo custo e baixa potência.

Conexões de circuito
A placa do sensor tem dois conjuntos de pinos:

  • A Conjunto de 3 pinos que inclui terminais -+Vs, GND e -Vs. É usado para fornecer uma alimentação dupla ao amplificador AD8226.
  • A Conjunto de 2 pinos que inclui os terminais de sinal e GND. É usado para fazer a interface da placa com o microcontrolador.

Para começar, você precisará de duas baterias de 9V. Conecte o terminal positivo de uma bateria ao pino +VS. Então, conecte o terminal negativo dessa mesma bateria com o terminal positivo da segunda bateria, unindo-o ao pino GND no conector de 3 pinos.

Em seguida, conecte o terminal negativo dessa segunda bateria ao pino -Vs. Isso fornece alimentação dupla de +/- 9 V ao sensor.

Para fazer interface com o Arduino, conecte o pino GND no conector de 2 pinos a qualquer um dos dois pinos de aterramento do Arduino UNO. Por último, conecte o pino de sinal a qualquer pino de entrada analógica, como A1.

Diagrama de circuito

Os eletrodos
Certifique-se de que o cabo de 3 derivações equipado com um conector de 3,5 mm esteja conectado à placa do sensor. Os eletrodos EMG/ECG podem, então, ser conectados ao cabo.

Selecione um grupo muscular para monitorar, como um bíceps ou panturrilha. Coloque um eletrodo no meio desse grupo muscular e conecte o conector de encaixe do cabo vermelho a esse eletrodo. Em seguida, coloque um segundo eletrodo em uma extremidade desse grupo muscular, conectando o conector de encaixe do cabo verde a esse eletrodo.

Em seguida, coloque o terceiro eletrodo em uma parte óssea ou não muscular do corpo que esteja próxima ao mesmo grupo muscular. Conecte o conector instantâneo do cabo amarelo a este eletrodo.

Esboço do Arduino

int EMGPin = A1;
intValEMG = 0;

configuração vazia {
Serial.begin(115200);
}

loop vazio {
EMGVal = analogRead(EMGPin);
Serial.println(EMGVal);
}

Como funciona
Os sinais EMG podem variar de 50u a 30 mV. O sensor AD8266 oferece um ganho de até 1000, que pode amplificar os potenciais EMG ao nível mV. Os sinais EMG “lidos” são amplificados, retificados e suavizados pelo amplificador de instrumentação AD8226.

Quando os eletrodos são colocados corretamente em um grupo muscular, sua contração e relaxamento produzem potenciais EMG. Esses potenciais são captados pelo sensor e amplificados para uma faixa mensurável. O ganho da placa do sensor pode ser ajustado usando um potenciômetro integrado.

O sinal de saída da placa do sensor é lido pelo pino de entrada do Arduino. Como o sinal de saída da placa do sensor é retificado (e na faixa de mV), o Arduino pode lê-lo facilmente. O Arduino é programado para ler a entrada analógica em seu pino A1 e imprimir as leituras na porta serial.

Essas leituras EMG podem ser definidas e monitoradas como números, variando de 0 a 1023, no monitor serial do Arduino IDE ou como um gráfico em seu plotter serial.

O código
O esboço começa atribuindo A1 como o pino para ler os sinais analógicos do sensor EMG. Uma variável 'EMGVal' é declarada para armazenar os valores analógicos que são recebidos do sensor.

Na função setup , a taxa de transmissão para comunicação serial é definida como 115200. Na função loop , as tensões analógicas do sensor são lidas e armazenadas na variável 'EMGVal'.

As leituras analógicas são impressas na porta serial, onde podem ser monitoradas no monitor serial ou plotter serial do Arduino IDE.

Os resultados

Related Content

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.