惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
博客园_首页
S
SegmentFault 最新的问题
罗磊的独立博客
博客园 - 【当耐特】
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
D
Docker
雷峰网
雷峰网
Google DeepMind News
Google DeepMind News
博客园 - 司徒正美
V
V2EX
大猫的无限游戏
大猫的无限游戏
V
Visual Studio Blog
腾讯CDC
宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
人人都是产品经理
人人都是产品经理
T
Tailwind CSS Blog
Vercel News
Vercel News
H
Help Net Security
博客园 - Franky
D
DataBreaches.Net
aimingoo的专栏
aimingoo的专栏

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания
Как я превратил смартфон в Modbus-RTU терминал для RS-485...
Александр · 2026-05-09 · via Все публикации подряд на Хабре

Средний

3 мин

21K

«Что меня не убивает, делает меня сильнее». — Фридрих Ницше

О себе: бэк-энд разработчик java/kotlin и немножко go, собственно вот профиль.

Работаю программистом я немного более трёх лет. До этого более 10 лет трудился в одной известной газовой компании в сфере электрохимической защиты подземных стальных сооружений от коррозии, также электроснабжения и немного автоматики. Была у меня там специализация на ремонте электронных блоков для эксплуатируемого оборудования.

И вот в начале 2010-х строились новые объекты, а на них появились относительно современные на тот момент так называемые системы коррозионного мониторинга.

Тогда я ещё был «синим воротничком» то есть непосредственно трогал всё своими руками.

Так вот на сцену выходят СКМ, по сути это часть автоматизации объекта в срезе ЭХЗ — непосредственные устройства, измеряющие физические параметры и состояние оборудования, и отдающие эти данные в систему телемеханики, а также выполняющие команды, приходящие из ТМ.

СКМ-ки стыковались с ТМ посредством интерфейса RS-485 с использованием протокола Modbus-RTU. Для тех кто знаком с промышленной автоматизацией эти вещи широко известны.

И вот, приезжают наладчики от производителя и пытаются заставить всё это работать, а я с ними таскаюсь по объектам, как представитель эксплуатации. Для диагностики оборудования они подключали ноутбук через преобразователь USB→RS-485 и через свои утилитки читали и писали регистры (этих утилиток общего назначения можно найти в сети достаточно).

Как же я благодарен этим ребятам и производителям оборудования за его невысокую на тот момент надёжность (я так понял что эта линейка оборудования была совсем новой со всеми вытекающими болячками). Железки ломались, наладчики приезжали, меняли, потом ломаться перестали, всё было подписано, но договор на обслуживание заключён не был (на что рассчитывало руководство сказать трудно). Через некоторое время как в старой машине местами начало «сыпаться». И разбираться с этим было поручено мне (электроника же).

Что там было описывать не буду, но это привело меня в итоге к изучению arduino и всякого микро-контроллерного. А тут и программирование понадобилось которым я сильно увлекался в школе (но не поступил на программиста к сожалению после школы).

В общем проблемы в итоге я все порешал. Потом появилась вакансия инженера и сменил воротничок на белый.

В процессе всего этого я пришёл к выводу что таскать с собой ноут ради такой скудной информации как значения двух-байтных регистров нецелесообразно, а умея «ардуинить», я решил сделать себе инструментик для этих целей в форм-факторе мультиметра.

В итоге это выросло в патент.

А так выглядел прототип для выставки инноваций, которая не состоялась из-за ковида.

А так выглядел прототип для выставки инноваций, которая не состоялась из-за ковида.

Из недостатков использование двухстрочного дисплея (у меня были только такие тогда).

Да и вообще основная техническая часть занимает в устройстве меньшую часть чем то что нужно для взаимодействия с пользователем (экран, кнопки).

Вот мы и подошли к сути статейки.

Примерно за год до своего перехода в IT мне пришла идея использовать смартфон в качестве человеко-машинного интерфейса.

Сказано — сделано.

Получилась коробочка с проводом для подключения к оборудованию по RS-485.

Внутри ESP8266. На нём поднимается точка доступа вай-фай и сервер преобразующий http-запросы в modbus-команды.

Подключаем коробочку к железке, включаем, подключаемся смартфоном к точке доступа и открываем приложение.

Собственно приложение это громко сказано. По сути это единственный html-файлик, содержащий сразу разметку стили и скрипты, я постарался сделать его поуниверсальнее, использовал flex.

Как итог, получилась адаптивность (можно и на ноуте юзать, интерфейс тогда делится на две колонки, но это бессмысленно, так как изначальная цель была избавиться от ноута).

Правда на айфоне в сафари не работает, скрипты не исполняются, но у меня андроид хе-хе.

По итогу получилось кошерно. В интерфейсе отображается сессия с практически взрослым логгированием и добавил возможность отправлять результат по электронной почте (другие каналы доставки инфы на рабочее место закрыты безопасниками).

Сделал VBA форму, при помощи которой из результата формировался (конечно, не какой то стандартный) полноценный протокол сессии взаимодействия с оборудованием.

Инструмент может быть полезен сервисным инженерам и наладчикам АСУ ТП.

Если кому интересны подробности, ю а велкам!

Первая статья на Хабре, с почином меня.

На гитхабе - https://github.com/chiOO7/ModReader_4v0