Оглавление:
- Шаг 1: Схема
- Шаг 2: настройка
- Шаг 3. Последовательное подключение всех модулей вместе
- Шаг 4: Конфигурация и код
- Шаг 5: Пояснение к коду
- Шаг 6: демонстрация
- Шаг 7: как это работает
Видео: Как построить счетчик времени сидя: 7 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:48
В этом проекте будет использоваться ультразвуковой датчик расстояния Zio Qwiic для обнаружения и отслеживания человека. Устройство будет стратегически размещено поверх экрана / монитора лицом к человеку, сидящему перед его / ее компьютером.
Проект будет отслеживать, как долго они сидели в часах / минутах. По достижении максимального времени «сидения» он будет предупреждать их, чтобы они встали и пошли.
Шаг 1: Схема
Шаг 2: настройка
Для сборки этого проекта вам потребуются следующие модули:
- Совет по развитию Zuino M Uno
- Ультразвуковой датчик расстояния Zio Qwiic
- Zio Qwiic 0,91-дюймовый OLED-дисплей
- Кабели Qwiic (200 мм)
- Кабель Micro USB
Шаг 3. Последовательное подключение всех модулей вместе
Шаг 4: Конфигурация и код
Загрузите и установите в свою Arduino IDE следующие библиотеки:
- Библиотека Adafruit GFX
- Библиотека Adafruit SSD1306
Загрузите полный код проекта на свою доску. Подключите Uno к компьютеру. Загрузите и прошейте код на Uno с помощью Arduino IDE.
Кроме того, вы можете скачать код со страницы Github.
Шаг 5: Пояснение к коду
С самого начала датчик обнаружит присутствие человека, сидящего на расстоянии 75 см. В это время все счетчики будут обнулены.
uint16_t time_sit1 = 0; uint16_t time_sit2 = 0; uint16_t time_leave1 = 0; uint16_t time_leave2 = 0; uint16_t lim = 75; // Диапазон расстояний от датчика до сиденья uint16_t maxsit_time = 7200000; // Устанавливаем максимальное время сидения в мс
Внутри функции петли датчик сначала обнаружит присутствие человека. Если в пределах диапазона обнаружения нет объекта, «счетчик отпуска» начнет отсчитывать время, когда никого нет.
if (distance * 0.1 <lim) {// определяет, находится ли человек в пределах диапазона обнаружения distance_H = Wire.read (); distance_L = Wire.read (); distance = (uint16_t) distance_H << 8; расстояние = расстояние | distance_L; сидеть(); time_leave1 ++; // отслеживает время, в течение которого никого нет calculatetime ();
Если он / она сидел более 2 часов, код отобразит сообщение для человека, чтобы он сделал перерыв.
если (время_зарядки2> максимальное время_время) {макссит (); time_leave1 = миллис () / 1000; time_leave1 ++; Calculatetime ();
Если человек решит сделать перерыв, код снова проверит присутствие человека. Если присутствие не обнаружено, счетчик сидячих мест сбрасывается на ноль и запускается счетчик отпусков. Датчик будет отслеживать время, в течение которого человек покинул рабочее место, чтобы отдохнуть.
else if (distance * 0.1> lim) {// определяет, находится ли человек за пределами диапазона calculatetime (); Serial.print ("Время сидеть:"); Serial.print (time_sit2 / 1000); Serial.println ("сек"); time_sit1 = миллис () / 1000; Serial.println («Никто»); time_sit1 ++; задержка (1000);
Шаг 6: демонстрация
Поместите ультразвуковой датчик расстояния Zio Qwiic на монитор вашего компьютера.
Примечание. Лучше разместить его над компьютером, чтобы датчик не обнаружил какие-либо объекты, которые могут исказить результаты.
Вы можете просматривать результаты времени сидения на OLED-дисплее, подключенном к устройству.
Шаг 7: как это работает
Ультразвуковой датчик расстояния будет отслеживать и обнаруживать сидящего человека, если он находится в пределах 75 см (расстояние от монитора до сиденья) от датчика.
Он будет отслеживать количество часов, в течение которых человек сидел, и расстояние до датчика.
Если он / она находится за пределами указанного диапазона 75 см, датчик будет считать, что человек покинул свое место для сидения. На OLED-экране будет отображаться время, в течение которого человек ушел после того, как сел.
Если датчик отследил и обнаружил, что человек сидел более 2 часов подряд, на экране отобразится сообщение, позволяющее ему / ей сделать перерыв.
Рекомендуемые:
Настройка часов реального времени DS3231 RTC (часов реального времени) точно, быстро и автоматически с помощью Java (+ -1 с): 3 шага
Установка часов реального времени DS3231 RTC (часов реального времени) точно, быстро и автоматически с использованием Java (+ -1 с): это руководство покажет вам, как установить время на часах реального времени DS3231 с помощью Arduino и небольшого приложения Java, которое использует последовательное соединение Arduino. Основная логика этой программы: 1. Arduino отправляет последовательный запрос
Куб времени - гаджет для отслеживания времени Arduino: 6 шагов
Time Cube - гаджет для отслеживания времени Arduino: я хотел бы предложить вам простой, но действительно полезный проект Arduino для отслеживания событий времени, перевернув какой-нибудь интеллектуальный гаджет-куб. Переверните его на "Работа". > " Учиться " > " Работа по дому " > " Отдых " сторона, и он посчитает
Счетчик Гейгера счетчик PKE: 7 шагов (с изображениями)
Счетчик Гейгера PKE Meter: Я давно хотел построить счетчик Гейгера, чтобы дополнить мою охлаждаемую камеру Пельтье. Есть (надеюсь) не очень полезная цель владения счетчиком Гейгера, но мне просто нравятся старые русские лампы, и я подумал, что это будет
Отслеживание положения сидя и стоя - Имани: 20 шагов
Отслеживание положения сидя и стоя - Имани: Вы хотите следить за своим здоровьем и убедиться, что стоите достаточно каждый день? Тогда Imani - приложение для вас! С помощью одного простого резистора, чувствительного к силе внутри вашей подошвы, мы можем отслеживать ваши ежедневные сидячие и стоячие привычки
Криптовалютный тикер / счетчик подписчиков Youtube в реальном времени: 6 шагов (с изображениями)
Криптовалютный тикер / счетчик подписчиков Youtube в реальном времени: компактный светодиодный дисплей, который функционирует как тикер криптовалюты и удваивается как счетчик подписчиков YouTube в реальном времени. В этом проекте мы используем Raspberry Pi Zero W, некоторые детали, напечатанные на 3D-принтере, и пару дисплеев max7219 создать су