Съдържание:

Автоматично проследяване на източника на светлина: 5 стъпки
Автоматично проследяване на източника на светлина: 5 стъпки

Видео: Автоматично проследяване на източника на светлина: 5 стъпки

Видео: Автоматично проследяване на източника на светлина: 5 стъпки
Видео: Универсалните Принципи на Хермес за Живота - 8-те Принципа на Живота - ЗАЕДНО ЗА 1: Епизод 5 2024, Ноември
Anonim
Автоматично проследяване на източника на светлина
Автоматично проследяване на източника на светлина

В този урок ще използваме серво мотор, фоторезистор и издърпващ се резистор, за да сглобим система за автоматично проследяване на източника на светлина.

Стъпка 1: Компоненти:

- дъска Arduino Uno * 1

- USB кабел * 1

- Серво мотор * 1

- фоторезистор * 1

- Резистор (10k) * 1

- Платформа * 1

- Джъмперни проводници

Стъпка 2: Принцип

Сервомоторът и фоторезисторът сканират и търсят източник на светлина на 180 градуса и записват местоположението на източника на светлина. След приключване на сканирането, серво моторът и фоторезисторът спират по посока на източника на светлина.

Стъпка 3: Процедури:

Процедури
Процедури
Процедури
Процедури
Процедури
Процедури

Етап 1:

Изградете веригата.

Стъпка 2:

Изтеглете кода от

Стъпка 3:

Качете скицата на дъската Arduino Uno

Щракнете върху иконата за качване, за да качите кода на контролната платка.

Ако в края на прозореца се появи „Готово качване“, това означава, че скицата е качена успешно.

Сега, ако използвате фенерче, за да осветите фоторезистора, ще видите серво мотора и фоторезистора да се въртят и накрая да се спрат по посока на източника на светлина.

Стъпка 4: Схематична диаграма

Схематична диаграма
Схематична диаграма

Стъпка 5: Код

Код
Код
Код
Код
Код
Код

/********************************************************************

* име:

Автоматично проследяване на източника на светлина

* функция

: ако използвате фенерче, за да осветите фоторезистора, * ще видиш

сервомоторът и фоторезисторът се въртят, * и накрая

спрете по посока на източника на светлина.

***********************************************************************

/Имейл: [email protected]

// Уебсайт: www.primerobotics.in

#включва

const int фотоелементPin = A0;

/************************************************/

Servo myservo; // създаване на серво обект за управление на серво

int outputValue = 0;

int ъгъл = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180};

int maxVal = 0;

int maxPos = 0;

/*************************************************/

void setup ()

{

Serial.begin (9600);

myservo.attach (9); // прикрепя серво на щифт 9 към серво обект

}

/*************************************************/

void loop ()

{

за (int i = 0;

i <19; i ++)

{

myservo.write (ъгъл ); // запис на ъгъла към серво

outputValue

= analogRead (photocellPin); // прочетете стойността на A0

Serial.println (outputValue); // отпечатайте го

if (outputValue> maxVal) // ако текущата стойност на A0 е по -голяма от предишната

{

maxVal = outputValue; // запишете стойността

maxPos

= i; //

}

забавяне (200);

}

myservo.write (ъгъл [maxPos]); // запишете ъгъла към серво, който A0 има най -голяма стойност

докато (1);

}

Препоръчано: