Проект опросника Modbus, с выгрузкой в Excel

Опросник Modbus, с выгрузкой в Excel
Однажды обратился товарищ за помощью, потребовалось срочно опросить более 500 устройств, результаты записать в Excel в соответствующей форме. На работу «руками» могло уйти более 2-х недель, по этому было принято решение набросать простенькую программу, способную ручной труд минимизировать.
Писалось оно два вечера и получилось так:


Читать дальше

Термисторы, попытка I


Заинтересовался бюджетными способами измерения температуры. Широко распространеные цифровые датчики слишком дороги, а невысокая стоимость термисторов очень привлекает
Выбор пал на NCP21WB473J03RA. Стоимость ~12р. шт., корпус 0805, сопротивление при 25°C — 47к (±5%).
Почитал немного полезной литературы (ссылки в конце), и собрал следующую схему:


Читать дальше

M-BUS, часть I

Как-то раз столкнулся с протоколом M-BUS (Meter-Bus). Задача — научится считывать данные с теплосчетчиков Minocal Minol...


Как оказалось, протокол M-Bus очень популярен в Европе. Используется в счетчиках электроэнергии, газа, воды, тепла и т.д.
В отличии от стандарта RS485, M-Bus использует другие уровни сигналов. Низкая скорость передачи данных (300 — 9600 бит), как следствие низкие требования к линии связи (достаточно стандартного телефонного провода). Стандарт тщательно оптимизирован для пониженного потребления и позволяет обходится без отдельного внешнего источника питания конечного устройства, используя внутреннюю батарею и питание от самой линии, так же отсутствует необходимость соблюдения полярности.



Читать дальше

Аналоговые мультиплексоры, ADC

Однажды понадобилось 16-ть каналов АЦП, при 8-ми имеющихся у MSP430G2553 ...

И это могло бы стать проблемой, не будь аналоговых мультиплексоров (коммутаторов, ключей)
Для примера приведена структурная схема TS5A3157 от TI

Так как он является одноканальным, то имеет всего два мультиплексируемых входа (Vnc и Vno).
Вывод Vcom — общий и всегда соединен с одним из аналоговых входов.
Вывод Vi определяет в каком состоянии будет находится «переключатель».
Мультиплексоры пропускают ток в обоих направлениях и в идеале должны вести себя как выключатель, но реальность вносит своих коррективы.

Читать дальше

TMP112 (Digital Temperature Sensor от Texas Instruments)


Листая брошюру от TI, наткнулся на цифровой термодатчик TMP112...
К пристарелым Dallas-ам в обращатся не захотелось (TO-92 и высокая цена), решил попробовать.
Да к тому же под рукой оказалась вытравленная макетная платка (под MSP430G2553), а I2C так же был в планах.

Читать дальше

OLED SSD1306

Заказал как-то раз — дисплей OLED из Китая...
В итогде всем остался доволен.
Решил написать пару строк и поделится результатом.


Читать дальше
  • +9
  • 30 октября 2014, 14:46
  • khomin
  • 2

CC1101, Трактат о трассировке


После предыдущих попыток в области ВЧ схемотехники (не удачных)...
Решил попробовать разработать модуль на однокристальном трансивере, выбор пал на CC1101

Читать дальше
  • +1
  • 10 октября 2014, 13:49
  • khomin
  • 1

STM32 USB, QT, Libusb, шаблон проекта

В очередной раз потребовался USB интерфейс в проекте, решил написать краткую заметку ...

На стороне контроллера используется стандартная библиотека от ST («Custom_HID»), на ПК установлен Libusb (windows сборка — «libusb-win32»). Обмен происходит 50-байтовыми пакетами, используются две конечные точки.

Читать дальше
  • +7
  • 11 сентября 2014, 16:50
  • khomin
  • 2

Тестер для обнуления регистров Modbus (QT)

Монтажники устали обнулять значения через Modbus Poll, устройств очень много ...
Попросили накидать програмку которая бы проверяла ID, выводила список ответивших и записывала в указанные регистры — указанные значения.

Времени было жалко, нашел в ./Examples Qt готовый терминал для SerialPort, немного обстругал и видоизменил )

Читать дальше
  • +5
  • 05 сентября 2014, 17:25
  • khomin
  • 1

Сбор показаний с счетчиков "Меркурий 200-203"

Однажды возникла задача — научится считывать показания со счетчиков «Меркурий 200-203-206» ...

Первым делом оказалось, что счетчики золотые, на сайте кроме паспортов и примитивного описания ничего более нет.
Это и понятно, НПК-Инкотекс взял за основу пакет Modbus RTU (убрал из него все логичное и полезное — решив использовать фиксированные поля, без кода ошибок и т.д.,) расширив поле ID до 4-х байт, оставшееся было наречено «собственным протоколом». Что позволяет продавать (в единственном лице) конвертеры из «собственного протокола» в нормальный Modbus.

Первым делом был скачан с офсайта конфигуратор:



Читать дальше
  • +3
  • 02 сентября 2014, 17:09
  • khomin
  • 1