Аналоговый сигнал по MODBUS
- Войдите на сайт для отправки комментариев
Пнд, 05/08/2019 - 02:38
Здраствуйте.
У меня стоит задача считывать аналоговый сигнал ардуиной и передавать его по Modbaus в SimpleScada. Примеры с реализацией есть на сайте SimpleScada https://support.simplight.ru/knowledge-bases/2/articles/601-podklyuchenie-arduino-k-simp-lajt-cherez-modbus-rtu
Но как реализовать передачу сигнала с аналогово входа там примера не приводится.
Помагите с примером или хотя бы в какую сторону капать.
Что конкретно у вас не получаеться? Оцифиовать сигнал, поместить в соответствующий регистр, передать данные по протоколу?
Покажите пример вашей попытки,какой чистоты сигнал вы пытаетесь оцифровать?
Примера моей попытки пока не существует. Я ищу пример кода, который можно было бы взять за основу.
Нашел пример подключения датчиков температуры и влажности:
Может быть, данный пример можно взять за основу? Но как уйти от конкретных датчиков температуры и влажности и привязаться к аналоговому входу 0-5В.
PS. в программировании Ардуино имею поверхностные знания.
PS. в программировании Ардуино имею поверхностные знания.
а в программировании вообще?
Судя по всему. уровень Ваш самый начальный. Тут как бы два пути - если хотите быстро решить свою задачу - закажите разработку за деньги, если хотите научиться сами - начните с изучения основ, не беритесь сразу за сложное
И на том спасибо :)
На форуме уже были темы как передать значение температуры с датчика по модбасу. Идея в том, что модбас имеет только целые шестнадцатибитные регистры. Поэтому надо или умножить температуру на 100 привести к типу word и передать в одном регистре модбуса. Тоже самое и с влажностью. На стороне компьютера разделить на 100 и получить правильное значение. Или разделить float на целую и дробную части и передать их отдельно в двух регистрах модбаса, а на стороне компа восстановить. И кроме того влажность не бывает дробной а температура хоть и бывает, но этот датчик имеет большую погрешность и смотреть доли градуса с помощью него смешно. Т.е. можно передавать только целые части результата. Для этого хватит двух ячеек модбаса.