Оглавление:

: 6 шагов (с изображениями)
: 6 шагов (с изображениями)

Видео: : 6 шагов (с изображениями)

Видео: : 6 шагов (с изображениями)
Видео: КАК ЗАСТАВИТЬ ЛЮБОЙ ТЕЛЕВИЗОР ПОКАЗЫВАТЬ ХОРОШО - ШЕСТЬ НАСТРОЕК 2024, Ноябрь
Anonim
Изображение
Изображение

Шаг 1. Детали и инструменты

Запчасти и инструменты
Запчасти и инструменты
Запчасти и инструменты
Запчасти и инструменты

Детали: ~ 2 сервомотора - местный магазин электроники ~ 4 x LDR - местный магазин электроники ~ 4 резистора по 10 кОм - местный магазин электроники ~ Arduino Uno - Sparkfun.com ~ 2 резистора по 50 кОм - местный магазин электроники Инструменты: ~ паяльник - Sparkfun.com ~ Solder Wire - Sparkfun.com ~ Jumper Wires - Sparkfun.com ~ Protoboard - Local Electronics Store Все детали будут стоить вам менее 30 $ (за исключением arduino и всех инструментов)

Шаг 2: Постройте схему

Постройте схему
Постройте схему
Постройте схему
Постройте схему
Постройте схему
Постройте схему

Схема довольно проста: подключите четыре LDR к аналоговым контактам 0, 1, 2 и 3 соответственно через резистор 10 кОм. Подключите два сервопривода к цифровым контактам 9 и 10 соответственно. Подключите два переменных резистора к аналоговым контактам 4 и 5. a Посмотрите на изображения, которые действительно помогают. Посмотрите на последнее изображение принципиальной схемы (оно может быть самым плохим из всех, что вы когда-либо видели).

Шаг 3: Соберите датчик в сборе

Соберите датчик в сборе
Соберите датчик в сборе
Соберите датчик в сборе
Соберите датчик в сборе
Соберите датчик в сборе
Соберите датчик в сборе

Чтобы собрать датчик в сборе, возьмите два прямоугольных куска картона, прорежьте длинный разрез в середине первого картонного куска, сделайте короткий разрез посередине второго картонного куска, а затем пересеките их оба и аккуратно закрепите их, используя немного Лента. Он должен выглядеть как трехмерный крест с 4 секциями … Мы должны разместить наши четыре LDR в этих четырех секциях креста. Смотрите изображения, которые действительно помогают.

Шаг 4. Настройте его

Настроить
Настроить

Найдите основу (в моем случае - бутылку Nescafe) и прикрепите к ней свой первый сервопривод, затем к ротору первого сервопривода подключите второй сервопривод. К ротору второго сервопривода подключите датчик, который мы сделали ранее. выньте его на солнце, и он должен автоматически выровняться по направлению к солнцу. В помещении он будет выравниваться с самым ярким источником света в комнате. Взгляните на фотографии, которые действительно помогают.

Шаг 5: Код

Вот код вашего робота для отслеживания солнечного излучения: #include // include Servo library Servo horizontal; // горизонтальный сервопривод int servoh = 90; // стенд горизонтальный сервопривод сервопривод вертикальный; // вертикальный сервопривод int servov = 90; // вертикальный сервопривод стойки // Подключение выводов LDR // name = analogpin; int ldrlt = 0; // LDR вверху слева int ldrrt = 1; // LDR top right int ldrld = 2; // LDR вниз влево int ldrrd = 3; // ldr down right void setup () {Serial.begin (9600); // сервоподключения // name.attacht (pin); горизонтальный. прикрепить (9); вертикальный. прикрепить (10); } void loop () {int lt = analogRead (ldrlt); // слева вверху int rt = analogRead (ldrrt); // справа вверху int ld = analogRead (ldrld); // вниз влево int rd = analogRead (ldrrd); // вниз справа int dtime = analogRead (4) / 20; // считываем потенциометры int tol = analogRead (5) / 4; int avt = (lt + rt) / 2; // среднее значение top int avd = (ld + rd) / 2; // среднее значение вниз int avl = (lt + ld) / 2; // среднее значение осталось int avr = (rt + rd) / 2; // среднее значение справа int dvert = avt - avd; // проверяем разницу вверх и вниз int dhoriz = avl - avr; // проверяем разницу og left и right if (-1 * tol> dvert || dvert> tol) // проверяем, находится ли разница в допуске else изменить вертикальный угол {if (avt> avd) {servov = ++ servov; если (servov> 180) {servov = 180; }} else if (avt <avd) {servov = --servov; если (servov <0) {servov = 0; }} vertical.write (сервов); } if (-1 * tol> dhoriz || dhoriz> tol) // проверяем, находится ли разница в допуске, иначе измените горизонтальный угол {if (avl> avr) {servoh = --servoh; если (сервох <0) {сервох = 0; }} иначе, если (avl <avr) {servoh = ++ servoh; если (сервох> 180) {сервох = 180; }} else if (avl = avr) {// ничего} horizontal.write (servoh); } задержка (dtime); }

Шаг 6: Готово

Все сделано!
Все сделано!

Надеюсь, этот проект вдохновит на дальнейшие эксперименты. Плата Arduino невероятно универсальна, дешева и доступна всем любителям. Это лишь один из многих простых проектов, которые можно построить с помощью Arduino. Продолжайте размышлять!. Не забывайте следить за новостями. По любым вопросам обращайтесь ко мне, вот мой идентификатор электронной почты [email protected]

Рекомендуемые: