Arduino k line: Чтение кан-штины автомобиля по obd2 протоколу / DIYtimes

Содержание

Чтение кан-штины автомобиля по obd2 протоколу / DIYtimes

Валялся у меня сгоревший ELM327 адаптер для k-line на микросхеме PIC18F25K80. Поковырявшись с ним некоторое время понял, что ничего полезного не сделаю. Выбросил всю внутрянку, купил чип L9637D. И понеслось…

Напрямую arduino соединить с кан-шиной нельзя. Нужен конвертер уровней. Для этих целей подходит L9637D. Он подключается по классической схеме:

Данная схема встречается с дополнительной микросхемой ELM327. На моем ситрояне используется протокол ISO 14230. По тому достаточно только L9637D.

Схема питается от 12-и вольт в obd разьеме через линейный стабилизатор на 5 вольт.

K-line — пин 7 колодки, L-line пин 15 . земля пины 4 и 5, плюс пин 16. Общая распиновка разьема obd такая:

Соединяем Tx микросхемы L9637D с 14-ым пином Ardiono, uart пины с usb-ttl адаптером.

Загружаем скетч, запускаем и.. Я получил вот такой первый пакет:

C1 33 F1 81 66 83 F1 10 C1 E9 8F BD C2 33 F1 01 0C F3 84 F1 10 41 0C 0D 20 FF C2 33 F1 01 05 EC 83 F1 10 41 05 49 13 C2 33 F1 01 0F F6 83 F1 10 41 0F 47 1B

где
C1 33 F1 81 66 — эхо на запрос инициализации шины
83 F1 10 C1 E9 8F BD — ответ ЭБУ на запрос инициализации, C1 значит ОК
C2 33 F1 01 0C F3 — эхо на запрос оборотов двигателя
84 F1 10 41 0C 0D 20 FF — ответ ЭБУ с оборотами, где 0D 20 (HEX) >> 3360 (DEC)/4 = 840 об/мин
C2 33 F1 01 05 EC — эхо на запрос температуры ОЖ двигателя
83 F1 10 41 05 49 13 — ответ ЭБУ с температурой, где 49 (HEX) >> 73 (DEC) -40 = 33 град.
C2 33 F1 01 0F F6 — эхо на запрос температуры всасываемого воздуха
83 F1 10 41 0F 47 1B — ответ ЭБУ с температурой, где 47 (HEX) >> 71 (DEC) -40 = 31 град.

Далее немного доработал код и сделал вывод данных на oled дисплей.

Проект https://github.com/martinhol221/ISO14230-4-KWP

Бортовой компьютер на ардуино

Технологии не стоят на месте и сегодня автолюбителям предлагается множество различных вариантов для совершенствования своих «железных коней». Одним из таковых является Arduino. Это устройство представляет собой инструмент, использующийся для проектирования электронных устройств. В случае с автомобилем проектирование обычно осуществляется на лобовое стекло. Как сделать бортовой компьютер на Arduino и как его правильно настроить — читайте в этой статье.

Идеи для авто на основе маленькой платы с маленьким процессором — Arduino

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

С помощью платы Arduino можно соорудить автомобильный бортовой компьютер, который сможет:

  • рассчитать расход горючего;
  • вывести информацию о температуре антифриза;
  • рассчитать скорость движения, а также расстояние поездки;
  • вывести потраченное горючее за определенный километраж;
  • определить обороты мотора и т.д (автор видео — канал Arduino Tech PTZ).

Помимо устройства Arduino вам также потребуется жидкокристаллический модуль, адаптер Блютуз НС-05, а также сканер ELM327 и резисторное устройство на 10 кОм. Разумеется, необходимо приготовить и звуковой индикатор, монтажные провода и сам корпус устройства.

Процедура сборки осуществляется следующим образом:

  1. Сначала настраиваем Блютуз адаптер. К пинам устройства нужно припаять провода — к двум нижним и верхним контактам.
  2. Сам модуль подключается к плате для настройки, для этого необходимо открыть программу Arduino >Фотогалерея «Схема подключения БК»

GPS-трекер

Чтобы собрать GPS-трекер на базе Arduino, вам потребуется:

  • сама плата, процесс описан на примере модели Mega 2560;
  • модуль GSM/GPRS, который будет использоваться для передачи данных на сервер;
  • а также Arduino GPS-приемник, в примере мы рассмотрим модель SKM53 (автор видео об изготовлении трекера на примере платы SIM 808 — канал Alex Vas).

Как производится подключение схемы:

  1. Сначала осуществляется подключение модуля к основной плате, по умолчанию установлена скорость передачи данных 115200.
  2. После подключения нужно включить девайс и установить одинаковую скорость для всех портов — как последовательных, так и программных.
  3. GSM передатчик подключается к контактам 7 и 8 на основной микросхеме.
  4. Затем производится настройка модуля путем ввода команд. Все команды мы описывать не будем, их и так можно найти в Интернете без проблем. Рассмотрим только самые основные. AT+SAPBR=3,1,«CONTYPE»,«GPRS» — команда определяет тип подключения, в данном случае это GPRS. AT+SAPBR=3,1,«APN»,«internet.***.ru», где *** — это адрес оператора мобильной сети, который будет использоваться. AT+HTTPINIT — по этой команде производится инициализация HTTP.
  5. Нужно отметить один нюанс — при написании серверной составляющей интерфейса, желательно предусмотреть прием и выведение данных для нескольких адаптеров. Нужно установить переключатель на три позиции, это даст возможность получать данные от восьми автомобилей.
  6. Затем производится написание скетча на микросхеме. Сам скетч также можно найти в Сети, писать его необязательно. Учтите, если будут использоваться два активных последовательных порта, это может привести к ошибкам в передачи и отправке информации.

Парктроник

