Как сделать дешёвый датчик изгиба для Arduino своими руками!

KY-032, модуль инфракрасного датчика

Как сделать дешёвый датчик изгиба для Arduino своими руками!Модуль инфракрасного датчика

Модуль от 60 р в небольших партиях
Снова датчик 2 в 1. Данное устройство гибрид двух датчиков KY-005 (модуль инфракрасного светодиода) и KY-022 (датчик ИК приемника) в качестве датчика + плата управления на операционном усилителе.  Девайс имеет несколько настроек. 1. На яркость светодиода. 2. На порог срабатывания фотодиода. Чувствительность регулируется от 2 до 40 см. Следует учесть что срабатывание на темных поверхностях несколько хуже чем на светлых вследствие плохого отражения. Принцип работы: светодиод испускает инфракрасный свет и он, если на пути излучения находится препятствие, отражается в фотодиод.

Инфракрасный сенсор и Ардуино

Сделать неплохой датчик движения можно на платформе Arduino. В состав электронного «конструктора» входит модуль PIR-датчика HC-SR501. В него входит инфракрасный детектор, дистанционно реагирующий на изменение температуры, с контроллером.

Как сделать дешёвый датчик изгиба для Arduino своими руками!
Контроллер инфракрасного датчика Ардуино.

Модуль полностью совместим с основной платой и подключается к ней тремя проводниками.

Как сделать дешёвый датчик изгиба для Arduino своими руками!
Подключение детектора к плате.

Вывод ИК-модуля GND VCC OUT
Вывод платы Arduino Uno GND +5 V 2

Чтобы система заработала, надо загрузить в Ардуино следующий скетч:

Как сделать дешёвый датчик изгиба для Arduino своими руками!
Скетч для управления ИК-сенсором.

Сначала устанавливаются константы, определяющие назначение выводов основной платы:

const int IRPin=2

Константа IRPin означает номер пина для входа от датчика, ему назначается значение 2.

const int OUTpin=3

Константа OUTpin означает номер пина для выхода на исполнительное реле, ей присваивается значение 3.

В разделе void setup() устанавливаются:

  • Serial.begin(9600) — скорость обмена с компьютером;
  • pinMode(IRPin, INPUT) – вывод 2 назначается входом;
  • pinMode(OUTpin, OUTPUT) – вывод 3 назначается выходом.

В разделе void loop константе val присваивается значение входа от датчика (ноль или единица). Дальше, в зависимости от значения константы, на выходе 3 появляется высокий или низкий уровень.

Проверка работоспособности и настройка датчиков

Перед первым включением собранного сенсора надо тщательно проверить монтаж. Если ошибок не найдено, можно подавать напряжение. В течение нескольких секунд после включения питания надо проконтролировать отсутствие локальных перегревов и дыма. Если «смок-тест» пройден, можно проверить работоспособность датчиков. Сенсоры на триггере Шмитта и на Ардуино наладки не требуют. Надо лишь имитировать нахождение объекта рядом с датчиком (поднесение руки) и проконтролировать изменение сигнала на выходе. Детектор на основе ВЧ-генератора требует установки момента начала генерации с помощью потенциометра Р1. Проконтролировать начало возникновения колебаний можно осциллографом или по щелчку реле.

Подключение нагрузки

Если сенсор работоспособен, к нему можно подключить нагрузку. Ей может служить вход другого электронного устройства (звуковой сигнализатор), Но часто от детектора требуется управлять освещением. Проблема в том, что нагрузочная способность выхода самодельного датчика не позволяет подключать даже маломощные светильники напрямую. Поэтому обязательно потребуется промежуточный ключ в виде реле.

Как сделать дешёвый датчик изгиба для Arduino своими руками!
Подключение датчика через реле-повторитель.

Перед подключением пускателя надо убедиться, что контакты выходного реле сенсора позволяют коммутировать напряжение 220 вольт. В противном случае придется ставить дополнительное реле.

Как сделать дешёвый датчик изгиба для Arduino своими руками!
Подключение Ардуино через транзисторный ключ, промежуточное реле и реле-повторитель.

Выход Ардуино настолько маломощен, что не сможет управлять реле или пускателем напрямую. Потребуется дополнительное реле с транзисторным ключом.

Если все этапы сборки и настройки прошли удачно, можно устанавливать сенсор стационарно, выполнять окончательное подключение и наслаждаться четко работающей автоматикой.

KY-002, датчик вибрации SW-18015P

Как сделать дешёвый датчик изгиба для Arduino своими руками!KY-002 внешний вид

Как сделать дешёвый датчик изгиба для Arduino своими руками!KY-002 схема датчика

 Датчик вибрации стоит около 7 р, сама плата датчика от 60 р за шт.
 Применяется в схемах где необходимо слежение за вибрацией, т.е., например, в схемах автосигнализации на вибрацию корпуса или в производственных схемах за слежением вибрации. У меня такого датчика нет но вероятно устройство следующее: представляет собой трубку в трубке, причем внутренняя трубка имеет некоторые свободный ход. Вероятно подвешена на пружине (в принципе изготовление «на коленке» займет от силы 10 минут). При вибрации внутренняя трубка начинает колебаться и, таким образом, касается стенок наружной трубки. Эти касания подают на выход датчика логический ноль, в то время как в состоянии отсутствия вибрации на выходе логическая единица. Пример обработки сигналов дачтчика вибрации можете посмотреть ЗДЕСЬ.

Как сделать самодельный датчик движения

Пусть вас не пугают названия. Автодин, сделанный на основе транзистора VT1 по сути и гетеродин и смеситель для сигнала. Во время движения объекта, частота этого сигнала меняется на пару герц и сравнимо с доплеровским смещением. Благодаря конденсатору С2 и ФНЧ сигнал принимается каскадом, который по сути и фильтр и усилитель одновременно. Потом он при помощи последнего стабилизируется. За регулировки чувствительности отвечает резистор R11.

В качестве компараторов для самодельного детектора движения своими руками подойдут реле К1 и стабилитрон VD3. Так как напряжение не должно упасть ниже отметки в 11 вольт, включить в схему повышающий стабилизатор не будет лишним. Во время изготовления платы не забудьте отшлифовать антенну (она расположена на верхней части схемы) и, чтобы она не окислилась при использовании, нанести на неё слой ацетонового или спиртового раствора канифоли.

Намотка катушек L1 и L2 состоит из 12 витков провода под названием ПЭЛ 0,23. В качестве корпуса для датчика движения может выступить что угодно, лишь бы пропускало вспышки светодиода VD5. Подойдет и обыкновенная мыльница из пластмассы. При подключении самодельного датчика движения для сигнализации для охраны вашей коллекции самодельных поделок места лучше потолка не найти. Потолочный датчик обладает самым большим углом обзора. Инструкция в виде схемы подключения детектора движения к электросети детектор движения:

Как сделать дешёвый датчик изгиба для Arduino своими руками! Как сделать самодельный датчик движения.

Самодельный датчик на Ардуино

Инфракрасный датчик движения на Ардуино представляет собой ИК сенсор, подключенный к контроллеру. Вместе их можно использовать как автоматический включатель освещения. Распайка контактов зависит от разработчика и изготовителя продукции, но по принципиальной схеме можно определить, что, чем является. Для работы потребуется контроллер Arduino Uno, макетная плата, USB-кабель, ИК сенсор, светодиод, резистор 220 Ом и монтажные провода. В программном обеспечении Arduino имеется набор шаблонов. Используя их и заменяя управляемые устройства на датчик можно получить требуемое изделие.

Взяв программу, включающую светодиод, установленный на плате Arduino UNO и заменив управляющую кнопку на выходные контакты датчика получим устройство управления освещением. Светодиод будет управляться по команде с теплового датчика. Подключив вместо светодиода обмотку реле можно включать освещение. В отличие от обычных датчиков включения освещения здесь длительность работы лампы задается программно. Написание программ наглядно показывается на сайтах, посвященных Arduino.

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Часто задаваемые вопросы

Зачем нужен датчик движения в видеорегистраторе?
Он активирует видеозапись только в то время, когда в поле зрения прибора происходит движение, за счет чего экономит свободное пространство носителей информации.

Как найти датчик движения, который не реагирует на животных?
Для исключения ложных срабатываний извещателей применяются следующие методы: *понижение чувствительности сенсора датчика путем изменения его регулирующих настроек; *вставка в сенсор специальных линз, меняющих параметры зоны его контроля; *применение дополнительного микропроцессора.

Почему датчик исправен, но свет не гаснет?
Стоит проверить настройку временной задержки. Причиной неразмыкания схемы питания может быть то, что у регулятора TIME выставлено слишком высокое значение. Отключение света может блокироваться слишком большой уставкой порога яркости (LUX).

