Установка беспроводной связи. между ПК и arduino pro micro для обмена речью и данными гироскопа
У меня есть клиентский проект по созданию беспроводной мыши с креплением на голову. Какой беспроводной модуль мне следует использовать, чтобы я мог обмениваться данными между ноутбуком и arduino pro micro через USB-порт, как беспроводная мышь? Я использую датчик ускорения + гироскоп MPU6050 для движения курсора и модуль распознавания голоса Electrohouse V3.1 для распознавания речи. Для обмена такими данными между ПК и ардуино я нашел много вариантов. Следовательно, я в замешательстве. Пожалуйста, помогите мне решить, что использовать, чтобы можно было достичь рентабельности и эффективности. Должен ли я использовать Bluetooth, RF Shield, XBEE или любой другой модуль?
@Nahian Rifaat, 👍0
1 ответ
Выбранный вами беспроводной носитель не имеет большого значения. Важно понимать, что это (в большинстве случаев) не беспроводная среда, которая взаимодействует с компьютером.
Большинство беспроводных мышей используют для связи nRF24L01+ (или, скорее, встроенный эквивалент SoC). Для этой связи они используют USB-ключ, подключенный к компьютеру. Компьютер понятия не имеет, что такое nRF24L01+, но знает, что такое USB-мышь. Таким образом, в ключе есть микроконтроллер, который получает данные от nRF24L01+, интерпретирует их и отправляет правильные инструкции по USB, чтобы компьютер думал, что это USB-мышь.
Какие данные передаются по беспроводной сети и в какой именно форме осуществляется это беспроводное соединение, совершенно не имеет значения для компьютера. Как правило, выбирается однокристальная система, эквивалентная nRF24L01+ (например, nRF52810), потому что это одночиповое решение с простым в использовании беспроводным протоколом, что обеспечивает дешевую и простую разработку и внедрение.
Единственным исключением из этого общего правила (и всегда есть исключение из каждого правила) является Bluetooth. Это потому, что существует концепция (насколько это касается компьютера) Bluetooth-мыши. Таким образом, возможно, используя правильный адаптер Bluetooth на вашем Arduino, чтобы сам компьютер видел Arduino как мышь Bluetooth. Это может быть сложнее реализовать с использованием небольших микроконтроллеров, но в результате получается потенциально более дешевое решение с меньшим количеством компонентов.
Однако самое простое решение для вас, вероятно, таково:
- Один Arduino со встроенным USB-подключением (Pro Micro, Leonardo и т. д. – все, что основано на ATMega32U4)
Он будет подключен напрямую к компьютеру и запрограммирован на эмуляцию USB-мыши
- Один Arduino, который лучше всего подходит для ваших датчиков (наверное, не имеет большого значения, для чего он нужен. Мини? Микро? Нано? Уно? Вероятно, все они подойдут).
К этому вы подключаете свои датчики, распознавание голоса и т. д.
- Пара модулей беспроводной связи какой-либо формы
Я бы порекомендовал nRF24L01+ — он прост в использовании, имеет очень удобный пакетный протокол, дешев и содержит множество примеров и библиотек. Они подключены к обоим Arduino и используются для связи между ними.
Тогда вам решать, какая информация будет передаваться между Arduino, чтобы тот, который подключен непосредственно к ПК, отправлял правильные движения мыши.
- Как исправить горение HC05 даже после использования регулятора напряжения?
- устранение проблемы дрейфа для модуля распознавания голоса elechouse v3.1 и датчика MPU6050 для головной мыши даже после калибровки датчика?
- Arduino Pro Micro, получить данные с контакта Tx?
- Как подключить вывод INT MPU 6050?
- Как очистить буфер FIFO на MPU6050?
- Как сгенерировать аппаратное прерывание в mpu6050 для пробуждения Arduino из режима SLEEP_MODE_PWR_DOWN?
- Отправка мультимедийных клавиш клавиатуры с помощью библиотеки клавиатур
- MPU6050 не работает
Подходит ли упомянутый вами модуль для отправки как речевых данных, так и данных о движении курсора на ПК от пользователя arduino? Я спрашиваю об этом, потому что операции щелчка и операции перемещения курсора должны отправляться через Arduino на стороне пользователя. Может ли модуль справиться с отправкой такого количества данных? Нравятся голосовые команды, такие как выбор, ввод, опции и движение курсора.?, @Nahian Rifaat
Ваш модуль VR обрабатывает все эти данные, не так ли?, @Majenko
Да, все работало хорошо и без задержек через usb-кабель, когда я говорил команду модулю VR, перемещая курсор. Может ли модуль nRF24L01 отправить эти данные без задержки?, @Nahian Rifaat
Таким образом, вы не отправляете им большие объемы данных. Просто команда, чтобы щелкнуть мышью., @Majenko
Если модуль VR чем-то похож на те, которые я использовал в прошлом, это «Аудио -> Микрофон -> Модуль VR -> [последовательный] -> Arduino -> Делайте все, что хотите». Это бит «делай, что хочешь», который представляет собой связь по беспроводной сети. Это может быть один бит в одном байте., @Majenko