Як зробити автомобільні датчики допомоги при паркуванні

  • Ардуїно
  • камери
  • спілкування
  • диски
  • інновації
  • двигун
  • обладнання з відкритим кодом

допомоги

У цьому підручнику ми проілюструємо встановлення та використання простих, недорогих автомобільних датчиків допомоги при паркуванні. Ми використовуватимемо два ультразвукові датчики HC-SR04 та чотири п’єзозум’є, щоб поступово попереджати водія про близькість сусідніх автомобілів за машиною водія під час паркування із звуковим сигналом. Ми також вирішимо практичні проблеми, такі як гідроізоляція та розведення проводів у салоні автомобіля.

Апаратне забезпечення

  • Arduino UNO (1x)
  • HC-SR04 Ультразвукові датчики (2x)
  • Дріт Vcc (приблизно 2 м)
  • Дріт Gnd (приблизно 2 м)
  • Тригерний дріт (приблизно 1 м)
  • Ехопровід (приблизно 1 м)
  • П'єзо-зумер (2x)
  • USB автомобільний адаптер
  • Пластиковий футляр/коробка для Aduino

Програмне забезпечення

  • IDE Arduino
  • Github

Інструменти

Крок 1: Налаштування системи

Почнемо з підготовки електроніки, показаної нижче, щоб ми могли протестувати систему, перш ніж фактично встановлювати автомобільні датчики в машину.

Рисунок 1: Необхідні апаратні компоненти - Arduino, пластиковий корпус, ультразвукові датчики, п’єзозумпер, дроти та адаптер живлення

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

Датчики HC-SR04 показують по чотири висновки:

  • VCC (джерело живлення до 5 В)
  • Тригер
  • Відлуння
  • Земля

Для більш детального пояснення функцій цих модулів відвідайте цей попередній підручник: Використання Arduino з деталями та датчиками - ультразвуковий датчик

На малюнку 2 нижче показано схему підключення автомобільних датчиків та звукових сигналів до Arduino.

Рисунок 2: Діаграма дроту Arduino, ультразвукових датчиків та п’єзозумперів

Крок 2: Програмування Arduino

Почнемо писати програму. Загалом, для будь-якої мікропрограми мікроконтролера ми можемо знайти такі чотири елементи:

  • Визначення глобальних цінностей та бібліотек
  • Функція налаштування
  • Функція петлі
  • Інші функції

На відміну від розробки програмного забезпечення, при програмуванні мікроконтролерів ми зазвичай маємо певні обмеження щодо того, наскільки великий може бути наш код. Мій Arduino Uno поставляється з Atmega328, який має 32 Кб пам'яті. Для цього конкретного додатку цього більш ніж достатньо.

Функції pinMode () та digitalWrite () - це зручні способи роботи з контактами мікроконтролера. Ми будемо використовувати функцію pinMode () для встановлення напрямку вказаних штифтів. Напрямок може бути як вхідним, так і вихідним. Як тільки ви встановите напрямок, штифт буде працювати лише в цьому напрямку. Ми будемо використовувати функцію digitalWrite (), щоб встановити вказаний цифровий штифт на ВИСОКИЙ або НИЗКИЙ. Тут я встановив контакт 2 як ще один додатковий заземлювач, який мені потрібен для підключення контакту GND одного з пристроїв.

Для простоти я визначив функцію (обчислити відстань (ехо, тригер, зумер), яка буде використана спочатку в одному з датчиків, а в другому датчику.

Спочатку ми активуємо пін (тригер), тому що це займе деякий час, щоб надіслати нам інформацію про інший пін (ехо). За допомогою цього інтервалу часу ми можемо зробити деякі припущення і розрахувати відстань (швидкість звуку становить 340 м/с або 29 мікросекунд на сантиметр). Ця відстань послужить параметром для встановлення того, як часто видавати звуковий сигнал у 2000 Гц (я знайшов це методом спроб і помилок, не соромтеся змінити його на бажаний рівень).

Я використовував кілька вбудованих функцій, таких як тон (пін, частота, тривалість), digitalWrite (пін), delayMicroseconds (тривалість) та pulseIn (пін, значення).

Крок 3: Підготовка вдалої стратегії складання

Знайдіть водонепроникну зону в задній частині вашого автомобіля. Тут будуть встановлені датчики. У своїй машині у мене було кілька варіантів:

  • Всередині кришки задніх ліхтарів
  • Біля лампочок номерного знака
  • На задніх бамперах

Якщо ви повинні були розмістити автомобільні датчики або всередині кришок заднього світла, або на задніх бамперах, ви повинні просвердлити отвори, щоб ультразвукові хвилі могли потрапляти і виходити. На жаль, ці отвори також дозволять потрапляти воді (дощ, бризки тощо), якщо вони не зроблені дуже добре. Гідроізоляція їх герметиком не є можливим варіантом, оскільки ультразвукові хвилі не зможуть це зробити. Крім того, у вас виникне додаткова складність калібрування положення отворів щодо датчика, щоб уникнути ефектів дифракції.