پایتون · سطح ۳ · ۸ مرحله

نشانگر حال‌وهوا

Mood indicator

یک نشانگر خلق و خو با چراغ های رنگی ایجاد کنید تا حال و هوای فعلی خود را نشان دهید

ترجمهٔ فارسی ماشینی است و ممکن است در اصطلاحات دقیق نباشد. با انتخاب «هر دو» می‌توانی متن اصلی را هم بخوانی.
مرحلهٔ ۱

خواهید ساخت

خواهید ساخت

یک دستگاه بررسی خلق و خو با چراغ های رنگی ایجاد کنید تا حال و هوای فعلی خود را نشان دهید.

توجه به حال و هوای فعلی یکی از راه‌های حمایت از رفاه شماست. این است باشه احساس عصبانیت یا غمگینی، همان طور که هست باشه برای احساس شادی یا هیجان الف بررسی خلق و خوی زمانی است که شما متوجه احساس خود شوید و آن را ثبت کنید یا به دیگران اطلاع دهید.

شما:

  • نمایندگی کند خلق و خوی یا احساسات با استفاده از نورهای رنگارنگ
  • کنترل های ورودی را برای دستگاه خود ایجاد کنید تا به کاربر اجازه دهد ثبت نام با روحیه آنها
  • کد LED(های) برای ایجاد جلوه های نور بر اساس حالات مختلف

برای تکمیل این پروژه شما نیاز دارید:

سخت افزار

شما می توانید تمامی سخت افزارهای مورد نیاز این پروژه و سایر پروژه های موجود در این مسیر را از سایت خریداری کنید فروشگاه اینترنتی کیترونیک.

  • Raspberry Pi Pico با هدر پین که روی آن لحیم شده است
  • یک کابل دیتا USB A به micro USB
  • کاتد مشترک LED(های) RGB یا LED(های) تک رنگ
  • پتانسیومتر یا دکمه ها (خرید شده یا ساخته شده)
  • سیم های جامپر
  • مقاومت ها
  • مواد کاردستی از جمله کارت، نوار چسب و فویل آشپزخانه

نرم افزار:

  • Thonny – این پروژه را می توان با استفاده از ویرایشگر Thonny Python تکمیل کرد که می تواند بر روی یک رایانه لینوکس، ویندوز یا مک نصب شود.

Thonny را نصب کنید

Thonny را روی Raspberry Pi نصب کنید

  • Thonny قبلاً روی Raspberry Pi OS نصب شده است، اما ممکن است نیاز به به روز رسانی به آخرین نسخه داشته باشد
  • یک پنجره ترمینال را باز کنید، یا با کلیک کردن روی نماد در گوشه سمت چپ بالای صفحه یا با فشار دادن همزمان کلیدهای Ctrl+Alt+T
  • در پنجره، عبارت زیر را تایپ کنید تا سیستم عامل و Thonny خود را به روز کنید
sudo apt update && sudo apt upgrade -y

Thonny را روی سیستم عامل های دیگر نصب کنید

  • در Windows، macOS و Linux، می‌توانید آخرین Thonny IDE را نصب کنید یا نسخه موجود را به‌روزرسانی کنید
  • در یک مرورگر وب، به thonny.org
  • در گوشه سمت راست بالای پنجره مرورگر، لینک های دانلود ویندوز و macOS و دستورالعمل های لینوکس را مشاهده خواهید کرد.
  • فایل های مربوطه را دانلود و اجرا کنید تا Thonny نصب شود

دانلود دستورالعمل از سایت thonny

باز کردن تونی

Thonny را از راه‌انداز برنامه خود باز کنید. باید چیزی شبیه این باشد:

برنامه Thonny

می توانید از Thonny برای نوشتن کدهای استاندارد پایتون استفاده کنید. عبارت زیر را در پنجره اصلی تایپ کنید و سپس روی آن کلیک کنید اجرا کنید دکمه (از شما خواسته می شود فایل را ذخیره کنید).

print('Hello World!')

تم و فونت را در Thonny تغییر دهید

Thonny به شما اجازه می دهد تا تم و فونت نرم افزار را تغییر دهید. این ویژگی به این معنی است که می توانید اندازه فونت را افزایش دهید و رنگ پس زمینه و متن را متناسب با نیاز خود تغییر دهید.

برای تغییر تم و فونت:

  • روی Tools -> Options کلیک کنید.
  • بر روی تب "Theme & Font" کلیک کنید.
  • روی کادرهای کشویی برای هر گزینه کلیک کنید تا تنظیماتی را پیدا کنید که به بهترین وجه با نیازهای شما مطابقت دارد.

