Search Code

کورس درس ۵ له ۱۰: کنټرول کول د RGB LED WS2812B په کارولو سره د Raspberry Pi Pico

This lesson is part of: Raspberry Pi Pico 4WD Smart Car

کورس درس ۵ له ۱۰: کنټرول کول د RGB LED WS2812B په کارولو سره د Raspberry Pi Pico

دا درس، چې د Robojax Raspberry Pi Pico سمارټ موټر کورس برخه ده، د SunFounder د څلور څرخه موټر کټ پر سر د RGB LED پټۍ (WS2812B) کنټرول باندې تمرکز کوي. تاسو به د ساده آن/آف کنټرول څخه هاخوا لاړ شئ او زده به کړئ چې څنګه سور، شین او نیلي ارزښتونه ګډ کړئ ترڅو هر رنګ جوړ کړئ، انفرادي LEDs کنټرول کړئ، او متحرک رڼا لړۍ لکه د "ګرځنده" رڼا اغېز جوړ کړئ. دا مهارت ستاسو د روبوټیک پروژو ته د بصري فیډبیک او شخصیت اضافه کولو لپاره بنسټیز دی.

د RGB LEDs کنټرول د هرې روبوټیک یا برېښنايي پروژې لپاره یو بنسټیز مهارت دی. دلته ځینې عملي شیان دي چې تاسو کولی شئ د دې پوهې سره جوړ کړئ:

  • دودیز حالت شاخصونه: د خپل روبوټ حالت ښودلو لپاره مختلف رنګونه وکاروئ، لکه شین د "چمتو" لپاره، نیلي د "کار کولو" لپاره، او سور د "تېروتنې" لپاره.
  • متقابل رڼا اغېزې: د ډېر متحرک او ښکیل روبوټ لپاره د "څارنې" یا "شورویر سوار" سټایل رڼا نمونې جوړې کړئ.
  • د سینسرونو لپاره بصري فیډبیک: LEDs پروګرام کړئ چې د سینسر معلوماتو پر بنسټ رنګ بدل کړي، لکه کله چې خنډ نږدې وي سور شي یا کله چې کرښه تعقیبوي نیلي شي.
  • شاوخوا رڼا: LEDs په تصادفي رنګ یا ځانګړي رنګ کې وټاکئ ترڅو ستاسو د موټر یا نورو پروژو لپاره دودیز فضا جوړه کړئ.

هارډویر/اجزاوې

دا پروژه هغه اجزاوې کاروي چې د SunFounder Raspberry Pi Pico څلور څرخه موټر کټ سره راځي. کلیدي برخه پخپله د RGB LED پټۍ ده، چې د Raspberry Pi Pico لخوا کنټرول کیږي.

  • Raspberry Pi Pico
  • SunFounder څلور څرخه موټر کټ (چې د WS2812B RGB LED پټۍ پکې شامله ده)
  • د موټر لپاره بیټرۍ بکس (د LEDs بریښنا کولو لپاره، لکه څنګه چې په ویډیو کې یادونه شوې)

د تارونو لارښود

د ویډیو درس د تارونو پروسه په تفصیل نه بیانوي، ځکه چې دا د موټر کټ د مخکې جوړ شوي ډیزاین برخه ده. LEDs دمخه د Raspberry Pi Pico سره وصل دي. د دودیز تنظیم لپاره، تاسو به عموماً د WS2812B پټۍ د ډیټا پن د Pico په GPIO پن سره وصل کړئ، د بریښنا (5V) او ځمکې (GND) سره. څرنګه چې دا درس د موټر کټ کاروي، نو اضافي تارونو ته اړتیا نشته.

که تاسو دا په بریډبورډ کې جوړوئ، نو باید د خپل LED پټۍ د ډیټا کرښه د GPIO پن (لکه GP0) سره وصل کړئ او د بهرني 5V عرضې سره یې بریښنا کړئ.

د کوډ تشریح

درس د موټر کټ د کتابتون څخه د مخکې لیکل شویو دندو کارولو باندې تمرکز کوي. د رڼا کنټرول لپاره اصلي دنده set_light_color() ده. دا میتود د موټر په اعتراض باندې بلل کیږي او دوه اصلي دلیلونه اخلي: د رڼا ID شمېره او د دریو ارزښتونو لیست چې د سور، شین او نیلي (RGB) شدت استازیتوب کوي.

