Задать вопрос
Ответы пользователя по тегу Arduino
  • Arduino как реализовать прием данных, чтобы они не смешивались по RS485?

    nava2002
    @nava2002
    Инженер
    Я кажется разобрался.
    Modbus хорошее решение. Вот это мне здорово помогло там простой листинг.
    https://habr.com/ru/post/249043/
    Очень понадобится USB-RS485 для связи с ПК.
    Вот библиотека на которой собственно у меня все получилось. В архиве отличный примеры все просто и понятно.
    https://github.com/smarmengol/Modbus-Master-Slave-...

    Идея такая: Есть массив как правило 16 ячеек (но я так понял его можно сделать значительно больше). В каждой можно положить число 2 байта длинной.
    Адресация такая: Мастер ВСЕГДА номер "0". Все остальные - Слейвы с адресами от 1 до 247. (тоесть слейвов можно сделать 247 - максимум) . Адреса 248-255 - резерв системы.
    Писать в ячейки массива, может как Слейв так и Мастер тут надо следить чтоб у каждого была СВОЯ ячейка.
    Инициатором опроса ВСЕГДА выступает - Мастер. Каждый Слейв кладет в нужную ячейку свои данные и берет из другой ячейки необходимые ему данные. Мастер по запросу забирает у слейва его массив и актуализирует свой (центральный массив с учетом новых данных). Так по кругу мастер опрашивает всех участников сети. Работает все достаточно медленно (у меня).
    И будет вам счастье.
    Ответ написан
    Комментировать