Студопедия — Практическое занятие 8. Робот-светофил или следующий по линии на фоторезисторах
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Практическое занятие 8. Робот-светофил или следующий по линии на фоторезисторах






Реализация простейшего зрения, позволяющего определить направление на источник света или двигаться по линии на полу

Нужные компоненты:

· два фоторезистора

· два постоянных резистора на 10 кОм

· провода со штырьками на обоих концах: два красных (+5 В), четыре произвольного цвета (но не красного, синего или черного)

1. Соберите схему опроса двух фоторезисторов:

 

 

2. загрузите в контроллер следующую программу:

int photoPin1 = A0; // первый фоторезистор подключен к аналоговому входу A0 int photoPin2 = A1; // второй фоторезистор подключен к аналоговому входу A1 int ledPin1 = 3; // первый светодиод подключается к digital pin 3 int ledPin2 = 2; // первый светодиод подключается к digital pin 2 int val1 = 0; // значение с фоторезистора 1 int val2 = 0; // значение с фоторезистора 2   void setup() { Serial.begin(9600); pinMode(ledPin1, OUTPUT); pinMode(ledPin2, OUTPUT); }   void loop() { val1 = analogRead(photoPin1); // считываем значение с фоторезистора 1 val2 = analogRead(photoPin2); // считываем значение с фоторезистора 2 Serial.print("values: "); // выводим значения в COM-порт Serial.print(val1); Serial.print(": "); Serial.println(val2); if(val1==val2) // если значения равны - зажигаем оба светодиода { digitalWrite(ledPin1, HIGH); digitalWrite(ledPin2, HIGH); Serial.println("forward"); // едем вперед } else { if(val1>val2) // если освещённость первого больше – зажигаем { // первый светодиод, а второй гасим digitalWrite(ledPin1, HIGH); digitalWrite(ledPin2, LOW); Serial.println("left"); // едем влево } else // если освещённость второго больше – зажигаем { // второй светодиод, а первый гасим digitalWrite(ledPin2, HIGH); digitalWrite(ledPin1, LOW); Serial.println("right"); // едем вправо } } delay(200); }

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

 

Дополнительное практическое занятие: линейка светодиодов, количество горящих светодиодов зависит от уровня напряжения на датчике

Дополнительное практическое занятие: подключение Sound Sensor и его опрос программой AnalogInOutSerial







Дата добавления: 2015-08-29; просмотров: 648. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

ТРАНСПОРТНАЯ ИММОБИЛИЗАЦИЯ   Под транспортной иммобилизацией понимают мероприятия, направленные на обеспечение покоя в поврежденном участке тела и близлежащих к нему суставах на период перевозки пострадавшего в лечебное учреждение...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Менадиона натрия бисульфит (Викасол) Групповая принадлежность •Синтетический аналог витамина K, жирорастворимый, коагулянт...

Studopedia.info - Студопедия - 2014-2024 год . (0.013 сек.) русская версия | украинская версия