Тема: TempMeter для Arduino - описание программы
Пришло время открыть для широкой публики новую инкарнацию программы TempMeter. Сейчас эта программа из просто мониторинговой перешла в класс мониторинговой и управляющей (процессами дистилляции и ректификации).
Итак, новая программа называется TempMeter для Arduino - или TMA. Название сразу указывает что аппаратной частью программного комплекса является широко распространенный микроконтроллер Arduino (в нашем случае - Nano). Информация о том как и что нужно к аппаратной части (а это и микроконтроллер, реле, клапаны и прочее) можно найти в соответствующей теме Инструкция по сборке аппаратного комплекса TMAS-1.0 для автоматизации
В этой теме я начну описание самой программы - что она может и какие функции она поддерживает.
Итак - приступим.
1. Главное окно программы.
Здесь видно, что TMA работает на Маке. Но независимо от ОС (Мак, Винда, Пингвин) - все функции программы и ее интерфейс идентичны. Интерфейс будет знаком тем пользователям которые знакомы с программой TempMeter - здесь видно меню программы, окно с графикой температуры и окно с дисплеями датчиков. Что появилось нового - это дисплей датчика атмосферного давления (опциональный) и его график (под основным графиком температур).
Про интерфейс программы можно сказать что он полностью разработан мной под мои "хотелки" - но я надеюсь что большие дисплеи датчиков будут весьма полезны в нашем деле...
Так же из нового можно отметить возможность работы программы как по проводу (когда ардуина подсоединена через юсб провод), так и через bluetooth (все это можно найти в смежной теме про конфигурации железа Инструкция по сборке аппаратного комплекса TMAS-1.0 для автоматизации).
2. Настройка программы
Как вы видите для того чтобы программа начала свою нелегкую трудовую деятельность ее нужно настроить. Если вы проверили работоспособность аппаратной части, используя небольшую утилиту ast.jar, то вся настройка в программе сведется к выбору вашего коммуникационного порта. После указании правильного порта при самом первом запуске программа делает проверку около 5-7 секунд - не нужно ее закрывать а просто подождать. Это особенно актуально с портом блютус, так как на его поднятие требуется несколько секунд.
После этого программа должна увидеть подключенные датчики температуры и давления (если он подключен).
Актуально для Маководов - порты на Маке не определяются автоматом и их невозможно выбрать. Для этого в настройке можно указать нужный порт вручную (будет типа /dev/<ваш порт>).
Также здесь настраиваются высота вашей месности (альтитуда - ищется без бубнов в интернете) - это позволит датчику давления провести преобразование давления именно для вашей высоты.
Опрос датчиков (миллисекунды) - позволяет настроить как часто будут присылаться обновления температуры.
Время конверсии температуры - прараметр присутствует здесь для любителей экстрима... Мою рекоммендация - оставить его без изменения, так как скетч на ардуино сам определяет (по протоколу) точное время окончания конверсии и начинает считывание температуры немедленно. Если установить это значение ниже чем требуемое время конверсии - это значит начать считывать температуру до окончания конверсии - что при этом считается - только бог знает... Я делал измерения времени конверсии для максимальной точности в 12 бит (0,0625С) - при этом времена были всегда в районе 640-650 мс. Так что думайте сами - довериться алгоритму скетча и считать максимально быстро достоверную температуру или...
Изменение цветовой схемы дисплеев температурных датчиков - позволяет изменить цвета при изменени температуры: цвет при повышении Т, понижении и если она не изменилась по сравнению с предыдущим считыванием.
Использовать большие дисплеи - эта опция позволяет увеличить размеры дисплеев датчиков. При этом если использовать функцию управления для датчика, дополнительно показываются температуры включения и выключения. При изменении размеров рестарта программы не требуется.
Раположение журнала - это директория куда будут сохраняться файлы журналов ректификации. По умолчанию это домашняя директория программы.
Интервал графика - позволяет задать длину графика температур и давления (в минутах).
Использовать светлый фон для графиков - по умолчанию график температур имеет темный фон (почти черный). Эта опция позволяет поменять фон на белый.
3. Настройки температурных датчиков
Для тех пользованетей кто пользовался или пользуются программой TempMeter этот диалог настройки остался без существенных изменений. Коротко по всем параметрам - думаю они и так понятны.
Отключить датчик - позволяет исключить жтот датчик из использования функциями программы. Это удобно например когда датчики подсоединяются не по отдельности, а спаяны вместе - тогда если например нужно только 2 датчика из 3-х - один можно отключить.
Название датчика - позволяет присвоить датчику свое имя.
Точность датчика - позволяет установить точность датчика (9,10,11,12 бит)
Разрядность дисплея - устанавливает сколько знаков после точки будут отображаться на дисплее (точность округления)
Отобразить на графике - позволяет использовать данные этого датчика для построения графика. Здесь же можно настроить цвет графика.
Журналировать температуру - эта опция позволяет использовать данные этого датчика в журнале ректификации. Само журналирование управляется из главного меню.
Установить аларм - позволяет настроить аларм на какое-то предельное значение температуры. Бывает иногда нужно...
Компенсировать системную ошибку датчика - позволяет скорректировать значение температуры датчика в соответствии с рекоммендациями их производителя.
Исправить температуру датчика - позволяет подстроить (калибровать) датчик под ваши измеренные несоответствия. Например, поместить все датчики в стабильные одинаковые условия и посмотреть разницу показаний - если не соответствуют - ввести коррекцию в этой опции.
4. Дисплеи датчиков
Небольшое описание дисплеев. Здесь как видно присутсвуют 3 температурных датчика и один датчик давления. Сначала рассмотрим основные компоненты температурного датчика - возьмем для примера датчик "Верх колонны".
Самая верхняя строчка на дисплее - это его название. Если датчику не было присвоено произвольное имя - здесь будет показан его адрес. При первичном запуске все детектированные датчики будут показывать адрес - пока не бутеи введен более понятное имя в его конфигурации.
Далее идет черный дисплей со значением пемпературы. Значение температуры может менять цвет в зависимости от ее изменения. Если температура неизменна в течении какого-то времени - цвет будет желтый, если температура подросла - цвет меняется на зеленый, если упала - на красный. Если сработал аларм - значение температуры будет мигать (примерно раз в секунду).
Также можно видеть что в верхнем правом углу дисплея есть индикатор управления датчика. В нашем примере все три пемпературных датчика имеют активное управление (зеленый цвет). Индикатор может менять цвет в зависимости от состояния управления:
индикатора нет - управление отключено
индикатор зеленый - управление включено, но неактивно
индикатор желтый - управление включено и мониторит температуру
индикатор красный - управление включило управляемое устройство (реле) и мониторит температуру
Возможно что не все эти состояния будут доступны для каждого из датчиков - это все определяется настройками управления.
5. Конфигурация управления
Это диалог управления для датчика температуры - в данном случае это датчик "Верх колонны".
Немного описания всех доступных опций.
Датчик под контролем -- это имя датчика для которого конфигурируется управление.
Управляемый вывод ардуино -- это номер пина который управляет неким устройством типа реле. Пронрамма будет включать и выключать управление для этого пина.
При включении установить вывод -- цифровой пин имеет два уровня - HIGH и LOW. HIGH - на пин подается напряжение, LOW - с пина снимается напряжение и он имеет 0. Эта опция определяет - в какое состояние программа переключит пин когда сработает управление.
Управление включением контроллера - это не опция, а название группы опций которые отвечают за настройки включения управления.
Температура включения -- определяет граничную температуру при достижении и превышении которой срабатывет управление.
Задержка включения -- эта опция позволяет использовать задержку включения управления. Если опция выбрана - можно выбрать значение звдержки. Когда контроллер обнаружит что температура включения достигнута или превышена и определена эта опция он не включает управление сразу а переходит в специальный режим мониторинга с выбранной вами длительностью (индикатор становится желтым). Если по истечении времени задержки температура не упадет ниже температуры включения то контроллер включает управление (индикатор становится красным). В случае если температура снова упадет ниже температуры включения - контроллер снова засыпает, не включая управление (индикатор становиться зеленым).
Макимальное отклонение температуры -- эта опция имеет смысл только вместе с предыдущей. В ситуации описанной выше если в период мониторинга температура увеличится больше чем установленное значение, мониторинг превывается и включается управление.
Учитывать изменения давления -- эта опция пока не реализована. Когда будет реализация - описание будет добавлено.
Включить сигнализацию тревоги -- если включена эта опция то при включении управления будет также включена тревога (аларм). Хочу заметить что если тревога включается то отключить ее можно только вручную - автоманически она не отключится. Ручное отключение делается через меню датчика.
Управление выключением управления -- эта опция делает доступной опции выключения контроллера.
Надо заметить что все опции для выключения управления копируют оные для включения и имеют тот же смысл. Единственная разница что если включение мониторит температуру вверх, то для выключения - вниз. То есть если использовать максимальное отклонение, то оно будет считаться как температура включения минус максимальное отклонение...
Температура выключения может быть выбрана или нет. Если она не выбрана, то в качестве Т выключения используется Т включения. Если выбрана - можно задать здесь отличное от Т включения значение.
Включить управление -- это глобальный выключатель управления. Если управление не нужно, то его просто здесь выключаем (индикатор управления асчезает из дисплея).
6. Общие замечания по пользованию программой
[TBC]
Тема немного не закончена, будут правки и поправки.
Внимание! Программа находится на отдельной странице.
Скачать Temp Meter Arduino
Предложения и пожелания по интерфейсу программы не принимаются, это личное видение и авторская разработка.