Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Датчик парковочного радара

Компоненты и расходные материалы

Arduino UNO
× 1
Ультразвуковой датчик - HC-SR04 (общий)
× 1
Мини-дисплеи батареи
× 1

Об этом проекте

Привет, этот проект посвящен самодельному парковочному радарному датчику, его очень легко сделать, он основан на ультразвуковом датчике HC SR-04, я использую 3 из них:по одному для каждой стороны и один для середины, затем 2 мини дисплеи батареи, которые на самом деле созданы, чтобы показать вам состояние батареи, но здесь я использую их, чтобы показать расстояние между датчиками и препятствиями, в зависимости от того, с какой стороны, также это зависит от максимального расстояния, которое вы можете установить , выше этого расстояния всегда считается достаточно места, ниже отображение будет меняться в зависимости от этого расстояния и его направления.

Детали

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

Работает

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

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

Если середина ближайшая оба дисплея будут меняться в зависимости от расстояния.

Если правая сторона ближайшая правый дисплей изменится и станет ниже левого.

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

Примеры

Вот несколько случаев, которые можно легко объяснить

Последний случай может произойти, если у вас есть препятствия посередине и справа (правое ближе), или слева и справа (правая сторона ближе), или со всех сторон, но (правая ближе).

Улучшения:

- Вы можете добавить другие датчики, чтобы охватить большую площадь

- Добавить экран для отображения значения расстояния

- Поменять датчики на водонепроницаемые типа JSN SR-04

- Добавить звук

Код

  • Parking_sensor_v1.ino
Parking_sensor_v1.ino Arduino
 / * Этот код предназначен для работы с ультразвуковыми модулями HC-SR04 x3 и дисплеем батареи TM1651 x2 * Проект представляет собой датчик парковки, который показывает вам, насколько близко находятся препятствия и откуда * в зависимости от Maxdistance, которое над ним на дисплее отобразится безопасное расстояние *, ниже которого оно начнет меняться * См. www.SurtrTech.com для получения более подробной информации * / # include  #define CLK 3 // Подключение правого дисплея # define DIO 2 # define CLK2 5 // Подключение левого дисплея # define DIO2 4 # define trigPin 6 // Подключение ультразвуковых модулей R =правое L =левое, второй - средний # определение echoPin 7 # определение trigPinR 8 # определение echoPinR 9 # определение trigPinL 10 # определение echoPinL 11 #define Maxdistance 20 // Максимальное расстояние 20 см, длительность; int distance; TM1651 DisplayR (CLK, DIO); // Отображение экземпляров TM1651 DisplayL (CLK2, DIO2); void setup () {pinMode (trigPin, OUTPUT); // Режимы контактов HC-SR04 и запуск дисплеев pinMode (echoPin, INPUT); pinMode (trigPinR, ВЫХОД); pinMode (echoPinR, ВХОД); pinMode (trigPinL, ВЫХОД); pinMode (echoPinL, ВХОД); DisplayR.init (); DisplayR.set (САМЫЙ ЯРКИЙ); DisplayL.init (); DisplayL.set (САМЫЙ ЯРКИЙ);} void loop () {int distanceM =CDistance (trigPin, echoPin); // Расчет всех расстояний путем вызова функции ниже int distanceR =CDistance (trigPinR, echoPinR); int distanceL =CDistance (trigPinL, echoPinL); int R =min (distanceM, distanceR); // У нас есть два дисплея R и L, сначала мы берем минимальное расстояние между M / R и M / L int L =min (distanceM, distanceL); if (R> 0 &&R  Maxdistance) // Мы в безопасности, и на дисплеях всегда отображается достаточно места DisplayR.displayLevel (7); if (L> 0 &&L  Maxdistance) DisplayL.displayLevel (7); delay (50);} int CDistance (int a, int b) {// Функция вычисления расстояния, она принимает два аргумента (Trigger и Echo) и выполняет обычный процесс HC-SR04 digitalWrite (a, LOW); delayMicroseconds (2); digitalWrite (а, ВЫСОКИЙ); delayMicroseconds (10); digitalWrite (а, НИЗКИЙ); duration =pulseIn (b, HIGH); расстояние =продолжительность * (0,034 / 2); расстояние возврата; // Возвращаем рассчитанное расстояние} 
Библиотека дисплея батареи TM1651
Библиотека значительно упрощает эту работу https://github.com/ne0x/fuel_display

Схема


Производственный процесс

  1. Что такое радарный датчик:работа и его применение
  2. Работа датчика парковки и его применение
  3. Что такое датчик O2?
  4. Mouser представляет новую сенсорную технологию на выставке Sensors Expo 2019
  5. Ambarella для приобретения Oculii и расширения возможностей объединения радаров и датчиков
  6. Датчик движения с использованием Raspberry Pi
  7. Датчик влажности почвы Raspberry Pi
  8. Датчик температуры Raspberry Pi
  9. Использование импульсного радиолокационного датчика A111 с Raspberry Pi
  10. Датчик эмоций / ЭЭГ