Электромиограмма (ЭМГ)

Электромиограмма (ЭМГ) сложный для понимания сигнал. Он образован работой множества мышечных волокон, управляемых мотонейронами, а они в свою очередь — нервной системой. Управление происходит, как увеличением частоты, так и пространственным распределением электрической активности. Поэтому форма ЭМГ может показаться случайным сигналом типа шума, возникающим во время сокращения мышцы.

Популярные статьи  Баба на чайник своими руками: изготовление, выкройки и идеи выбора стиля

Как сделать дешёвый датчик изгиба для Arduino своими руками!Изображение из Интернет

В действительности это не так и каждый импульс идет от своего конкретного источника — мышечного волокна, работающего асинхронно с остальными. Из-за этого диапазон сигнала довольно широкий и достигает 1 кГц.К счастью, если не ставить цель диагностики нарушений мышечной системы, то можно ограничить диапазон частот до 100..200 Гц, что облегчит работу с ним.

Скетч для компьютера

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Если при запуске появится сообщение, что не найдено Android SDK:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

можно проигнорировать это сообщение и просто закрыть окно, нажав на крестик. Только при когда отобразиться окно программы, нужно будет переключить среду Processing из режима работы «Android» в режим «Java». Для этого слева вверху нажмите на «Android»:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

И в появившемся меню выберете пункт «Java»:

После чего среда автоматически перезапустится:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Создайте новый скетч (файл -> создать) и скопируйте в него скетч:

Одно из отличий Processing от Arduino IDE заключается в том, как выбирается последовательный порт. В Processing порт выбирается не в меню, а в коде по индексу массива. При запуске скетча, внизу окна выводится список портов:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Найдите в списке порт, к которому подключена Arduino и в строчке:

myPort = new Serial(this, Serial.list(), 115200);

при необходимости поменяйте индекс. Если к примеру текущий порт «COM4», замените в коде ноль на единицу:

myPort = new Serial(this, Serial.list(), 115200);

https://vk.com/video_ext.php

Перевод: RobotoTehnika.ru

Устанавливаем сенсоры на перчатке

Можем приступать к установке датчиков и нашей монтажной платы на саму перчатку. Сначала просверлите небольшое отверстие в пластике датчиков. Отверстия сверлятся в местах, где чувствительный элемент закончился

ВАЖНО! Ни в коем случае не сверлите отверстие в чувствительном материале. После этого оденьте перчатку

Сделайте отметки карандашом или ручкой на вершине каждого сустава. Эти места вы будете использовать для крепежа сенсоров. Датчики изгиба крепятся обычной ниткой. Пришейте сенсоры к перчатке. Используйте отверстие, которые вы сделали на концах датчика. В местах, где отмечены суставы сенсоры «прихватываются» нитью поверх. Более детально все это показано на фото ниже. Монтажная плата пришивается к перчатке аналогично сенсорам. Учтите, что для движения пальцев надо оставить определенный запас длины проводников. Это надо учесть при установке нашей монтажной платы и выборе длины коннекторов от нее к датчикам.

Резистор изгиба своими руками

Наверняка те, кто увлекается электроникой и программированием микроконтроллеров слышали о датчике изгиба, который меняет свое сопротивление в зависимости от степени его изгиба. Сегодня я расскажу о том, как можно изготовить такой датчик (резистор) изгиба своими руками .

Когда мне понадобился такой датчик, то первым делом я зашел и нашел его на Амперке . Но цена, 890 рублей за штуку (за датчик длинной 95мм именно такая цена), меня не устроила и тогда в голову пришла отличная идея создания датчика, который не будет сильно отличаться по принципу действия от покупного, но обойдется мне гораздо дешевле. Принцип его работы основан на фоторезисторе и светодиоде. Свет от светодиода будет поступать на фоторезистор по силиконовой трубке, а при ее изгибе свет будет падать в меньшем количестве, а значит и сопротивление будет меняться на выходе у фоторезистора. С помощью таких датчиков можно создавать свои интересные проекты. Например, с помощью 5 таких датчиков, мне не составило особого труда сделать свою «сенсорную перчатку».

Требуемые материалы и их примерная стоимость

Для изготовления такого датчика нам понадобится:

  • Фоторезистор — 3р. (я заказывал на ebay 50шт. за 150р.)
  • Светодиод — 3р.
  • Силиконовая трубка от катетера — 6р. (Продается в в аптеке)
  • Черная изолента/термоусадка — 10р.
  • Токоограничивающий резистор (220 Ом) — 2р.
  • Подтягивающий резистор (10 кОм) — 2р.

