خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

با Raspberry Pi Pico صدای زنگ را فرمان دهید

با استفاده از یک پتانسیومتر چرخشی متصل به Pico خود در این پروژه الکترونیکی ساده، یک وزوز ایجاد کنید و فرکانس آن را تغییر دهید.

Raspberry Pi Pico یک برد میکروکنترلر ارزان قیمت است که شروع کار با پروژه های الکترونیکی و یادگیری نحوه کدنویسی را برای مبتدیان آسان می کند.

برای این پروژه، شما یاد خواهید گرفت که چگونه یک سیگنال آنالوگ را از یک پتانسیومتر بخوانید و آن را به سیگنال PWM (مدولاسیون عرض پالس) برای دستکاری فرکانس یا تن صدای زنگ با کمک کد MicroPython تبدیل کنید.

چه قطعاتی مورد نیاز است؟

این پروژه بر اساس کیت مخترع کیترونیک برای Raspberry Pico است. تمام قطعات الکترونیکی مورد نیاز در کیت گنجانده شده است. با این حال، اینها مؤلفه‌های رایجی هستند که ممکن است در اطرافشان داشته باشید:

  • زنگ المان پیزو
  • پتانسیومتر چرخشی
  • 7x سیم جامپر نر-نر
  • Raspberry Pi Pico با پین های هدر GPIO لحیم شده
  • تخته نان

اگر در مدولاسیون پهنای پالس (PWM) و پتانسیومترها تازه کار هستید، ابتدا راهنمای ما را در مورد نحوه استفاده از پتانسیومتر با Raspberry Pi Pico خود بررسی کنید، که نحوه استفاده از آن را برای تنظیم روشنایی LED با PWM شرح می دهد.

مونتاژ مورد نیاز

الکترونیک و سیم کشی بر روی برد برد

یک سیم جامپر (زرد در عکس) سمت چپ پتانسیومتر را به ریل مثبت (+) تخته نان وصل می کند. سیم جامپر دیگری سمت راست پتانسیومتر را به سمت منفی (-) تخته نان وصل می کند. از پایه میانی پتانسیومتر، باید یک سیم جامپر را به پایه GP26/A0 روی Pico بکشید.

زنگ پیزو باید یک سیم از پایه منفی خود به ریل تخته نان منفی و سپس اتصال دیگری از پایه مثبت خود به پین ​​GP15 در Raspberry Pi Pico داشته باشد.

مطلب مرتبط:   6 راه برای افزایش عمر Raspberry Pi

همچنین باید یک سیم جامپر را از پین GND روی Pico به ریل منفی روی تخته نان بکشید تا آن را زمین کنید. سیم جامپر دیگری، پین خروجی 3V3 روی Pico را به ریل مثبت تخته نان وصل می کند تا قطعات را تغذیه کند.

کد را ایجاد کنید

می توانید کد را از مخزن MUO GitHub بگیرید. فایل MicroPython با نام piezo-buzzer.py را دانلود کنید و سپس آن را از طریق یک کامپیوتر متصل به USB که Thonny IDE را اجرا می کند، روی Pico خود بارگذاری کنید. برای جزئیات، نحوه شروع کار با MicroPython در Raspberry Pi Pico را بررسی کنید.

قسمت های مختلف کد موارد زیر را انجام می دهند:

  • در بالا، ماژول‌های MicroPython ماشین، ریاضی و زمان مورد نیاز را وارد می‌کنیم.
  • سپس یک متغیر buzzer به پین ​​GP15 به عنوان خروجی PWM اختصاص داده می شود.
  • یک متغیر پتانسیومتر به مبدل آنالوگ به دیجیتال (ADC) روی پین GP26/A0 Pico اختصاص داده شده است.
  • ما یک تابع scale() تعریف می کنیم که از توابع ریاضی برای تبدیل محدوده حرکت پتانسیومتر به خروجی زنگ هشدار استفاده می کند.
  • while: حلقه بی نهایت واقعی ورودی پتانسیومتر را می خواند، سپس از تابع مقیاس برای تبدیل آن استفاده می کند. پس از بررسی عدم تغییر زیادی نسبت به فرکانس قبلی، سپس فرکانس محاسبه شده را با استفاده از PWM (مدولاسیون عرض پالس) به buzzer ارسال می کند.

لیست کد برای پروژه زنگ پیکو

به طور خلاصه، در هر ثانیه صدها پالس ارسال می‌شود و با چرخش پتانسیومتر در جهت عقربه‌های ساعت یا خلاف جهت عقربه‌های ساعت، صدای زنگ بین ۱۲۰ هرتز و ۵ کیلوهرتز تغییر می‌کند. چرخاندن پتانسیومتر ولتاژ خوانده شده توسط پین ورودی آنالوگ Pico را تغییر می دهد، که به نوبه خود برای تنظیم فرکانس زنگ با استفاده از PWM استفاده می شود.

مطلب مرتبط:   چاپگر سه بعدی با هوش مصنوعی Anker سرعت چاپ سریع باورنکردنی را می دهد

کد را از Thonny اجرا کنید (روی نماد پخش کلیک کنید یا F5 را روی صفحه کلید خود فشار دهید) و خودتان آن را امتحان کنید. پس از اولین اجرای شما، آیا هر تغییری در کد بر نتایج فیزیکی تأثیر می گذارد؟ به عنوان مثال، اگر محدوده (0 به 65535) را تغییر دهید چه اتفاقی می افتد؟ این قسمت از کد درست در زیر درست است: جایی که فرکانس تعریف شده است.

تنظیم تن

اگر احساس ماجراجویی می‌کنید، ممکن است بخواهید از صدای زنگ برای تولید آهنگ‌های موسیقی با استفاده از کتابخانه pi-pico-tones martinkooij در GitHub استفاده کنید. به طور پیش فرض، این کتابخانه امواج سینوسی تولید می کند. ژنراتورهای چهار تن می توانند به دلخواه بر روی چهار پین مختلف پیکو کار کنند. توجه داشته باشید که این پروژه به جای MicroPython بر پایه C++ با استفاده از Raspberry Pi Pico SDK است، اما دستورالعمل‌های کامل در Readme GitHub ارائه شده است.

Buzz of Pico Electronics

تبریک می گوییم: شما یاد گرفته اید که چگونه ورودی آنالوگ را از یک پتانسیومتر بخوانید و آن را به سیگنال PWM تبدیل کنید تا صدای زنگ را کنترل کنید. پتانسیومتر یک دستگاه ورودی همه کاره برای الکترونیک است. زنگ پیزو یکی دیگر از اجزای مفید است: به عنوان مثال، با اضافه شدن یک سنسور حرکتی مادون قرمز PIR، می توانید حضور متجاوزان را تشخیص داده و زنگ هشدار را به صدا در آورید.