Amicus18
Цифровой барометр
Цифровой барометр предназначен для измерения атмосферного давления и вывода результатов в килопаскалях и миллиметрах ртутного столба. Основу барометра составляет плата Amicus18, в качестве датчика используется MPL115A2.
Датчик атмосферного давления MPL115 позволяет измерять атмосферное давление в диапазоне от 50кПа до 115кПа с точностью 1кПа. Для повышения точности и стабильности показаний датчик оснащен термометром. В датчике не реализован механизм вычисления давления, требующий некоторых вычислительных мощностей. Пользователю предлагается самостоятельно реализовать этот механизм. Обмен с микроконтроллером производится по шине I2C, что позволяет использовать стандартные функции обмена.
Принципиальная схема барометра практически не содержит дополнительных элементов. Для отображения показаний применяется двухстрочный ЖКИ-индикатор. Датчик смонтирован на отдельной печатной плате, что позволяет выполнить наиболее правильную его установку, согласно требованиям документации.
Принципиальная схема цифрового барометра
Программное обеспечение написано на «родном» для Amicus18 языке ProtonBASIC. Алгоритм обработки является стандартным, при этом производится непосредственная работа с числами с плавающей точкой. Такой подход, конечно, потребляет больше памяти программ, но более прост в реализации. Для преобразования давления, изначально читаются коэффициенты датчика и приводятся в форму с плавающей запятой. Далее, для обеспечения стабильности показаний применена фильтрация кода АЦП по давлению и температуре. В качестве алгоритма выбрано простое усреднение по 16 значениям. Работа с дисплеем и функции реализованы с использованием стандартных процедур ProtonBASIC. Результирующий код имеет объем 3.5кБ.
Показания давления выводятся в двух вариантах – килопаскалях и более привычных миллиметрах ртутного столба. Точность показаний проверялась по эталонному барометру и нареканий не вызвала.