Расходные материалы обойдутся вам около 30 рублей. Цены могут немного меняться в зависимости от магазина, в котором Вы будете покупать комплектующие.

Сборка

Собирается такой датчик очень просто. Для начала нужно отрезать кусок силиконовой трубки нужной вам длинны (датчик работает отлично при длине трубки в диапазоне от 3 до 13см). Затем с одной стороны вставить фоторезистор, а с другой светодиод. Потом трубку, с уже вставленными светодиодом и фоторезистором, обмотать изолентой, желательно черной, либо термоусадкой. После этого нужно к светодиоду припаять токоограничивающий резистор, а к фоторезистору подтягивающий. Подключая его к тому же Arduino, нужно просто подключить фоторезистор и светодиод между 5В и землей (GND), через резисторы, а показания снимать в месте спайки фоторезистора и подтягивающего резистора.

Плюсы и минусы такого датчика

  • Низкая стоимость
  • Простая сборка
  • Неплохая линейность показаний датчика
  • Доступность расходных материалов
  • Слабая механическая стойкость (часто требуется выпрямлять трубку)
  • Линейность показаний датчика все-таки не идеальна

Заключение

Для тех, кому нужно/интересно будет посмотреть мое видео по сборке этого датчика — специально записал видео:

И вот ссылка на скетч для Arduino IDE с примером подключения датчика к Arduino UNO, залитого на Google Диск.

KY-005, модуль инфракрасного светодиода

Модуль инфракрасного светодиода

 Можно заменить обычным ИК- светодиодом за 15 р, на Али вам придется отдать около 50 р  за один модуль.
 Инфракрасный светодиод, некоторые блоки могут идти с постоянным токоограничивающим резистором, некоторые без оного, обратите внимание при подключении- поставьте резистор. Модуль можно применить для передачи информации, так же можно использовать как детектор пересечения луча вместе с инфракрасным фотодиодом в охранных устройствах, при этом имеют как преимущества так и недостатки

Преимущества- луч невидим для человеческого глаза, недостатки- большой угол рассеивания.

Используемые компоненты

Как сделать дешёвый датчик изгиба для Arduino своими руками!Список деталей:

1 х Arduino NANO
1 х Модуль с датчиком VL53L0X
1 х Повышающий преобразователь
1 х Шаговый мотор
1 х Драйвер шагового мотора на микросхеме A4988
1 х Скользящие контакты (slip ring) на 6 проводов. Диаметр 12.5мм, длина 15мм или меньше
1 х 6710ZZ подшипник
1 х Датчик Холла 49E
1 х Макетная плата
1 х 100 мкФ электролитический конденсатор
1 х 5 мм х 1 мм неодимовый магнит

Так же понадобиться резистор на 10К, немного M3 винтов, гаек, вставных гаек (резьбовые вставки, insert nuts), «пасик» и напечатанный на 3D-принтере корпус, припой и паяльник.

Повышающий стабилизатор нужен для шагового мотора. Такие моторы обычно потребляют максимум сотни миллиампер. Стабилизатор желательно взять с запасом, допустим на 1А или больше. Выходное напряжение питания у стабилизатора, 12В или более. Выбирая стабилизатор, так же учитывайте, что они не должен быть слишком большой, иначе его нельзя будет поместить внутри корпуса.

Как сделать аналоговый датчик своими руками

Для этого проекта потребуется:

  • Arduino Uno / Arduino Nano / Arduino Mega;
  • макетная плата;
  • самодельный датчик воды;
  • 1 светодиод и резистор на 220 Ом;
  • провода «папа-папа» и «папа-мама».

Собираем датчик протечки воды своими руками

Для начала необходимо отрезать три клеммника от колодки (смотри фото). Клеммники применяются для соединения проводов, они изготавливаются из негорючего материала, который легко разрезается. Внутрь клеммников встроены металлические контакты с винтовыми зажимами. Контактами мы соединим гвозди с проводами и резистором, а корпус клеммника будет служить каркасом для нашего датчика.

Фото. Схема датчика воды своими руками и подключение к Ардуино