Чтобы соорудить парктроник, вам потребуются такие составляющие:

  • сама микросхема;
  • ультразвуковое устройство, в данном случае это дальномер HC-SR04:
  • шесть светодиодных элементов;
  • шесть резисторных элементов сопротивлением на 220 Ом;
  • соединительные провода типа «папа-папа»;
  • пьезодинамический элемент;
  • макетная схема для сборки.

Элементы для сборки парктроника на Arduino

Процедура сборки выглядит следующим образом:

  1. Для начала на макетной схеме необходимо установить светодиодные элементы, подготовленные заранее. Отрицательный контакт у всех светодиодов будет общим. Короткий контакт — катод — следует подключить к отрицательной шине, которая имеется на макетной плате.
  2. К более длинным контактам диодов, то есть анодам, необходимо подключить резисторные элементы на 200 Ом, если вы не будете их использовать, это приведет к перегоранию диодов.
  3. На центральной части производится монтаж ультразвукового устройства. На этом контроллере есть четыре контакта. Vcc — это контакт питания на пять вольт, Echo — это выходной контакт, Trig — это вход, а GND — это заземление.
  4. После того, как дальномер будет установлен, к его выходам следует подключить проводку. В частности, контакт Echo подключается к выходу 13, Trig — к 12 контакту. GND, соответственно, необходимо соединить с заземлением, которое имеется на схеме контроллера, а оставшийся выход Vcc соединяется с 5-вольтовым питанием на плате Arduino.
  5. После выполнения этих действий нужно соединить проводку с контактами резисторных элементов. А также они подключаются последовательным образом к пинам на плате — используются пины от 2 до 7.
  6. Следующим этапом будет подключение пьезопищалки, которая и будет предупреждать водителя о приближении к препятствию. Минусовой выход, как вариант, можно будет объединить с отрицательным контактом установленного ранее дальномера. Что касается положительного контакта, то он соединяется с пином под номером 11 на микросхеме.
  7. Для того, чтобы устройство в конечном итоге работало в нормальном режиме, дополнительно нужно будет написать, после чего загрузить код программы в плату. В этом коде необходимо точно указать дистанцию, при приближении к которой начнут загораться диодные элементы и будет срабатывать пищалка. Причем тональность пищалки должна быть разной, чтобы водитель мог узнать, когда приближение к препятствию будет критическим. Сам код либо пишется самостоятельно, либо берется уже готовый вариант из Интернета. Вариантов скетчей очень много, вам нужно только выбрать наиболее подходящий для вашего устройства (автор видео — канал Arduino Prom).

Заключение

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

Разумеется, для этого вы должны обладать знаниями в области электроники и электротехнике, при этом минимальных навыков, вероятнее всего, будет недостаточно. При изготовлении девайсов вам придется принимать собственные решения, о чем в Интернете может и не быть информации. Поэтому будьте готовы к тому, что процесс сборки может занять достаточно долгое время.

Видео «Как соорудить систему управления электродвигателем печки?»

Из видео ниже вы сможете узнать, как обустроить климат-контроль путем доработки регулятора отопительной системе на примере автомобиля ВАЗ 2115 (автор ролика — Иван Никульшин).

Как вы помните, предыдущую запись в своем блоге про круиз-контроль я закончил фотографией, на которой были запечатлены компоненты моей будущей игрушки. Следующие 2 недели я провел за изучением абсолютно новой для себя сферы, и стоит сказать наперед, что давно я так ничем не увлекался…

Не буду кривить душой, я всего несколько раз в своей жизни за 30 лет паял проводки и почти ничего не понимал в электронике на предметном уровне. Сам я по профессии программист, имею прикладное математическое образование. Программирование полюбил еще с детства, когда отец (ведущий инженер-электронщик, работающий на закрытом военном НИИ) принес нам домой собранную собственноручно вариацию популярного в 80-х — 90-х компьютера ZX-Spectrum. Отец подключил его к телевизору и показал простейшие команды на встроенном в Спектрум языке Бейсик — как заливать цветом экран телевизора, как рисовать круги, прямоугольники, овалы и прочее. Мне было 5 лет, был 90-й год и все это казалось безумно интересными вещами.
Вот тогда я просто стал бредить компьютерными играми. Кто в теме, тот наверное помнит потрясающую ауру загрузки игр с кассет, помнит незабываемый скрипучий звук и медленно появляющееся изображение заставки игры. А игры… до сих пор скучаю по той атмосфере необычности некоторых игрушек, часы, проведенные за игрой Elite, которая дала огромный толчок к развитию космических симуляторов… Эта сфера так сильно меня очаровала, что свою первую игру я написал в 11 лет на языке Logo, который изучают в младших классах для «вдалбливания» основ программирования малолетним чадам. В то время как остальные рисовали простейшие фигуры, учили циклы, рекурсии меня влекло создание компьютерных игр. На зимних каникулах была написана игра-стратегия «Сечь» о запорожских казаках, которые отбивают землю у поляков и турков ) Потом футбольный симулятор, оболочку наподобие Norton Commander (помните такое? )))). Затем любовь к футбольному клубу Шахтер сподвигла на написание футбольного менеджера клуба и с этой игрой я уже ездил на Всеукраинскую Малую Академию Наук, что помогло затем поступить в универ на бюджет… Уже студентом я выбрал для себя Java как главный язык программирования и узнал, что на нем можно писать мобильные игры.
А дальше пошло как по накатанной. Я был молод, у нас с моей будущей женой были общие интересы, она неплохо рисовала, мне хотелось что-то делать, мою игру заметили, позвали работать в большую как для студента компанию в Украине, а уж тем более в Донецке. Спустя год пошла переквалификация в веб-программиста и в данной сфере остаюсь и поныне.

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

