Სარჩევი:

ფერის გამოვლენა RGB LED– ის გამოყენებით: 4 ნაბიჯი
ფერის გამოვლენა RGB LED– ის გამოყენებით: 4 ნაბიჯი

ვიდეო: ფერის გამოვლენა RGB LED– ის გამოყენებით: 4 ნაბიჯი

ვიდეო: ფერის გამოვლენა RGB LED– ის გამოყენებით: 4 ნაბიჯი
ვიდეო: 1. Q Light Controller + კონტროლერი პლუს QLC + -თან დაიწყო. ფიქრები და ფუნქციები 2024, ივლისი
Anonim
ფერის გამოვლენა RGB LED– ის გამოყენებით
ფერის გამოვლენა RGB LED– ის გამოყენებით

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

ნაბიჯი 1: საჭირო ნაწილები

ნაწილები საჭიროა
ნაწილები საჭიროა

მე გამოვიყენე PIC 16F887 მიკროკონტროლერი, მაგრამ თითქმის ნებისმიერი პულსის სიგანის მოდულაციის უნარით იმუშავებს. 1 RGB LED1 მიკროკონტროლერი 1 სტანდარტული წითელი LED 1 კმ ohm რეზისტორი 1 ფოტორეზისტორი (იცვლება წინააღმდეგობა, რომელიც დამოკიდებულია სინათლის სინათლის რაოდენობაზე) ზოგიერთი მავთული მე მხოლოდ მიკროკონტროლერს და RGB LED- ს მჭირდება ფერადი დეტექტორების ფართო სპექტრი, მაგრამ თუ თქვენ მხოლოდ ჩართვა გჭირდებათ ამოიცნობს ერთ ფერს, თქვენ არ გჭირდებათ მიკროკონტროლერი - თქვენ გჭირდებათ მხოლოდ იმ ფერის ნათელი LED, რომლის ამოცნობაც გსურთ. სტანდარტული წითელი LED არის "ინდიკატორი LED" - ის ანათებს, როდესაც გამოჩნდება სწორი ფერი.

ნაბიჯი 2: შექმენით წრე

ააშენეთ წრე
ააშენეთ წრე
ააშენეთ წრე
ააშენეთ წრე

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

ნაბიჯი 3: კოდი

ეს კოდი დაიწერა მიკროჩიპის PIC 16F887– ისთვის, მაგრამ იმედია თქვენ მიიღებთ ზოგად იდეას. მე გამოვიყენე ჩამონტაჟებული პოტენომეტრი ჩემი განვითარების დაფაზე, რომ შეცვალონ RGB LED- ის ფერის სპექტრი (და ის არ გადის მთელ სპექტრში, რადგან მე არ მაქვს 3 PWM მოდული, მაგრამ ეს საკმაოდ კარგია) კომენტარები შედის. #ჩართეთ #ჩართეთ #ჩართეთ "დაგვიანებით.გ" #ჩართეთ #ჩართეთ #გამოიყენეთ დაგვიანებით (საათი = 4000000) #FUSES INTRC, NOWDT, NOPUT, NOMCLR, NOPROTECT, NOCPD, NOBROWNOUT, NOIESO, NOFCMEN, NOLVP #ბაიტი CCP ბაიტი CCP2CON = 0x1D#ბაიტი PWM1CON = 0x9Bint მნიშვნელობა = 128; int p1 = 0; int p2 = 0; void my_setup_ccp1 (int8 მნიშვნელობა) {output_low (PIN_C2); CCP1CON = მნიშვნელობა; PWM1CON = 0;} მნიშვნელობა void my_setup8 {output_low (PIN_C1); CCP2CON = მნიშვნელობა;} // =================================== ბათილი მთავარი () {// A4 = ენერგიის წყარო photodiodeoutput_high (PIN_A4); გამომავალი_მაღალი (PIN_B1); setup_adc (ADC_CLOCK_INTERNAL); set_adc_channel (0); setup_adc_ports (sAN0); // Timer/Interrupt setupenable_interset (my_packer) my_setup_ccp2 (CCP_PWM); setup_timer_2 (T2_DIV_BY_1, 128, 1); // setup_compare (2, COMPARE_PWM | COMPARE_TIMER2); ხოლო (1) {// თავიდან აცილება PIC– ს ძილის წინ.//SET PWM DUTAY; // Pin A3 არის ფოტოდიოდის კავშირი, თუ (შეყვანა (PIN_A3) == 1) გამომავალი_მაღალი (PIN_A4); else output_low (PIN_A4); // პოტენომეტრის წაკითხვის მნიშვნელობა LED მნიშვნელობის ფერის შესაცვლელად = read_adc (); გადართვა (მნიშვნელობა) {შემთხვევა 0: p1 = მნიშვნელობა; გამომავალი_ დაბალი (PIN_C0); p2 = მნიშვნელობა; შესვენება; შემთხვევა 50: p1 = მნიშვნელობა; გამომავალი_მაღალი (PIN_C0); p2 = მნიშვნელობა; შესვენება; შემთხვევა 100: p1 = მნიშვნელობა; გამომავალი_მაღალი (PIN_C0); p2 = მნიშვნელობა; შესვენება; საქმე 150: გამომავალი_მაღალი (PIN_C0); p1 = 50; p2 = მნიშვნელობა; შესვენება; საქმე 200: output_low (PIN_C0); p1 = 0; p2 = მნიშვნელობა; შესვენება; საქმე 250: p1 = 0; p2 = მნიშვნელობა; გამომავალი_ დაბალი (PIN_C0); შესვენება; } p1 = მნიშვნელობა; p2 = 128 - p1; set_pwm1_duty (p1); set_pwm2_duty (p2);}}

ნაბიჯი 4: აპლიკაციები

აპლიკაციები!
აპლიკაციები!

მსგავსი ფერის მარტივი დეტექტორი შეიძლება გამოყენებულ იქნას რობოტიკაში, ან მაგარი პროექტებისთვის, როგორიცაა ლეგოს გამოყოფა ფერით, M & M- ების დახარისხება, ან როგორც დამხმარე საშუალება სიბრმავისათვის. ვიმედოვნებთ, რომ ეს ინსტრუქცია სასარგებლო იყო იმ პროექტის გასაძლიერებლად, რომელიც გქონდათ მხედველობაში!:) LED- ები კარგია ამდენი რამისთვის….

გირჩევთ: