حساب دقة محول الإشارات التماثلية إلى رقمية (ADC) وحجم خطوة LSB
تعد عملية تحويل الإشارات التماثلية إلى قيم رقمية حجر الأساس في الأنظمة الإلكترونية الحديثة. تتيح هذه الحاسبة للمهندسين والمصممين حساب حجم خطوة البت الأقل أهمية (LSB)، وخطأ الكمية، ونسبة الإشارة إلى الضوضاء المثالية (SNR) بناءً على دقة المحول بالبت والجهد المرجعي المستخدم. يدعم التطبيق تقييم نطاقات الإدخال أحادية القطب وثنائية القطب، مع إمكانية التحويل المباشر بين الجهود والرموز الرقمية، وتحديد عدد البتات المطلوب لحل تغير مستهدف في الجهد.
كيفية عمل الحاسبة والمعادلات الرياضية
يقوم المحول التماثلي الرقمي بتقسيم نطاق الجهد المستمر إلى مستويات منفصلة. يعتمد الحساب على نموذج مكمم مثالي حيث يحدث أول انتقال للرمز عند نصف خطوة (1 / 2 LSB).
تُعرض الصيغ الرياضية والتعويضات التفصيلية لكل عملية حسابية داخل الأداة كالتالي:
- مستويات الكمية (Quantization levels): المستويات = 2^N حيث يمثل N الدقة بالبت.
- نطاق المقياس الكامل (Full-scale range):
- في النطاق أحادي القطب (Unipolar): FSR = V_(ref)
- في النطاق ثنائي القطب (Bipolar): FSR = 2 × V_(ref)
- حجم خطوة LSB (LSB step size): LSB = FSR ÷ 2^N
- أقصى خطأ كمية (Max quantization error): أقصى خطأ كمية = ±LSB ÷ 2
- ضوضاء الكمية (Quantization noise rms): ضوضاء الكمية (rms) = LSB ÷ √(12)
- نسبة SNR المثالية (Ideal SNR): لموجة جيبية كاملة النطاق عبر عرض نطاق Nyquist: SNR = 6.02 × N + 1.76 dB
- النطاق الديناميكي (Dynamic range): النطاق الديناميكي = 6.02 × N dB
التحويل عند نقطة القياس
تتيح الحاسبة إجراء تحويلات متبادلة بين الجهد والرمز الرقمي عند نقطة قياس اختيارية وفق القواعد التالية:
1. تحويل الجهد إلى رمز (Voltage → code)
يتم حساب الرمز الرقمي المقابل لجهد الإدخال (V_(in)) باستخدام صيغ التقريب التالية:
- أحادي القطب: code = round(V_(in) ÷ LSB)
- ثنائي القطب: code = round((V_(in) + V_(ref)) ÷ LSB)
2. تحويل الرمز إلى جهد (Code → voltage)
- أحادي القطب: V = code × LSB
- ثنائي القطب: V = code × LSB - V_(ref)
3. خطأ الكمية الفعلي
يتم حساب الفرق بين الجهد الفعلي والجهد الذي يمثله الرمز الناتج: خطأ الكمية = جهد الرمز - جهد الإدخال
الحالات الخاصة والقيود التشغيلية
تتعامل الحاسبة مع عدة حالات تشغيلية خاصة بدقة وتظهر تنبيهات محددة بناءً عليها:
- المدخلات فوق الحد الأعلى (High Rail Clipping): إذا كان جهد الإدخال أعلى من الحد الأقصى المسموح به، يتشبع المخرج عند الرمز الأعلى (2^N - 1). يظهر النظام التنبيه التالي:
"المدخلات تقع فوق الحد الأعلى: المخرج يتشبع عند الرمز الأعلى، والخطأ الموضح هو المتبقي الحقيقي — لا ينطبق حد ±½ LSB بعد الآن."
- المدخلات تحت الحد الأدنى (Low Rail Clipping): إذا كان جهد الإدخال أقل من الحد الأدنى، يتشبع المخرج عند الرمز 0. يظهر النظام التنبيه التالي:
"المدخلات تقع تحت الحد الأدنى: المخرج يتشبع عند الرمز 0، والخطأ الموضح هو المتبقي الحقيقي — لا ينطبق حد ±½ LSB بعد الآن."
- نقطة منتصف النطاق (Mid-Scale Input): عند إدخال جهد يقع في منتصف النطاق تماماً، تعرض الحاسبة ملاحظة تفيد بأن نصف النطاق ينطبق على الرمز الأوسط بخطأ كمية صفري.
مثال تطبيقي بالأرقام (تحميل مثال)
عند استخدام خيار "تحميل مثال" في الأداة، يتم تطبيق القيم التالية:
- الدقة N (بت): 12 بت
- الجهد المرجعي: 3.3 فولت (أحادي القطب)
النتائج المحسوبة:
- مستويات الكمية: 2¹² = 4096 مستوى.
- الرمز الأعلى: 4095.
- حجم خطوة LSB: 3.3 V ÷ 4096 ≈ 805.6641 µV.
- أقصى خطأ كمية (±½ LSB): ± 402.832 µV.
- ضوضاء الكمية (rms): ≈ 232.5752 µV rms.
- نسبة SNR المثالية: ≈ 74.01 dB.
- النطاق الديناميكي: ≈ 72.25 dB.
إذا تم إدخال جهد قياس بقيمة 1.65 V (منتصف النطاق تماماً)، فإنه يترجم إلى الرمز الرقمي 2048 (بالثنائي: 1000 0000 0000 وبالست عشري: 0x800) بخطأ كمية يساوي صفراً.
من يحتاج إلى هذه الحاسبة؟
- مهندسو تصميم الأنظمة: لتحديد الدقة المطلوبة بالبت عند اختيار محول ADC لضمان القدرة على رصد أصغر تغير مطلوب في جهد المستشعرات.
- مطوروا البرمجيات المدمجة: لتحويل القيم الرقمية المخزنة في سجلات المتحكمات الدقيقة إلى قيم جهد فيزيائية حقيقية والتحقق من دقة خوارزميات القياس.
- مصممو الدوائر التماثلية: لحساب ميزانية الضوضاء الإجمالية ومقارنة ضوضاء الكمية النظرية مع الضوضاء الفعلية للنظام.
معالجة البيانات والخصوصية
تتم جميع العمليات الحسابية محلياً بالكامل داخل متصفح الويب الخاص بك. تبقى كل الأرقام التي تدخلها في هذا المتصفح — ولا يتم رفع أي شيء إلى خوادم خارجية.
الأسئلة الشائعة
هل تعني دقة 12 بت دقة قياس فعلية بمقدار 12 بت؟
لا. الدقة هي فقط عرض الرمز — أي مدى صغر تقسيم النطاق. أما الدقة الفعلية فتتأثر بأخطاء INL وأخطاء الإزاحة/الكسب للمحول، وتفاوت وضوضاء المرجع، والدائرة المحيطة به. لهذا السبب تذكر أوراق البيانات قيمة ENOB: فمحول SAR بدقة 12 بت يعطي عادةً 10–11 بتًا فعليًا. ونسبة SNR المثالية البالغة 74 dB الموضحة هنا هي الحد الأقصى النظري الذي لا يصل إليه أي محول حقيقي بدقة 12 بت.
كيف يغير إدخال ±Vref الحسابات؟
يتضاعف النطاق إلى 2 × Vref، لذا يحل المحول نفسه خطوات بضعف الاتساع: LSB = 2 × Vref ÷ 2^N. وتتراوح الرموز من الحد السالب إلى الحد الموجب — الرمز 0 هو −Vref، والرمز الأوسط 2^(N−1) هو 0 فولت، والرمز الأعلى يقع خطوة واحدة تحت +Vref. حدد النطاق ثنائي القطب أعلاه وسينطبق الصفر فولت تمامًا على الرمز الأوسط.
لماذا تقسم بعض المصادر على 2^N والبعض الآخر على 2^N − 1؟
هما نموذجان مختلفان للمحول نفسه. تحدد أوراق البيانات ونظرية الكمية الكلاسيكية LSB = FSR ÷ 2^N، مع حدوث أول انتقال للرمز عند نصف خطوة — وهذا هو النموذج المستخدم في هذه الصفحة. أما صيغة Vref ÷ (2^N − 1) فتأتي من مطابقة الرمز الأعلى تمامًا مع Vref، وهو أمر شائع في دروس المتحكمات الدقيقة. عند دقة 12 بت، يختلف الاثنان بنحو 0.02%، وهو أقل بكثير من تفاوت أي مرجع حقيقي؛ فقط لا تخلط بين الاثنين عند التحقق من الأرقام عبر مصادر مختلفة.
ماذا يمكنني أن أفعل عندما يكون حجم الخطوة خشنًا للغاية؟
يوفر زيادة العينات والمتوسط دقة أعلى عندما تحمل الإشارة القليل من الضوضاء: فمتوسط 4× من العينات يكتسب حوالي بت واحد فعلي، و16× يكتسب بتين، بشرط أن تكون الضوضاء بيضاء وغير مترابطة — فالإشارة النظيفة تمامًا والثابتة تمامًا تكرر الرمز نفسه فقط. بخلاف ذلك، انتقل إلى محول ذي بتات أكثر أو أضف مرحلة كسب قابلة للبرمجة لتملأ الإشارة مساحة أكبر من النطاق.