УДК 004.41:62-79
Создание и принцип работы датчика обнаружения землетрясений на основе ARDUINO UNO
Калашников Василий Сергеевич - студент Московского государственного технического университета им. Н.Э. Баумана
Ткачева Елизавета Григорьевна - студент студент Московского государственного технического университета им. Н.Э. Баумана
Аннотация: В статье рассматривается один из способов создания и принципов работы простейшей сигнализации землетрясений для домашнего использования, созданную на базе Arduino UNO и высокочувствительного акселерометра ADXL335, реагирующего на вибрации.
Индикатор землетрясений на Arduino – это простой и доступный инструмент для предупреждения людей о возможном землетрясении. Он может быть создан с помощью простых компонентов и программы на платформе Arduino UNO. Индикатор землетрясений на Arduino имеет несколько преимуществ перед другими системами предупреждения о землетрясениях, включая низкую стоимость, простоту в использовании и гибкость.
Ключевые слова: землетрясение, Arduino UNO, акселерометр ADXL335, индикатор землетрясений, пороговое значение вибрации, электрически стираемая программируемая память EEPROM.
В схеме (Рисунок 1) используется плата Arduino UNO, подключенная к модулю акселерометра ADXL335 и входам АЦП (A0 для оси X, A1 для оси Y и A2 для оси Z). Две кнопки (SW1 и SW2) с напряжением питания 5В подключены к контактам D2 и D3 прерывания Arduino UNO, которые соединены с землей через резисторы R1 и R3. Эти кнопки используются для повышения и понижения порога обнаружения вибрации. ЖК-дисплей 16 × 2 (LCD1602_I2C) подключен в 4-проводном режиме с включенной регулировкой контрастности и подсветкой на выводах Arduino.
Транзистор BC548 (Q1) подключен к выводу 5 Arduino для включения светодиода локальной сигнализации (LCD1602_I2C) и зуммера (BZ1). Контакты 13 и 14 служат для управления ЖК-дисплеем и линиями передачи данных. При подаче питания на устройство и его неподвижности текущее значение акселерометра считывается и сохраняется во внутреннем EEPROM Arduino UNO независимо от ориентации устройства.
Рисунок 1. Принципиальная схема датчика обнаружения землетрясений на Arduino
Поскольку АЦП 10-битный, в коде предусмотрен специальный заголовочный файл. Перед считыванием первых значений предусмотрена задержка в несколько секунд для проверки всех напряжений и стабильности системы; микроконтроллер Arduino считывает данные с акселерометра по всем трем осям и сохраняет их в EEPROM. Он также сохраняет в EEPROM пороговое значение по умолчанию ±10.
В режиме отображения система непрерывно считывает значение акселерометра и сравнивает его с предыдущим фиксированным значением акселерометра, сохраненным в EEPROM при инициализации. Если текущее значение отличается, т.е. сохраненное значение больше положительного порога или меньше отрицательного порога, то подается сигнал тревоги и реле отключается. Конструкция и кодирование поддерживают как положительные, так и отрицательные значения по всем трем осям.
Кнопки, подключенные к выводам D2 и D3 Arduino, выполняют роль прерывателей для увеличения или уменьшения порогового значения для настройки чувствительности. Пороговое значение от 30 до 90 хорошо подходит для землетрясений. Для обнаружения ударов и вибрации можно также использовать пороговое значение от 20 до 45.
Код программы в среде разработки Arduino
|
Рисунок 2. Датчик обнаружения землетрясений на Arduino UNO
Устройство (Рисунок 2) может быть подключено и помещено в жесткий корпус и может быть установлено в любом месте на предприятии или в доме. Пользователь также может рассчитать полученное ускорение, используя уравнение с квадратным корнем X2 + Y2 + Z2 (где X, Y и Z - выходные данные ADXL335), а затем сравнить его с пороговым значением для подачи сигнала тревоги. При необходимости пользователь может вносить изменения на той же платформе.
Список литературы
- ARDUINO Быстрый старт. Первые шаги по освоению ARDUINO // Макскит, Москва, 2015. C. 39-42.
- Ященко В.C. От Arduino до Omega: платформы для мейкеров шаг за шагом // БХВ-Петербург, Санкт-Петербург, 2018. С. 81.
- МГС Измерение общей вибрации и оценка ее воздействия на человека // Стандартинформ, Москва, 2008. С. 7.
- Петрухин В.В., Петрухин С.В. Основы вибродиагностики и средства измерения вибрации // Инфра-Инженерия, Москва, 2010. С. 45-79.
- Калинкина М.Е., Пирожникова О.И., Ткалич В.Л., Комарова А.В. Микроэлектрические системы и датчики // Университет ИТМО, Санкт-Петербург, 2020. С. 23-25.