Სარჩევი:

ფერის შეცვლის LED: 13 ნაბიჯი
ფერის შეცვლის LED: 13 ნაბიჯი

ვიდეო: ფერის შეცვლის LED: 13 ნაბიჯი

ვიდეო: ფერის შეცვლის LED: 13 ნაბიჯი
ვიდეო: Samsung ინვერტორული მაცივარი ყველა LED მოციმციმე შეცდომის კოდი (1/2/3/5/6/9/11/13 დრო) 2024, ნოემბერი
Anonim
ფერის შეცვლის LED
ფერის შეცვლის LED
ფერის შეცვლის LED
ფერის შეცვლის LED
ფერის შეცვლის LED
ფერის შეცვლის LED

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

სავარაუდო ღირებულება:

$ 37 - Elegoo Super Starter ნაკრები (მოიცავს ყველა მარაგს)

$ 53 - ყველა მარაგის ინდივიდუალურად შესაძენად

Სასარგებლო ბმულები:

RGB LED -

create.arduino.cc/projecthub/muhammad-aqib…

ფოტო უჯრედი -

create.arduino.cc/projecthub/MisterBotBreak/how-to-use-a-photoresistor-46c5eb

Arduino პროგრამული უზრუნველყოფა -

www.arduino.cc/en/software

Elegoo Super Start ნაკრები -

www.amazon.com/gp/product/B01D8KOZF4/ref=p…

მარაგები

- 1 RGB LED

- 1 ფოტოცელი (იგივე ფოტორეზისტორი)

- 1 Arduino UNO დაფა

- 1 დაფა

- 1 USB კაბელი არდუინოსთვის

- 7 მხტუნავი მავთული

- 3 220 ოჰმის რეზისტორი

- 1 10k ohm რეზისტორი

- Arduino პროგრამული უზრუნველყოფა (უფასო ჩამოტვირთვა)

სურვილისამებრ

- ცხვირის ნემსის ცხვირი

ნაბიჯი 1: დააყენეთ LED პურის დაფაზე

დააყენეთ LED Breadboard- ზე
დააყენეთ LED Breadboard- ზე
დააყენეთ LED Breadboard- ზე
დააყენეთ LED Breadboard- ზე
დააყენეთ LED Breadboard- ზე
დააყენეთ LED Breadboard- ზე

პირველ რიგში RGB LED უნდა იყოს სათანადოდ დაყენებული პურის დაფაზე

განათავსეთ LED თითოეული ოთხი ფეხიდან იმავე სვეტის ცალკეულ ხვრელებში (ასოებით არის მითითებული). ყველაზე გრძელი ფეხი უნდა იყოს მეორე ფეხი ზემოდან.

ყველაზე გრძელი ფეხის რიგში (რიცხვებით არის მითითებული) შეაერთეთ მხტუნავის მავთულის ერთი ბოლო.

სამი მოკლე ფეხიდან თითოეულისთვის მოათავსეთ ერთი 220 ოჰმიანი რეზისტორი. თითოეულ რეზისტორს უნდა ჰქონდეს ორივე ფეხი იმავე რიგში, როგორც LED ფეხები. ეს არის ის, სადაც მე გამოვიყენებდი ნემსის ცხვირსახოცს, რადგან რეზისტორების ფეხების ხელით შეკვრა ძნელია.

შეაერთეთ სამი ჯუმბერის მავთული რეზისტორის მხარეს LED– ის მოპირდაპირედ. ამ სამი რიგისთვის უნდა იყოს ერთი ჯუმბერის მავთული, ერთი რეზისტორი და ერთი ფეხი LED.

ნაბიჯი 2: დააყენეთ LED არდუინოზე

დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე
დააყენეთ LED არდუინოზე

ახლა, როდესაც LED სათანადოდ არის დაყენებული breadboard– ზე, ის უნდა იყოს დაკავშირებული Arduino– სთან.

პირველი ჯუმბერის მავთული, რომელიც დაკავშირებულია ყველაზე გრძელ ფეხს (უნდა იყოს LED- ის მეორე რიგი) უნდა იყოს მიწასთან დაკავშირებული, რომელიც მითითებულია "GND" არდუინოზე.

დანარჩენი სამი ჯუმბერის მავთული, დაღმავალი თანმიმდევრობით, უნდა იყოს შეყვანილი 11, 10 და 9 პორტებში, მავთული ზედა რიგში უნდა იყოს დაკავშირებული 11 -თან, შემდეგი მავთული ქვემოთ (უნდა იყოს მესამე რიგი) აკავშირებს 10 -ს, და ბოლო მავთული უერთდება 9. ეს სამი მავთული უნდა იყოს ერთმანეთის პარალელურად და არ გადაფაროს.

ნაბიჯი 3: დააყენეთ Photocell Breadboard- ზე

დააყენეთ Photocell Breadboard- ზე
დააყენეთ Photocell Breadboard- ზე
დააყენეთ Photocell Breadboard- ზე
დააყენეთ Photocell Breadboard- ზე
დააყენეთ Photocell Breadboard- ზე
დააყენეთ Photocell Breadboard- ზე

იმისათვის, რომ LED რეაგირებდეს გარემოს სიკაშკაშეზე, მას სჭირდება ინფორმაციის მიღება სენსორისგან.

შეაერთეთ ფოტო უჯრედი პურის დაფაზე ორივე ფეხი ერთ სვეტში, ისევე როგორც LED იყო ჩართული.

შეაერთეთ 10k ohm რეზისტორი ერთი ფეხი იმავე რიგში, როგორც ფოტოელემენტის ქვედა ფეხი. შეაერთეთ რეზისტორის მეორე ფეხი იმავე სვეტში.

ნაბიჯი 4: დაუკავშირეთ Photocell არდუინოს

დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს
დაუკავშირეთ Photocell არდუინოს

შეაერთეთ ერთი ჯუმბერის მავთული იმავე რიგში, როგორც 10k ohm რეზისტორი, მაგრამ არა იმავე რიგში ფოტოელემენტი.

შეაერთეთ ამ ჯუმბერის მავთულის მეორე ბოლო მიწასთან (GND) არდუინოზე.

შეაერთეთ ორი განსხვავებული ჯუმბერის მავთული, ერთი იმავე რიგში, როგორც თითოეული უჯრედის ფეხი.

შეაერთეთ მავთული ყველაზე შორს ზემოდან არდუინოს 5 ვ პორტში.

შეაერთეთ მავთული ბოლოში ბოლოში, არდუინოს A0 პორტში.

ნაბიჯი 5: შეაერთეთ Arduino

შეაერთეთ არდუინო
შეაერთეთ არდუინო
შეაერთეთ არდუინო
შეაერთეთ არდუინო
შეაერთეთ არდუინო
შეაერთეთ არდუინო
შეაერთეთ არდუინო
შეაერთეთ არდუინო

ახლა, როდესაც პურის დაფა დაყენებულია და დაკავშირებულია Arduino– სთან, გამოიყენეთ USB კონექტორი, რათა დაუკავშიროთ Arduino თქვენს კომპიუტერს.

ნაბიჯი 6: დაიწყეთ თქვენი კოდი

დაიწყეთ თქვენი კოდი
დაიწყეთ თქვენი კოდი
დაიწყეთ თქვენი კოდი
დაიწყეთ თქვენი კოდი

Arduino პროგრამის გამოყენებით შექმენით ახალი ესკიზი.

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

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

int red_light_pin = 11; int green_light_pin = 10; int blue_light_pin = 9; int photocellReading = 0; int photocell = 5;

თუ შეამჩნევთ, ამ ცვლადებზე მინიჭებული რიცხვები შეესაბამება იმას, თუ სად არის მავთულები ჩართული არდუინოს დაფაზე.

ნაბიჯი 7: ბათილად დაყენება

ბათილად დაყენება
ბათილად დაყენება

შექმენით RGB LED როგორც გამომავალი.

pinMode (red_light_pin, OUTPUT); pinMode (green_light_pin, OUTPUT); pinMode (blue_light_pin, OUTPUT);

წამოიწყეთ სერიული მონიტორი, რათა ნახოთ ფოტოელემენტის კითხვა.

Serial.begin (9600); Serial.println ("სერიული მონიტორი დაიწყო"); დაგვიანებით (500); Serial.println ("."); დაგვიანებით (500); Serial.println ("."); დაგვიანებით (500); Serial.println ("."); დაგვიანება (500);

დარწმუნდით, რომ void კონფიგურაციის კოდი შეიცავს წყვილ ხვეულ ბრეკეტში {}

ნაბიჯი 8: ბათილი მარყუჟი

ბათილი მარყუჟი
ბათილი მარყუჟი
ბათილი მარყუჟი
ბათილი მარყუჟი

ჩაწერეთ კოდი void loop განყოფილებისთვის.

პირველი სურათის კოდი ბეჭდავს ფოტოელემენტის კითხვას ცალკეულ ხაზებზე. ეს უფრო ადვილად იკითხება.

