فهرست مطالب:
- مرحله 1: اجزای مورد نیاز
- مرحله 2: مروری بر تایمرهای آردوینو برای تولید سیگنال
- مرحله 3: چشمک زدن LED
- مرحله 4: دیمر LED
- مرحله 5: مبدل دیجیتال به آنالوگ (DAC)
- مرحله 6: مترونوم
- مرحله 7: طیف صدا
- مرحله 8: سروو موتورز
- مرحله 9: دو برابر کننده ولتاژ و اینورتر
- مرحله 10: انتقال برق بی سیم
تصویری: تایمرهای آردوینو: 8 پروژه: 10 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:53
Arduino Uno یا Nano می توانند با استفاده از سه تایمر داخلی ، سیگنال های دیجیتالی دقیق را بر روی شش پین اختصاصی تولید کنند. آنها فقط به چند دستور برای راه اندازی نیاز دارند و از هیچ چرخه CPU برای اجرا استفاده نمی کنند!
اگر از برگه اطلاعات کامل ATMEGA328 استفاده کنید ، که دارای 90 صفحه به شرح آنها است ، استفاده از تایمر می تواند ترسناک باشد! چندین دستور داخلی Arduino از تایمرها استفاده می کنند ، به عنوان مثال millis () ، delay () ، tone () ، AnalogWrite () و کتابخانه سرو. اما برای استفاده از تمام قدرت آنها ، باید آنها را از طریق رجیسترها تنظیم کنید. من برخی از ماکروها و عملکردها را برای سهولت و شفافیت بیشتر در اینجا به اشتراک می گذارم.
پس از یک مرور بسیار کوتاه از تایمرها ، 8 پروژه جالب را که با تایمرها به تولید سیگنال متکی هستند دنبال کنید.
مرحله 1: اجزای مورد نیاز
برای ساخت هر 8 پروژه به موارد زیر نیاز دارید:
- Arduino Uno یا سازگار است
- نمونه اولیه سپر با مینی صفحه اصلی
- 6 عدد کابل بلوز بردپر
- 6 بلوز کوتاه تخته نان (خودتان را از سیم اتصال قوی 10 سانتی متری تهیه کنید)
- 2 عدد سر تمساح
- 1 عدد LED سفید 5 میلی متری
- یک مقاومت 220 اهم
- یک مقاومت 10 کیلو اهم
- پتانسیومتر 10 کیلو اهم
- 2 خازن سرامیکی 1muF
- 1 خازن الکترولیتی 10muF
- 2 دیود ، 1n4148 یا مشابه
- 2 موتور سروو SG90
- بلندگوی 18 اهم
- 20 متر سیم مینا نازک (0.13 میلی متر)
مرحله 2: مروری بر تایمرهای آردوینو برای تولید سیگنال
Timer0 و timer2 تایمرهای 8 بیتی هستند ، بدین معنی که حداکثر می توانند از 0 تا 255 را شمارش کنند. Timer1 یک تایمر 16 بیتی است ، بنابراین می تواند تا 65535 شمارش کند. هر تایمر دارای دو پین خروجی مرتبط است: 6 و 5 برای timer0 ، 9 و 10 برای timer1 ، 11 و 3 برای timer2. زمان سنج در هر چرخه ساعت آردوینو افزایش می یابد ، یا با نرخ پیش فرض کاهش می یابد ، که 8 ، 64 ، 256 یا 1024 است (32 و 128 برای تایمر 2 نیز مجاز است). تایمرها از 0 تا 'TOP' و سپس دوباره (PWM سریع) یا پایین (PWM فاز صحیح) شمارش می شوند. بنابراین مقدار "TOP" فرکانس را تعیین می کند. پین های خروجی می توانند مقدار خروجی ثبت شده را تنظیم ، تنظیم مجدد یا تلنگر کنند ، بنابراین آنها چرخه وظیفه را تعیین می کنند. فقط timer1 می تواند به طور مستقل فرکانس و چرخه های وظیفه را برای هر دو پین خروجی تنظیم کند.
مرحله 3: چشمک زدن LED
کمترین فرکانسی که با تایمرهای 8 بیتی قابل دستیابی است 16 مگاهرتز/(1024*511) = 30 ، 6 هرتز است. بنابراین برای چشمک زدن LED با 1 هرتز ، به تایمر 1 نیاز داریم که می تواند فرکانس های 256 برابر کوچکتر ، 0.12 هرتز را بدست آورد.
یک LED را با آند (پای بلند) آن به pin9 وصل کنید و کاتد آن را با مقاومت 220 اهم به زمین وصل کنید. کد را بارگذاری کنید. LED دقیقاً با سرعت 1٪ با چرخه کار 50٪ چشمک می زند. عملکرد حلقه () خالی است: تایمر در هنگام راه اندازی () اولیه می شود و نیازی به توجه بیشتر ندارد.
مرحله 4: دیمر LED
مدولاسیون عرض پالس یک روش م toثر برای تنظیم شدت یک LED است. با درایور مناسب ، روش تنظیم سرعت الکتروموتورها نیز ترجیح داده می شود. از آنجا که سیگنال یا 100 on روشن یا 100 off خاموش است ، هیچ قدرتی در مقاومت سری هدر نمی رود. در اصل ، این مانند این است که LED را سریعتر از چشم خود چشمک بزنید. در اصل 50 هرتز کافی است ، اما ممکن است به نظر برسد که کمی سوسو می زند و وقتی LED یا چشم ها حرکت می کنند ، ممکن است یک "دنباله" مزاحم غیر مداوم ایجاد شود. با استفاده از مقیاس پیش فرض 64 با تایمر 8 بیتی ، ما 16 مگاهرتز/(64*256) = 977 هرتز را دریافت می کنیم که مناسب هدف است. ما timer2 را انتخاب می کنیم ، به طوری که timer1 برای سایر توابع در دسترس می ماند و ما در عملکرد زمان Arduino () که از timer0 استفاده می کند تداخل نمی کنیم.
در این مثال چرخه وظیفه و در نتیجه شدت توسط پتانسیومتر تنظیم می شود. LED دوم می تواند به طور مستقل با همان تایمر در پین 3 تنظیم شود.
مرحله 5: مبدل دیجیتال به آنالوگ (DAC)
آردوینو خروجی آنالوگ واقعی ندارد. برخی از ماژول ها برای تنظیم پارامتر از ولتاژ آنالوگ استفاده می کنند (کنتراست نمایش ، آستانه تشخیص و غیره). فقط با یک خازن و مقاومت می توان از تایمر 1 برای ایجاد ولتاژ آنالوگ با وضوح 5mV یا بهتر استفاده کرد.
یک فیلتر کم گذر می تواند سیگنال PWM را به ولتاژ آنالوگ "متوسط" کند. خازن از طریق مقاومت به پین PWM متصل می شود. ویژگی ها با فرکانس PWM و مقادیر مقاومت و خازن تعیین می شود. وضوح تایمرهای 8 بیتی 5V/256 = 20mV خواهد بود ، بنابراین ما Timer1 را برای دستیابی به وضوح 10 بیتی انتخاب می کنیم. مدار RC یک فیلتر درجه یک کم گذر است و دارای موجی است. مقیاس زمانی مدار RC باید بسیار بیشتر از دوره سیگنال PWM باشد تا امواج کاهش یابد. دوره ای که برای دقت 10 بیتی به دست می آوریم 1024/16MHz = 64mus است. اگر از خازن 1muF و مقاومت 10kOhm استفاده کنیم ، RC = 10ms. موج پیک تا اوج حداکثر 5V*0.5*T/(RC) = 16mV است که در اینجا کافی در نظر گرفته می شود.
توجه داشته باشید که این DAC امپدانس خروجی بسیار بالایی دارد (10 کیلو اهم) ، بنابراین اگر جریان را بکشد ولتاژ به میزان قابل توجهی کاهش می یابد. برای جلوگیری از این امر ، می توان آن را با یک opamp بافر کرد یا ترکیب دیگری از R و C را انتخاب کرد ، به عنوان مثال 1kOhm با 10muF.
در مثال ، خروجی DAC با پتانسیومتر هدایت می شود. دومین کانال مستقل DAC را می توان با timer1 در پین 10 اجرا کرد.
مرحله 6: مترونوم
مترونوم به ردیابی ریتم هنگام پخش موسیقی کمک می کند. برای پالس های بسیار کوتاه ، خروجی تایمر آردوینو را می توان مستقیماً به بلندگو داد ، که کلیک های قابل شنیدن واضحی را ایجاد می کند. با استفاده از پتانسیومتر ، فرکانس ضربان را می توان از 40 تا 208 ضربه در دقیقه و در 39 مرحله تنظیم کرد. تایمر 1 برای دقت مورد نیاز است. مقدار "TOP" ، که فرکانس را تعیین می کند ، در داخل تابع حلقه () تغییر می کند و این نیاز به توجه دارد! در اینجا می بینید که حالت WGM با نمونه های دیگری که دارای فرکانس ثابت هستند متفاوت است: این حالت ، با TOP تنظیم شده توسط ثبت OCR1A ، دارای بافر دوگانه است و در برابر TOP از دست رفته و یک اشکال طولانی محافظت می کند. با این حال ، این بدان معناست که ما می توانیم تنها از 1 پین خروجی استفاده کنیم.
مرحله 7: طیف صدا
انسان می تواند بیش از 3 مرتبه فرکانس صدا را از 20 هرتز تا 20 کیلوهرتز بشنود. این مثال طیف کامل را با پتانسیومتر تولید می کند. یک خازن 10muF بین بلندگو و آردوینو قرار داده شده است تا جریان DC را مسدود کند. Timer1 یک موج مربعی تولید می کند. حالت ایجاد شکل موج در اینجا PWM-Phase-correct است. در آن حالت ، شمارنده با رسیدن به بالا شروع به شمارش معکوس می کند ، که منجر به پالس هایی می شود که میانگین آنها ثابت است ، حتی وقتی چرخه کار متفاوت باشد. با این حال ، این دوره نیز تقریباً دو برابر می شود ، و این اتفاق می افتد که با پیش شماره 8 ، timer1 طیف کامل شنیداری را بدون نیاز به تغییر پیش نمایش پوشش می دهد. همچنین در اینجا ، از آنجا که ارزش TOP در حال تغییر است ، استفاده از OCR1A به عنوان بالا اشکالات را کاهش می دهد.
مرحله 8: سروو موتورز
کتابخانه های سرو قوی وجود دارد ، اما اگر فقط دو سروو برای رانندگی دارید ، می توانید این کار را مستقیماً با timer1 انجام دهید و بنابراین CPU ، استفاده از حافظه را کاهش دهید و از وقفه جلوگیری کنید. سرووی محبوب SG90 سیگنال 50 هرتز می گیرد و طول پالس موقعیت را کد می کند. ایده آل برای تایمر 1. فرکانس ثابت است ، بنابراین هر دو خروجی در pin9 و pin 10 می توانند برای هدایت سرویس ها به طور مستقل استفاده شوند.
مرحله 9: دو برابر کننده ولتاژ و اینورتر
گاهی اوقات پروژه شما به ولتاژ بالای 5 ولت یا ولتاژ منفی نیاز دارد. ممکن است اجرای MOSFET ، اجرای عنصر پیزو ، تغذیه opamp یا تنظیم مجدد EEPROM باشد. اگر جریان فعلی به اندازه کافی کوچک باشد ، حداکثر تا 5 میلی آمپر ، پمپ شارژ ممکن است ساده ترین راه حل باشد: فقط 2 دیود و دو خازن متصل به یک سیگنال پالس از یک تایمر اجازه می دهد تا آردوینو 5 ولت را به 10 ولت دو برابر کند. در عمل ، 2 قطره دیود وجود دارد ، بنابراین در عمل برای دوبلر بیشتر شبیه 8.6 ولت یا برای اینورتر -3.6 ولت خواهد بود.
فرکانس موج مربعی باید برای پمپاژ بار کافی از طریق دیودها کافی باشد. هنگامی که ولتاژ بین 0 تا 5 ولت تغییر می کند ، یک خازن 1muF 5muC را تغییر می دهد ، بنابراین برای جریان 10 میلی آمپر ، فرکانس باید حداقل 2 کیلوهرتز باشد. در عمل ، فرکانس بالاتر بهتر است ، زیرا باعث کاهش موج می شود. با شمارش تایمر 2 از 0 تا 255 بدون پیش فرض ، فرکانس 62.5 کیلوهرتز است که به خوبی کار می کند.
مرحله 10: انتقال برق بی سیم
غیر معمول نیست که یک ساعت هوشمند را بدون کابل شارژ کنید ، اما به راحتی می توانید بخشی از پروژه آردوینو باشید. سیم پیچ با سیگنال فرکانس بالا می تواند بدون تماس الکتریکی قدرت را به سیم پیچ نزدیک دیگر منتقل کند.
ابتدا سیم پیچ ها را آماده کنید. من از یک رول کاغذ با قطر 8.5 سانتی متر و سیم میناکاری با قطر 0.13 میلی متر برای ایجاد 2 سیم پیچ استفاده کردم: اولیه با 20 دور ، ثانویه با 50 دور. خود القایی این نوع سیم پیچ با سیم پیچ های N و شعاع R ~ 5muH * N^2 * R. So است. بنابراین برای N = 20 و R = 0.0425 L = 85muH می دهد که با تستر قطعات تأیید شد. ما یک سیگنال با فرکانس 516 کیلوهرتز تولید می کنیم که منجر به امپدانس 2pi*f*L = 275Ohm می شود. این مقدار آنقدر بالاست که آردوینو وارد جریان بیش از حد نمی شود.
برای کارآمدترین سیم پیچ ، ما می خواهیم از یک منبع AC واقعی استفاده کنیم. یک ترفند وجود دارد که می توان انجام داد: دو خروجی زمان سنج را می توان با وارونه کردن یکی از خروجی ها در فاز مخالف اجرا کرد. برای شباهت بیشتر آن به موج سینوسی ، از PWM-Phase-correct استفاده می کنیم. به این ترتیب ، بین پین 9 تا 10 ، ولتاژ بین هر دو 0 ولت ، پایه 9 +5 ولت ، هر دو 0 ولت ، پین 10 +5 ولت متناوب است. جلوه در تصویر از یک محدوده نشان داده شده است (با یک پیش نمایش 1024 ، این محدوده اسباب بازی پهنای باند زیادی ندارد).
سیم پیچ اصلی را به پین 9 و 10. یک LED را به سیم پیچ ثانویه وصل کنید. هنگامی که سیم پیچ ثانویه به اولیه نزدیک می شود ، LED به شدت روشن می شود.
توصیه شده:
نحوه ایجاد رادار با استفاده از آردوینو برای پروژه علمی - بهترین پروژه های آردوینو: 5 مرحله
نحوه ایجاد رادار با استفاده از آردوینو برای پروژه علمی | بهترین پروژه های آردوینو: سلام دوستان ، در این مقاله آموزشی به شما نشان خواهم داد که چگونه یک سیستم راداری شگفت انگیز ایجاد کنید که با استفاده از آردوینو نانو ساخته شده است. این پروژه برای پروژه های علمی ایده آل است و اگر برنده شدن جایزه عالی باشد ، می توانید به راحتی با سرمایه گذاری و شانس بسیار کمتری این کار را انجام دهید
تبدیل متن به گفتار آردوینو با استفاده از LM386 - پروژه صحبت کردن آردوینو - کتابخانه تاکی آردوینو: 5 مرحله
تبدیل متن به گفتار آردوینو با استفاده از LM386 | پروژه صحبت کردن آردوینو | کتابخانه Talkie Arduino: سلام بچه ها ، در بسیاری از پروژه ها ما به arduino نیاز داریم که چیزی شبیه به ساعت صحبت کردن یا گفتن برخی اطلاعات در این دستورالعمل را با استفاده از Arduino به گفتار تبدیل کنیم
10 پروژه اصلی آردوینو برای مبتدیان! حداقل با یک تخته حداقل 15 پروژه بسازید!: 6 مرحله
10 پروژه اصلی آردوینو برای مبتدیان! حداقل با یک تخته حداقل 15 پروژه بسازید!: پروژه آردوینو & amp؛ هیئت آموزشی ؛ شامل 10 پروژه اصلی آردوینو است. همه کد منبع ، فایل Gerber و موارد دیگر. بدون SMD! لحیم کاری آسان برای همه. اجزای قابل جابجایی و تعویض آسان. شما می توانید حداقل 15 پروژه را با یک برنامه
ارزان ترین آردوینو -- کوچکترین آردوینو -- آردوینو پرو مینی -- برنامه نویسی -- آردوینو ننو: 6 مرحله (همراه با تصاویر)
ارزان ترین آردوینو || کوچکترین آردوینو || آردوینو پرو مینی || برنامه نویسی || آردوینو ننو: …………………………. لطفاً برای ویدیوهای بیشتر به کانال YouTube من مشترک شوید ……. .این پروژه در مورد نحوه ارتباط با کوچکترین و ارزانترین آردوینو است. کوچکترین و ارزان ترین آردوینو arduino pro mini است. شبیه آردوینو
تایمرهای 8051 با چشمک زدن Led مثال قسمت 1: 3 مرحله
تایمرهای 8051 با چشمک زدن Led مثال قسمت 1: در این آموزش قصد دارم نحوه تایمرهای 8051 را به شما بگویم. در اینجا ما در مورد تایمر 0 در حالت 1 بحث خواهیم کرد. در آموزش بعدی ما در مورد حالت های دیگر نیز بحث خواهیم کرد