در آموزش بخش اول کار با ماژول ولوم کشویی Slide Potentiometer، توسط ولوم قرار گرفته شده بر روی ماژول نور محیط را کنترل کردیم. با توجه به ساختار ولوم کشویی در دو حالت افزایشی و کاهشی، نور ال ای دی با کشیدن ولوم در جهت افزایش Increase،افزایش یافته و همچنین با کشیدن ولوم در جهت کاهش Decrease، کاهش مییابد. در بخش دوم توسط دو ماژول بیزر Buzzer، میکسر صوتی AudioMixer تولید خواهیم کرد. نمونه کد آردوینو Arduino این آموزش توسط یکی از کاربران خلاق دیجی اسپارک ارسال شده است. در ادامه این آموزش با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.
ماژول ولوم کشویی Slide Pot
ماژول ولوم کشویی Slide Potentiometer شامل یک مقاومت متغیر خطی با حداکثر ۱۰ کیلو اهم است. ساختار ماژول ولوم همانند یک کلید کشویی است. هنگامی که اسلاید کشویی ماژول ولوم را از یک طرف به طرف دیگر میکشید، ولتاژ از ۰ ولت تا ولتاژ Vcc تعیین شده، تغییر خواهد کرد. ماژول ولوم کشویی Slide Pot دارای خروجی آنالوگ دو کاناله بین ۰ تا Vcc است. ولوم قرار گرفته بر روی ماژول حدودا در طول ۶٫۵ سانتیمتر جا به جا شده و روان حرکت خواهد کرد. نوع ماژول به صورت خطی Linear است. ولتاژ کاری ولوم کشویی ۳٫۳ تا ۵ ولت DC است. این ماژول قابلیت راه اندازی با آردوینو Arduino، MCU و AVR را خواهد داشت. ماژول ولوم کشویی دارای ۶ پایه است. دارای ۲ پایه Vcc و ۲ GND و دو کانال OTA و OTB است. با توجه به ساختار ماژول میتوان از آن برای تنظیم و کنترل نور محیط، تنظیم صدای بلندگو استفاده کرد. همچنین با توجه به دو کاناله بودن ماژول ولوم کشویی Slide Potentiometer از آن برای کنترل کانال های راست و چپ در یک ربات استفاده نمود.
بیزر Buzzer
بیزر Buzzer همانطور که از نامش پیداست، به عنوان اسپیکر و بلندگو در الکترونیک استفاده میشود. بیزر در واقع یک سیگنال صوتی الکترومغناطیسی است. بیزر توسط یک مدار الکتریکی و یا یک سیگنال صوتی نوسان و هدایت میشود. ولتاژ کاری بیزر ۵ ولت DC است. در این آموزش من از بیزر پسیو یا passive buzzer استفاده خواهم کرد. بیزر دارای دو نوع اکتیو و پسیو میباشد. در نوع پسیو برای راه اندازی نیاز به تعریف فرکانس کاری برای عملکرد بیزر خواهد داشت. بیزر اکتیو برای راه اندازی تنها نیاز به ولتاژ DC دارد و به راحتی قابل اجرا است و دیگر نیازی به تعریف فرکانس کاری برای عملکرد آن نخواهیم داشت. به عبارتی با شوک الکتریکی اکتیو فعال خواهد شد.
نکته مهم درباره بیزر Buzzer
برای راه اندازی بیزر نیاز به تعریف فرکانس Frequency داریم. در کد برنامه آردوینو Arduino به دلخواه میتوانید از لیست فرکانس های زیر استفاده کنید و در خروجی تن های متفاوتی را دریافت کنید.
- ۲۶۱
- ۲۷۷
- ۲۹۳
- ۳۱۱
- ۳۲۹
- ۳۴۹
- ۳۶۹
- ۳۹۲
- ۴۱۵
- ۴۴۰
- ۴۶۶
- ۴۹۳
- ۵۲۳
- ۵۵۴
اتصال ماژول ولوم کشویی به آردوینو
- پین OTA ماژول ولوم کشویی Slide Potentiometer را به پایه A0 آنالوگ آردوینو Arduino اتصال دهید.
- پین OTB ماژول ولوم کشویی Slide Potentiometer را به پایه A1 آنالوگ آردوینو Arduino اتصال دهید.
- هر دو پین VCC ماژول ولوم کشویی Slide Potentiometer را به پایه ۵ ولت شیلد پروتوتایپ آردونیو Arduino Prototype Shield اتصال دهید.
- هر دو پین GND ماژول ولوم کشویی Slide Potentiometer را به پایه GND شیلد پروتوتایپ آردوینو Arduino Prototype Shield اتصال دهید.
اتصال بیزر Buzzer
بیزر Buzzer از دو پایه مثبت + و پایه منفی – تشکیل شده است. پایه مثبت به پایه دیجیتال آردوینو Arduino و پایه منفی به پایه زمین GND متصل میشود.
- پین مثبت + بیزر Buzzer اول را به پین ۹ دیجیتال آردوینو Arduino اتصال دهید.
- پین مثبت + بیزر Buzzer دوم را به پین ۱۰ دیجیتال آردوینو Arduino اتصال دهید.
- هر دو پین منفی بیزر Buzzer را به پایه GND آردوینو Arduino اتصال دهید.
کد آردوینو Arduino
#define OTA A0 //تعریف پین ها #define OTB A1 #define Buzzer1 9 #define Buzzer2 10 int tones[] = {261, 277, 293, 311, 329, 349, 369, 392, 415, 440, 466, 493, 523, 554}; //تعریف فرکانس های بازر void setup() { } void loop() { int val1 = analogRead(OTA); //ریختن آنالوگ ۱ در متغیر int val2 = analogRead(OTB); //ریختن آنالوگ ۲ در متغیر byte tone1 = map(val1, 0, 1024, 0, 13); //تبدیل عدد آنالوگ ۱ به شماره فرکانس byte tone2 = map(val2, 0, 1024, 0, 13)-2; //تبدیل عدد آنالوگ ۲ به شماره فرکانس tone (Buzzer1, tones [tone1]); //بلندگوی شماره ۱ tone (Buzzer2, tones [tone2]); //بلندگوی شماره ۲ }
کد را از طریق کلیدهای میانبری که برای انتقال کدها در نظر گرفته شده است، به نرم افزار آردوینو Arduino اتصال دهید.
تحلیل کد آردوینو Arduino
تعریف پین OTA, OTB
در این پروژه از هر دو کانال ماژول ولوم کشویی Slide Potentiometer استفاده میشود:
#define OTA A0 //تعریف پین ها #define OTB A1
تعریف پین بیزر Buzzer
از دو بیزر ۵ ولت استفاده میکنیم و پین مثبت هر یک از بیزرها را به عنوان خروجی تعریف میکنیم:
#define Buzzer1 9 #define Buzzer2 10
تعریف فرکانسهای بیزر Buzzer
int tones[] = {261, 277, 293, 311, 329, 349, 369, 392, 415, 440, 466, 493, 523, 554}; //تعریف فرکانس های بازر
خواندن اطلاعات آنالوگ Analog
توسط پایه آنالوگ Analog، دیتا خوانده شده و در متغیر قرار داده میشود:
int val1 = analogRead(OTA); //ریختن آنالوگ ۱ در متغیر int val2 = analogRead(OTB); //ریختن آنالوگ ۲ در متغیر
تبدیل عدد به فرکانس
byte tone1 = map(val1, 0, 1024, 0, 13); //تبدیل عدد آنالوگ ۱ به شماره فرکانس byte tone2 = map(val2, 0, 1024, 0, 13)-2; //تبدیل عدد آنالوگ ۲ به شماره فرکانس
فعال شدن بیزر Buzzer
tone (Buzzer1, tones [tone1]); //بلندگوی شماره ۱ tone (Buzzer2, tones [tone2]); //بلندگوی شماره ۲
با جا به جایی ولوم ماژول ولوم کشویی Slide Potentiometer توسط دو کانال، فرکانس تغییر کرده و صدای بیزر متفاوت خواهد بود.
وسایل مورد نیاز
ماژول ولوم کشویی Slide Potentiometer
چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند میتوانید از همین طریق اطلاع رسانی کنید.
پروژه
طی چند قسمت قبلی که طرح پروژه را پیاده سازی کردیم، با استقبال شما کاربران مواجه شدیم. در این سری برای اینکه گستره بیشتری از افراد بتوانند فرصت استفاده از بن خرید را داشته باشند؛ روال دیگری را در پیش گرفتیم. در این روش تصمیم گرفتهایم به ۱۰ نفر از کاربران بن خرید ارایه شود. برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و بسته به خلاقیت، مدار جدیدی ایجاد کنید. سپس از اجرای کار فیلم گرفته و در شبکههای اجتماعی از جمله آپارات و اینستگرام، با هشتگ «#دیجی_اسپارک» و «#دانشجوکیت» و «#digispark» و «#daneshjookit» منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۰۳۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.
در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.
درود
از کجا میتونم تعداد زیادی از این ماژول ولوم را تهیه کنم؟
سلام
از لینک زیر تهیه نمایید.
ماژول ولوم کشویی ۱۰ کیلو اهم دو کانال ۱۰K Slide Pot
سلام روز شما بخیر
عذر میخوام من یه پروژه گرفتم که باید تواون با برد آردوینو یه صدا رو بگیرم بعدش صدا رو تغیر بدم و پخش کنم مثل نرم افزار های موبایل که مثلا شما صحبت میکنید و صداتونو تغییر میده و پخش میکنه
میشه لطفا منو راهنماییمنوید که از کجا و چجوری باید شروع کنم؟؟
سلام
به چندین روش امکان پیاده سازی پروژه وجود دارد و تا به حال آموزش در این مورد ارائه نشده است که بتوانم لینک آن را ارسال کنم.
سلام
آیا امکان تغییر فرکانس و صدای دریافتی وجود دارد؟ لطفا راهنمایی کنید
سلام
یله، در این خصوص باید فرکانس بیزر را در متن کد تغییر دهید. در آموزش استفاده از ماژول بیزر کامل توضیح داده شده است. مطالعه کنید.
Slm
Be har آردوینو chand volome keshuni mishe motasel kard!?
Va mnzur az 10k ohm dar keshoyi chiye?!
با سلام
کاربر گرامی لطفا درخواست خود را به فارسی ارسال کنید تا راهنمایی شود.