Სარჩევი:

ESP8266 PWM- ის გამოყენება პოტენციომეტრით: 4 ნაბიჯი
ESP8266 PWM- ის გამოყენება პოტენციომეტრით: 4 ნაბიჯი

ვიდეო: ESP8266 PWM- ის გამოყენება პოტენციომეტრით: 4 ნაბიჯი

ვიდეო: ESP8266 PWM- ის გამოყენება პოტენციომეტრით: 4 ნაბიჯი
ვიდეო: ESP8266 Diesel Injector Purging Station - PWM NodeMCU pump flow Control (Subtittled) 2024, ნოემბერი
Anonim
Image
Image
მიზანი
მიზანი

მათთვის, ვინც არ არის მიჩვეული ელექტრონიკას, PWM ნიშნავს ენერგიის კონტროლს. და ამ შეკრებაზე, ჩვენ ვაჩვენებთ, თუ როგორ გამოვიყენოთ იგი LED სინათლის ინტენსივობის გასაკონტროლებლად, ნათურაზე დაბნელების მსგავსი, დაბნელებისა და გაბრწყინების ვარიანტებით.

ეს მექანიზმი ასევე საშუალებას გაძლევთ, მაგალითად, დააკავშიროთ მძღოლი ძრავას. ეს მხოლოდ ერთ -ერთია მრავალი შესაძლებლობიდან.

- შენიშვნა: PWM ნიშნავს პულსის სიგანის მოდულაციას.

ნაბიჯი 1: მიზანი

შეკრება შედგება პოტენომეტრისგან, რომელიც არის ცვლადი რეზისტორი, მონიტორინგი ESP. ამ სქემაში, მე ვიყენებ იმავე წყაროს კოდს, რომელსაც გამოვიყენებდი Arduino– სთან ერთად. მრავალი უპირატესობის გამო, ჩვენ ვიყენებთ Arduino IDE– ს ESP– ით სხვა პროექტებშიც.

შეკრებაზე, ESP უკავშირდება USB- ს მხოლოდ დენის წყაროსთვის. ჩვენ ასევე გვაქვს კურსორის პინი, რომელიც არის ცენტრალური პოტენომეტრის პინი, რომელიც დაკავშირებულია AD პორტში და დადებითი და უარყოფითი.

როგორც ძაბვა იცვლება, ასევე შესაძლებელია სხვა მნიშვნელობის წაკითხვა ახ.წ. ამიტომ, პოტენომეტრის შემობრუნებით, შესაძლებელია LED- ის სიკაშკაშის გაზრდა ან შემცირება.

ნაბიჯი 2: შეკრება

შეკრება
შეკრება

ელექტრული სქემა ძალიან მარტივია: ESP8266- ის გამოყენებით NodeMCU კონფიგურაციაში, ჩვენ დავამუშავებთ USB- ს. ასე რომ, აქ, პოტენომეტრი უნდა იყოს დაკავშირებული ერთი ბოლოდან ნეგატივამდე, ხოლო მეორე პოზიტივიდან. საშუალო, რომელიც არის კურსორი, რჩება ADC 0 – ში, რადგან ამ ESP– ს აქვს მხოლოდ პორტი, რომელიც კითხულობს ანალოგურ მნიშვნელობებს.

ნაბიჯი 3: WiFi ESP8266 NodeMCU ESP-12E

WiFi ESP8266 NodeMCU ESP-12E
WiFi ESP8266 NodeMCU ESP-12E

ნაბიჯი 4: წყაროს კოდი

Აწყობა

Setup ფუნქციაში ჩვენ განვსაზღვრავთ ქინძისთავების ქცევას, რომელსაც ჩვენ ვიყენებთ, ამ შემთხვევაში LED და POTENTIOMETER.

void setup () {Serial.begin (115200) // Instrução para colocar o gpio que iremos utilisar como entrada, // podemos fazer a leitura nesse pino pinMode (A0, INPUT); // A0 uma uma მუდმივი, რომელიც მითითებულია ან მიუთითებს ლინგომს, რომელიც შეიძლება გამოყენებულ იქნას // ინსტალაცია colocar ან gpio que iremos გამოყენება კომუნიკაციისთვის, // podemos alterar seu valor livremente მაღალი ან დაბალი pinMode (LED_BUILTIN, OUTPUT); // LED_BUILTIN ეს არის მუდმივი მითითება LED ან ESP8266}

მარყუჟი

ამ ფუნქციაში ლოგიკაა POT მნიშვნელობის წაკითხვა და ამ მნიშვნელობის მინიჭება (რაც არის სიკაშკაშის ინტენსივობა) LED- ში.

void loop () {// faz a leitura do pino A0 (no nosso caso, o potenciômetro, retorna um valor entre 0 e 1023) int potencia = analogRead (A0); Serial.println (potencia); // como o LED no ESP8266 trabalha de maneira contrária, ou seja, quanto maior o valor atribuído, menor a intensidade. Faremos o cálculo para aumentarmos o brilho conforme girarmos o potenciômetro em sentido horário. პოტენცია = 1023 - პოტენცია; // atribui o valor lido do potenciômetro para configurar intensidade do brilho do LED analogWrite (LED_BUILTIN, potencia); }

გირჩევთ: