Я сейчас пытаюсь сделать так, чтобы несколько ардуино и одна малина общались таким образом:
Несколько клиентов Arduinos (MKR 1010 с MKR ETH Shields) считывают аналоговые данные с датчика и> отправляют их благодаря WebSockets на сервер Raspberry Pi (3B) +>, который управляет подчиненным устройством Arduino>, который заставляет некоторые светодиоды реагировать на эти данные в реальном времени (данные 0-1023 станут яркостью 0-255).
введите описание изображения здесь
Вот мои планы и объяснение моих режимов связи и выбора аппаратных модулей:
- Клиенты arduinos находятся очень далеко от сервера Raspi = Ethernet
- Связь должна быть в реальном времени = Websockets
- Мне нужен как можно более стабильный сервер, учитывая, что он будет состоять из нескольких каналов (отображается 6) = Raspberry Pi лучше, чем Arduino
- Окончательный вывод должен быть аналоговым = Arduino I2C Slave, а не GPIO Raspberry, которые не поддерживают несколько ШИМ.
Я новичок как Raspberry Pi и веб-программист, и язык, с которым я чувствую себя более комфортно, - это C ++ (но я мог бы справиться с программированием на другом, если мне нужно!).
Теперь вот мои вопросы:
- Какой язык мне использовать для сборки сервера? (На данный момент мне удается отправить данные с клиента Arduino, подключенного к простому серверу веб-сокетов NodeJS, но мне нравится, что это не лучшее решение)
- Тогда, как только я получу данные от клиентов Arduinos, как мне сделать, чтобы они достигли arduino? Другими словами, превращает мои сокеты в последовательную связь.
Я очень предан этому проекту и надеюсь, что вы, ребята, могли бы помочь мне немного! Большое спасибо!