Съдържание:

Aquarium Light PWM с Arduino: 3 стъпки
Aquarium Light PWM с Arduino: 3 стъпки

Видео: Aquarium Light PWM с Arduino: 3 стъпки

Видео: Aquarium Light PWM с Arduino: 3 стъпки
Видео: SKR Pro v1.2 - TMC2226 UART with Sensorless Homing 2024, Ноември
Anonim
Aquarium Light PWM с Arduino
Aquarium Light PWM с Arduino

Наскоро превърнах аквариумните си светлини от флуоресцентно осветление в LED и реших да опитам да симулирам естествена среда, където светлината постепенно се увеличава от зори до обяд и след това намалява до здрач. През нощта обикновено има малко светлина от луната.

По принцип LED осветлението се захранва от 12V захранване и arduino контролира интензивността на светлината, като модулира напрежението с помощта на n-канален MOSFET (използвал съм IRFS630). Arduino може да се захранва от същото захранване, но аз използвах отделен 5V USB PS за arduino и го захранвах през USB, а не чрез Vin.

Силата на светлината може да не е най -точната, но е най -добрата, за която се сещам. Моделът може да бъде променен чрез кода.

Стъпка 1: Необходими части

Необходими части
Необходими части
Необходими части
Необходими части
Необходими части
Необходими части
Необходими части
Необходими части

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

Ето списък на частите, които използвах:

1. Arduino nano - 1 бр

2. LCD 1602 дисплей - 1 бр

3. IIC/I2C адаптер за LCD 1602 - 1 бр

4. DS1302 RTC - 1 бр. (С батерия CR2032)

5. бутон с капак - 1 бр

6. n -канал MOSFET (използвах IRFS630) - 1 бр

7. 10K ом резистор - 1 бр

8. По избор - някои хора казват, че трябва да използвате резистор между pwm щифта arduino и портата на MOSFET, за да защитите aruino, други хора казват, че не го правите, поне не за приложения с ниска мощност, аз не съм използвал нито едно и то работи добре, доста под 20 mA, извлечен от щифта на arduino, но ако искате, можете да използвате 100 омов резистор.

АКТУАЛИЗАЦИЯ: След 2 месеца тестване стигнах до заключението, че 100 ома е задължителен! arduino продължаваше да блокира без него, на случаен принцип. Сега работи перфектно

Ще ви трябват и инструменти за запояване за запояване на I2C адаптера към LCD дисплея и ако искате да го направите както направих на прототипна платка или на печатна платка. Използвах щифтове за заглавки за свързване на arduino, защото това ми дава свобода да извличам arduino, да го програмирам и да го поставя отново (и е по -лесно да го замените).

9. По избор - прототипна платка / печатна платка

10. По избор - щифтове за заглавки - с 15 или повече пина всеки - 2 броя (необходими за свързване на arduino nano към платката)

Това е всичко, сега да се захващаме за работа!

Стъпка 2: Сглобяване на нещата

Сглобяване на нещата
Сглобяване на нещата
Сглобяване на нещата
Сглобяване на нещата
Сглобяване на нещата
Сглобяване на нещата

Първо трябва да запоите адаптера IIC/I2C с LCD 1602 (работи и с други LCD дисплеи като 2004 г.). Използвайте предоставената схема за това.

Сега, ако искате да използвате макет, просто следвайте схемата и се уверете, че само заземяването е общо за LED захранването и захранването arduino, ако използвате 5V PS за arduino (на USB кабел), в противен случай можете да свържете същия PS през Vin pin на arduino.

Ако искате да използвате печатна платка или прототипна платка, просто следвайте схемата за свързване на компоненти, дизайнът зависи от вас, просто не забравяйте да проверите двойно връзките в края.

На адаптера I2C, напротив щифтовете за захранване и данни, има джъмпер, който захранва захранването на задната светлина на LCD дисплея, като при това светлината на LCD дисплея остава включена непрекъснато. Свържете бутончето тук, за да го осветите само когато е необходимо. Можете да използвате други видове бутони или превключватели, ако желаете.

Включих и схемата за фризиране.

_

PS = Захранване (ако някой се чуди)

PCB = печатна платка

Стъпка 3: Поставете някакъв код в MCU

Прикачих.ino файла и двете библиотеки, които използвах, така че няма да има несъвместимост. Кодът е обяснен във файла.ino.

Също така за адреса на дисплея на I2C можете да използвате прикачения i2c-scanner.ino, за да го разберете.

Всички коментари или предложения са добре дошли. Забавлявай се!

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