Далее необходимо ослабить контакты, выкрутив винты. Согласно схеме на фото вставьте в крайние контакты гвозди и зачищенные концы проводов. Левый и средний контакт следует соединить резистором с номиналом 220 Ом. В правый контакт также вставляется зачищенный конец провода. Осталось лишь подготовить контакты на всех проводах, для подключения датчика воды к плате Ардуино.

Подключаем датчики изгиба к Arduino

Для подключения датчиков изгиба к Arduino нам в схему надо включить делитель напряжения. Датчики изгиба по сути являются переменным резистором. При использовании в паре с постоянным резистором, можно отслеживать разницу в напряжении двух резисторов. Отследить разницу можно с помощью аналоговых контактов Arduino. Схема подключения приведена ниже (красный коннектор — это напряжение, черный — земля, голубой — коннектор самого сигнала, который подключается к аналоговому входу Arduino).

Популярные статьи  Как сшить стильные шторы своими руками - пошаговая инструкция для начинающих с фото идеями работ

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Резисторы на фото имеют номинал 22 кОм. Цвета проводов соответствуют цветам, приведенным на схеме подключения.

Все контакты GND от датчиков соединены в общую Землю. Земля идет к пину GND на Arduino. +5V на Arduino подключается к общему контакту питания от всех датчиков. Каждый голубой коннектор сигнала подключается к отдельному аналоговому входу на микроконтроллере.

Я собрал схему на небольшой монтажной плате. Размеры платы желательно выбрать поменьше, чтобы в дальнейшем закрепить на перчатку. Закрепить на перчатке нашу собранную схему можно с помощью элементарной нити и иголки. Кроме того, не поленитесь и сразу же используйте изоленту на оголенных контактах.

Сборка манипулятора

Для начала необходимо собрать пять частей:

В основании необходимо использовать винты с готовкой в потай. Придется немного рассверлить отверстия, чтобы рука могла поворачиваться.

После того как эти части собраны остается только прикрутить их к качалкам сервоприводов и накинуть тяги для позиционирования инструмента. Достаточно трудно прикрутить именно два привода в основании:

Сначала необходимо установить шпильку длиной 40мм (показана желтой линией на фото), а затем прикрутить качалки. Для шарниров мы использовали обычные винты М3 и гайки с нейлоновой вставкой для предотвращения самораскручивания. Эти гайки хорошо видно на конце манипулятора:

Пока это просто плоская площадка на которую мы для начала планируем приделать лампочку.

Датчик MPU6050

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Датчик MPU6050 построен по технологии микроэлектромеханических систем (MEMS — Micro-Mechanical Systems) и имеет в своем составе 3-осевой акселерометр, 3-осевой гироскоп и датчик температуры. Он может измерять такие параметры как ускорение, скорость, направление (ориентация), смещение и т.д. Ранее на нашем сайте мы уже рассматривали его подключение к плате Arduino, а также рассматривали создание на его основе самобалансирующегося робота и измерителя уровня (уклономера).

Основные особенности датчика MPU6050:

  • связь по протоколу I2C с конфигурируемым (настраиваемым) адресом I2C;
  • питающее напряжение: 3-5V;
  • встроенный 16 битный АЦП (аналого-цифровой преобразователь);
  • возможность подключения по протоколу I2C к другим устройствам, например, магнитометру;
  • встроенный датчик температуры.

Назначение контактов (распиновка) датчика MPU6050 показано на следующем рисунке.

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Распиновка MPU6050:Vcc – контакт для подачи питающего напряжения постоянного тока;GND – земля модуля;SDA – это контакт используется для передачи данных между модулем mpu6050 и микроконтроллером;SCL – вход синхронизации;XDA – линия передачи данных (опциональная) по протоколу I2C для конфигурирования и считывания данных с внешних датчиков (не используется в нашем проекте);XCL – вход синхронизации протокола I2C для конфигурирования и считывания данных с внешних датчиков (не используется в нашем проекте);ADO – I2C Slave Address LSB (не используется в нашем проекте);INT – контакт прерывания для индикации готовности данных.

ПРОШИВКА И НАСТРОЙКА

Загружать прошивку желательно до подключения компонентов, чтобы убедиться в том, что плата рабочая. После сборки можно прошить ещё раз, плата должна спокойно прошиться. В проектах с мощными потребителями в цепи питания платы 5V (адресная светодиодная лента, сервоприводы, моторы и проч.) необходимо подать на схему внешнее питание 5V перед подключением Arduino к компьютеру, потому что USB не обеспечит нужный ток, если например лента его потребует. Это может привести к выгоранию защитного диода на плате Arduino. Гайд по скачиванию и загрузке прошивки можно найти под спойлером на следующей строчке.

