How to implement RLS algorithm in simulink without actually using the RLS block ?
Mostra commenti meno recenti
I have an algorithm for UDRLS which is based on matrix manipulation in iterations
Step 1: The algorithm starts with initialization. Read V(k) and I(k), k=1,2. Set initials for ฮธ as the estimate of last operation from nonvolatile memory (NVM).
Set appropriate ? and ? for the initial covariance matrix. Set a forgetting factor 0 < ฮป โค 1.
Step 2: Read a new pair of data V(k) and I(k).
Step 3: Update ?(?) using the present data V(k) and I(k), and the previous V(k-1), V(k-2), I(k-1) and I(k-2).
Step 4: Let ?0 = ?. Define two vectors ? and ? as
f=[?1, โฆ , ??]' = ??(? โ 1)?(?)
g=[ ?1, โฆ , ??]' = ?(? โ 1)?.
Step 5: For ? = 1,2, โฆ ,6, go through Step 5.1-5.2.
Step 5.1: Compute the following:
?? = ?? โ1 + ?? ??
?(?)?? = (?? โ1)*(? (? โ 1) ?? )/(?? ?)
?? = ??
?? = โ?? /?? โ1.
Step 5.2: For ? = 1,2, โฆ , ? โ 1, go to Step 5.2.1 (if ? = 1, skip Step 5.2.1).
Step 5.2.1: Compute the following:
?(?)?? = ?(? โ 1)?? + ?? ??
?? = ?? + ?(? โ 1)?? ?? .
Step 6: Compute ?(?) = [?1, โฆ , ?? ]'/?? .
Step 7: Compute the estimation error as
?(?) = ฮ? ? โ ?? ? โ 1 ?((?).
Step 8: Update ฮธ to minimize the estimation error ? by
?(?) = ?(? โ 1) + ? ? ?(?).
PFA if algorithm is not understandable.
Risposte (0)
Categorie
Scopri di piรน su Optimization in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!