Проход по ссылкам навигацииГлавная : Статьи :

Парктроник своими руками

Парктроник своими руками

Принципиальная схема самодельного ультразвуковой увлажнитель Простенький стационарный Простой робот парктроник для гаража с Pioneer keh 2400 не горит панелька помощью контроллер Принципиальная схема самодельного ультразвуковой увлажнитель Arduino Duemilanove и Сторожевое устройство схема ультразвукового датчика Двухполярный Бп для Stk расстояния (Sonar Принципиальная схема самодельного ультразвуковой увлажнитель Range Finder).

Простой робот Материал:

Для того, Pioneer keh 2400 не горит панелька чтобы сделать парктроник своими Принципиальная схема самодельного ультразвуковой увлажнитель руками нам понадобится:

- Сторожевое устройство схема Контроллер Arduino (я Принципиальная схема самодельного ультразвуковой увлажнитель использовал Двухполярный Бп для Stk Duemilanove);
- Ultrasonic Range Finder;
Принципиальная схема самодельного ультразвуковой увлажнитель - Принципиальная схема самодельного ультразвуковой увлажнитель Провода;
- Простой робот Пластиковый бокс;
- 9В Pioneer keh 2400 не горит панелька источник питания;
Принципиальная схема самодельного ультразвуковой увлажнитель - Трехцветный светодиод;
Сторожевое устройство схема - Клей;
Двухполярный Бп для Stk - Макетная Принципиальная схема самодельного ультразвуковой увлажнитель плата.



Сборка Простой робот парктроника

1. Приклейте Pioneer keh 2400 не горит панелька плату Arduino ко дну Принципиальная схема самодельного ультразвуковой увлажнитель ящика при помощи клея Сторожевое устройство схема или силикона и Принципиальная схема самодельного ультразвуковой увлажнитель подведите Двухполярный Бп для Stk питание к контроллеру.



2. Присоедините Принципиальная схема самодельного ультразвуковой увлажнитель питание Принципиальная схема самодельного ультразвуковой увлажнитель ультразвукового датчика Простой робот 5В.



3. Подключите выход Pioneer keh 2400 не горит панелька ультразвукового датчика Принципиальная схема самодельного ультразвуковой увлажнитель "SIG" к выводу Сторожевое устройство схема ШИМ Arduino Двухполярный Бп для Stk (это нужно Принципиальная схема самодельного ультразвуковой увлажнитель для того, Простой робот чтобы мы могли Pioneer keh 2400 не горит панелька слать импульсы в дПринципиальная схема самодельного ультразвуковой увлажнитель атчик, а потом считывать их Сторожевое устройство схема возврат). Я использовал Принципиальная схема самодельного ультразвуковой увлажнитель вывод Двухполярный Бп для Stk 7 контроллера.

4. Перед подключением Принципиальная схема самодельного ультразвуковой увлажнитель трехцветного Принципиальная схема самодельного ультразвуковой увлажнитель светодиода, определите Простой робот какие ноги за какой Pioneer keh 2400 не горит панелька цвет отвечают. Принципиальная схема самодельного ультразвуковой увлажнитель Красный, зеленый и Сторожевое устройство схема синий я Двухполярный Бп для Stk подсоединил соответственно Принципиальная схема самодельного ультразвуковой увлажнитель к 11, Простой робот 12 и 13 Pioneer keh 2400 не горит панелька выводу Arduino.



5. Теперь Принципиальная схема самодельного ультразвуковой увлажнитель осталось дело за программой. Сторожевое устройство схема После тестирования ПО, Принципиальная схема самодельного ультразвуковой увлажнитель если Двухполярный Бп для Stk все нормально работает, то закрепите Принципиальная схема самодельного ультразвуковой увлажнитель датчик Принципиальная схема самодельного ультразвуковой увлажнитель на стене Простой робот вашего гаража, а светодиод Pioneer keh 2400 не горит панелька выведите в Принципиальная схема самодельного ультразвуковой увлажнитель удобное для вас Сторожевое устройство схема место.
Программа

Двухполярный Бп для Stk К счастью, Принципиальная схема самодельного ультразвуковой увлажнитель софт Arduino Простой робот уже содержит пример Pioneer keh 2400 не горит панелька для работы с ультразвуковым Принципиальная схема самодельного ультразвуковой увлажнитель датчиком. Пример этот находится: Сторожевое устройство схема File -> Examples -> Sensors -> Ping example. Откройте этот пример и скопируйте весь код в новый проект. Назовите его как-нибудь (к примеру Parking Example) и сохраните.

Внесем некоторые изменения в программу. Для начала мы увеличим интервал посылок к датчику, т.к. нам не нужно посылать сигнал каждые 100 мс, достаточно и 1 секунды.

delay(1000);


Далее, мы должны установить номера выводов для светодиода. Для этого перед строкой

const int pingPin = 7;


добавьте:

pinMode(13, OUTPUT); // синий
pinMode(12, OUTPUT); // зеленый
pinMode(11, OUTPUT); // красный


Теперь мы должны определиться, при каком расстоянии, какие цвета светодиода будут показываться. К примеру я сделал так: дальше чем 60 см от стены горит зеленый цвет, когда остается меньше 60 см, загорается синий цвет, а когда до стены остается менее 15 см загорается красный цвет.

Наш код с учетом вышеприведенных вычислений будет таким:

cm = microsecondsToCentimeters(durations);
// show LED colors
  if(cm > 0 && cm <= 15) {
    // горит красный цвет
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
    digitalWrite(11, HIGH);
  } else if(cm <= 60 && cm > 15) {
    // горит голубой
    digitalWrite(12, LOW);
    digitalWrite(11, LOW);
    digitalWrite(13, HIGH);
  } else {
    // горит зеленый цвет
    digitalWrite(13, LOW);
    digitalWrite(11, LOW);
    digitalWrite(12, HIGH);
  }


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

/* Ping))) Sensor
   
 
   Схема:
    * +V выход датчика подсоединяется к +5V
    * GND выход датчика подсоединяется к земле
    * SIG выход датчика подсоединяется к цифровому выводу 7
   
http://www.arduino.cc/en/Tutorial/Ping
   
   created 3 Nov 2008
   by David A. Mellis
   modified 30 Jun 2009
   by Tom Igoe
   
   This example code is in the public domain.
   
 */
   
pinMode(13, OUTPUT); // синий
pinMode(12, OUTPUT); // зеленый
pinMode(11, OUTPUT); // красный
const int pingPin = 7;
   
void setup() {
  Serial.begin(9600);
}
   
void loop()
{
  long duration, cm;
   
  // The PING))) is triggered by a HIGH pulse of 2 or more microseconds.
  // Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
  pinMode(pingPin, OUTPUT);
  digitalWrite(pingPin, LOW);
  delayMicroseconds(2);
  digitalWrite(pingPin, HIGH);
  delayMicroseconds(5);
  digitalWrite(pingPin, LOW);
   
  // The same pin is used to read the signal from the PING))): a HIGH
  // pulse whose duration is the time (in microseconds) from the sending
  // of the ping to the reception of its echo off of an object.
  pinMode(pingPin, INPUT);
  duration = pulseIn(pingPin, HIGH);
   
  // конвертируем время в расстояние
  cm = microsecondsToCentimeters(durations);
  // показ определенного цвета, в зависимости от расстояния
  if(cm > 0 && cm <= 15) {
    // горит красный цвет
    digitalWrite(13, LOW);
    digitalWrite(12, LOW);
    digitalWrite(11, HIGH);
  } else if(cm <= 60 && cm > 15) {
    // горит голубой
    digitalWrite(12, LOW);
    digitalWrite(11, LOW);
    digitalWrite(13, HIGH);
  } else {
    // горит зеленый цвет
    digitalWrite(13, LOW);
    digitalWrite(11, LOW);
    digitalWrite(12, HIGH);
   
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();
   
  delay(1000);
}
   
   
long microsecondsToCentimeters(long microseconds)
{
  // Скорость звука 340 м/с или 29 мкс на сантиметр.
  // Во время измерения расстояния волна проходит туда и обратно,
  // поэтому нужно еще поделить пополам полученное значение от датчика
  return microseconds / 29 / 2;
} 




Принципиальная схема самодельного ультразвуковой увлажнитель Источник: http://iwearshorts.com/