Подключение модуля wbio-ai-dv-12

Добрый день

Пробую подключить модуль wbio-ai-dv-12, следую инструкции Подключение к контроллеру.
Однако, столкнулся с проблемой, что модуля WBIO-AI-DV-12 Analog Inputs нет в списке.
ПРошивка на контроллере 201703301415 - как я понял последняя стабильная.
подскажите, что делать то?!

Добрый день!

Вам нужно обновить программный модуль, который отвечает за работу с боковыми модулями.
Пожалуйста, выполните в консоли:

apt-get update
apt-get install wb-hwconf-manager linux-image-wb2

При этом нужно внимательно читать, что вам предлагает менеджер пакетов. Если вдруг будет предлагать что-то удалить - не соглашайтесь, а выложите сюда вывод, мы подскажем.

Добрый день!

Предлагает удалит 2 пакета
The following extra packages will be installed:
linux-firmware-image-4.9.22-wb2 linux-image-4.9.22-wb2 python-wb-common wb-configs wb-utils
The following packages will be REMOVED:
linux-image-4.1.15-imxv5-x0.1 wb-homa-adc
The following NEW packages will be installed:
linux-firmware-image-4.9.22-wb2 linux-image-4.9.22-wb2 linux-image-wb2
The following packages will be upgraded:
python-wb-common wb-configs wb-hwconf-manager wb-utils
4 upgraded, 3 newly installed, 2 to remove and 79 not upgraded.
Need to get 10,7 MB of archives.
After this operation, 322 kB disk space will be freed.
Do you want to continue [Y/n]?

Добрый день!

Попробуйте пожалуйста так

apt-get install wb-hwconf-manager linux-image-wb2 wb-homa-adc

удаление linux-image-4.1.15-imxv5-x0.1 при установке linux-image-wb2 - это нормально.

Спасибо, все получилось.

Настроил вход на 2.5 В
Есть еще пару вопросов.

  1. Вот в микроконтроллерах делают паузу перед и после измерений для уменьшения шумности, здесь это нужно делать, или тут эти вопросы решены на уровне драйвера?
  2. Есть ли данные по времени измерения, т.е. суммарное время выполнения операций - открытие файла, чтение, закрытие файла.

Считываю я вот так в питоне:
with open(’/sys/bus/iio/devices/iio:device1/in_voltage0_raw’, ‘r’) as f_input_raw:
raw = f_input_raw.read()
raw = str(raw).split(’\n’)[0]

Я настоятельно рекомендую считывать данные из MQTT, а не напрямую через интерфейс iio.

А что именно у вас за задача, что это важно? Модуль не проектировался для изменений быстро меняющихся величин.

Мне более “ближе” скрипты на питоне.

Идея какая, 5 раз в секунду получать как можно более точные значения, вот хочу за эти 200 мс делать, скажем, 10-20 измерений и усреднять. я уже замерил время выполнения программы - идея работает, вопрос, конечно, целесообразности ее))

Так не проблема, из скриптов на питоне можно получать данные из MQTT. Чуть сложнее, чем читать из файла, зато правильнее.

У нас даже примитивная обёртка есть https://github.com/contactless/wb-common/blob/master/wb_common/wbmqtt.py

Добрый день, Евгений.

Хочу попробовать чтение данных через Вашу обертку для MQQT в питоне, но появилось ряд вопросов.

  1. объект класса wbmqtt - он где-то в другом месте определяется?
  2. я понял, что функцией get_last_value мы считываем значение, откуда она берет значение не очень понял, т.к. с библиотекой mosquitto не очень знаком. Из прочитанного по MQQT, не очень понял как это работает. Когда я вызываю эту функцию, get_last_value, это только запрос на устройство отправляется или устройство на брокер все время шлет данные, а мы лишь считываем последнее значение?

Вы каждый раз файл из /sys/bus открываете при чтении? Если просто из bash читать через cat то эта проблема воспроизводится?

Одно и то же значение - это какое именно точно?