Systems identification – worse performance with more data?
古いコメントを表示
Question
I have noticed when applying the transfer function estimator to my dataset is that I get better results when I use a single dataset rather than grouping datasets together. (I typically use a 2 poles 1 zero model with fixed delay – more complicated models seem to produce a worse result). The question is why does this happen, and/or what is the best estimation method for this sort of problem?
example result (y axis is target servo angle in degrees):


Background
I am trying to find the transfer function for a dynamixel servo motor (ax12+). Where the input, u(t), is the desired position and the output , y(t), is actual position. Based on other literature I am thinking that a relatively simple transfer function should be capable of modelling the dynamics of the motor although both the motor dynamics and the controller are unknown and other work typically uses motor voltage for u(t) rather than position setpoint.
Approach
Based on this Matlab tutorial: https://uk.mathworks.com/videos/series/data-driven-control-95931.html I copied the setpoint inputs for datasets - although in my case the input is desired position rather than voltage in. As a consequence, the non-linearities caused by friction and saturation are not really seen in my dataset. In this method 11 timeseries datasets are created (z1 – z11) which are split into training (ze) and validation sets (zv). I have plotted these datasets here:

The blue line represents the target angle and the orange is the actual angle. x axis is time and y axis is servo angle.
and the data files are available here: https://www.dropbox.com/sh/738b8s7zr7bjxt4/AAA5nQp24xLP_QrpkPbbIj0Ma?dl=0
Please excuse the long post!! any guidance for improving the servo model would be welcome!
2 件のコメント
Aquatris
2018 年 7 月 18 日
How are you grouping the datasets? Are you simply cascading them? If so, since some of your data sets do not start and end at the same positions, the algorithm might treat the difference as an additional dynamic.
Jan Stankiewicz
2018 年 7 月 18 日
回答 (0 件)
カテゴリ
ヘルプ センター および File Exchange で Real-Time Deployment についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!