Поставив почти все, что можно найти в Украине и не только на нашу машину, стал думать, а что еще можно сделать. И тут мой взгляд зацепился за Ардуино и я понял, это оно )

Если вы еще не слышали об Arduino, то вот вам маленький ликбез с офиц. сайта:

Arduino — это платформа с открытым исходным кодом, созданная для быстрой и легкой разработки разнообразных электронных устройств. Ардуино может получать данные об окружающем мире благодаря датчикам и реагировать, управляя светом, моторчиками и другими приводами. Микроконтроллер на плате программируется с помощью языка программирования Arduino и среды разработки Arduino. Для программирования не требуется программатор, программа зашивается через порт USB. Для начала работы понадобится только сама плата Arduino и компьютер с установленной средой разработки Arduino.

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

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

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

А именно модуль Bluetooth HC-5, LCD экран 20×4, платку Arduino Uno, макетку и кучу перемычек. Ну а потом пошло-поехало ) Нашелся старый паяльник, отец прислал припой, инструменты, на местном радио рынке были куплены корпус, коннекторы, провода, кнопки и прочая хрень, на которую раньше просто не обращал внимания )

Остановимся немного на проекте. Проект представляет собой устройство, которое без проводов подсоединяется к бортовой сети машины через диагностический разъем OBD-II. Вы спросите, а чем родной то не устраивает? ) А я вам отвечу, а вы сможете в родной компьютер запихнуть новые функции, которые ограничиваются лишь вашей фантазией? ) Расход, скорость и пройденный путь это хорошо, но этого мало. Я знаю одного человека, который перепрограммировал родную приборку на пунто и смог выводить туда все, что хочет используя OBD и CAN. Но своим ноу хау он не захотел делиться. Также вы спросите, а как же твоя диагностика по wifi? Будете правы, все тоже самое я могу смотреть со своего айфона. Но вот, а если я хочу добавить что-то свое? Программу на айфоне я не переделаю, а тут свободное поле для творчества. При этом телефон при связи по wifi греется и быстро расходует заряд аккумулятора. А телефон, сами знаете, может сесть в самый неподходящий момент. Поэтому автономное удобно расположенное устройство, которые при необходимости покажет полезную информацию по машине в том виде, в каком я сам захочу — очень полезный в хозяйстве инструмент. А уж тем более — это отличный полигон для изучения новой для меня сферы, а также замечательный плацдарм для дальнейшего тюнинга.

Первой сложностью для меня стала настройка модуля блютуза:

Данная модель умеет работать в двух режимах master/slave, и чтобы она без пароля подсоединялась к адаптеру Bluetooth ELM 327 нужно было прописать в нее с помощью AT-команд MAC-адрес адаптера и перевести в режим master. Пару слов о bluetooth адаптере ELM 327. Как вы помните у меня стояла на постоянке wife версия ELM 327. Однако проект был заточен под bluetooth, поэтому встал вопрос поиска донгла. В современных донецких условиях это нереально. Поэтому окольными путями в ближайшем селе Селидово был куплен такой вот красивый донгл:

Удобной его фишкой является автоотключение от питания и наличие кнопки включения/выключения. Забегая вперед скажу, что вырезав небольшое отверстие в крышке обшивки удалось очень удобно расположить адаптер в диагностическом разъеме и иметь возможность быстро его включать/выключать:

Далее взяв ноут с виндой удалось найти MAC-адрес адаптера и добавить его в модуль блютуз для ардуино:

Далее пошло подключение экрана и прочих компонентов:

Примерно с год назад возникла идея сделать для своего авто БК. Что из этого получилось судить Вам.
БК работает по протоколу MUT (специализированный протокол диагностики Mitsubishi)
Как и планировалось экран БК установлен в окно приборной панели, где ранее была индикация открытой двери. Соответственно индикатор открытой двери добавлен в БК.
БК построен на основе Arduino Pro Mini. Плата была изготовлена по ЛУТ технологии, элементная база: оптопары PC817, мосфет AO4407, драйвер К-линии mc33290/
Возможности БК.
— расчет мгновенного расхода топлива
— расчет расхода топлива за последние 10 км
— расчет общего расхода топлива
— отображение параметров работы двигателя (скорость, обороты, температура ОЖ, РХХ, ДПДЗ, УОЗ, напряжение …)
— измеряет температуру воздуха (внешний датчик 18b20)
— управление ДХО (плавно включает с началом движения, автоматически выключает при включении основного света, коротким включением света позволяет включить/выключить ДХО)
— управление ЦЗ (запирает двери по достижении скорости 20 км/ч)
— индикация низкого уровня омывающей жидкости в бачке омывателя. (установлен датчик уровня).
Плата односторонняя, перемычек нет. Разведена в Sprint-layout 6.0.

Назначение входов/выходов:
Vbat — постоянный «+» от батареи
GND(слева внизу) — постоянный «-«
IGN — «+» при включении зажигания
Door — «-» при открытии дверей
Light — «+» при включении света
DRL+ — выход «+» на питание ДХО
K-line — к диагностическому разъему
LockDoor — к центральному замку, для запирания дверей
water — к датчику уровня жидкости в бачке омывателя
+5v — 5в для датчика температуры DS18B20
GND(справа внизу) — «-» для датчика температуры DS18B20
temp — шина данных датчика температуры DS18B20

Компоненты:
Экран — 1 шт.
Arduino Pro Mini 5 v — 1 шт.
Модуль часов реального времени — 1 шт.
Драйвер К линии mc33290 — 1шт.
Стабилизатор напряжения 78m05 — 1 шт.
Полевой транзистор ao4407 — 2…4 шт.
Оптопары PC817 — 6 шт.
Резисторы 0.25 Вт
Датчик температуры ds18b20 — 1 шт.

На плате предусмотрено место для параллельного соединения полевых транзисторов управляющих ДХО, в зависимости от мощности нагрузки. У меня установлены ДХО суммарной мощностью 6 Вт, на плате распаян только 1 транзистор. Он не греется.
Экраны бывают с красной или черной платой. Они имеют различие в настройке подключаемых библиотек. Я установил черный экранчик, соответственно в представленной библиотеке настройка под него.
Что касается библиотек Adafruit_mfGFX, TFT_ILI9163C то они сильно мною изменены под мои нужды, поэтому скетч компилировать только с ними.

Ссылка на скачиваниеархива содержащего скетч, библиотеки и файл платы.

Блок управления предпусковым подогревателем Webasto (Arduino + Webasto = Ardubasto) / Хабр

Установили мне на авто пред пусковой подогреватель Webasto. После установки выяснилось, что управление им осуществляется не дискретным сигналом (как на предыдущем моем авто), а только по цифровой шине W-bus. Шина W-bus по электрическим параметрам является аналогом шины K-line и для нее есть интегральный конвертер K-line – RS232TTL — это микросхема L9637D. На этой микросхеме, на основе Arduino и решено было сделать управление подогревателем. Задача осложнялась тем, что Arduino поддерживает только протокол передачи по последовательному порту без контроля четности, а протокол W-bus работает с настройками порта 2400/8-E-1. Для обхода этого были сняты осциллограммы команды запуска Webasto и команды к Webasto реализованы тайминговыми задержками.

Функции блока управления:

1) При подаче питания на блок управления через нормально разомкнутые выходные контакты сигнализации (с дистанционным управлением по СМС) блок непрерывно посылает в шину W-bus команду на подогрев.

2) При подключении Arduino к компьютеру по USB и использовании программ диагностики Webasto можно диагностировать, управлять и стирать ошибки подогревателей. Для этого необходимо загрузить пустой скетч.

Схема устройства в формате AutoCad.
Внешний вид
Скетч

Это было первая полностью работоспособная реализация блока управления.

Дальнейшим развитием, пока до конца не реализованным является выполнение следующих функций и характеристик устройства:

1) Управлять включением по СМС от сигналки блоком Webasto – при кратковременном замыкании контакта сигналки Arduino должен встать на самоподхват по питанию на время работы Webasto.
2) Дополнить устройство монохромным дисплеем типа Nokia 5110.
3) Вывести на дисплей получаемые от Webasto по W-bus температуру охлаждающей жидкости и напряжение автомобильного аккумулятора.
4) Вывести на дисплей статус работы Webasto
5) Отключение Webasto должно происходить либо по достаточной температуре охлаждающей жидкости либо по низкому напряжению автомобильного аккумулятора.
6) Звуковая сигнализация (мелодия) включения/выключения Webasto, нажатии кнопки и т. д.
7) Включение/выключение Webasto от кнопки на устройстве.
8) Управление ходовыми огнями – при появлении напряжения питания потребителей 2 группы – включение и при включении габаритов или падения напряжения автомобильного аккумулятора ниже 13,5 вольта (вежливая подсветка)– отключение.

Все это в принципе реализовано и описано в алгоритме управления (формат программы yED).

Схема в формате AutoCad
Печатка

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

Спасибо за внимание.

Что такое Arduino. Рис. 1. Плата Arduino UNO

«Основы электроники и программирования»

Государственное бюджетное общеобразовательное учреждение средняя общеобразовательная школа 72 с углублённым изучением немецкого языка Калининского района Санкт-Петербурга ПРИНЯТА на заседании Педагогического

Подробнее

УДК ББК Р85

УДК 004. 4 ББК 32.973.26 Р85 Р85 Руководство пользователя к набору «Изучаем Arduino. Стартовый набор + книга». СПб.: БХВ-Петербург, 2016. 28 с.: ил. ISBN 978-5-9775-3660-8 Руководство содержит краткое описание

Подробнее

Iskra Mini. Подключение и настройка

Iskra Mini Iskra Mini это миниатюрная платформа на базе микроконтроллера ATmega328 для разработки и программирования электронных устройств, где важен каждый миллиметр свободного пространства. Платформа

Подробнее

Эксперименты с программированием. 1.Введение и подготовка к работе. Arduino — это контроллер (управляющий модуль). На плате контроллера размещены процессор, микросхема конвертора USB и выводы для подключения

Подробнее

Программирование ARDUINO

Белов А.В. Программирование ARDUINO Создаем практические устройства + виртуальный диск Наука и Техника, Санкт Петербург УДК 621. 314:621.311.6 Белов А.В. Программирование ARDUINO. Создаем практические устройства

Подробнее

Информационное табло на основе LED матриц

Кафедра «Автопласт» при ФГБОУ ВПО «Госуниверситет-УНПК» Научно-образовательная лаборатория «Управление в технических системах» Информационное табло на основе LED матриц Подготовили студенты: группы 21-АП

Подробнее

Тема 2. Работа с цифровыми сигналами

