Raqamli signallarni qayta ishlash 11-mavzu. Raqamli ma'lumotlarni adaptiv filtrlash
Diskret adaptiv Kalman filtrining ishlashini ko'rsatish dasturi
Download 230.46 Kb.
|
signallarni filtirlash
Diskret adaptiv Kalman filtrining ishlashini ko'rsatish dasturi
#! / usr / bin / env python # kodlash = utf8 import matplotlib.pyplot sifatida plt import numpy numpy import exp dan np sifatida, scipy.stats dan sqrt import normasi Q = 0,8; R = 0,2; y = 0; x = 0 # shovqinning dastlabki farqlari (o'zboshimchalik bilan tanlangan) va o'zgaruvchilarning nol qiymatlari. P = Q * R / (Q + R) # shovqin farqlarining birinchi taxmini. T = 5.0 # vaqt doimiysi. n =; X =; Y =; Z = # o'zgaruvchilar uchun ro'yxatlar. i uchun np.arange (0,100,0.2): n.append (i) # vaqt o'zgaruvchisi. x = 1-exp (-1 / T) + x * exp (-1 / T) # x uchun model funktsiyasi. y = 1-exp (-1 / T) + y * exp (-1 / T) y uchun # model funktsiyasi. Y.append (y) # y qiymatlari ro'yxatini to'playdi. X.append (x) # x qiymatlar ro'yxatini to'playdi. norma1 = norma (y, sqrt (Q)) # kutilgan # normal taqsimot - y. norma2 = norma (0, sqrt (R)) #)) # kutish bilan normal taqsimlash - 0.ravn1 = np.random.uniform (0,2 * sqrt (Q)) # Q dispersiyasi bilan shovqin uchun yagona taqsimlash # .ravn2 = np.random.uniform (0,2 * sqrt (R)) # yagona taqsimot # dispersiya bilan shovqin uchun R. z = norm1.pdf (ravn1) + norm2.pdf (ravn2) # o'lchanadigan o'zgaruvchi z. Z.append (z) # z qiymatlari ro'yxatini to'playdi. P = P- (P ** 2) / (P + Q + R) # x uchun yangi holatga o'tish. x = (P * z + x * R) / (P + R) # yangi holat x. P = (P * R) / (P + R) # yangi davlat x uchun prognoz. plt.plot (n, Y, rang = "g", chiziq kengligi = 4, label = "Y") plt.plot (n, X, rang = "r", chiziq kengligi = 4, label = "X") plt. chizma (n, Z, rang = "b", chiziq kengligi = 1, yorliq = "Z") plt.legend (loc = "eng yaxshi") plt.grid (True) plt.show () Tavsiya etilgan algoritm va taniqli algoritm o'rtasidagi farq nima Men Mathcad uchun ko'rsatmalarda berilgan Kalman filtri algoritmini yaxshiladim: Taqqoslangan x (t) o'zgaruvchisi holatining muddatidan oldin o'zgarishi natijasida keskin o'zgarishlar sohasida xatolik ortdi: Holbuki, mening algoritmim shovqin ta'sirining dastlabki taxminiy bahosidan foydalanadi. Bu o'lchash xatosini kamaytirish imkonini berdi v (t). Berilgan algoritmda berilgan - model ko'rsatkichli funktsiyalardan foydalaniladi, shuning uchun aniqlik uchun ularni Kalman filtrining umumiy grafigida alohida ko'rsatamiz. Download 230.46 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling