فهرست مطالب:

سیگنال ژنراتور AD9833: 3 مرحله
سیگنال ژنراتور AD9833: 3 مرحله

تصویری: سیگنال ژنراتور AD9833: 3 مرحله

تصویری: سیگنال ژنراتور AD9833: 3 مرحله
تصویری: همیشه فکر میکردم نمیشه با سیگنال ژنراتور یک مدار رو راه اندازی کنم!! اما شد!! 2024, سپتامبر
Anonim
سیگنال ژنراتور AD9833
سیگنال ژنراتور AD9833
سیگنال ژنراتور AD9833
سیگنال ژنراتور AD9833

ژنراتور سیگنال یک قطعه بسیار مفید از وسایل آزمایش است. این یکی از ماژول AD9833 و Arduino Nano استفاده می کند - این همه ، حتی یک PCB نیست. به صورت اختیاری می توانید یک صفحه نمایش OLED اضافه کنید. AD9833 می تواند موج های سینوسی ، مثلثی و مربعی را از 0.1 هرتز تا 12.5 مگاهرتز ایجاد کند - نرم افزار این پروژه محدود به 1 هرتز تا 100 کیلوهرتز است.

دستورالعمل های دیگری با استفاده از Arduino و AD9833 در اینجا و اینجا وجود داشته است. این ساده تر است و می تواند به عنوان ژنراتور رفت و برگشت استفاده شود. ژنراتورهای رفت و برگشت به آزمایش پاسخ فرکانسی فیلترها ، تقویت کننده ها و غیره کمک می کند. بر خلاف سایر طرحهای Instructables ، این شامل تقویت کننده یا کنترل دامنه نمی شود ، اما در صورت تمایل می توانید آنها را اضافه کنید.

مرحله 1: ساده ترین ژنراتور سیگنال

ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال
ساده ترین ژنراتور سیگنال

برای ساده ترین ژنراتور سیگنال ، فقط ماژول AD9833 را در پشت Arduino Nano لحیم کنید. نیازی به PCB نیست.

ماژول AD9833 که من انتخاب کردم شبیه به این ماژول است. من نمی گویم این بهترین یا ارزان ترین تأمین کننده است ، اما شما باید عکسی را خریداری کنید که شبیه آن عکس (یا عکس بالا) باشد.

اتصالات بین ماژول ها عبارتند از:

  • زمینه های متصل به هم
  • D2 = FSync
  • D3 = Clk
  • D4 = داده
  • D6 = Vcc AD9833

AD9833 از پین داده D6 آردوینو تغذیه می کند - آردوینو می تواند جریان کافی را تأمین کند. من یک خازن جدا کننده 100n را به این دلیل اضافه کردم که فکر می کردم "باید" به آن اضافه کنم اما هیچ تفاوتی را نمی بینم - در حال حاضر یک خازن جداسازی روی برد ماژول AD9833 وجود دارد.

اگر شما فانتزی بودید ، ممکن است نگران "زمین آنالوگ" در مقابل "زمین دیجیتال" باشید ، اما اگر فانتزی بودید ، بیش از 4 پوند هزینه می کردید.

ساده ترین ژنراتور سیگنال از طریق رایانه USB از طریق کامپیوتر کنترل و تغذیه می شود. USB از یک پورت سریال با سرعت 115200bps (8 بیت ، بدون برابری) تقلید می کند. دستورات عبارتند از:

  • '0'.. '9': تغییر رقم در آرایه فرکانسی "دقیقه"
  • 'S': فرکانس AD9833 را تنظیم کرده و موج سینوسی تولید کنید
  • 'T': تنظیم فرکانس و تولید موج مثلث
  • 'Q': تنظیم فرکانس و تولید موج مربعی
  • 'R': AD9833 را بازنشانی کنید
  • 'M': آرایه فرکانسی "min" را در آرایه "max" کپی کنید
  • 'G': از "دقیقه" به "حداکثر" بیش از 1 ثانیه حرکت کنید
  • "H": جابجایی از "دقیقه" تا "حداکثر" در طول 5 ثانیه
  • "من": از "دقیقه" به "حداکثر" بیش از 20 ثانیه حرکت کنید

برنامه آردوینو شامل دو آرایه 6 کاراکتری "min" و "max است. اگر رقمی را ارسال کنید ، آن را به آرایه" min "منتقل می کنید. اگر" S "ارسال کنید ، کاراکترهای" min "به یک آرایه تبدیل می شوند. فرکانس longint و به AD9833 ارسال شده است. بنابراین رشته را ارسال می کند

002500S

خروجی AD9833 را روی موج سینوسی 2500 هرتز تنظیم می کند. شما همیشه باید هر 6 رقم را ارسال کنید. حداقل فرکانس 000001 و حداکثر فرکانس 999999 است.

اگر یک "M" ارسال کنید ، آرایه "min" در آرایه "max" کپی می شود. اگر یک "H" ارسال کنید ، AD9833 بارها و بارها فرکانس را در عرض 5 ثانیه افزایش می دهد. با فرکانس "min" شروع می شود و 5 ثانیه بعد در فرکانس "max" است. بنابراین

020000M000100SH

از 100Hz به 20kHz می رسد تغییر فرکانس لگاریتمی است بنابراین پس از 1 ثانیه فرکانس 288Hz ، پس از 2 ثانیه 833Hz و سپس 2402 ، 6931 و 20000 خواهد بود. فرکانس هر میلی ثانیه تغییر می کند.

هنگامی که آردوینو یک کاراکتر دیگر دریافت می کند ، حلقه متوقف می شود ، بنابراین مراقب باشید که فرمان را پس از ارسال مجدد یا خط تغذیه ارسال نکنید. این کاراکتر اضافی حلقه را خاتمه می دهد. اگر از Serial Monitor استفاده می کنید ، یک کادر در سمت راست پایین وجود دارد که ممکن است برای مثال "Both NL & CR" (که فکر می کنم) پس از فرمان شما کاراکترها را ارسال می کند. آن را روی "بدون پایان خط" تنظیم کنید.

می توانید برنامه Windows EXE را در زیر بارگیری کنید که دستورات مورد نیاز را ارسال می کند یا می توانید برنامه خود را بنویسید. فایل Arduino INO نیز در اینجا قرار دارد.

مرحله 2: یک OLED اضافه کنید

یک OLED اضافه کنید
یک OLED اضافه کنید
یک OLED اضافه کنید
یک OLED اضافه کنید
یک OLED اضافه کنید
یک OLED اضافه کنید

اگر یک OLED و دو دکمه اضافه کنید ، تولید کننده سیگنال می تواند به تنهایی بدون رایانه کار کند.

کسانی از شما که اسیلوسکوپ Instructable من را خوانده اید ، شباهت آن را تشخیص خواهید داد. ماژول AD9833 را می توان به اسیلوسکوپ من اضافه کرد تا "اسیلوسکوپ و ژنراتور سیگنال در جعبه کبریت" تولید شود.

صفحه نمایش 1.3 اینچی OLED است که با 3.3 ولت کار می کند و توسط تراشه SH1106 از طریق گذرگاه I2C کنترل می شود.

جستجوی eBay برای 1.3 "OLED. من نمی خواهم به فروشنده خاصی توصیه کنم زیرا پیوندها به سرعت قدیمی می شوند. یکی را انتخاب کنید که شبیه آن عکس باشد ،" I2C "یا" IIC "و دارای چهار پین با برچسب VDD GND SCL SDA. (به نظر می رسد پین ها به ترتیب دیگری پین دارند. آنها را بررسی کنید. نام مناسب ساعت I2C "SCL" است ، اما در eBay تابلوها می توانند مانند SCK "من در عکس برچسب گذاری شوند.)

توضیحات کاملتری از کتابخانه OLED در اسیلوسکوپ من وجود دارد که در مرحله 8 قابل آموزش است. شما باید کتابخانه درایور SimpleSH1106.zip را که در مرحله 8 قرار دارد بارگیری و نصب کنید..)

فایل INO را می توانید در زیر بارگیری کنید. شماره های پینی که برای OLED استفاده می شود در حدود خط 70 اعلام شده است. اگر شما "Oscilloscope and Signal Generator in a Matchbox" ساخته اید و می خواهید این فایل INO را با آن آزمایش کنید ، شماره های جایگزین پین از طریق #تعریف فعال می شوند.

من یک طرح نوار نوار برای مدار نشان داده ام. دو نوار نوار وجود دارد - یکی برای Nano و AD9833 و دیگری برای صفحه نمایش. آنها باید یک ساندویچ تشکیل دهند. تخته ها از طرف جزء نشان داده شده اند. سیمهای انعطاف پذیر خوب به دو تخته متصل می شوند. تخته ها را با استندهای لحیم شده به هم وصل کنید. در نمودار من ، مس نوار چوبی به رنگ فیروزه ای نشان داده شده است. خطوط قرمز پیوندهای سیمی روی نوار نوار یا سیمهای انعطاف پذیر هستند که تخته ها را به هم متصل می کنند. من سیم های قدرت و "سیگنال" را نشان نداده ام.

ماژول AD9833 در سمت مس نوار چسب - در طرف مقابل نانو لحیم می شود. سنجاق ها را روی نوارهای مسی لحیم کنید سپس AD9833 را روی آنها قرار دهید و روی آن لحیم کنید.

صفحه نمایش یا یک فرکانس واحد یا فرکانس های "min" و "max" را نشان می دهد.

دو دکمه فشاری وجود دارد: یک دکمه "افقی" برای انتخاب رقم فرکانس ها و یک دکمه "عمودی" برای تغییر آن رقم.

من ژنراتور سیگنال را از مداری که در حال توسعه هستم تغذیه می کنم - من همیشه 5 ولت در محل کارم در دسترس دارم.

مرحله 3: توسعه های آینده

توسعه های آینده
توسعه های آینده

ممکنه باطری باشه؟ بله ، فقط یک PPV 9V متصل به پین RAW نانو اضافه کنید. معمولاً از 20 میلی آمپر استفاده می کند.

آیا می توان آن را با یک سلول لیتیوم تغذیه کرد؟ دلیلی برای نشدن آن نمی بینم. شما باید OLED Vdd و مقاومت کششی آن را به باتری 3.7 ولت وصل کنید (من شک ندارم که خروجی 3.3 ولت آردوینو به درستی کار کند).

اگر می توانید پاسخ فرکانس یک فیلتر را آزمایش کنید ، می توانید دامنه در مقابل فرکانس را نمودار کنید. اندازه گیری دامنه سیگنال دشوار است - شما باید پوسیدگی آشکارساز پاکت خود را در برابر موج با فرکانسهای پایین و زمان پاسخگویی در فرکانسهای بالا جابجا کنید. پس از ساخت آشکارساز دامنه ، می توانید خروجی آن را در ADC آردوینو "Simplest Signal Generator" وارد کنید ، سپس نتیجه را به همراه فرکانس فعلی به رایانه ارسال کنید.

این صفحه یک نقطه شروع مفید است یا در گوگل "آشکارساز پاکت نامه" یا "آشکارساز اوج" را جستجو کنید. در مدار پیشنهادی بالا ، فرکانس سیگنال را تنظیم می کنید ، منتظر بمانید تا پایدار شود ، پین Arduino A0 را روی خروجی پایین دیجیتال تنظیم کنید ، منتظر بمانید تا C تخلیه شود ، A0 را به ورودی تنظیم کنید ، منتظر بمانید ، سپس با ADC اندازه گیری کنید. به من خبر بده که چطور پیش می روی

توصیه شده: