Самый простой/лучший способ управления набором из 8-10 ШИМ-сигналов со смартфона.
В рамках более крупного проекта хотелось бы иметь возможность управлять набором из 8-10 ШИМ-сигналов удаленно, со смартфона на расстоянии 10 метров и более. Я, вероятно, преобразую сигналы ШИМ в аналоговые напряжения и уменьшу их колебания напряжения примерно до 0–1 В, используя резисторный делитель и RC-фильтр; они будут управлять нагрузками с высоким импедансом в оставшейся части проекта. Я бы написал приложение для смартфона, позволяющее пользователю контролировать рабочий цикл каждого ШИМ-сигнала (и, следовательно, уровни аналогового сигнала).
Мне кажется, что лучше всего использовать Arduino, подключенную к телефону через Bluetooth. Мне понадобится один из более дорогих Arduino, чтобы получать достаточно сигналов ШИМ (базовые, такие как Uno, имеют только 6 выходов ШИМ). Программно-генерируемые ШИМ, вероятно, недостаточно высокочастотны, поскольку мне бы хотелось, чтобы отфильтрованные аналоговые сигналы были как можно более свободными от пульсаций. Кажется, существует несколько способов подключения Bluetooth к Arduino, например HC-05.
Если люди здесь согласятся с таким подходом, я перенесу этот вопрос на форум Arduino.
`
1 ответ
HC-05 рассчитан на высоту около 9 м, поэтому не обязательно соответствует вашим требованиям. ESP8266 (пример одной реализации, называемой Node MCU) может выводить ШИМ на любой из контактов 0–16. Он может легко реализовать веб-сервер, который позволит вам контролировать выходные данные через 8026.11 (Wi-Fi). Это также означает, что вам не нужно ничего создавать для телефона/планшета/ПК, просто используйте веб-браузер. Рабочий цикл можно установить через веб-сервер на ESP. ESP стоят примерно по той же цене, что и Arduino.
Я использовал HC-05 с Arduino. Это работает очень хорошо, хотя и не очень далеко. Для Android я использовал приложение App Inventor, которое очень легко использовать для Bluetooth.
Мне пришло в голову использовать Wi-Fi вместо Bluetooth, и, возможно, это было бы лучше. Однако я немного смущен: номер детали, которую вы цитируете, выглядит так, будто это просто адаптер Wi-Fi для Arduino. Но вы, кажется, говорите, что это альтернатива Arduino и она сама может обеспечивать выходы ШИМ., @RustyShackleford
На первый взгляд это так и выглядит, но на самом деле это полноценный MCU, аудрино не требуется. Его можно запрограммировать с помощью Arduino IDE и использовать контакты GPIO., @Squats
Я могу жить с 9 метрами. Эта штука скорее будет управляться с телефона (чем с компьютера), через графический интерфейс наверное не намного сложнее, чем 8-10 ползунков (по одному на скважность каждого ШИМ-выхода). Возможно, мне следует задать вопрос: будет ли это проще реализовать в Android или в HTML. Я тоже не совсем знаком с этим., @RustyShackleford
Если оно < 9 м и вы хотите выбирать между HTML и Android для телефона; затем проверьте приложение Inventor. Если вы выберете HC-05, то часть Android можно полностью выполнить в App Inventor, который очень прост в использовании — никакого кодирования, только блоки., @Squats
Если вы собираетесь использовать esp32, вы не сможете использовать среду разработки Arduino для функций Bluetooth, а другие функции еще не реализованы., @Squats
Да, они говорят, что вместо этого вам придется использовать Espressif IDF; поскольку я вообще не знаком с Arduino IDE, для меня это не должно стать проблемой. Однако это не помешает мне использовать App Inventor для Android, не так ли?, @RustyShackleford
Это не помешает вам использовать App Inventor., @Squats
- Установите частоту ШИМ на 25 кГц.
- Какова частота PWM-выхода на Arduino
- Управление скоростью вентилятора с помощью библиотеки Arduino PID
- Как устранить шум от вентилятора 12 В с ШИМ-управлением на низкой скорости
- Генерация частоты ШИМ выше 125 кГц с помощью Arduino Uno
- Увеличить разрядность PWM
- Как вывести истинное аналоговое напряжение на выходной контакт
- PWM-вывод Arduino Nano не функционирует
Вам нужен выход ШИМ или просто аналоговое значение? Возможно, будет проще получить ЦАП с 8 или более выходами, чем дурачиться с генерацией 8 сигналов ШИМ, а затем фильтровать и масштабировать их, чтобы получить то, что вам нужно., @JRE
С телефона на Ардуино через блютуз, потом вбить что-то вроде AD5669. У него 8 каналов, и пару из них можно подключить к Arduino., @JRE
Интересная идея. Однако я думаю, что нет смысла вводить еще одно железо. Поскольку каждый сигнал в любом случае будет управлять небольшой подсхемой, добавление пары резисторов (и конденсатора, хотя мне, вероятно, все равно бы этого хотелось) не является большой обузой., @RustyShackleford
мог бы подумать о том, чтобы «потратить деньги» на ESP32, который имеет поддержку Wi-Fi и BTL., @dandavis
Мне кажется, что ESP32 — это билет. Дает мне Bluetooth с дополнительным Wi-Fi. Дает мне 16 выходов на высоких частотах (чтобы облегчить фильтрацию на аналог). Хорошая плата для разработки за 20 долларов... https://www.sparkfun.com/products/13907, @RustyShackleford
Никогда не слышал о MQTT. Можете ли вы рассказать мне больше?, @RustyShackleford