ИНСТРУКЦИЯ ПО ЗАГРУЗКЕ ПРОШИВКИ

1. Если это ваше первое знакомство с Arduino, внимательно изучите гайд для новичков и установите необходимые для загрузки прошивки программы.

2. Скачайте архив со страницы проекта. Если вы зашли с GitHub — кликните справа вверху Clone or download, затем Download ZIP. Это тот же самый архив!

3. Извлеките архив. Содержимое папки libraries перетащите в пустое место папки с библиотеками Arduino C:/Program Files (x86)/Arduino/libraries/

4. Папку с прошивкой из firmware положите по пути без русских букв . Если в папке с прошивкой несколько файлов — это вкладки, они откроются автоматически.

5. Настройте прошивку (если нужно), выберите свою плату, процессор. Подключите Arduino к компьютеру, выберите её COM порт и нажмите загрузить.

6. При возникновении ошибок или красного текста в логе обратитесь к 5-ому пункту гайда для новичков — «Разбор ошибок загрузки и компиляции».

Содержимое папок в архиве

  • libraries – библиотеки проекта. Заменить имеющиеся версии
  • firmware – прошивки для Arduino
  • schemes – схемы подключения компонентов

Как показал эксперимент, снаружи корпуса датчик температуры показывает на 0.5 градуса меньше, чем внутри! Нужно более удачно компоновать электронику, отводить и экранировать тепло от греющихся элементов…

Если дисплей показывает слишком тускло/на белом фоне На плате драйвера дисплея (к которой подключаются провода) есть крутилка контрастности, с её помощью можно подстроить контраст на нужный. Также контрастность зависит от угла взгляда на дисплей (это же LCD) и можно настроить дисплей на чёткое отображение даже под углом “дисплей на уровне пупка, смотрим сверху”. А ещё контрастность сильно зависит от питания: от 5V дисплей показывает максимально чётко и ярко, тогда как при питании от USB через Arduino напряжение будет около 4.5V (часть падает на защитном диоде по линии USB), и дисплей показывает уже не так ярко. Вывод настраивайте крутилкой при внешнем питании от 5V!

Если датчик CO2 работает некорректно (инфа от Евгения Иванова) Ну там в папке библиотеки сенсора в examples есть скетчи для калибровки. также ее можно запустить втупую замкнув на землю разъем “HD” на 7+ секунд. Само собой вот прямо на улице на морозе этим заниматься не обязательно… можно просто в бутылку набрать свежего воздуха с датчиком внутри и запечатать. калибровка проводится минимум 20 минут.. По-умолчанию датчик поставляется с включенной автокалибровкой, которая происходит каждый день, и если датчик используется в невентелируемом помещении, то эта калибровка быстро уводит значения от нормы за горизонт, потому ее нужно обязательно отключать. Документация.

Автокалибровка датчика CO2 отключена в скетче!

Если у вас не работает датчик BME280, скорее всего у него отличается адрес. В проекте используется библиотека Adafruit_BME280, у которой нет отдельной функции смены адреса, поэтому адрес задаётся вручную в файле библиотеки Adafruit_BME280.h почти в самом начале файла (лежит в папке Adafruit_BME280 в вашей папке библиотек, вы должны были её туда установить), у моего модуля был адрес 0x76. Как узнать адрес своего модуля BME280? Есть специальный скетч, называется i2c scanner. Его можно нагуглить, можно скачать с моего FTP. Прошиваете данный скетч, открываете порт и получаете список адресов подключенных к шине i2c устройств. Чтобы остальные модули вам не мешали – можно их отключить и оставить только BME280. Полученный адрес указываем в библиотеке, сохраняем файл и загружаем прошивку метео-часов. Всё!

Если отстают часы, проблема скорее всего в питании схемы. Если при смене блока питания на более качественный проблема не уходит, повесьте конденсатор по питанию RTC модуля (прям на плату на VCC и GND паять): обязательно керамический, 0.1-1 мкФ (маркировка 103 или 104, смотрите таблицу маркировок). Также можно поставить электролит (6.3V, 47-100 мкФ)

Шаг 4: Код Ардуино

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Теперь, чтобы определить движение и записать 1 (или 0, если движения нет) в БД, на нужно запрограммировать Ардуино. Я написал код таким образом, что если движение было, то Ардуино не будет делать повторную проверку в течение следующих 5 минут. Затем Ардуино проверит движение на следующий 5-минутный интервал, но пока без записи 0 в БД.

Затем, если движения не будет, он отправит 0 в БД. Для более подробного изучения этой части, пройдите по этой ссылке.

Популярные статьи  Обычные конфеты в необычной упаковке: делаем подарок учителю своими руками

Мой код для Ардуино можно найти здесь. Он спроектирован не саммым эффективным образом, но работает.

Для работы кода нужно внести в него некоторые изменения:

  1. В строках 6 и 7 введите настройки WiFi
  2. В строке 8 введите адрест хоста, где вы разместили файлы .php (например: example.com). Не нужно писать http, не ставьте никаких слэшей и т.д.
  3. В строке 22 вы определяете количество секунд, через которые будут производится измерения.
  4. В строке 98 вы определяете путь к файлу add_data.php file. Если он располагается в «example.com/arduino/add_data.php», то вы пишете: «/arduino/add_data.php»

Наиболее Распространенная Схема контрольки на светодиодах

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Схема контрольки на светодиодах самая наипростейшая. Это даже схемой назвать нельзя — игрушка для детей.

Используем два сетодиода разноцветных — зеленый и красный. Красный — плюс, зеленый — минус. Резистор можно поставить до 5 кОм — защита от того, чтобы не сжечь светодиоды.

Имеется кнопка, при нажатии которой можно с точностью определять слаботочный это провод (т.е. можно ли к нему подключаться или нет).

При обычном прикосновении щупа к плюсовому проводу — загорится красный светодиод. Если плюс «сильный», то будет гореть еще и лампочка. И в том и в другом случае — необходимо нажимать кнопку.

Если горит зеленый светодиод — то мы нашли минус.

Схемы подключения

У датчиков движения с одним встроенным контактом обычно имеется три клеммы. Две из них служат для питания ДД. На одну из клемм подается фаза. Фазная клемма помечается символом L. На другую клемму подается ноль (N). Третий вывод – выход фазы с контакта. В некоторых случаях замыкающий контакт имеет два вывода. Тогда, для подключения фазы с контакту, между одной из клемм контакта и клеммой L устанавливают перемычку.

Схема будет работать следующим образом. При появлении человека в зоне обнаружения, датчик движения сработает, замкнется встроенный контакт и подаст фазу на лампу. Лампа будет гореть, пока будет продолжаться движение или не закончится выдержка времени. После окончания временной выдержки контакт разомкнется. Для того чтобы не совершать ненужных движений чтобы зажечь лампу вновь, можно установить выключатель, с помощью которого можно зашунтировать (замкнуть) встроенный контакт датчика движения. С помощью выключателя можно будет включить свет, чтобы он горел постоянно.

Часто с помощью датчиков движения управляют светильниками в местах, где имеется естественное освещение в светлое время суток. В таких случаях целесообразно применять ДД со встроенным датчиком освещенности, который днем блокирует работу аппарата.

Параллельная работа двух датчиков

Случается, что зона обнаружения одного датчика движения не покрывает всего помещения, где может появиться человек. Такая ситуация характерна, например для длинного коридора, когда свет должен загореться независимо от того, в каком конце коридора появится человек. В этом случае можно использовать два датчика движения работающие параллельно. Нетрудно заметить, что данная схема, с электрической точки зрения, мало отличается от схемы с выключателем.

Как сделать дешёвый датчик изгиба для Arduino своими руками! Параллельная работа двух датчиков движения.

Как и в схеме с выключателем оба контакта датчиков движения включены параллельно и взаимно шунтируют друг друга. То есть, лампа включится при срабатывании любого из двух датчиков. Данная схема масштабируема. Это означает, что можно бесконечно наращивать количество датчиков движения работающих параллельно. Увеличение количества датчиков может потребоваться, например, для освещения лестниц имеющих несколько пролетов.

Важно! Используя подобные схемы нужно обязательно помнить, что все датчики движения должны питаться от одной и той же фазы. В случае несоблюдения этого правила, при одновременном срабатывании двух датчиков, может произойти короткое замыкание.. Иногда с помощью датчиков движения приходится управлять более мощными нагрузками, чем одна или несколько лампочек

