علوم وفضاء

مقدر الحالة: كيف نصحح التقدير من خطأ المخرج؟

الحالة والتقدير في ثلاث لحظات؛ الخطأ(2,1) ثم(−1,−1) ثم الصفر بمدخلين3 ثم−2.
حساب ورسم أصليان.

مقدر الحالة يستخدم النموذج والمدخل والمخرج المقاس لتحديث تقدير الحالة. [1] سنحسب تصحيحًا يزيل خطأ البداية في تحديثين، ثم نختبر أثر القياس المنحاز.

افصل التنبؤ عن تصحيح المخرج

نكتب xₖ₊₁=Axₖ+Buₖ وyₖ=Cxₖ. الحالة عمود ذو مركبتين، والمخرج والمدخل عددان، والمصفوفات ثابتة ومعلومة. لا توجد هنا ضوضاء في الحالة أو القياس، والمدخل الفعلي نفسه يصل إلى المقدر.

معادلة المقدر تجمع تنبؤ النموذج Ax̂ₖ+Buₖ مع التصحيح L(yₖ−Cx̂ₖ). [1] الرمز x̂ يعني تقديرًا؛ لا نفترض أنه يساوي الحالة الفعلية منذ البداية.

الفرق yₖ−Cx̂ₖ عدد هنا؛ ضربه في العمود L ذي الحجم2×1 يصحح المركبتين. أما LC فمصفوفة2×2، وهذا يختلف عن كسب صف نضربه في الحالة لإنتاج مدخل.

عرّف eₖ=xₖ−x̂ₖ. بطرح معادلتي التحديث، تلغى Buₖ، ونحصل على eₖ₊₁=Aeₖ−LCeₖ=(A−LC)eₖ. الإلغاء يتطلب المدخل نفسه والنموذج نفسه.

نختار A=[[1,1],[0,1]] وC=[1,0] وL=(2,1)ᵀ. إذن LC=[[2,0],[1,0]]، وE=A−LC=[[-1,1],[-1,1]]. ضربها في نفسها يعطي المصفوفة الصفرية.

لأي خطأ ابتدائي(a,b)، يصبح الخطأ التالي(b−a,b−a)، ثم(0,0). لذلك لا يقتصر اختفاء الخطأ على المسار المرسوم؛ كل خطأ بداية يختفي بعد تحديثين على الأكثر، وقد ينتهي بعض الأخطاء قبل ذلك.

تتبع الحالة والتقدير في الوقت نفسه

نضع B=(0,1)ᵀ، ونبدأ بالحالة الفعلية x₀=(2,1) والتقدير x̂₀=(0,0). المدخل الأول u₀=3، والمخرج المقاس y₀=2، والمخرج المقدر Cx̂₀=0.

التصحيح L(2−0)=(4,2). بعد إضافة التنبؤ والمدخل، نحصل على x̂₁=(0,0)+(0,3)+(4,2)=(4,5). في المقابل x₁=A(2,1)+(0,3)=(3,4). الخطأ e₁=(−1,−1).

المدخل التالي u₁=−2، والمخرج الفعلي y₁=3 والمقدر4؛ الفرق−1. إذن x̂₂=A(4,5)+(0,−2)+L(−1)=(9,5)+(0,−2)+(−2,−1)=(7,2).

الحالة الفعلية x₂=A(3,4)+(0,−2)=(7,2)، فتطابق التقدير. إن استمرت الفرضيات نفسها، يبقى الخطأ صفرًا لأن E(0,0)=(0,0).

القراءة y₀ استُخدمت لحساب x̂₁، لا لاستبدال x̂₀ بالمخرج. وعند k=1 كان التقدير مبنيًا على القراءة الأولى فقط؛ استخدمنا y₁ بعد ذلك لحساب تقدير الحالة عند2.

قد يبدأ الخطأ بـ(0,1). عندها Ce₀=0، فيكون المخرج المقدر مساويًا للمقاس رغم خطأ المركبة الثانية. بعد التحديث يصبح e₁=(1,1)، فتظهر معلومة مختلفة؛ فرق مخرج صفري واحد ليس شهادة تطابق الحالة كاملة.

تحقق من الإشارة ومن معنى التقارب

إذا قلبت فرق المخرج إلى Cx̂−y وأبقيت L نفسها، تصبح معادلة الخطأ eₖ₊₁=(A+LC)eₖ. مصفوفتها هنا[[3,1],[1,1]]، بدل المصفوفة التي قوتها الثانية صفر.

من خطأ(1,0) تحصل على(3,1) ثم(10,4). المركبتان تبقيان غير سالبتين، والمركبة الأولى التالية3 أضعاف السابقة زائد الثانية؛ لذلك الأولى لا تقل عن3ᵏ. هذا خطأ يتزايد لا تصحيح يتقارب.

البرهان السابق يشمل كل التحديثات عبر المتراجحة، وليس مجرد ملاحظة رقمين. وإذا عرّفت الخطأ بالعكس x̂−x، فالمعادلة الصحيحة ما زالت تستخدم A−LC ما دمت تحافظ على فرق المخرج y−Cx̂.

كذلك إزالة خطأ التقدير لا تعني إيقاف نمو الحالة الفعلية. مع uₖ=0 وبداية(0,1)، تعطي A وحدها xₖ=(k,1). يستطيع المقدر مطابقتها بعد تحديثين، لكنها تستمر في النمو.

وظيفة المقدر هنا معرفة الحالة، أما تغيير حركتها فيحتاج قانون تحكم. لم نغلق حلقة تحكم على التقدير في هذا المقال، ولم نخلط خطأ المخرج مع مدخل يوجه النظام.

اختبر انحياز القياس قبل وعد التطابق

أبقِ معادلة الحالة دقيقة، وأضف خطأ قراءة فقط: yₖ=Cxₖ+vₖ. يصبح eₖ₊₁=Eeₖ−Lvₖ؛ إشارة حد القياس سالبة لأننا عرّفنا e=x−x̂.

بالتحديث مرة أخرى، eₖ₊₂=E²eₖ−ELvₖ−Lvₖ₊₁. هنا E²=0 وEL=(−1,−1)، فينتج eₖ₊₂=(vₖ−2vₖ₊₁,vₖ−vₖ₊₁). اختفاء أثر البداية لا يمحو أثر القراءتين.

إذا كان vₖ=1/10 دائمًا، فبعد تحديثين يكون الخطأ(−1/10,0)، ويستمر كذلك. معناها أن التقدير يزيد على الحالة الفعلية بمقدار1/10 في المركبة الأولى، لا أن الخطأ صار صفريًا.

وإذا |vₖ|≤ε لكل قراءة، فإن مقدار خطأ المركبة الأولى بعد التحديثين لا يتجاوز3ε، والثانية2ε. اختيار vₖ=ε وvₖ₊₁=−ε يعطي(3ε,2ε)، فيبلغ الحدين في التحديث نفسه.

توثيق estim يذكر أن تقدير الزمن k يعتمد على قراءات حتى k−1. [2] هذا يوافق ترتيبنا: نصحح بواسطة yₖ لإنتاج التقدير التالي. ولم نشغل MATLAB أو Simulink.

المصدر الأول يعرض تحويلات خاصة بكتلة برمجية. [1] استخدمنا التحديث المتقطع مباشرة، دون تحويل نموذج مستمر بطريقة أويلر.

هذا كسب محسوب لهذا النموذج، لا تصميم كالمان قائمًا على تباينات ضوضاء مفترضة. عند اختلاف النموذج أو المدخل أو ضوضاء الحالة، يلزم اشتقاق معادلة الخطأ الجديدة قبل تكرار وعد التحديثين.

قوة E الثانية صفر، لكن خطأي القراءة يتركان خطأ محسوبًا؛ الانحياز1/10 يعطي(−1/10,0).
حساب ورسم أصليان.
kالحالة والتقديرالخطأ x−x̂
0x=(2,1)؛ x̂=(0,0)(2,1)
1x=(3,4)؛ x̂=(4,5)(−1,−1)
2x=(7,2)؛ x̂=(7,2)(0,0)

للتوسع: الجبر الخطي.

المراجع

  1. MathWorks — Luenberger Observer
  2. MathWorks — estim

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.