در این آزمایش روشن کردن LED، روشن و خاموش کردن LED، ساخت سوئیچ برای LED، تنظیم LED چشمک زن و کنترل دستی LED در رزبری پای(Raspberry Pi) را انجام خواهیم داد. همراه ما باشید
روشن کردن LED توسط Raspberry Pi
LED ها دیودهای کوچک و ظریفی هستند و اگر جریان برق وارده به آنها زیاد باشد، میسوزند. برای محدود کردن عبور جریان الکتریکی از LED ها همیشه باید از یک قطعه مقاومت الکتریکی (resistor) استفاده کنید.
پایه طولانی LED را به پین 3V3 و پایه کوتاه را به پین GND بورد Pi وصل کنید. مقاومت مورد نیاز می تواند در حدود 50 اُهم باشد.
پس از وصل کردن پایهها به پینها LED باید روشن شود. LED همیشه روشن خواهد ماند چرا که به پین 3V3 وصل شده که همیشه روشن است.
حالا LED را به جای پین 3V3 به پین 17 وصل کنید:
در این حالت LED باید خاموش شود.، اما حالا به یک پین GPIO وصل است و به وسیله کد (Code) میتوان آن را کنترل کرد.
روشن و خاموش کردن LED در Raspberry Pi
GPIO Zero یک کتابخانه پایتون جدید است که بسیاری از قطعات GPIO از قبل در آن تعریف شدهاند. این کتابخانه به صورت پیشفرض بر روی سیستم عامل RPi نصب است.
نحوه باز کردن MU
منوی Programming را باز کنید و بر روی Mu کلیک کنید.
Mu را باز کنید
سپس حالتی (mode) که میخواهید در آن از Mu استفاده کنید را انتخاب کنید. در صورتیکه میخواهید یک فایل پایتون (script) جدید ایجاد کنید، Python 3 را انتخاب کنید.
شما میتوانید به صورت مستقیم فرمانها (command) را در REPL بنویسید و LED را خاموش و یا روشن کنید. از منو بر روی کلید REPL کلیک کنید.
ابتدا کتابخانه GPIO Zero را ایمپورت کنید و برای Pi مشخص کنید از کدام یک از پینهای GPIO استفاده میکنید، در اینجا ما از پین 17 استفاده کردهایم.
In [1]: from gpiozero import LED In [2]: led = LED(17)
کلید Enter صفحه کلید را فشار دهید.
برای روشن کردن LED، فرمان مقابل را تایپ و کلید Enter را فشار دهید:
In [3]: led.on()
برای خاموش کردن LED، فرمان مقابل را تایپ کنید:
In [4]: led.off()
با اجرای این فرمانها، LED شما باید روشن و سپس خاموش شود.
چشمک زدن LED در Raspberry Pi
به کمک کتابخانه time و یک حلقه کوچک میتوانید کاری کنید که LED چشمک بزند.
با کلیک کردن بر روی New یک فایل جدید بسازید.
با کلیک کردن بر روی گزینه Save فایل جدید را ذخیره کنید. فایل را با نام py ذخیره کنید.
کد مقابل را وارد کنید:
from gpiozero import LED from time import sleep led = LED(17) while True: led.on() sleep(1) led.off() sleep(1)
فایل را ذخیره کنید و با کلیک کردن بر روی گزینه Run کد را اجرا کنید.
در این حالت LED خاموش و روشن میشود. برای خارج شدن از برنامه بر روی گزینه Stop کلیک کنید.
کنترل دستی LED در Raspberry Pi
اکنون میتوانید دو برنامهای که نوشته بودید را با هم ترکیب کنید و با استفاده از یک کلید، LED را کنترل کنید.
با کلیک کردن بر روی گزینه New یک فایل جدید ایجاد کنید.
با کلیک کردن بر روی گزینه Save فایل جدید را ذخیره کنید. فایل جدید را با نام gpio_control.py ذخیره کنید.
حالا کد زیر را بنویسید:
from gpiozero import LED, Button from time import sleep led = LED(17) button = Button(2) button.wait_for_press() led.on() sleep(3) led.off()
برنامه را ذخیره و اجرا کنید. هر زمان که کلید را فشار دهید، LED به مدت سه ثانیه روشن میشود.
ساخت کلید روشن و خاموش برای LED در Raspberry Pi
به کمک یک سوییچ و با یک بار فشار دادن کلید، LED روشن میشود و اگر یک بار دیگر کلید را بزنید، LED خاموش میشود.
در گام اول باید کد را ویرایش کنید تا به شکل زیر درآید:
from gpiozero import LED, Button from time import sleep led = LED(17) button = Button(2) while True: button.wait_for_press() led.toggle() sleep(0.5)
() led.toggle اگر LED روشن باشد آن را خاموش و اگر خاموش باشد آن را روشن میکند. با توجه به اینکه این حالت در یک حلقه اتفاق میافتد، هر زمان که کسی کلید را فشار دهد، LED خاموش و روشن میشود.
اگر بتوانید کاری کنید که هر بار که کلید پایین است، LED روشن شود، عالی خواهد بود. با استفاده از کتابخانه GPIO Zero به آسانی میتوانید این کار را انجام دهید. کلاس Button دو متد به نامهای when_pressed و when_released دارد. این دو متد جریان برنامه را مختل نمیکنند، بنابراین اگر در یک حلقه اجرا شوند، برنامه کماکان به کار خود ادامه خواهد داد.
کد را ویرایش کنید تا به شکل زیر درآید:
from gpiozero import LED, Button from signal import pause led = LED(17) button = Button(2) button.when_pressed = led.on button.when_released = led.off pause()
برنامه را ذخیره و اجرا کنید. در این حالت، زمانیکه کلید را بزنید LED روشن میشود و اگر دستتان را از روی کلید بردارید LED خاموش میشود.
1 دیدگاه