اسکرین شات از محیط برنامه نویسی Thonny. تصویر برگه "Theme & Font" را در پنجره گزینه ها نشان می دهد.

  • پس از اتمام کار، OK را فشار دهید.

هشدار: به فونت های ساده و تمیز پایبند باشید. اگر از فونت سبک دست نویسی استفاده می کنید، خواندن و اشکال زدایی آن را دشوار می کند.

  • picozero - باید picozero را در Raspberry Pi Pico خود راه اندازی کنید

پیکورو را راه اندازی کنید

Raspberry Pi Pico خود را به برق وصل کنید

Rasberry Pico خود را به رایانه ای که برای برنامه نویسی آن استفاده می کنید وصل کنید.

کابل USB به Raspberry Pi Pico وصل شده است.

کابل USB به کامپیوتر وصل شده است.

MicroPython را نصب یا به روز کنید

  • ویرایشگر Thonny را باز کنید
  • به گوشه پایین سمت راست نگاه کنید
  • بررسی کنید که می گوید "MicroPython (Raspberry Pi Pico)"
  • اگر نشد، «MicroPython (Raspberry Pi Pico)» را انتخاب کنید.
  • ممکن است از شما خواسته شود که سیستم عامل را نصب کنید.

پیکوزورو اضافه کنید

  • به «ابزارها > مدیریت بسته‌ها» بروید
  • "picozero" را در نوار جستجو تایپ کنید
  • روی «جستجو در PyPI» کلیک کنید

پنجره نصب بسته های Thonny با کادر جستجو.

  • در نتایج جستجو روی "picozero" کلیک کنید
  • روی "نصب" کلیک کنید

picozero در نتایج جستجو

را ببینید مقدمه ای بر راهنمای رسپبری پای پیکو برای اطلاعات بیشتر

نگاه کن: نگاهی به این دستگاه بررسی خلق و خوی بیندازید. چگونه از رنگ برای برقراری ارتباط با روحیه استفاده می کند؟ چگونه رنگ نمایش داده شده را تغییر می دهید؟

یک تکه کاغذ ردیابی دور یک لیوان کاغذی پیچیده شده است. یک LED RGB داخل آن قرار دارد که بسته به چند بار فشار دادن دکمه، کاغذ ردیابی را به رنگ های مختلف روشن می کند.

داخل را ببینید

mood_lamp.py

from picozero import RGBLED, Switch
from time import sleep

rgb = RGBLED(red=1, green=2, blue=3) # Pin numbers
switch = Switch(18)

option = 0

def calm():
    rgb.color = (255, 255, 0) # Yellow

def focused():
    rgb.color = (0, 215, 0) # Orange
    
def energised():
    rgb.color = (63, 204, 208) # Green

def choice():
    global option
    if option == 0:
        energised()
    elif option == 1:
        calm()
    elif option == 2:
        focused()
    elif option == 3:    
        rgb.off()
    
    if option == 3:
        option = 0
    else:
        option = option + 1
    

switch.when_closed = choice

ایده بگیرید 💭

برای دریافت ایده های بیشتر، این نمونه ها را بررسی کنید.

سوئیچ را رها کنید ژتون‌هایی با اندازه‌های مختلف در فویل آشپزخانه پیچیده شده‌اند که روی آنها حالت‌هایی نوشته شده است. هنگامی که آنها در جعبه قرار می گیرند، سوئیچ های مختلف را می بندند و رنگ روشن را مطابق با حال و هوا تنظیم می کنند. نشانه ها حالت غمگین، شاد یا عصبانی را نشان می دهند.

یک ژتون نقره ای در جعبه انداخته می شود و یک چراغ قرمز نمایش داده می شود.

داخل را ببینید

drop_switch.py

from time import sleep
from picozero import Button, RGBLED


happy = Button(13) # Longest token
angry = Button(14) # Medium token
sad = Button(15) # Shortest token
led = RGBLED(18, 17, 16)


while True: # Create a loop that checks for the different tokens
    if happy.is_pressed: # Look for the longest token first
        print('happy!')
        led.color = (255,255,0) # Yellow
    elif angry.is_pressed: # Check for the medium token next
        print('ANGRY!')
        led.color = (255,0,0) # Red
    elif sad.is_pressed: # Check for the shortest token last
        print('sad and blue...')
        led.color = (0,125,255) # Blue

شماره گیری حالت یک پتانسیومتر با یک LED RGB واحد برای ایجاد یک شماره گیری حالت استفاده می شود. کاربر می‌تواند شماره‌گیر را بچرخاند تا حال و هوای فعلی خود را اعلام کند.

یک پتانسیومتر چرخانده می شود و یک LED در پشت مقداری کاغذ تغییر رنگ می دهد و صفحه کاغذ را در رنگ انتخابی روشن می کند.

داخل را ببینید

mood_dial.py


from picozero import RGBLED, Pot
from time import sleep

rgb = RGBLED(red=1, green=2, blue=3)
dial = Pot(0)

def happy():
    rgb.color = (0, 255, 0) # Green

def good():
    rgb.color = (75, 255, 0) # Yellow-green

def okay():
    rgb.color = (255, 150, 0) # Yellow

def unsure():
    rgb.color = (255, 25, 0) # Orange

def unhappy():
    rgb.color = (255, 0, 0) # Red


while True:
    mood = dial.value * 100 # turning to a percentage
    print(mood)
    if mood < 20:
        happy()
    elif mood < 40:
        good()
    elif mood < 60:
        okay()
    elif mood < 80:
        unsure()
    else:
        unhappy()
    sleep(0.1)

نشانگر فوکوس سه دکمه و سه ال ای دی تک رنگ برای نشان دادن نیازهای حمایتی افراد در یک باشگاه استفاده می شود. شکلک «ش» به معنای مزاحم نشوید، شکلک «گیج» به این معنی است که آنها برای کارشان کمک می‌خواهند، و شکلک «صورت خندان» به این معنی است که با خوشحالی مشغول به کار هستند.

جعبه ای با سه ایموجی در جلو. یکی اموجی shh، یکی ایموجی گیج و دیگری صورتک است. دکمه های کنار آنها فشار داده می شود که یک LED مربوطه را روشن می کند.

داخل را ببینید

focus_indicator.py

from picozero import LED, Speaker, Button
from time import sleep

eat = LED(13)
drink = LED(8)
play = LED(5)

speaker = Speaker(1)

choose = Button(18)
confirm = Button(22)

option = 0 # Store the current option

def choice(): # Call the next function and update the option
    global option
    if option == 0:
        shh.on()
        confused.off()
        smile.off()
    elif option == 1:
        shh.off()
        confused.on()
        smile.off()    
    elif option == 2:
        shh.off()
        confused.off()
        smile.on()   
    elif option == 3:
        shh.off()
        confused.off()
        smile.off()

    if option == 3:
        option = 0
    else:
        option = option + 1

def sound_buzzer():
    speaker.on()
    sleep(1)
    speaker.off()

choose.when_pressed = choice 
confirm.when_pressed = sound_buzzer

ایده بگیرید 💭

برای دریافت ایده های بیشتر، این نمونه ها را بررسی کنید.

چراغ خلق و خو یک دکمه با یک LED RGB برای ایجاد یک چراغ خلقی با استفاده از یک لیوان کاغذی و مقداری کاغذ ردیابی استفاده می شود. هر بار که دکمه را فشار دهید، رنگ آن تغییر می کند. یک LED RGB واحد برای ایجاد یک چراغ خلق و خو با استفاده از یک لیوان کاغذی و مقداری کاغذ ردیابی استفاده می شود.

شماره گیری حالت یک پتانسیومتر با یک LED RGB واحد برای ایجاد یک شماره گیری حالت استفاده می شود. کاربر می‌تواند شماره‌گیر را بچرخاند تا حال و هوای فعلی خود را اعلام کند. یک پتانسیومتر با یک LED RGB واحد برای ایجاد یک شماره گیری حالت استفاده می شود.

نشانگر فوکوس سه دکمه و سه ال ای دی تک رنگ برای نشان دادن نیازهای حمایتی افراد در یک باشگاه استفاده می شود. شکلک «ش» به معنای مزاحم نشوید، شکلک «گیج» به این معنی است که آنها برای کارشان کمک می‌خواهند، و شکلک «صورت خندان» به این معنی است که با خوشحالی مشغول به کار هستند. سه دکمه و سه ال ای دی تک رنگ برای نشان دادن نیاز به پشتیبانی استفاده می شود.

محیط اجرای پروژه

این پروژه به سخت‌افزار نیاز دارد: pico. مراحل اتصال و نصب را در آموزش بخوان؛ مرورگر جایگزین برد و قطعات فیزیکی نیست.

این پروژه در محیطی که در مراحل آموزش معرفی شده اجرا می‌شود؛ مانند Python دسکتاپ، Thonny، Jupyter یا Raspberry Pi. کدهای مخصوص این ابزارها را در همان محیط اجرا کن.

کارگاه آزاد پایتون هلیو ←
معرفی و پیش‌نمایش پروژه

یک نشانگر خلق و خو با چراغ های رنگی ایجاد کنید تا حال و هوای فعلی خود را نشان دهید

نشانگر حال‌وهوا | پایتون هلیو