Тема 2. Работа с цифровыми сигналами Урок 2.1. Выводы общего назначения (GPIO) 2.1.1. Схема выводов Arduino Uno (редакция 3) Отрицательный вывод питания (земля, ground) Положительный вывод питания (+3.3В

Подробнее

ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ JT5.RU

«Cosmo USB Host» ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ JT5.RU БЛАГОДАРИМ ЗА ПОКУПКУ! Поздравляем с приобретением платы-расширения «Cosmo USB Host» предназначенной для организации связи с USB устройствами. Шилд совместим

Подробнее

Тема 2. Работа с цифровыми сигналами

Тема 2. Работа с цифровыми сигналами Урок 2.1. Выводы общего назначения (GPIO) У контроллера Arduino Uno есть множество выводов, обозначенных цифрами от 0 до 13 и от A0 до A5. Каждым из этих выводом мы

Подробнее

Образовательный набор «Амперка»

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

Подробнее

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА Учебные конструкторы Лего уже не первый год используются в образовательном процессе. Это дает возможность развития у ученика творческого мышления, формирует инженерный подход при

Подробнее

Знакомство с Arduino

Знакомство с Arduino Глава 2 Arduino это простая и производительная микроконтроллерная платформа, предназначенная для создания прототипов робототехнических и электронных устройств (рис. 2.1). Она считается

Подробнее

АРДУИНЩИКА 12 МИНИ-ПРОЕКТОВ

КОНСПЕКТ АРДУИНЩИКА 1 МИНИ-ПРОЕКТОВ ArduBlock Technologies 1 мини проектов Веб-сайт: http://ardublock.ru Автор: Виталий Петров Вк группа: https://vk.com/ardublock Инстаграмм: https://www.instagram.com/ardublock.ru/

Подробнее

Благодарности Глава 1. Введение… 21

Оглавление Благодарности… 20 Глава 1. Введение… 21 Бесконечность не предел!… 22 Сила в массовости……………………………………….. 26 Компоненты и аксессуары… 26 Необходимое программное

Подробнее

ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ JT5.RU

«Колибри» ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ JT5.RU БЛАГОДАРИМ ЗА ПОКУПКУ! Поздравляем с приобретением универсальной платформы «Колибри» предназначенной для организации беспроводной передачи данных в нелицензируемом

Подробнее

СВЕТОВОЙ КОНТРОЛЛЕР V1.

1

СВЕТОВОЙ КОНТРОЛЛЕР V1.1 ТЕХНИЧЕСКОЕ ОПИСАНИЕ 1 Apr 2009 1.Общие сведения. Световой контролер (далее Контроллер) используется для воспроизведения световых эффектов. Он является автономным устройством и

Подробнее

USB-программатор: быстрый старт

USB-программатор: быстрый старт 1 Настройка программного обеспечения Windows 1.1 Драйвер для подключения USB-программатора находится на сайте www.tiras.ua в разделе «Управление и программирование», архивный

Подробнее

Содержание. 00_cont.indd :41:48

Содержание Об авторе 13 Об изображении на обложке 13 Введение 15 На кого рассчитана эта книга 15 Идея книги 15 Современная электроника 16 Структура книги 16 Условные обозначения 19 Файлы примеров 19 Ждем

Подробнее

РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ

РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ 2016 1. НАЗНАЧЕНИЕ ПРОГРАММАТОРА Программатор предназначен для загрузки управляющей программы в микроконтроллеры серии AVR компании «ATMEL», которые поддерживают последовательный

Подробнее

USB модуль WoodmanUSB

USB модуль WoodmanUSB Руководство пользователя Версия 1.01 12 Декабря 2013 История документа: Версия Дата Описание 1.01 12 Декабря 2013 Исходная версия документа 2 Содержание 1. Общее описание… 4 2.

Подробнее

ME-READY for XMEGA Board

ME-READY for XMEGA Board Плата Ready for XMEGA на базе микроконтроллера ATXMEGA128A1 является отличным решением для быстрой разработки собственных проектов. Она содержит двухрядные контакты для всех доступных

Подробнее

AS-kit Hardware. Работа с адаптером AS-con6

Работа с адаптером AS-con6 Для внутрисхемного программирования своих AVR-микроконтроллеров компания Atmel предложила два варианта разъема: 6-контактный и 10-контактный. В 6-контактном разъеме присутствуют

Подробнее

Отладочный комплект AN231K04-DVLP3

Александр Щерба [email protected]. Описание Отладочный комплект AN23K04-DVLP3 Отладочная плата AN23K04-DVLP3 простая к использованию платформа, позволяющая быстро внедрить и протестировать аналоговую

Подробнее

А вот так подключается Iskra Mini.

Никто не сомневается в необходимости и полезности USB-UART-преобразователей. COM- порт уже не найти в современных компьютерах, а для практических задач, использующих обмен данными между компьютером и устройством

Подробнее

1.1 Ответ: Ом. 1.2 Ответ: В

Олимпиадные задания первого (заочного) тура Межрегиональной многопрофильной олимпиады «Менделеев» ФГАОУ ВО «Тюменский государственный университет» Профиль: робототехника Предметы: физика, схемотехника,

Подробнее

Ардуино 2 Первые шаги.

Ардуино 2 Первые шаги. 1. Установка драйвера Arduino. Проверка установки и определение номера виртуального СОМ порта для Arduino. Итак, надеюсь, что Вы приобрели «Arduino» и Вам не терпится начать с ней

Подробнее

ЭЛЕКТРОСТАТИЧЕСКОЕ ПРЕДУПРЕЖДЕНИЕ:

AVR-ISP500 ВВЕДЕНИЕ: AVR-ISP500 это USB внутрисистемный программатор для AVR микроконтроллеров. Он осуществляет протокол STK500v2, как это определено Atmel, что делает его совместимым с набором инструментов,

Подробнее

ПОРТЫ ВВОДА / ВЫВОДА

ЛАБОРАТОРНАЯ РАБОТА 2 ПОРТЫ ВВОДА / ВЫВОДА Цель: Задание: познакомиться с принципом работы портов ввода/вывода, научится управлять светодиодами и считывать сигнал с кнопок, начать изучение языка программирования

Подробнее

ME-mikroMEDIA for ARM

ME-mikroMEDIA for ARM Mikromedia for ARM представляет собой компактную отладочную плату, которая обеспечивает удобную платформу для разработки мультимедийных устройств. Центральная часть платы представляет

Подробнее

Тема 4. Работа с аналоговыми сигналами

Тема 4. Работа с аналоговыми сигналами Урок 4.1. Потенциометр 4.1.1. Аналоговый сигнал и АЦП Не секрет, что все величины в физическом мире носят аналоговый характер. Для измерения этих величин, люди придумали

Подробнее

ME-mikroPROG for AVR

ME-mikroPROG for AVR mikroprog для AVR — это быстрый USB программатор, который подходит для программирования микроконтроллеров семейства AVR от Atmel. Отличная производительность, простота в эксплуатации

Подробнее

Программатор AVR910-USB

Программатор AVR910-USB Внутрисхемный программатор для AVR екомплект поставки: Плата программатора в сборе Кабель для внутрисхемного программирования Кабель для подключения к USB порту компьютера Краткое

Подробнее

Робот следящего за линией Arduino — Arduino Project Hub

Робот следящего за линией

Лучший и быстрый поставщик печатных плат (2 доллара за 10 печатных плат) https://jlcpcb. com

YouTube

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

Концепции повторителя линии

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

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

Здесь, в этом роботе-повторителе линии Arduino, когда датчик обнаруживает белую поверхность, тогда arduino получает 1 на входе, а когда обнаруживает черную линию, arduino получает 0 на входе.

Описание цепей

Весь робот-повторитель линии arduino можно разделить на 3 секции: сенсорная секция, секция управления и секция драйвера.

Секция датчиков:

Эта секция содержит ИК-диоды, потенциометр, компаратор (операционный усилитель) и светодиоды. Потенциометр используется для установки опорного напряжения на одной клемме компаратора, а ИК-датчики используются для определения линии и обеспечения изменения напряжения на второй клемме компаратора. Затем компаратор сравнивает оба напряжения и генерирует цифровой сигнал на выходе. Здесь, в этой цепи повторителя линии , мы использовали два компаратора для двух датчиков. LM 358 используется в качестве компаратора.LM358 имеет два встроенных малошумящих операционных усилителя.

Работа робота следящего за линией с использованием Arduino

Работа следящего за линией очень интересна. Робот-следящий за линией обнаруживает черную линию с помощью датчика, а затем отправляет сигнал на Arduino. Затем arduino запускает двигатель в соответствии с выходным сигналом датчиков.

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

Если левый датчик выходит на черную линию, робот поворачивает налево.

Если правый датчик обнаруживает черную линию, робот поворачивает вправо, пока оба датчика не коснутся белой поверхности. Когда появляется белая поверхность, робот снова начинает двигаться вперед.

Если оба датчика показывают черную полосу, робот останавливается.

******* КУПИТЬ *******

Arduino UNO — https://www.gearbest.com/arduino-scm-supplies/pp_311407.html?wid=1433363&lkid=14127045

Full Arduino Комплект проекта — https://www.gearbest.com/development-boards/pp_211518.html?wid=1433363&lkid=14127055

Музыка — https: // bensound.com — Summer

Веб-сайт — https://robocircuits.com

Facebook — https://facebook.com/Robocircuits

Instagram — https://Instagram.com/Robocircuits

Twitter — https: // Twitter. com / Robocircuits

Робот-следящий за линией — Arduino Project Hub

Робот-следящий за линией

Понимание схемы и ее компонентов:

Компонент 1: ИК-датчики приближения

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

Здесь, в этом роботе-повторителе линии Arduino, когда датчик обнаруживает белую поверхность, тогда Arduino получает 1, т. Е. HIGH на входе, а когда обнаруживает черную линию, arduino получает 0, т.е.

Схема подключения для ИК-датчиков приближения:

  • ИК-датчик представляет собой трехпроводной датчик, в котором коричневый и черный провод используются для подключения датчика к источнику питания, а красный провод подключается. к нагрузке или Arduino в нашей схеме.
  • Нагрузочные провода ИК-датчиков подключаются к контактам 8, 9 и 10, как показано на схеме.

Компонент 2: Драйвер двигателя с Н-мостом L298N

Драйверы двигателя с Н-мостом L298N используются для управления двигателями постоянного тока, поскольку им требуется гораздо больший ток, чем может обеспечить Arduino.

Контроллер двигателя L298N следует конфигурации H-моста, что удобно при управлении направлением вращения двигателя постоянного тока. Другое преимущество использования H-моста заключается в том, что мы можем обеспечить отдельный источник питания для двигателей. Это очень важно, особенно при использовании платы Arduino, где источника питания 5 В просто недостаточно для двух двигателей постоянного тока.

У нас есть клеммы двигателя A и двигателя B. Они подключаются к микроконтроллеру. Двигатель A подключается к клеммам 1 и 2, а двигатель B подключается к клеммам 3 и 4.

Если мы хотим, чтобы левый двигатель вращался в одном направлении, мы подаем импульс высокого уровня на IN1 и импульс низкого уровня на IN2. Чтобы изменить направление, измените импульсы на IN1 и IN2. То же самое и с правым мотором.

Если мы хотим, чтобы левый двигатель вращался в одном направлении, мы прикладываем высокий импульс к IN1 и низкий импульс к IN2.Чтобы изменить направление, измените импульсы на IN1 и IN2. То же самое и с правым мотором.

Управление скоростью также возможно с драйвером двигателя L298N. Все, что нам нужно, это подать сигналы ШИМ (широтно-импульсной модуляции) на контакты включения двигателя. Скорость двигателя будет варьироваться в зависимости от ширины импульсов. Чем шире импульсы, тем быстрее вращается мотор. В Arduino это можно сделать с помощью analogWrite (pinNumber, duration). Контакты на Arduino с ‘~’ поддерживают ШИМ.

Подключение цепей для L298N Драйвер двигателя с Н-мостом:

  • Провода двигателя A подключены к клеммам 1 и 2 двигателя L298N, а провода двигателя B подключены к клеммам 3 и 4 двигателя.IN1, IN2, IN3 и IN4 подключены к контактам 2, 3, 4, 7 соответственно.
  • Теперь, Motor A и Motor B Enable должны быть подключены к клеммам на Arduino, которые имеют знак ~, чтобы скорость этих двигателей можно было контролировать с помощью PWM. Здесь они были подключены к контактам 5 и 6.
  • Другие подключения понятны из схемы.

Процедура:

Шаг 1: Подключите цепь, как показано на схеме.

Шаг 2: Используйте Arduino IDE, чтобы написать свой собственный код.

Шаг 3: Загрузите свой код в Arduino и подключите его к батареям, или вы даже можете использовать блок питания для запуска Arduino.

Шаг 4: Протестируйте его на черной дорожке.

Arduino Line Follower Robot

Line Follower Robot, как следует из названия, представляет собой автоматизированное управляемое транспортное средство, которое следует визуальной линии, нанесенной на пол или потолок. Обычно визуальная линия — это путь, по которому идет робот-последователь линии, и это будет черная линия на белой поверхности, но возможен и другой путь (белая линия на черной поверхности).Некоторые продвинутые роботы-следопыты используют невидимое магнитное поле в качестве своего пути.

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

Робот-последователь линии — один из первых роботов, с которыми новички и студенты получат свой первый опыт работы с роботами. В этом проекте мы разработали простого робота-следящего за линией, используя Arduino и некоторые другие компоненты.

Принципиальная схема

Необходимые компоненты

  • Arduino UNO (или Arduino Nano) [Купить здесь]
  • L293D IC драйвера двигателя [Купить здесь]
  • Мотор-редукторы x 2
  • Шасси робота
  • Модуль ИК-датчика x 2
  • Черная лента (электроизоляционная лента)
  • Соединительные провода
  • Источник питания
  • Разъем аккумулятора
  • Держатель аккумулятора

Примечание : Мы использовали готовый модуль ИК-датчика, который состоит из ИК-светодиода и фотографии Диод. Если у вас его нет, мы объяснили, как построить его самостоятельно.

Блок-схема проекта

Робот-следящий за линией, построенный в этом проекте, разделен на 4 блока. На следующем изображении показана блок-схема робота-следящего за линией.

Описание блок-схемы

Датчики (ИК-датчик) : Мы использовали модуль ИК-датчика в качестве датчика обнаружения линии для проекта. Он состоит из ИК-светодиода, фотодиода и некоторых других компонентов, таких как компаратор, светодиод и т. Д.

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

Работа ИК-датчика и его объем в этом проекте будут объяснены в реальной работе робота-следящего за линией.

Контроллер (Arduino UNO) : Arduino UNO является основным контроллером в проекте. Данные от датчиков (ИК-датчики) будут переданы в Arduino, и он подаст соответствующие сигналы на микросхему драйвера двигателя.

Драйвер двигателя (L293D) : ИС драйвера двигателя L293D используется в этом проекте для управления двигателями робота. Он принимает сигналы от Arduino на основе информации от ИК-датчиков.

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

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

Работа робота-повторителя линии Arduino

В этом проекте мы разработали робота-повторителя линии Arduino. Работа с проектом довольно проста: найдите черную линию на поверхности и двигайтесь по ней. Подробная работа объясняется здесь.

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

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

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

Используя тот же принцип, мы настроим ИК-датчики на роботе-следящем за линией так, чтобы два ИК-датчика находились по обе стороны от черной линии на полу. Схема показана ниже.

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

Arduino UNO обнаруживает это изменение и соответственно отправляет сигнал драйверу двигателя. Чтобы повернуть направо, двигатель с правой стороны робота замедляется с помощью ШИМ, в то время как двигатель с левой стороны работает с нормальной скоростью.


Аналогичным образом, когда ИК-датчик 2 первым обнаруживает черную линию, это означает, что впереди есть поворот налево, и робот должен повернуть налево. Чтобы робот повернул налево, двигатель на левой стороне робота замедляется (или может быть полностью остановлен или может вращаться в противоположном направлении), а двигатель на правой стороне работает с нормальной скоростью.

Arduino UNO непрерывно отслеживает данные с обоих датчиков и поворачивает робота в соответствии с обнаруженной ими линией.

Код


Примечание :

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

Области применения робота-следящего за линией

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

Конструкция и вывод видео

Это стартовый комплект, который появился, когда движению робота уделяется высокий приоритет. Он следует по визуальному пути линии, и некоторые продвинутые роботы-последователи линии используют невидимое магнитное поле в качестве своего пути.

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

Если у вас есть сомнения, поделитесь с нами в разделе комментариев ниже. Мы очень рады быстро ответить.

Рекомендуемое чтение:

Код и принципиальная схема робота-повторителя Arduino

Робот-повторитель линии — очень простой робот, который следует по линии, будь то черная или белая линия. Этот тип роботов очень прост в сборке и часто является первым выбором для новичков, которые только начинают заниматься робототехникой.По сути, существует два типа роботов-следящих за линией: один — следящий за черной линией, следующий за черной линией, а второй — следящий за белой линией, следующий за белой линией. Следование по линии действительно ощущает линию и следует за ней. Хотя идея звучит просто, но после небольшой доработки роботы, подобные этому, практически используются во многих приложениях, таких как роботы для управления производственными цехами или складские роботы.

Концепции следящего за линией

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

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

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

Описание цепей

Робот-повторитель линии 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-вольтовая батарея.

Вот как создать робота-последователя линии Arduino

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

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

Последователь линии!

Сопровождающий за линией — это хороший робот, особенно когда он следует за линией так, как вы этого хотите.

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

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

Необходимые детали

Нам также понадобится деталь, напечатанная на 3D-принтере, чтобы прикрепить наши датчики слежения за линией к шасси на надлежащей высоте над землей, вы можете скачать ее здесь: https://www.thingiverse.com/thing:2594606

Этот робот очень похож на нашего последнего робота, управляемого через Bluetooth. Нам нужно подключить 4 кабеля к 5 В, но на Arduino есть только один вывод 5 В. Вот почему нам понадобилось использовать макетную плату (или просто ее кусок). У меня была макетная плата среднего размера с отсоединяемыми линиями электропередач.Итак, я использовал один из них для подключения всех контактов 5V и GND без пайки.

Держатель для 3D-печати должен быть закреплен в передней части робота, и вам следует попробовать закрепить на нем датчики, как показано на изображении ниже.

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

Также следует иметь в виду, что точность определения линии зависит также от условий освещения.

Логика здесь следующая:

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

Вот и все, что он делает. Неполное право! Но неплохой алгоритм для начала. Здесь есть много возможностей для улучшения.

Функции двигателя точно такие же, как и в нашем примере робота, управляемого через Bluetooth, с той лишь разницей, что здесь низкие значения ШИМ. Этот робот должен двигаться медленно, чтобы не сбиться с пути. Не стесняйтесь экспериментировать с более высокими скоростями, чтобы проверить их ограничения.

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

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

Вам также могут понравиться:

Arduino Pid Based Line Follower Robot Kit Наборы роботов, детали для обновления роботов Jsumo

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

У нас есть 2 варианта доставки:

  • Зарегистрированной авиапочтой (фиксированная цена 9,95 долларов США, бесплатно при заказе на сумму более 199 долларов США)
    Экспресс-доставка DHL Worldwide (в зависимости от веса)

Пример расписания для международных перевозок воздушным транспортом Почта

Страны Европы

2-3 недели (иногда меньше)

США

3-4 недели

* Мексика

4-6 недель

Страны Африки

4-6 недель

Япония

2-3 недели

Катар

3-4 недели

Бразилия

3-6 недель

Малайзия

4-5 недель

* Перу, Эквадор, Колумбия

4-6 недель

Филиппины

4-6 недель

Россия

3-4 недели

Саудовская Аравия

3-4 недели

Страны Средней Азии

3-4 недели

Азербайджан

2-3 недели

Монголия, Китай

4-6 недель

Великобритания, Ирландия

3-4 недели

Латвия, Эстония, Литва

3 недели

Канада

2-3 недели

* Доставка из Мексики, Перу, Эквадора и Колумбии может потерять слишком много время в переходах после выхода.

Мы отправляем код доставки, но его можно только отследить внутри вашей страны. Мы предлагаем эти страны для экспресс-доставки DHL (Время прибытия 3-5 дней) для более надежного и отслеживания вариант.

Эти страны — единственные примеры. Если вашей страны нет в список, не бойтесь. Мы отправляем по всему мир включая вашу страну тоже 🙂

Какова ваша политика возврата?

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

Если мы отправили вам не тот товар, или он прибыл с дефектом или повреждением

Нет проблем. Просто свяжитесь с нами в течение 30 дней с момента первоначальной доставки товара, чтобы организовать возврат вашей покупки. Отправьте нам фото не того товара. И мы отправим вам замену или вернем вам деньги за вашу покупку при условии, что возвращенные товары будут получены обратно в оригинальной упаковке вместе со всеми аксессуарами, гарантийными талонами, руководствами, программным обеспечением и т. Д., где применимо.

Simple Line Follower с использованием Arduino

Ну, ребята, это один из проектов, который никогда не устареет. Это было первое, что я сделал, когда начал изучать Arduino. Робот-последователь линии Arduino — робот-последователь линии, использующий Arduino UNO и ИК-датчик, который следует линии без взаимодействия с пользователем. Небольшой автономный робот, который будет «видеть» линию, следовать за ней и принимать решение, когда сам видит поворот.

Впервые в робототехнике?

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

Робот-повторитель линии Arduino

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

Компоненты повторителя линии Arduino

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

Шасси робота-последователя линии Arduino

Первое, что нужно сделать, это построить шасси для WiFi робота с помощью Arduino. Вы можете построить его так, как вам нравится. Единственное, что вы должны помнить, это то, что в нем должно быть достаточно места для Arduino, драйвера двигателя L293D и батареи LIPO. В нашем проекте я буду использовать LiPo аккумулятор на 12 В. Вы можете использовать пенопласт, алюминиевый лист или кусок дерева для постройки основания. Это одни из лучших шасси роботов, доступных вам для создания этого проекта.Перейдите по ссылке ниже.

Получите лучшее шасси для роботов в Интернете

Ардуино

Возможно, вы все знакомы с Arduino; которая является наиболее широко используемой и быстро развивающейся электронной платформой с таким количеством плат микроконтроллеров и программного обеспечения. Для нашего робота, следующего за линией, я буду использовать Arduino UNO, которая является наиболее часто используемой платой. Arduino Nano — лучший вариант для начала работы с электроникой и программированием, если это ваш первый опыт работы с платформой Arduino.Вы можете использовать любую плату Arduino для этого проекта.

ИК-датчик

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

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

В Интернете есть так много дешевых ИК-датчиков; вы можете приобрести любой из них. Для создания робота-следящего за линией вам понадобится как минимум два из них.

Мост
H и драйвер двигателя L293D

H-мостом может быть любая схема переключения, использующая биполярные переходные транзисторы (BJT) или полевые транзисторы (MOSFET или MESFET), которые позволяют подавать напряжение на двигатель постоянного тока без внесения физических или аппаратных изменений в схему.H Мостовые схемы широко используются в области робототехники для переключения направления постоянного тока …

Читать далее » .

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *