Python + Xbee — интерпретация бинарных данных для аналоговых сэмплов

Я работаю над проектом с модулями Digi Xbee Series 2 (ZigBee). У меня есть скрипт на Python, который получает данные на моем устройстве-координаторе и сохраняет их в базе данных. Этот скрипт ищет и анализирует ключ «samples» в возвращаемых данных.

С тех пор я купил датчик Digi XBee L/T/H (http://www.digi.com/wiki/developer/index.php/XBee%5fSensors) и обнаружили, что это возвращает данные с использованием ключа «rf_data». Это похоже на бинарность. Я не могу обработать его и прочитать из него фактические значения.

Может ли кто-нибудь сказать мне, могу ли я перепрограммировать датчик для отправки ключа «образцы» или как читать/преобразовывать двоичные данные?

Я пытался сделать это так:

h=struct.unpack('f',response['rf_data'][0:4])[0]

Но я не в своей тарелке, точно зная, что делаю ;-)

Заранее благодарим за любую помощь, которую вы можете оказать....


person fistameeny    schedule 14.04.2014    source источник


Ответы (1)


Он возвращает образец ввода-вывода, как описано в этой статье базы знаний Digi< /а>.

Страница, на которую вы ссылаетесь, содержит формулы для преобразования показаний АЦП в показания температуры, влажности и освещенности.

Раздел 3.2 документации python-xbee, по-видимому, подразумевает что сэмплы ввода-вывода анализируются, начиная с версии 2.1. Убедитесь, что вы используете эту версию, и посмотрите, можете ли вы получить доступ к adc-1adc-3 образца ввода-вывода и преобразовать показания в значения освещенности, температуры и влажности.

person tomlogic    schedule 16.04.2014
comment
Спасибо - я думаю, что вы прибили это! Я должен использовать более старую версию библиотеки Python. Я еще раз проверю, но я уверен, что это все. Спасибо! - person fistameeny; 17.04.2014