- Концепции последователя линии
- Описание схемы
- Работа робота-следящего за линией с использованием Arduino
- Принципиальная электрическая схема
- Пояснение к программе
- Необходимые компоненты
Робот-последователь линии - очень простой робот, который следует линии, будь то черная или белая линия. Этот тип роботов очень прост в сборке и часто является первым выбором для новичков, которые только начинают заниматься робототехникой. По сути, существует два типа роботов-следящих за линией: один - следящий за черной линией, следующий за черной линией, а второй - следящий за белой линией, следующий за белой линией. Следование по линии действительно ощущает линию и следует за ней. Несмотря на то, что идея кажется простой, роботы, похожие на это, практически используются во многих приложениях, таких как роботы для управления производственными цехами или складские роботы.
Концепции последователя линии
Со светом связана концепция работы последователя линии. Мы используем здесь поведение света на черной и белой поверхностях. Когда свет падает на белую поверхность, он почти полностью отражается, а в случае черной поверхности свет полностью поглощается. Такое поведение света используется при создании робота-следящего за линией.
В этом роботе-повторителе линии на базе Arduino мы использовали ИК-передатчики и ИК-приемники, также называемые фотодиодами. Они используются для отправки и получения света. ИК передает инфракрасный свет. Когда инфракрасные лучи падают на белую поверхность, они отражаются и улавливаются фотодиодами, которые генерируют некоторые изменения напряжения. Когда ИК-свет падает на черную поверхность, свет поглощается черной поверхностью, и лучи не отражаются обратно, поэтому фотодиод не получает свет или лучи. Здесь, в этом роботе-повторителе линии Arduino, когда датчик обнаруживает белую поверхность, Arduino получает 1 на входе, а когда обнаруживает черную линию, Arduino получает 0 на входе.
Поскольку робот-последователь Line - интересный проект для начинающих, мы также создали его с использованием других плат для разработки, отличных от Arduino, вы также можете проверить их, используя приведенную ниже ссылку, если заинтересованы.
- Робот следящего за линией с использованием микроконтроллера 8051
- Робот-последователь линии с использованием Raspberry Pi
- Последователь линии на базе Texas MSP430 Launchpad
- Простой повторитель линии с использованием микроконтроллера PIC
- Повторитель линии с использованием микроконтроллера AVR ATmega16
Описание схемы
Робот-последователь линии Arduino в целом можно разделить на 3 секции: секция датчиков, секция управления и секция драйверов.
Секция датчика:
В этом разделе находятся ИК-диоды, потенциометр, компаратор (операционный усилитель) и светодиоды. Потенциометр используется для установки опорного напряжения на одном конце и ИК - датчиках компаратора используется для определения линии и обеспечивает изменение напряжения на втором терминале компаратора. Затем компаратор сравнивает оба напряжения и генерирует цифровой сигнал на выходе. В этой цепи повторителя линии мы использовали два компаратора для двух датчиков. LM 358 используется в качестве компаратора. LM358 имеет два встроенных малошумящих операционных усилителя.
Секция управления:
Arduino Pro Mini используется для управления всем процессом робота-следящего за линией. Выходы компараторов подключены к цифровым контактам 2 и 3 Arduino. Arduino считывает эти сигналы и отправляет команды в схему драйвера ведомому приводу.
Раздел драйверов:
Секция привода состоит из привода двигателя и двух двигателей постоянного тока. Драйвер двигателя используется для управления двигателями, потому что Arduino не подает на двигатель достаточного напряжения и тока. Поэтому мы добавляем схему драйвера двигателя, чтобы получить достаточное напряжение и ток для двигателя. Arduino отправляет команды этому драйверу двигателя, а затем запускает двигатели.
Работа робота-следящего за линией с использованием Arduino
Создание робота-последователя линии с использованием Arduino интересно. Робот-следящий за линией обнаруживает черную линию с помощью датчика и затем отправляет сигнал в Arduino. Затем Arduino запускает двигатель в соответствии с выходными данными датчиков.
В этом проекте мы используем два модуля ИК-датчиков, а именно левый датчик и правый датчик. Когда левый и правый сенсоры обнаруживают белый цвет, робот движется вперед.
Если левый датчик выходит на черную линию, робот поворачивает налево.
Если правый датчик обнаруживает черную линию, робот поворачивается вправо, пока оба датчика не коснутся белой поверхности. Когда появляется белая поверхность, робот снова начинает двигаться вперед.
Если оба датчика попадают на черную линию, робот останавливается.
Принципиальная электрическая схема
Полная схема для Arduino линии повторителя робота показана на изображении выше. Как вы можете видеть, выход компараторов напрямую подключен к цифровым контактам 2 и 3 Arduino. А входные контакты 2, 7, 10 и 15 драйвера двигателя подключены к цифровым контактам 4, 5, 6 и 7 Arduino соответственно. И один двигатель подключен к выходному контакту драйверов двигателей 3 и 6, а другой двигатель подключен к контактам 11 и 14.
Пояснение к программе
В программе, прежде всего, мы определили входной и выходной штырьки, а затем в цикле мы проверяем входы и отправляем выходные данные в соответствии с входами на выходной контакт для приводного двигателя. Для проверки входного контакта мы использовали операторы «если». Полный код робота-последователя линии можно найти внизу этой страницы.
В этой строке после робота есть четыре условия, которые мы читаем с помощью Arduino. Мы использовали два датчика, а именно левый датчик и правый датчик.
Ввод |
Вывод |
Движение Робота |
||||
Левый датчик |
Правый датчик |
Левый мотор |
Правый мотор |
|||
LS |
RS |
LM1 |
LM2 |
RM1 |
RM2 |
|
0 |
0 |
0 |
0 |
0 |
0 |
Стоп |
0 |
1 |
1 |
0 |
0 |
0 |
Поверни направо |
1 |
0 |
0 |
0 |
1 |
0 |
Повернуть налево |
1 |
1 |
1 |
0 |
1 |
0 |
Вперед |
Мы пишем код последователя линии Arduino в соответствии с условиями, указанными в таблице выше.
Необходимые компоненты
Ардуино
В нашем проекте мы использовали микроконтроллер для управления всем процессом системы ARDUINO. Arduino - это оборудование с открытым исходным кодом, которое очень полезно для разработки проектов. На рынке доступно множество типов arduino, таких как Arduino UNO, arduino mega, arduino pro mini, Lilypad и т. Д. Здесь мы использовали arduino pro mini в этом проекте, поскольку arduino pro mini маленький и поэтому совместим с макетом. Чтобы записать код Arduino робота-повторителя линии, мы использовали записывающее устройство FTDI.
Драйвер двигателя L293D
L293D - это ИС драйвера двигателя, которая имеет два канала для управления двумя двигателями. L293D имеет две встроенные пары транзисторов Дарлингтона для усиления тока и отдельный вывод питания для подачи внешнего питания на двигатели.
ИК-модуль:
ИК-модуль представляет собой схему датчика, которая состоит из пары ИК-светодиод / фотодиод, потенциометра, LM358, резисторов и светодиода. ИК-датчик передает инфракрасный свет, а фотодиод принимает инфракрасный свет.
Источник питания
Я добавил регулятор напряжения, чтобы получить 5 вольт для Arduino, компаратора и драйвера двигателя. А для питания цепи используется 9-вольтовая батарея.