دلته د کلیدي دندو کارولو څرنګوالي ماتول دي چې په ویډیو کې ښودل شوي:

  • car.set_light_color(LED_ID, [R, G, B]): دا د انفرادي LED کنټرول لپاره ترټولو مستقیمه لار ده. LED_ID له 0 څخه تر 23 پورې یو انټیجر دی، او رنګ داسې لیست دی لکه د سور لپاره [255, 0, 0].
  • د کتابتون مرستندویه دندې: د کټ کتابتون لوړې کچې دندې چمتو کوي لکه set_all_light_color()، set_bottom_left_color()، او set_bottom_right_color() ترڅو د LEDs ګروپونه په اسانۍ سره کنټرول کړي.

د دودیز رنګ جوړولو لپاره، تاسو کولی شئ په لیست کې درې ارزښتونه تنظیم کړئ. د مثال په توګه، [255, 255, 0] ژیړ جوړوي، [0, 255, 255] اوبي رنګ جوړوي، او [255, 0, 255] ګلابي یا مګنټا جوړوي. ویډیو د لومړنیو RGB ارزښتونو په ګډولو سره د دې رنګونو جوړول ښیې.

د تصادفي رنګونو لپاره، تاسو کولی شئ د random.randint(0, 255) فنکشن وکاروئ ترڅو د R، G او B لپاره تصادفي ارزښتونه تولید کړئ، لکه څنګه چې په "تصادفي" مثال کې ښودل شوي. دا د 24 LEDs هر یو ته یو ځانګړی، تصادفي رنګ ټاکي.

ژوندۍ پروژه/ننداره

په ویډیو کې، ښوونکی مفاهیم په ژوندۍ توګه نندارې ته وړاندې کوي. هغه لومړی ښیې چې څنګه ټولې لاندینۍ رڼاګانې په کلک شین رنګ کې فعالې کړي د RGB ارزښتونو په [0, 255, 0] ټاکلو سره. بیا، هغه رنګ سور ته بدلوي د [255, 0, 0] په ټاکلو سره. ننداره د دې په ښودلو سره دوام کوي چې څنګه انفرادي LEDs د دوی د ID شمېرې (0-23) په واسطه کنټرول کړي او د دوی رنګونه په خپلواکه توګه وټاکي.

د ویډیو یوه د پام وړ برخه د "ګرځنده رڼا" اغېز جوړولو ته وقف شوې ده. دا د for لوپ سره ترسره کیږي چې له 1 څخه تر 24 پورې تکرار کوي. په هر تکرار کې، دا اوسنی LED د ټاکلي وخت لپاره (لکه 300 ملی ثانیې) فعالوي او بیا یې د ډېر لنډ وخت لپاره (لکه 10 ملی ثانیې) بندوي مخکې له دې چې راتلونکي ته لاړ شي. دا د رڼا د پټۍ په اوږدو کې د حرکت کولو تصور رامینځته کوي. ښوونکی دا هم ښیې چې څنګه د ځنډ ارزښتونو په بدلولو سره د دې اغېز سرعت تنظیم کړي.

په پای کې، هغه د "تصادفي رنګ" پروګرام نندارې ته وړاندې کوي، کوم چې د random کتابتون کاروي ترڅو د 24 LEDs هر یو لپاره هر ځل چې کوډ چلیږي یو ځانګړی رنګ تولید کړي، چې یو ژوندی، څو رنګه ننداره رامینځته کوي.

فصلونه

  • [00:00] د RGB LEDs او سمارټ موټر کورس پیژندنه
  • [02:36] د RGB رنګ ماډل پوهیدل
  • [05:00] د کتابتون دندو سره د رڼا کنټرول
  • [09:01] څنګه انفرادي LEDs کنټرول کړو (0-23)
  • [13:08] د ګرځنده رڼا اغېز جوړول
  • [15:32] د هر LED لپاره تصادفي رنګونه تولیدول
No code attached.

Resources & references

No resources yet.

Files📁

No files available.