Данный пример демонстрирует, как при помощи ЭМГ сигнала можно задать две управляющие команды. Программа работает следующим образом: если мышца напряжена в течение 1 секунды или меньше, то программа выдаст на экране значение «Type 1», если больше секунды, то значение «Type 2». Данная программа может быть использована как самый простой способ управления роботизированной рукой, двигателем или просто светодиодом. Например: если мы напряжем руку менее чем на 1 с, то робо-рука сделает захват типа "кулак", если более чем на 1 с, то робо-рука сделает "щипковый" захват. В случае со светодиодом: при коротком напряжении руки светодиод моргнёт 1 раз, в случае продолжительного напряжения руки, светодиод моргнёт дважды.
Программа постоянно следит за величиной амплитуды регистрируемого сигнала. Как только значение амплитуды становится больше некоторого заданного порога thresholdStart, программа понимает, что мышца напряжена и начинает отсчет времени (EMG_TimeStart). Как только амплитуда ЭМГ сигнала становится меньше порогового значения thresholdEnd, программа фиксирует, что мышца больше не напряжена, и вычисляет промежуток времени EMG_Time, в течение которого фиксировалось ЭМГ. В зависимости от величины EMG_Time, на экран выводится значение "Type 1" или "Type 1".
Для правильной работы программы важно правильно задать параметры thresholdStart и thresholdEnd, которые индивидуальны для каждого пользователя. Для этого вначале запустите разобранный выше пример "Terminal" и выведите на экран ЭМГ сигнал. thresholdStart задайте как половину значения максимальной амплитуды, thresholdEnd как удвоенное значение величины помехи при отсутствии ЭМГ сигнала. Если регистрируемый ЭМГ сигнал окажется маленьким по амплитуде, то задаём повышающий коэффициент усиления при помощи функции MyoSensor.gain(value), где в качестве аргумента «value» используется одно из следующий значений усиления: «x1», «x2», «x4», «x5», «x8», «x10», «x16», «x32».