{"id":1397,"date":"2024-02-02T17:14:22","date_gmt":"2024-02-02T12:14:22","guid":{"rendered":"https:\/\/yarat.uz\/?p=1397"},"modified":"2025-03-19T15:27:04","modified_gmt":"2025-03-19T10:27:04","slug":"svetofor-oquv-loyihasi","status":"publish","type":"post","link":"https:\/\/yarat.uz\/?p=1397","title":{"rendered":"&#8220;Svetofor&#8221; o&#8217;quv loyihasi [14+]"},"content":{"rendered":"<p style=\"text-align: center;\"><strong>&#8220;Svetofor&#8221; o&#8217;quv loyihasi.<\/strong><\/p>\n<p style=\"text-align: justify;\">&#8220;Blink&#8221; sketchidan foydalanib, &#8220;Svetofor&#8221; loyihasini bir necha usullarda yaratamiz. Buning uchun bizga qizil, sariq va yashil rangli 3 ta svetodiod kerak bo&#8217;ladi.<\/p>\n<p style=\"text-align: justify;\">Svetoforning dastlabki varianti sifatida, &#8220;Ogohlantirish rejimi&#8221;da ishlaydigan svetofor maketini yaratamiz. Bunda, biz 3 ta raqamli pindan foydalanamiz. Lekin faqat sariq svetodiod uzluksiz pirpirab turadi, qizil va yashil svetodiodlar doim o&#8217;chiq holda bo&#8217;ladi. Ko&#8217;rinib turibdiki, ushbu rejim sketchi &#8220;Blink&#8221; sketchidan deyarli farq qilmaydi. Faqat &#8220;setup()&#8221; funksiyasiga qizil va yashil svetodiodlarning doimiy o&#8217;chiq holatiga tegishli kodni qo&#8217;shish yetarli. Avvalo pinQizil, pinSariq, pinYashil, pauza o&#8217;zgaruvchilari va ularning qiymatlarini belgilab olamiz. So&#8217;ngra, Blink sketchiga tegishli o&#8217;zgartirishlarni kiritamiz.<\/p>\n<p style=\"text-align: justify;\"><div class=\"su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed\" data-scroll-offset=\"0\" data-anchor-in-url=\"no\"><div class=\"su-spoiler-title\" tabindex=\"0\" role=\"button\"><span class=\"su-spoiler-icon\"><\/span>'Svetofor'. 'Ogohlantirish' rejimi<\/div><div class=\"su-spoiler-content su-u-clearfix su-u-trim\">\n<p style=\"text-align: justify;\">int pinQizil = 2; \/\/qizil svetodiod uchun pin raqami.<br \/>\nint pinSariq = 3; \/\/sariq svetodiod uchun pin raqami.<br \/>\nint pauza = 500; \/\/sariq svetodiod uchun yonib\/o&#8217;chish vaqti, millisekund<br \/>\nvoid setup() {<br \/>\npinMode(pinQizil, OUTPUT);<br \/>\npinMode(pinSariq, OUTPUT);<br \/>\npinMode(pinYashil, OUTPUT);<br \/>\n\/\/Dastlab sariq svetodiodni yoqamiz, qolganlarini o&#8217;chiramiz<br \/>\ndigitalWrite(pinQizil, LOW);<br \/>\ndigitalWrite(pinSariq, HIGH);<br \/>\ndigitalWrite(pinYashil, LOW);<br \/>\ndelay(pauzaSariq); \/\/ sariq yonib turish vaqti<br \/>\n}<\/p>\n<p style=\"text-align: justify;\">void loop() {<br \/>\ndigitalWrite(pinYashil, LOW);<br \/>\ndelay(pauzaSariq); \/\/ pauza<br \/>\ndigitalWrite(pinYashil, HIGH);<br \/>\ndelay(pauzaSariq); \/\/ pauza<br \/>\n}<\/div><\/div>\nTekshiramiz:<br \/>\n<div class=\"su-youtube su-u-responsive-media-yes\"><iframe loading=\"lazy\" width=\"640\" height=\"480\" src=\"https:\/\/www.youtube.com\/embed\/MJuoYlKxxTY?\" frameborder=\"0\" allowfullscreen allow=\"autoplay; encrypted-media; picture-in-picture\" title=\"Blink\"><\/iframe><\/div>\n<p style=\"text-align: justify;\">1-rejim (oddiy rejim). Uning oldingi sketchlardan farqi, svetodiodlarning yonib turish vaqti bir necha sekundlarni tashkil qiladi. Har bir svetodiod uchun pin raqamlari hamda pauzalar davomiyligini ifodalovchi quyidagi o&#8217;zgaruvchilardan foydalanamiz va ularga qiymatlarni o&#8217;zlashtiramiz: pinQizil = 2, pinSariq = 3, pinYashil = 4, pauzaQizil = 10000, pauzaSariq = 3000, pauzaYashil = 10000. Sketch quyidagi holga keladi:<\/p>\n<p style=\"text-align: justify;\"><div class=\"su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed\" data-scroll-offset=\"0\" data-anchor-in-url=\"no\"><div class=\"su-spoiler-title\" tabindex=\"0\" role=\"button\"><span class=\"su-spoiler-icon\"><\/span>'Svetofor'. Oddiy rejim<\/div><div class=\"su-spoiler-content su-u-clearfix su-u-trim\">\n<p style=\"text-align: justify;\">int pinQizil = 2; \/\/qizil svetodiod uchun pin raqami.<br \/>\nint pauzaQizil = 10000; \/\/qizil svetodiod uchun yonib turish vaqti, millisekund<br \/>\nint pinSariq = 3; \/\/sariq svetodiod uchun pin raqami.<br \/>\nint pauzaSariq = 3000; \/\/sariq svetodiod uchun yonib turish vaqti, millisekund<br \/>\nint pinYashil = 4; \/\/yashil svetodiod uchun pin raqami.<br \/>\nint pauzaYashil = 10000; \/\/yashil svetodiod uchun yonib turish vaqti, millisekund<\/p>\n<p style=\"text-align: justify;\">void setup() {<br \/>\npinMode(pinQizil, OUTPUT);<br \/>\npinMode(pinSariq, OUTPUT);<br \/>\npinMode(pinYashil, OUTPUT);<br \/>\n\/\/Dastlab sariq svetodiodni yoqamiz, qolganlarini o&#8217;chiramiz<br \/>\ndigitalWrite(pinQizil, LOW);<br \/>\ndigitalWrite(pinSariq, HIGH);<br \/>\ndigitalWrite(pinYashil, LOW);<br \/>\ndelay(pauzaSariq); \/\/ sariq yonib turish vaqti<br \/>\n}<\/p>\n<p style=\"text-align: justify;\">void loop() {<br \/>\n\/\/qizil svetodiodni yoqamiz, qolganlarini o&#8217;chiramiz:<br \/>\ndigitalWrite(pinQizil, HIGH);<br \/>\ndigitalWrite(pinSariq, LOW);<br \/>\ndigitalWrite(pinYashil, LOW);<br \/>\ndelay(pauzaQizil); \/\/ qizil yonib turish vaqti<br \/>\ndigitalWrite(pinQizil, LOW);<br \/>\ndigitalWrite(pinSariq, HIGH);<br \/>\ndigitalWrite(pinYashil, LOW);<br \/>\ndelay(pauzaSariq); \/\/ sariq yonib turish vaqti<br \/>\ndigitalWrite(pinQizil, LOW);<br \/>\ndigitalWrite(pinSariq, LOW);<br \/>\ndigitalWrite(pinYashil, HIGH);<br \/>\ndelay(pauzaYashil); \/\/ yashil yonib turish vaqti<br \/>\ndigitalWrite(pinQizil, LOW);<br \/>\ndigitalWrite(pinSariq, HIGH);<br \/>\ndigitalWrite(pinYashil, LOW);<br \/>\ndelay(pauzaSariq); \/\/ sariq yonib turish vaqti<br \/>\n}<\/div><\/div>\nNatijani kuzatamiz:<br \/>\n<div class=\"su-youtube su-u-responsive-media-yes\"><iframe loading=\"lazy\" width=\"640\" height=\"480\" src=\"https:\/\/www.youtube.com\/embed\/56bmCv3R2Dg?\" frameborder=\"0\" allowfullscreen allow=\"autoplay; encrypted-media; picture-in-picture\" title=\"Blink\"><\/iframe><\/div>\n<p style=\"text-align: justify;\">Navbatdagi rejimlar sketchi bevosita amaliy dars davomida tayyorlanadi:<br \/>\n2-rejim. Bunda qizil va yashil svetodiodlar yonish vaqti tugashidan oldin, qisqa muddat pirpirab turadi:<br \/>\n<div class=\"su-youtube su-u-responsive-media-yes\"><iframe loading=\"lazy\" width=\"640\" height=\"480\" src=\"https:\/\/www.youtube.com\/embed\/27GJXKbhZvA?\" frameborder=\"0\" allowfullscreen allow=\"autoplay; encrypted-media; picture-in-picture\" title=\"Blink\"><\/iframe><\/div>\n3-rejim. Aqlli rejim. Bunda qizil va yashil svetodiod yonish vaqti tugashidan oldin, qisqa muddat pirpirab turadi, keyin sariqqa o&#8217;tadi:<br \/>\n<div class=\"su-youtube su-u-responsive-media-yes\"><iframe loading=\"lazy\" width=\"640\" height=\"480\" src=\"https:\/\/www.youtube.com\/embed\/uVZCMkeZ_FE?\" frameborder=\"0\" allowfullscreen allow=\"autoplay; encrypted-media; picture-in-picture\" title=\"Blink\"><\/iframe><\/div>\n4-rejim. 2-aqlli rejim. Bunda yashil svetodiod yonish vaqti tugashidan oldin qisqa muddat pirpirab turadi, keyin to&#8217;g&#8217;ridan-tog&#8217;ri qizilga o&#8217;tadi. Lekin, shu vaqtda &#8220;kesishgan yo&#8217;lda&#8221; qizildan sariqqa va keyin yashilga o&#8217;tish standart tartibda bajariladi:<br \/>\n<div class=\"su-youtube su-u-responsive-media-yes\"><iframe loading=\"lazy\" width=\"640\" height=\"480\" src=\"https:\/\/www.youtube.com\/embed\/dwDYuEUzigw?\" frameborder=\"0\" allowfullscreen allow=\"autoplay; encrypted-media; picture-in-picture\" title=\"Blink\"><\/iframe><\/div>\n<p style=\"text-align: justify;\">Keyinchalik, boshqa amaliy darslarda &#8220;Svetofor&#8221; loyihasini bosqichma-bosqich yanada takomillashtirib boramiz. Jumladan, ko&#8217;p seksiyali, taymerli svetofor kabi murakkab rejimlarni qo&#8217;shamiz, bundan tashqari svetofor ish rejimini knopka yordamida va masofadan o&#8217;zgartirish imkoniyatlarini bosqichma-bosqich qo&#8217;shib boramiz (buning uchun o&#8217;quvchi mos ravishda Arduinoning tegishli yangi tushunchalari bilan tanishib boradi).<\/p>\n<p style=\"text-align: center;\"><em>Mustahkamlash uchun mashqlar <\/em><em>(o&#8217;quv kurslari davomida bajariladi):<\/em><\/p>\n<p style=\"text-align: justify;\"><em>1) Svetofor loyihasining barcha ko&#8217;rilgan rejimlarini mustaqil bajarib chiqing.<br \/>\n<\/em><em>2) Svetofor loyihasining barcha ko&#8217;rilgan rejimlarini &#8216;Wemos D1 mini&#8217; platasi uchun bajaring.<br \/>\n<\/em><em>3) Yuqoridagi topshiriqlarni ArduBlock dasturida bajarishni mashq qiling.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;Svetofor&#8221; o&#8217;quv loyihasi. &#8220;Blink&#8221; sketchidan foydalanib, &#8220;Svetofor&#8221; loyihasini bir necha usullarda yaratamiz. Buning uchun bizga qizil, sariq va yashil rangli 3 ta svetodiod kerak bo&#8217;ladi. Svetoforning dastlabki varianti sifatida, &#8220;Ogohlantirish rejimi&#8221;da ishlaydigan svetofor maketini yaratamiz. Bunda, biz 3 ta raqamli pindan foydalanamiz. Lekin faqat sariq svetodiod uzluksiz pirpirab turadi, qizil va yashil svetodiodlar doim o&#8217;chiq [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18],"tags":[],"class_list":["post-1397","post","type-post","status-publish","format-standard","hentry","category-oquv-loyihalari"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts\/1397","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1397"}],"version-history":[{"count":8,"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts\/1397\/revisions"}],"predecessor-version":[{"id":1482,"href":"https:\/\/yarat.uz\/index.php?rest_route=\/wp\/v2\/posts\/1397\/revisions\/1482"}],"wp:attachment":[{"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1397"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/yarat.uz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}