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

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

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

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

Сторожевое устройство схема Материал:

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

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



Сборка Сторожевое устройство схема парктроника

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



2. Присоедините Pioneer keh 2400 не горит панелька питание Pioneer keh 2400 не горит панелька ультразвукового датчика Сторожевое устройство схема 5В.



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

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



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

Как умощнить блок питания от двд К счастью, Pioneer keh 2400 не горит панелька софт Arduino Сторожевое устройство схема уже содержит пример Простой робот для работы с ультразвуковым Pioneer keh 2400 не горит панелька датчиком. Пример этот находится: Двухполярный Бп для Stk 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;
} 




Pioneer keh 2400 не горит панелька Источник: http://iwearshorts.com/