int მნიშვნელობა = analogRead (A0); photocellReading = analogRead (photocell); Serial.println (photocellReading); დაგვიანება (40);

მეორე სურათის კოდი არის ის, რაც შეესაბამება კითხვის გარკვეულ მნიშვნელობებს, თუ რა ფერს აჩვენებს LED.

if (photocellReading 0) {RGB_color (255, 0, 0); // წითელი} if (photocellReading 99) {RGB_color (255, 255, 0); // ყვითელი} თუ (photocellReading 199) {RGB_color (0, 255, 0); // მწვანე} if (photocellReading 299) {RGB_color (0, 0, 255); // ცისფერი} if (photocellReading 399) {RGB_color (255, 0, 255); // მაგენტა}

RGB_color (0s და 255s) რიცხვითი მნიშვნელობების შეცვლა ცვლის რა ფერის ჩვენებას. ეს ის ფერებია, რომლებთანაც მე წავედი, მაგრამ მოგერიდებათ შეცვალოთ ან შეცვალოთ ისინი, როგორც გსურთ.

ორმაგად შეამოწმეთ რომ ბათილი მარყუჟის განყოფილება მოთავსებულია წყვილ ხვეულ ბრეკეტებში {}

ნაბიჯი 9: ფერის შეცვლა

ფერების შეცვლა
ფერების შეცვლა

ეს არის კიდევ რამდენიმე ფერი არჩევანისთვის წინა საფეხურისთვის. მე გამოვიყენე ეს კოდი, როგორც ესკიზის მითითება.

ნაბიჯი 10: საბოლოო RGB LED კოდი

საბოლოო RGB LED კოდი
საბოლოო RGB LED კოდი

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

ბათილია RGB_color (int red_light_value, int green_light_value, int blue_light_value) {analogWrite (red_light_pin, red_light_value); analogWrite (green_light_pin, green_light_value); analogWrite (blue_light_pin, blue_light_value); }

ისევე როგორც void setup და void loop სექციები, დარწმუნდით, რომ ეს სექცია მოთავსებულია წყვილ ხვეულ ბრეკეტებში {}

ნაბიჯი 11: გამოსცადეთ შუქები

გამოსცადეთ შუქები!
გამოსცადეთ შუქები!
გამოსცადეთ შუქები!
გამოსცადეთ შუქები!
გამოსცადეთ შუქები!
გამოსცადეთ შუქები!

ატვირთეთ კოდი Arduino დაფაზე პროგრამაში ატვირთვის ღილაკზე დაჭერით. თუ ეს სწორად გააკეთეთ, LED- მა უნდა აჩვენოს ფერი იმისდა მიხედვით, თუ რამდენად შუქია იქაურობა.

წითელი არის ყველაზე ბნელი გარემო, ყველაზე დაბალი ფოტოელემენტის კითხვა.

ყვითელი არის ოდნავ ნათელი გარემო/უფრო მაღალი უჯრედის კითხვა. გამოსახულებაში ის მეწამულად გამოიყურება, მაგრამ პირადად ყვითლად ბრწყინავდა.

მომდევნო სამი ფერი, მწვანე, ლურჯი და მეწამული, ყველა შეესაბამება ფოტოელემენტის თანდათანობით მაღალ მაჩვენებლებს.

ნაბიჯი 12: პრობლემების მოგვარება

Დიაგნოსტიკა
Დიაგნოსტიკა

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

დააწკაპუნეთ ინსტრუმენტებზე Arduino პროგრამის ზედა ნაწილში -> დააწკაპუნეთ სერიულ მონიტორზე.

უნდა გამოჩნდეს ფანჯარა, რომელიც აჩვენებს რიცხვების მიმდინარე ჩამონათვალს. შეცვალეთ if განცხადებების რიცხვი Void Loop ნაბიჯიდან.

ნაბიჯი 13: საბოლოო პროდუქტი

Საბოლოო პროდუქტი
Საბოლოო პროდუქტი

ყველა ამ ნაბიჯის შესრულებით, თქვენ უნდა მიიღოთ სინათლე, რომელიც იცვლის ფერს გარემოს სიკაშკაშედან გამომდინარე.

ჩემთვის, ჩემი ოთახის საშუალო სიკაშკაშეში, შუქი ანათებს მწვანე, მაგრამ მე შემიძლია ადვილად შეცვალო ფერი ან ფოტოს უჯრედის დაფარვით, ან გავზარდო რამდენია შუქი.

გირჩევთ: