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

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

ADC ها (مبدل های آنالوگ به دیجیتال) چیست و چگونه کار می کنند؟

ADC ها برای تبدیل انواع سیگنال های آنالوگ به دیجیتال بسیار مهم هستند، اما واقعا چگونه کار می کنند؟

نکات کلیدی

  • ADC ها به طور گسترده ای برای تبدیل سیگنال های آنالوگ، مانند صدا و نور، به مقادیر دیجیتالی که می توانند در برنامه های مختلف استفاده شوند، استفاده می شوند.
  • نرخ نمونه یک ADC تعداد خوانش های گرفته شده در هر ثانیه را تعیین می کند، با نرخ نمونه بالاتر که امکان نمایش دقیق سیگنال را فراهم می کند.
  • نرخ بیت یک ADC بر کیفیت نمونه به‌دست‌آمده تأثیر می‌گذارد و بیت‌های بیشتر باعث اندازه‌گیری صاف‌تر و دقیق‌تر می‌شود. انواع مختلف ADC ها از نظر سرعت، دقت و مصرف انرژی، مبادلات متفاوتی را ارائه می دهند.

مبدل های آنالوگ به دیجیتال (ADC) برای تبدیل پدیده های دنیای واقعی به مقادیری که می توانیم در پروژه های برنامه نویسی از آنها استفاده کنیم، فوق العاده مفید هستند. اما چگونه یک ADC می‌تواند سیگنال‌های آنالوگ را به سیگنال‌های دیجیتال تبدیل کند که بتوانیم در هر جایی از آن استفاده کنیم؟

ADC ها برای چه مواردی استفاده می شوند؟

تقریباً همه جا ADCها را خواهید یافت. آنها روی تلفن شما هستند و صدای شما را به رشته ای از مقادیر باینری تبدیل می کنند. آنها در ماشین شما هستند و چرخش چرخ های شما را اندازه گیری می کنند. آنها در اسیلوسکوپ هستند و به گرفتن سیگنال ها و نمایش آنها کمک می کنند. با این حال، جایی که بیشتر مردم از آنها استفاده می‌کنند، دنیای ویدیو و صدا است، جایی که دریافت نور و صدا به فضای دیجیتال امری اساسی است.

نرخ نمونه چیست؟ چگونه نرخ نمونه بر ADC تأثیر می گذارد؟

یکی از مهم‌ترین معیارهای تیتر یک ADC نرخ نمونه است: تعداد قرائت‌هایی که در هر ثانیه انجام می‌شود.

یک اسیلوسکوپ بسیار پیشرفته ممکن است ده میلیارد نمونه در ثانیه بگیرد. MCP3008 ADC کوچک و خوش دست می تواند دویست هزار هزینه نسبتاً متوسط ​​داشته باشد. در دنیای صوتی، نرخ نمونه 44100 در ثانیه (44.1 کیلوهرتز) معمولی است.

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

بیت ریت چیست؟ آیا بیت ریت بر کیفیت ADC تأثیر می گذارد؟

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

مطلب مرتبط:   8 ویژگی که مایکروسافت اج را به بهترین مرورگر بازی تبدیل می کند

انیمیشن نشان می دهد که چگونه عمق بیت کار می کند

ما در مورد باینری و نحوه کار آن نوشته‌ایم، بنابراین اگر مطمئن نیستید، مکان خوبی برای شروع است. چند بیت نیاز داریم؟ باز هم بستگی به این دارد که ما در حال تلاش برای انجام چه کاری هستیم. گاهی اوقات، ممکن است با پروتکلی که استفاده می کنیم محدود شویم. به عنوان مثال، پروتکل MIDI 1.0 به مقادیر هفت بیتی (و گاهی اوقات چهارده بیتی) محدود شده است. در موارد دیگر، عامل محدود کننده ممکن است ادراک انسان باشد. اگر افزایش وفاداری هیچ بهبود محسوسی در نتیجه ایجاد نکند، ممکن است ارزشی نداشته باشد.

چگونه Multiplexing کیفیت ADC را بهبود می بخشد؟

تراشه های محبوب ADC مانند ADS1115 و MCP3008 ورودی های زیادی را ارائه می دهند. اما در زیر کاپوت، آنها واقعاً تنها حاوی یک ADC هستند. این به دلیل مالتی پلکسرهای تعبیه شده در این دستگاه ها امکان پذیر است. مولتی پلکسرها کاملاً در همه جای دنیای الکترونیک و مخابرات وجود دارند. آنها سوئیچ های دیجیتالی هستند که به عنوان کنترل ترافیک برای ADC شما عمل می کنند. ADC ممکن است یک کانال و سپس کانال بعدی و سپس کانال بعدی را نمونه برداری کند. بنابراین، اگر هشت کانال و نرخ نمونه 200000 دارید، می‌توانید در همه آنها بچرخید و در هر کانال 25000 نمونه بگیرید.

چه نوع ADC وجود دارد؟

ADC ها بسته به هزینه و قابلیت های مورد نیاز به روش های مختلفی کار می کنند.

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

یک ADC Subranging به دنبال جبران این نقاط ضعف با تقسیم کار بین دو واحد جداگانه است: یکی برای محاسبه تقریباً ولتاژ و سپس دوم برای کار دقیق آن. با تقسیم چیزها، می توانیم تعداد مقایسه کننده ها را کاهش دهیم. برخی از ADC های زیر محدوده کار را به سه مرحله تقسیم می کنند و در طول مسیر تصحیح خطا نیز تعبیه شده است.

SAR (Successive Approximation Register) ADCها کار خود را از طریق نوعی جستجوی باینری انجام می دهند. فرض کنید هشت بیت برای پر کردن داریم. SAR از 10000000 شروع می شود که مقدار وسط است (00000000 پایین و 11111111 بالا است). اگر ولتاژ از این نقطه میانی بیشتر شود، SAR سمت چپ ترین رقم را 1 نگه می دارد. اگر اینطور نباشد، SAR سمت چپ ترین رقم را روی 0 قرار می دهد. می توانیم این فرآیند را با رقم بعدی و غیره به صورت بازگشتی تکرار کنیم. این باعث می شود که مقدار حدس زده به تدریج به سمت مقدار واقعی حرکت کند:

مطلب مرتبط:   نحوه رفع خطای «این دستگاه نمی‌تواند راه‌اندازی شود (کد 10)» در ویندوز

نموداری که نشان می دهد SAR adc کار می کند

به این ترتیب، ما به طور مداوم جستجو را محدود می کنیم، احتمالات را به نصف تقسیم می کنیم و می پرسیم که آیا نتیجه از نقطه میانی بالاتر است یا پایین تر. در این مورد، مقدار چیزی بین 0 و 255 است. بعد از چند بار تکرار، ADC متوجه شد که حدود 77 است.

مبدل های سیگما-دلتا احتمالاً سخت ترین هستند. آنها برای برنامه های موسیقی با دقت بالا و اندازه گیری سیگنال استفاده می شوند. آنها با نمونه برداری بیش از حد یک سیگنال و پالایش نتیجه با استفاده از فیلتر و ریاضیات پیچیده کار می کنند. این فرآیند به طور موثر نرخ نمونه را کاهش می دهد و در عین حال دقت را افزایش می دهد. این ADC ها زمانی عالی هستند که نویز و دقت بیشتر از سرعت اهمیت دارند.

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

نظریه نایکیست-شانون چیست؟

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

این فرکانس به نام فیزیکدان سوئدی-آمریکایی هری نایکوئیست به فرکانس نایکوئیست معروف است. نام این نظریه از نایکیست و کلود شانون (ریاضی دان و رمزنگار برجسته) گرفته شده است، اما نه از نام ادموند ویتاکر، که قبل از هر یک از آنها این ایده را مطرح کرده بود.

به هر کسی که این نظریه را اعتبار می دهیم، مشکلی در آن وجود دارد. غیرممکن است که از قبل بدانیم چه زمانی بالا و پایین یک شکل موج می رسد. چه می شود اگر نمونه های خود را در میانه راه شکل موج ورودی برداریم؟ مشاهده کنید که چگونه یک تغییر در سیگنال ورودی ممکن است نتیجه گرفته شده ما را کاملاً صاف کند:

انیمیشنی که شکل موج مسطح تغییر فاز را نشان می دهد

یا حتی شکل موج های جدید توهم که قبلاً وجود نداشتند:

انیمیشنی که نام مستعار را نشان می دهد

این توهمات به نام مستعار شناخته می شوند.

مشکل با نام مستعار

احتمالاً با توهم «چرخ واگن» که گاهی هنگام فیلمبرداری از یک جسم در حال چرخش رخ می دهد، آشنا هستید. به نظر می‌رسد چرخ‌های ماشین یا تیغه‌های هلیکوپتر به سمت عقب می‌چرخند – فقط بسیار آهسته. در برخی موارد، تیغه ها ممکن است به طور کامل متوقف شوند (با نتایج عجیب و غریب – ویدیوی زیر را ببینید!).

مطلب مرتبط:   کنترلر PS4 کار نمی کند؟ نحوه رفع رایج ترین مشکلات

در حین انجام یک بازی ویدیویی قدیمی، ممکن است متوجه شده باشید که خطوط موازی گاهی اوقات مصنوعات تاب برداشتن عجیبی تولید می کنند. نرده ها، راه پله ها و جامپرهای راه راه در واقع بسیار عجیب به نظر می رسند. یا در مورد آن صداهای سوت عجیبی که گاهی اوقات هنگام گوش دادن به صحبت های شخصی از طریق یک اتصال دیجیتال با کیفیت ضعیف شنیده می شوید، چه می گویید؟ این تحریف است، اما نوع خاصی از تحریف. این همه فرکانس های زشتی که از نویز بیرون می آیند چیست؟ اگر در حال گوش دادن به محتوای غنی از هارمونی مانند یک درامکیت هستید، تأثیر آن حتی واضح تر است – به خصوص در سطح بالا.

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

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

بنابراین، راه حل چیست؟ چند وجود دارد. ما می‌توانیم از یک فیلتر ویژه برای مقابله با این مصنوعات استفاده کنیم، کاری که بسیاری از ADCها در زیر کاپوت انجام می‌دهند. یا می‌توانیم نمونه‌های بسیار بسیار بیشتری از آنچه نیاز داریم برداریم. هر چه نمونه های بیشتری را برداریم، تصویر ما از موج دقیق تر می شود:

انیمیشن نشان می دهد که چگونه نمونه های بیشتر شکل موج بهتری ایجاد می کنند

نمونه با کیفیت بالاتر برای بهترین نتایج

اگر به نظر شما این نوع چیزها جالب است، خبر خوب این است که ما به سختی به این موضوع پرداخته ایم. در اینجا اعماق لازم است: ADCها بسیار پیچیده هستند.

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