В перовой части мы рассмотрели принципиальную схему и конструкцию вольтметра для измерения напряжения бортовой сети автомобиля.
Программное обеспечение для микроконтроллера разработано в компиляторе mikroC для PIC микроконтроллеров от компании mikroElektronika.
Уравнения, чтобы получить значение напряжения от 10-битного аналого-цифрового преобразователя, приведены ниже. От АЦП мы получим число, которое обозначим DN (Digital Number).
VBattery = VADC, IN × (R1 + R2/R2) = 4.13×VADC, IN
Разрешение АЦП = 4.096/1024 = 4 мВ/DN
VADC, IN = DN × 4 (мВ)
Следовательно, значение напряжения бортовой сети
VBattery = 4.13×4×DN (mV) = 0.0165×DN (Вольт)
Для использования внутреннего источника опорного напряжения АЦП необходимо выполнить настройку регистров FVRCON и ADCON1 микроконтроллера. Компилятор mikroC предоставляет библиотеку для работы с АЦП микроконтроллера PIC16F1827, но, по умолчанию, в нем, в качестве источника опорного напряжения, используется напряжение питания Vdd. Поэтому, в нашем случае, применить встроенную библиотеку компилятора мы не можем и будем использовать собственную функцию работы с АЦП.
Полный исходный код доступен для скачивания в разделе загрузок.
Подключив вольтметр к бортовой сети автомобиля (в гнездо прикуривателя), мы должны увидеть на дисплее значение напряжения около 12 В. После запуска двигателя, аккумулятор начинает заряжаться от генератора автомобиля и значение напряжение должно быть около 13.8 В.
Пользователи могут самостоятельно усовершенствовать бортовой вольтметр, введя дополнительные функции, например, сигнализацию о пониженном (менее 11.8 В) и повышенном (более 14 В) напряжении бортовой сети.
Загрузки
Исходный код программы микроконтроллера (mikroC) и HEX файл – скачать