Акции
Блог
О 3DiY
  • О компании
  • Реквизиты
  • Партнеры
  • Клиенты
  • Вакансии
Оплата
Доставка
Гос. закупки
Товары под заказ
ВК Видео
Отзывы
Услуги
  • 3D печать
    • 3D печать пластиком FDM/FFF
    • 3D печать фотополимером
Контакты
  • Как до нас добраться
    8 (800) 500-45-93
    8 (800) 500-45-93отдел продаж Россия
    8 (495) 565-35-93отдел продаж Москва
    E-mail

    info@3d-diy.ru — отдел продаж

    support@3d-diy.ru — тех. поддержка

    Адрес
    Москва, Павловская улица, 27с7
    м. Тульская
    Режим работы
    пн – пт 11:00—19:00
    8.05 – 11.05 не работаем
    3DIY
    3D принтеры
    Материалы для 3D печати
    Комплектующие 3D принтера
    Arduino и робототехника
    Комплектующие ЧПУ станка
    Инструменты
    Запчасти для 3D принтеров по брендам
    Товары снятые с продажи
    • 3D принтеры
      • Печать пластиком (FDM/FFF)
        Печать пластиком (FDM/FFF)
      • Печать фотополимером (SLA/DLP/LCD)
        Печать фотополимером (SLA/DLP/LCD)
      • Печать воском (MJP)
        Печать воском (MJP)
      • Для дома
        Для дома
      • Для бизнеса
        Для бизнеса
      • Для производства
        Для производства
      • Наборы для сборки
        Наборы для сборки
      • Промышленные
        Промышленные
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Материалы для 3D печати
      • Пластики
        Пластики
        • ABS
        • PLA
        • PETG
        • HIPS
        • PVA
        • FLEX (TPU)
        • Nylon/PA (Нейлон)
        • PC (Поликарбонат)
        • PEEK
        • POM (Полиацеталь)
        • PP (Полипропилен)
        • Резина
        • Стеклонаполненные
        • Термочувствительные
        • Угленаполненные
        • SBS
        • Светящиеся
        • Металлические
        • Спец. пластик
        • Пластик для 3D ручек
      • Фотополимеры
        Фотополимеры
        • Стандартные
        • ABS-типа
        • Гибкие
        • Водосмываемые
        • Выжигаемые
        • Инженерные
        • Стоматологические
        • Для хобби
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Комплектующие 3D принтера
      • Электроника
        Электроника
        • Платы управления
        • Шаговые двигатели (ШД)
        • Драйверы ШД 3D принтеров
        • Драйверы шаговых двигателей ЧПУ
        • Дисплеи
        • Датчики и модули
        • Блоки питания
        • Реле
        • Концевые выключатели
        • Вентиляторы      
          • Вентиляторы осевые
          • Вентиляторы радиальные (улитки)
          • Решетки и фильтры для вентиляторов
        • Провода, кабели и разъемы
      • Механика
        Механика
        • Зубчатые шкивы
        • Зубчатые ремни
        • Трапецеидальные винт-гайки
        • Шарико-винтовые передачи (ШВП)      
          • Гайки ШВП
          • Модули крепления гаек ШВП
          • Обратотанные ШВП
          • Опоры ШВП
        • Соединительные муфты
        • Ролики для зубчатых ремней
        • Цилиндрические направляющие
        • Рельсовые направляющие      
          • Профильные направляющие HIWIN
          • Профильные направляющие КИТАЙ
        • Держатели вала
        • Корпусные детали      
          • Корпуса
          • Апгрейды
          • Комплектующие для корпусов
        • Запчасти OpenBuilds
        • Подшипники качения
        • Пружины
      • Нагревательные столы и сопутствующие
        Нагревательные столы и сопутствующие
        • Нагревательные платформы
        • PEI пластины
        • Стекла и Зеркала
        • Теплоизоляция
        • Основания для столов
        • Силиконовые проставки (пружины)
        • Термисторы
        • Зажимы-фиксаторы
        • Пружины
      • Экструдеры
        Экструдеры
        • Экструдеры и механизмы подачи
        • Хотэнды
        • Сопла
        • Термобарьеры
        • Термисторы
        • Нагревательные блоки
        • Теплоизоляция нагревательных блоков
        • Тефлоновые трубки
        • Радиаторы
        • Нагревательные элементы
        • Шестерни
        • Фитинги
        • Сопутствующие товары
      • Сушилки для пластика
        Сушилки для пластика
      • УФ-камеры
        УФ-камеры
      • Мойки
        Мойки
      • Ультразвуковые ванны (мойки)
        Ультразвуковые ванны (мойки)
      • 3D ручки
        3D ручки
      • 3D-сканеры
        3D-сканеры
      • Расходные материалы для SLA / LCD
        Расходные материалы для SLA / LCD
      • Сопутствующие
        Сопутствующие
      • Наборы для мейкеров
        Наборы для мейкеров
      • Инструменты для 3D печатника
        Инструменты для 3D печатника
      • Постобработка
        Постобработка
      • Адгезивы
        Адгезивы
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Arduino и робототехника
      • Arduino
        Arduino
      • Raspberry Pi
        Raspberry Pi
        • Микрокомпьютеры
        • Дисплеи      
          • TFT-LCD дисплеи Raspberry Pi
          • IPS-LCD дисплеи Raspberry Pi
          • AMOLED дисплеи Raspberry Pi
        • Корпуса
        • Шилды
        • Камеры
        • Питание
        • Охлаждение
      • Обучающие наборы
        Обучающие наборы
      • Orange Pi
        Orange Pi
      • Одноплатники
        Одноплатники
      • Модули
        Модули
        • Платы расширения
        • Беспроводные модули
        • Интерфейсы
        • Релейные модули
        • Преобразователи питания
        • Лазерные модули
        • Аудио
        • Видео
        • Клавиатура
        • Драйверы моторов
        • Измерительные
        • Другие
      • Датчики
        Датчики
        • Аудио
        • Газа
        • Инфракрасные
        • Климатические
        • Жидкостные
        • Механического воздействия
        • Положения (акселерометры/компасы/гироскопы)
        • Пространства
        • Света и цвета
        • Тактильные
        • Тока и напряжения
      • Дисплеи
        Дисплеи
        • TFT-LCD дисплеи
        • STN-LCD дисплеи
        • LED дисплеи
        • OLED дисплеи
        • Дисплеи DWIN
        • E-Paper дисплеи
      • Механика
        Механика
        • Колёса
        • Коллекторные двигатели
        • Сервоприводы
        • Шаговые двигатели
        • Другие
        • Линейные актуаторы (приводы)
      • Макетные платы
        Макетные платы
      • Светодиоды
        Светодиоды
        • Светодиодные кольца
        • Светодиодные матрицы
        • Сегментные индикаторы
        • Светодиоды круглые
        • Другие
      • Провода и кабели
        Провода и кабели
      • Источники питания
        Источники питания
      • Радиодетали
        Радиодетали
        • Кварц
        • Кнопки
        • Конденсаторы
        • Резисторы
        • Транзисторы
        • Другие
        • Стабилизаторы
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Комплектующие ЧПУ станка
      • Шаговые двигатели и аксессуары
        Шаговые двигатели и аксессуары
        • NEMA 8
        • NEMA 11
        • NEMA 14
        • NEMA 17
        • NEMA 23
        • NEMA 34
        • NEMA 42
        • NEMA 52
        • Шаговые актуаторы
        • Шаговые двигатели с редуктором      
          • C планетарным редуктором
          • C цилиндрическим редуктором
        • Шаговые двигатели с тормозом
        • Круглые шаговые двигатели
        • Сопутствующие
      • Зубчатые ременные передачи
        Зубчатые ременные передачи
        • Зубчатые ремни      
          • Зубчатые ремни GT2
          • Зубчатые ремни HTD 3M
          • Зубчатые ремни HTD 5M
          • Зубчатые ремни T2.5
          • Зубчатые ремни T5
        • Зубчатые шкивы      
          • Зубчатые шкивы GT2
          • Зубчатые шкивы HTD 3M
        • Ролики
      • Шарико-винтовые передачи (ШВП)
        Шарико-винтовые передачи (ШВП)
        • Готовые ШВП, обработанные
        • Гайки ШВП
        • Опоры ШВП
        • Модули крепления гаек ШВП
        • Кронштейны-опоры ШВП
      • Трапецеидальные передачи винт-гайка
        Трапецеидальные передачи винт-гайка
        • Винты трапецеидальные
        • Гайки трапецеидальные
        • Муфты Oldham
        • Сопутствующие
      • Цилиндрические направляющие
        Цилиндрические направляющие
        • Полированные валы
        • Цилиндрические рельсы
        • Линейные подшипники
        • Модули с линейным подшипником
        • Втулки скольжения
        • Держатели вала
        • Пластиковые втулки скольжения
      • Профильные направляющие
        Профильные направляющие
        • Профильные направляющие HIWIN      
          • Каретки HIWIN
          • Рельсы HIWIN
        • Профильные направляющие      
          • Каретки
          • Рельсы
        • Роликовые направляющие
      • Муфты соединительные
        Муфты соединительные
        • Жесткие
        • Кулачковые
        • Спиральные
        • Мембрнные
        • Сильфонные
        • Пружинные
        • Гибкие
      • Электроника
        Электроника
        • Блоки питания
        • Вентиляторы электрические и аксессуары      
          • Вентиляторы осевые
          • Вентиляторы радиальные (улитки)
          • Решетки и фильтры для вентиляторов
        • Драйверы шаговых двигателей
        • Микропереключатели и концевики
        • Датчики касания инструмента
        • Кнопки и индикаторы
      • Фрезы
        Фрезы
        • Спиральные фрезы      
          • Стружка вверх
          • Стружка вниз
        • Компрессионные фрезы
        • Прямые фрезы
        • Конусные фрезы
        • Сферические фрезы
        • Фрезы рашпильные (кукуруза)
        • Цанги
        • Сопутствующие
      • Карбоновый профиль / трубки
        Карбоновый профиль / трубки
      • Пневматическое оборудование
        Пневматическое оборудование
        • Регуляторы давления, фильтры, лубрикаторы
      • Системы подачи смазки
        Системы подачи смазки
        • Автоматические смазочные насосы
        • Ручные смазочные насосы
        • Маслораспределительные аксессуары
      • Сопутствующие
        Сопутствующие
      • Шпиндели и сопутствующие
        Шпиндели и сопутствующие
        • Шпиндели воздушного охлаждения
        • Шпиндели жидкостного охлаждения
        • Частотные преобразователи
        • Крепления для шпинделей
        • Системы охлаждения шпинделей
        • Подведение СОЖ
        • Прижимы для шпинделей
        • Распылители масляного тумана
        • Щетка-насадка для шпинделя
        • Сопутствующие для шпинделей
      • Механика
        Механика
        • Кабель-каналы гибкие
        • Подшипники качения
        • Подшипниковые узлы
      • Конструкционный профиль
        Конструкционный профиль
        • Сухари пазовые
        • Т-болты
        • Т-гайки
        • Серия 15      
          • Анодированный
          • Без покрытия
        • Серия 20      
          • Анодированный
          • Без покрытия
        • Серия 20 (V-паз)      
          • Анодированный
          • Без покрытия
        • Серия 30      
          • Анодированный
          • Без покрытия
        • Серия 40      
          • Анодированный
          • Без покрытия
        • Серия 45      
          • Анодированный
          • Без покрытия
        • Серия 50      
          • Анодированный
          • Без покрытия
      • Комплектующие OpenBuilds
        Комплектующие OpenBuilds
        • Ролики OpenBuilds
      • Лазерные станки
        Лазерные станки
      • Лазерная резка и аксессуары
        Лазерная резка и аксессуары
        • Блоки розжига
        • Воздушные компрессоры
        • Датчики
        • Крепление лазерной трубки
        • Лазерные головки и держатели зеркал
        • Полупроводниковые лазерные модули
        • Системы охлаждения
        • Системы управления (Контроллеры)      
          • Контроллеры RuiDa
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Инструменты
      • Зачистка и обрезка кабеля
        Зачистка и обрезка кабеля
      • Измерительный инструмент
        Измерительный инструмент
        • Мультиметры
      • Кабель и провода
        Кабель и провода
        • Акустический кабель
        • Высоковольтный кабель
      • Клеевые пистолеты (термопистолеты)
        Клеевые пистолеты (термопистолеты)
      • Напильники и надфили
        Напильники и надфили
      • Обжимной инструмент
        Обжимной инструмент
      • Отвертки
        Отвертки
      • Паяльное оборудование
        Паяльное оборудование
        • Наборы для паяльных работ
        • Отсосы припоя
        • Паяльные принадлежности
        • Паяльные станции
        • Припой
        • Электрические паяльники
      • Пинцеты
        Пинцеты
      • Расходные материалы
        Расходные материалы
        • Изолента
        • Клеевые стержни
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Запчасти для 3D принтеров по брендам
      • 3DIY printers
        3DIY printers
        • Bizon 3
        • STRATEX 350
        • STRATEX 500
        • REX 6K Mono
        • P3 Steel 200 PRO
        • P3 Steel 300 PRO
        • P3 Steel 300 DUAL PRO
      • Bambu Lab
        Bambu Lab
        • Bambu Lab A1 mini
        • Bambu Lab A1
        • Bambu Lab P1 Series
        • Bambu Lab X1 Series
      • Creality
        Creality
        • Creality K1
        • Creality K1 MAX
        • Creality K1C
        • Creality K2 plus
      • Flashforge
        Flashforge
        • Adventurer 5M / 5M Pro
      • Qidi
        Qidi
        • Qidi Tech X-Plus 3
        • Qidi Tech X-Max 3
        • QIDI Plus 4
        • Qidi Q1 Pro
      Phrozen
      FlyingBear
      QIDI
      CreatBot
      FlashForge
      Bambu Lab
      ERYONE
      Elegoo
      eSUN
      Creality
      BIGTREETECH
      Anycubic
    • Товары снятые с продажи
        Phrozen
        FlyingBear
        QIDI
        CreatBot
        FlashForge
        Bambu Lab
        ERYONE
        Elegoo
        eSUN
        Creality
        BIGTREETECH
        Anycubic
      Войти
      0Избранное
      0Корзина
      3D принтерыПластик для 3D принтераФотополимерыКомплектующие 3DКомплектующие ЧПУРобототехникаЗапчасти 3D принтеров по брендам
      3DIY
      Войти
      0Избранное
      0Корзина
      3DIY
      Телефоны
      8 (800) 500-45-93отдел продаж Россия
      8 (495) 565-35-93отдел продаж Москва
      E-mail

      info@3d-diy.ru — отдел продаж

      support@3d-diy.ru — тех. поддержка

      Адрес
      Москва, Павловская улица, 27с7
      м. Тульская
      Режим работы
      пн – пт 11:00—19:00
      8.05 – 11.05 не работаем
      0
      0
      • Кабинет
      • 0Избранное
      • 0Корзина
      • Бренды
      • Акции
      • Услуги
        • Услуги
        • 3D печать
          • 3D печать
          • 3D печать пластиком FDM/FFF
          • 3D печать фотополимером
      • Компания
        • Компания
        • О компании
        • Реквизиты
        • Партнеры
        • Клиенты
        • Вакансии
      • Блог
      • Информация
        • Информация
        • Гарантия на товар
        • Возврат товара
        • Политика конфиденциальности
        • Договор-оферта
        • FAQ
      • Контакты
        • Контакты
        • Как до нас добраться
      8 (800) 500-45-93отдел продаж Россия
      • Телефоны
      • 8 (800) 500-45-93 отдел продаж Россия
      • 8 (495) 565-35-93 отдел продаж Москва
      • info@3d-diy.ru — отдел продаж

        support@3d-diy.ru — тех. поддержка

      • Москва, Павловская улица, 27с7
        м. Тульская
      • пн – пт 11:00—19:00
        8.05 – 11.05 не работаем
      Главная
      Блог
      Датчики
      Датчик линии аналоговый

      Датчик линии аналоговый

      Датчик линии аналоговый
      Датчики

      Содержание

      • Обзор
      • Технические характеристики
      • Подключение к Arduino
      • Пример использования
      • Часто задаваемые вопросы


      Обзор Датчик линии/препятствия KY-033

      Датчик линии – это оптический модуль, предназначенный для обнаружения препятствий в виде белых или чёрных линий. Основным его элементом является оптопара TCRT5000, состоящая из инфракрасного светодиода и фототранзистора. Внешний вид датчика показан на рисунке №1.

      datchik-linii-prepjatstvija-01.jpg

      Рисунок №1 – внешний вид датчика линии/препятствия.

      Согласно документации, инфракрасный диод излучает свет с длиной волны 950nm, что позволяет достоверно определять препятствия на расстоянии от 1мм до 25мм. Также в состав модуля входят компаратор, подстроечный резистор и контрольный светодиод. Подстроечным резистором выбирается порог срабатывания датчика на разный оттенок чёрного цвета. При максимальном сопротивлении датчик сработает на сером оттенке, а при минимальном сопротивлении – только на чёрном. Факт срабатывания сопровождается загоранием контрольного светодиода и подачей логического нуля на сигнальный вывод датчика. Следует отметить, что для удобства монтажа, по обе стороны оптического элемента расположены два крепёжных отверстия. Это позволяет более точно позиционировать датчик или группу датчиков на необходимом расстоянии от препятствия. Для исключения взаимного влияния светодиода и фототранзистора они конструктивно разделены небольшой перегородкой.

      Что касается принципа работы, то он очень прост. При подаче питания на модуль, инфракрасный светодиод начинает излучать свет, который отражаясь от белой поверхности попадает на фототранзистор. В таком режиме на выводе OUT (SIGNAL) будет установлена логическая единица. Как только в зону видимости датчика попадает чёрный объект, световой поток, поглощаясь этим самым объектом, перестаёт доходить до фототранзистора и компаратор переключает вывод OUT (SIGNAL) в логический ноль. Более наглядно этот процесс показан на рисунке №2.

      datchik-linii-prepjatstvija-02.jpg

      Рисунок №2 – логика работы датчика линии 

      При проектировании устройств с использованием датчика линии, необходимо чётко следить за границами приближения/удаления модуля от исследуемой поверхности. Если фотоэлемент будет слишком приближен, то перегородка не даст пройти световому потоку от ИК-диода к фототранзистору, даже при самой белой поверхности. Та же ситуация произойдёт и при чрезмерном удалении фотоэлемента, так как весь световой поток попросту рассеется в воздушной среде не дойдя до объекта-отражателя.


      Технические характеристики

      Из основных технических характеристик можно выделить следующие:

      • Расстояние уверенного определения препятствия: 1-25 мм;
      • Диапазон рабочего напряжения питания: 3,3 – 5 В;
      • Тип используемого ИК датчика: TCRT5000;
      • Длина волны излучения: 950nm;
      • Тип используемого компаратора: LM393;
      • Максимальная нагрузка на выход компаратора: 15 мА;
      • Физические размеры модуля: 40х11х11 мм.

      Подключение к Arduino

      В своём составе, датчик линии имеет всего 3 выхода (VCC, GND и S/OUT).  Выводы VCC и GND предназначены для подачи питания на модуль. Вывод S (OUT) служит для регистрации срабатываний. Ввиду того, что датчик способен выдавать только логические «0» и «1», вывод S (OUT) можно цеплять на любой цифровой пин Arduino. На рисунке №3 изображена схема подключения датчика у которого сигнальный выход  идёт на пин D2 Arduino.

      datchik-linii-prepjatstvija-03.jpg

      Рисунок №3 – схема подключения датчика линии к Arduino UNO 

      Работа с датчиком или группой датчиков на программном уровне сводится к простейшей обработке состояний цифровых входов и не должна вызывать сложностей даже у начинающего программиста. Ниже приведён скетч с комментариями, позволяющий отслеживать моменты срабатывания одного датчика согласно схемы на рисунке №3.

       // Макроопределение для подключения датчика линии к пину №2 Arduino #define PIN_SENSOR 2 void setup() { // Инициализируем работу с серийным портом для вывода отладочной информации Serial.begin(9600); // Настраиваем на вход пин, к которому подключен датчик линии. // Здесь нет необходимости включать внутреннюю подтяжку пина к VCC, т.к. // модуль сам заботится о формировании логической "1" при отсутствии цели pinMode(PIN_SENSOR, INPUT); } void loop() { // Контролируем датчик с периодичностью около 200мс if(digitalRead(PIN_SENSOR)) { // Датчик не срабатывает Serial.println("LIGHT"); } else { // Датчик срабатывает Serial.println("BLACK"); } delay(200); } 

      В результате работы программы, при наличии чёрной линии в области видимости фотоэлемента,  в окно терминала будет постоянно выводиться надпись BLACK, а при её отсутствии - LIGHT.


      Пример использования

      Одной из главных отраслей, где используется датчик линии является робототехника. В этой сфере есть направление, когда мобильный робот должен следовать по определённой траектории. Даже устраиваются целые соревнования на лучший алгоритм и скорость прохождения маршрута. В таких проектах, как правило, используется не один, а группа датчиков, с помощью которых робот определяет границы маршрута. Помимо роботов для соревнований, подобные датчики имеют и бытовые роботы-пылесосы. На рисунке №4 показан робот, оснащённый группой из 8 датчиков линии.

      datchik-linii-prepjatstvija-04.jpg

      Рисунок №4 – роботизированная платформа с 8 датчиками линии

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

      Чтобы закрепить знакомство с датчиком KY-033, создадим небольшой проект станка для намотки катушек индуктивности. Идея заключается в следующем. С помощью стандартного терминала серийного порта, мы вводим нужное количество витков проектируемой катушки. Палата Arduino, обрабатывает поступившие данные и даёт команду на вращение мотора и соответственно привода с закреплённым сердечником. Датчик линии будет отсчитывать количество намотанных витков по специально нанесённой метке на вращающуюся часть привода. Если количество витков будет равно заданному в терминале – мотор остановится с выводом соответствующего сообщения. На рисунке №5 схематически отражена идея проекта.

      datchik-linii-prepjatstvija-05.jpg

      Рисунок №5 – структурная схема проекта намоточного станка 

      Как видно из вышеприведенного рисунка, оптический элемент датчика линии располагается под контролируемой зоной, окрашенной в белый цвет. На эту зону в одном единственном месте нанесена чёрная метка, которая будет фиксироваться датчиком при каждом очередном обороте вала. Arduino будет следить за этим процессом и отключать двигатель по достижению конца счёта. Со структурой проекта разобрались – перейдём к схемному и аппаратному решению.

      В роли центральной платы управления выберем Arduino Uno. Крутить привод с держателем сердечника будет 12-вольтовый двигатель постоянного тока со встроенным редуктором. С датчиком линии мы уже знакомы – остаётся силовая управляющая часть.

      Дело в том, что питать мотор напрямую от платы Arduino мы не можем, так как у последней просто не хватит мощности, поэтому управление двигателем необходимо осуществлять либо через реле, либо через транзистор. Выбираем полевой N-канальный транзистор IRL540N, управляемый логическим уровнем, как наиболее подходящее решение для данного проекта. На рисунке №6 изображена схема подключения всех составляющих элементов проекта.

      datchik-linii-prepjatstvija-06.jpg

      Рисунок №6 – электрическая схема намоточного станка

      Диод 1N4007, используемый в схеме, защищает полевой транзистор от пробоя высоким напряжением самоиндукции, которое возникает во время размыкания индуктивной нагрузки, т.е. двигателя. Резистор 220 Ом ограничивает ток микроконтроллерного выхода, а резистор 100к разряжает затвор, гарантировано отключая двигатель при логическом нуле. Также особое внимание следует обратить на то, что двигатель питается от внешнего источника 12В, минус которого в обязательном порядке соединяется с минусом платы Arduino.

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

      • Фаза №1. При подаче питания программа определяет в каком состоянии находится вал мотора с отметкой. Последняя должна находиться точно над фотоэлементом датчика линии. Если это не так – мотор вращается и выставляет вал в начальное положение. С этого момента можно закреплять проволоку будущей катушки в начале сердечника.
      • Фаза №2. В терминале выводиться сообщение с запросом о вводе требуемого количества витков. После нажатия клавиши ENTER, начинается вращение двигателя.
      • Фаза №3. Программа отслеживает каждый оборот путём фиксации чёрной отметки и сравнивает с заданным до этого числом в терминале. Как только счётчик достигнет конца, пользователь получит сообщение и алгоритм повторится.

      Ниже приведёт программный код с подробными комментариями.

       #define PIN_LINE_SENSOR 2 // Пин для подключения датчика линии #define PIN_MOTOR 7 // Пин для подключения схемы управления мотором uint8_t globalState = 0; // Глобальное состояние всей системы uint8_t lineSensorPrevState = 0; // Предыдущее состояние датчика линии uint8_t lineSensorCurrentState = 0; // Текущее состояние датчика линии String inString = ""; // Строка для получения из порта кол-ва витков int turnsNumber = 0; // Кол-во необходимых витков для намотки int turnsCount = 0; // Счётчик намотанных витков void setup() { Serial.begin(9600); // Инициализируем последовательный порт pinMode(PIN_LINE_SENSOR, INPUT); // Настройка на вход пина датчика линии pinMode(PIN_MOTOR, OUTPUT); // Настройка на выход пина управления мотором digitalWrite(PIN_MOTOR, LOW); // Останавливаем мотор при подаче питания } void loop() { lineSensorCurrentState = digitalRead(PIN_LINE_SENSOR); // Опрашиваем состояние датчика if(globalState == 0) { // Устанавливаем двигатель в начальное положение // Если зафиксирована чёрная отметка - двигатель выставлен, двигаемся дальше. // Иначе включаем мотор и дожидаемся фиксации начального положения if(lineSensorCurrentState == 0) { lineSensorPrevState = lineSensorCurrentState; digitalWrite(PIN_MOTOR, LOW); Serial.println("Motor in start position"); Serial.print("Enter coil turns number: "); globalState = 1; } else digitalWrite(PIN_MOTOR, HIGH); } else if(globalState == 1) { // Ожидаем ввода количества витков пользователем if(Serial.available() > 0) { // Считываем из порта введённое значение char inChar = Serial.read(); // Читаем очередной байт inString += (char)inChar; // Склеиваем всё в оду строку if (inChar == '\n') { // Если зарегистрирован конец строки turnsNumber = inString.toInt(); // Переводим строку в числовой формат Serial.println(""); // Переходим на новую строку для удобства вывода inString = ""; // Очищаем строку приёмного буфера if(turnsNumber > 0) { // Если введённое пользователем число > 0 digitalWrite(PIN_MOTOR, HIGH); // Включаем мотор globalState = 2; // Переходим к фазе намотки } else globalState = 0; // Иначе возвращаемся в самое начало } } } else if(globalState == 2) { // Начало оборота if(lineSensorCurrentState == 1 && lineSensorPrevState == 0) { lineSensorPrevState = lineSensorCurrentState; globalState = 3; } } else if(globalState == 3) { // Конец оборота if(lineSensorCurrentState == 0 && lineSensorPrevState == 1) { lineSensorPrevState = lineSensorCurrentState; turnsCount++; // Суммируем обороты if(turnsCount == turnsNumber) { // Если кол-во витков равно заданному в терминале Serial.print("Turn number: "); Serial.println(turnsCount); Serial.println("Completed"); // Информируем об окончании намотки Serial.println("--------------------------------------"); // Очищаем счётчик витков и заданного в терминале количества turnsCount = 0; turnsNumber = 0; digitalWrite(PIN_MOTOR, LOW); // Останавливаем мотор globalState = 0; // Переходим в начальную фазу } else { // Иначе, если намотка ещё не окончена, выводим инфо в терминал о витках Serial.print("Turn number: "); Serial.println(turnsCount); globalState = 2; // Переходим в фазу начального оборота } } } } 

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

      datchik-linii-prepjatstvija-07.jpg

      Рисунок №7 – прототип намоточного станка

      Как видно из вышеприведенного рисунка, с левой стороны двигателя надето колесо с нанесённой чёрной отметкой. Фотоэлемент датчика линии направлен в сторону колеса и чётко фиксирует прохождение метки через своё поле зрения. На этом же валу справа закреплён П-образный держатель, в который вставлен предполагаемый каркас будущей катушки. Силовая часть управления мотором расположилась на макетной плате. Последовательность работы со станком следующая:

      • Включаем питание;
      • Дожидаемся, когда двигатель автоматически установится в начальное положение (чёрная отметка должна оказаться под фотоэлементом датчика линии);
      • Вставляем сердечник в держатель и фиксируем на нём один конец провода;
      • Вводим в терминале необходимое количество витков и нажимаем Enter;
      • Аккуратно придерживаем провод рукой и дожидаемся окончания намотки.

      На рисунке №8 показано окно терминала, как результат работы программы. Здесь отображено два цикла работы. Изначально задан запрос на намотку 7-ми витков и после отсчёта нужного количества оборотов, повторяется опыт для намотки 3-х витков. Конец каждого цикла обозначен словом Completed с  разделительной полосой.

      datchik-linii-prepjatstvija-08.jpg

      Рисунок №8 – результат работы программы намоточного станка


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

      1. В продаже помимо цифровых датчиков линии существую аналоговые. В чём их отличия друг от друга?

      Аналоговый датчик линии способен различать оттенки серого цвета, в то время как цифровой только 2 состояния, установленные подстроечным резистором. Аналоговый датчик линии подключается к аналоговому входу Arduino, а его состояние опрашивается функцией analogRead(). Цифровой датчик опрашивается функцией digitalRead() и может быть подключен к любому цифровому пину Arduino.

        2. Как использовать датчик линии в качестве энкодера?

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

          3. Какое минимальное количество датчиков линии необходимо для построения простейшего робота, следующего по линии?

          Чтобы заставить робота двигаться по линии достаточно 2-х датчиков. Они устанавливаются друг от друга на расстоянии, равном ширине полосы маршрута. Программа постоянно опрашивает состояние датчиков линии и в зависимости от показаний выдаёт питание на двигатели правого или левого колеса.

            Товары из статьи

            Быстрый просмотр
            Датчик линии аналоговыйimageimage
            350 ₽
            455 ₽
            -23%
            Датчик линии аналоговый
            0
            0
            В наличии

            Это интересно

            Датчик уровня звука
            Датчики
            Датчик уровня звука
            Датчик влажности и температуры DHT11
            Датчики
            Датчик влажности и температуры DHT11
            Датчик вибрации
            Датчики
            Датчик вибрации
            Датчик угарного газа MQ7
            Датчики
            Датчик угарного газа MQ7
            Ультразвуковой дальномер HC-SR04
            Датчики
            Ультразвуковой дальномер HC-SR04
            Инфракрасный датчик расстояния
            Датчики
            Инфракрасный датчик расстояния
            • Комментарии
            Загрузка комментариев...
            Назад к списку
            • Все публикации248
              • 3D принтеры38
              • 3D печать57
              • ЧПУ10
              • Датчики27
              • Модули38
              • Arduino механика6
              • Arduino платы8
              • Дисплеи6
              • Кейсы1
              • Компоненты13
              • Мировые новости35
              • Проекты7
              • Сопутствующие2
            Связаться с нами
            8 (800) 500-45-93
            8 (800) 500-45-93отдел продаж Россия
            8 (495) 565-35-93отдел продаж Москва
            E-mail

            info@3d-diy.ru — отдел продаж

            support@3d-diy.ru — тех. поддержка

            Адрес
            Москва, Павловская улица, 27с7
            м. Тульская
            Режим работы
            пн – пт 11:00—19:00
            8.05 – 11.05 не работаем

            info@3d-diy.ru — отдел продаж

            support@3d-diy.ru — тех. поддержка

            Москва, Павловская улица, 27с7
            м. Тульская
            Магазин
            Бренды
            Акции
            Каталог
            Услуги
            Компания
            О компании
            Реквизиты
            Партнеры
            Клиенты
            Вакансии
            Информация
            Гарантия на товар
            Возврат товара
            Политика конфиденциальности
            Договор-оферта
            FAQ
            Помощь
            Условия оплаты
            Условия доставки
            Товары под заказ
            Гос. закупки
            Как сделать заказ
            Вопрос-ответ
            2013 - 2025 © 3DiY (Тридиай) - интернет-магазин комплектующих для 3D принтеров, ЧПУ станков и робототехники
            Конфиденциальность
            Оферта
            ГлавнаяКаталог0Корзина0ИзбранныеКабинет
            Уважаемые клиенты
            8-9 мая - выходные
            С праздником!