Тогда в силу вступает ограничение по максимально допустимому току встроенного контакта. Предельно допустимый коммутируемый ток можно узнать из паспорта изделия. Часто производители указывают этот ток на корпусе прибора. Если ток потребления нагрузки превышает «возможности» датчика движения, тогда нагрузку включают с помощью магнитного пускателя, а управление пускателем осуществляют с помощью датчика движения

Иногда с помощью датчиков движения приходится управлять более мощными нагрузками, чем одна или несколько лампочек. Тогда в силу вступает ограничение по максимально допустимому току встроенного контакта. Предельно допустимый коммутируемый ток можно узнать из паспорта изделия. Часто производители указывают этот ток на корпусе прибора. Если ток потребления нагрузки превышает «возможности» датчика движения, тогда нагрузку включают с помощью магнитного пускателя, а управление пускателем осуществляют с помощью датчика движения.

Как сделать дешёвый датчик изгиба для Arduino своими руками! Как подключить датчик движения.

Часто датчики движения могут находиться на значительном расстоянии от управляемой нагрузки. При этом приходится прокладывать довольно длинные кабельные трассы. Это может быть сопряжено со значительными материальными затратами, а, иногда, и просто невозможно. Для этих случаев производители предлагают датчики движения со встроенным радиоканалом (беспроводные ДД). В последнее время подобные аппараты находят широкое применение в системах «умного дома».

Печать корпуса и сборка

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Возьмите скользящие контакты и поместите его в верхнюю часть корпуса. Убедитесь, что вращающаяся часть кольца находится на верхней стороне корпуса, чтобы она вращалась одновременно с диском. Теперь установите шаговый мотор, который фиксируется к корпусу двумя 3M винтами и гайкам. Крышка готова:

Как сделать дешёвый датчик изгиба для Arduino своими руками!Как сделать дешёвый датчик изгиба для Arduino своими руками!

Вплавьте две резьбовые вставки в корпус вращающегося диска, на котором будет закрепляется датчик нужно вплавить вставные гайки. Для этого можно использовать паяльник:

Как сделать дешёвый датчик изгиба для Arduino своими руками!Как сделать дешёвый датчик изгиба для Arduino своими руками!Как сделать дешёвый датчик изгиба для Arduino своими руками!

Теперь пропускаем провода от скользящих контактов через отверстие вращающегося диска:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

После чего берём датчик и припаиваем к нему 4 провода (+5V, GND, SCL и SDA) от скользящих контактов:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

С помощью двух болтов М3 закрепляем модуль дальномера на корпусе вращающегося диска:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Если у вас модуль с другим расстоянием между крепёжными отверстиями, модуль можно закрепить только одним болтом. Если крепёжных отверстий совсем нет, модуль можно приклеить (двустороння липкая лента, термоклеем с помощью клеевого пистолета и т.д.).

Когда датчик будет закреплён, вращающийся диск надевается на подшипник:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

На вращающуюся крышку приклеивается неодимовый магнит, а в верхнюю крышку вставляется датчик холла:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Магнит служит для того, чтобы на него на него срабатывал датчик Холла и в этот момент в коде происходит установка переменной «угол» в некоторое значение. Если магнит по размерам позволяет наклеить его по центру под датчиком, это будет самый лучший вариант, т.к. при срабатывании переменной «угол» нужно будет присвоить значение 0. Если нет, магнит можно наклеить возле датчика. Тогда переменной «угол» нужно будет присвоить не 0, а соответствующее значение (на какой угол относительно магнита повёрнут датчик). Если магнит находится с противоположной стороны, нужно присвоить 180. Если угол составляет 20 градусам (на фото выше угол немного больше):

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Тогда переменной «угол» нужно присвоить 20 и т.д.

На макетную плату по схеме, приведенной ранее, запаиваем конденсатор, драйвер мотора, 10K резистор, датчик Холла, провода от Arduino и стабилизатора питания:

Как сделать дешёвый датчик изгиба для Arduino своими руками!Как сделать дешёвый датчик изгиба для Arduino своими руками!

Всё припаяно, теперь закрепляем (двусторонней липкой лентой, клеем, термоклеем и т.д.) Arduino Nano внутри корпуса и наш лидар почти готов:

Как сделать дешёвый датчик изгиба для Arduino своими руками!

Осталось вплавить в нижнюю крышку корпуса три вставные гайки, затем прикрутить крышку корпуса, надеть на шкив пасик и можно переходить к программированию и экспериментам.

Рейтинг
( Пока оценок нет )
Денис Серебряков/ автор статьи
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: