1
$\begingroup$

Suppose you have a control card. We do not have access to the control card's code and we do not know which control algorithm is used (PID, PD, PI, Fuzzy, ...). We can only measure the control inputs we apply and the output signals the card generates. For examples a quadrotor card, inputs are yaw, pitch roller and throttle and the outputs are propeller pwm signals. Can we predict the algorithm and coefficients/properties used? Is there such a method or study? There are many ready to use control cards, we can imitate or improve for robot control. I think it is important to develop a method for extraction/prediction of algorithm on control board. Thank you for your help and your views.

$\endgroup$
2
$\begingroup$

What you are trying to do is to identify a system. Since you kind of know what to expect, your system is not black box, it is grey box or white box.

There is a lot of theory on how to identify these systems. The field itself is called System Identification and you can find a lot of books and publications for all kinds of systems (blackbox, greybox, whitebox etc.)

$\endgroup$
5
  • $\begingroup$ I might need to rethink my answer. But I am having trouble understanding how to conduct system identification for just the controller with no plant and no feedback available. You're saying to treat the card like any unknown plant and determine its characteristics. Is that sufficient? $\endgroup$
    – SteveO
    Feb 4 '17 at 16:16
  • 1
    $\begingroup$ The system performance in closed loop is determined by the parameters of the controller (and the plant, but the plant is not in focus here). If you identify the controller in open loop, you identify its parameters (e.g. P gain, I gain...). If you have identified the paremeters...you can model it and put it in a closed loop simulation for example. It should perform as the real controller does (given that the identification is good enough). $\endgroup$
    – 50k4
    Feb 4 '17 at 16:28
  • 1
    $\begingroup$ In other word, the parameters you identify in the controller in open loop, are exactly the same which influence the closed loop system. Identifing that the P-gain is 42 can be done in open loop. Its effects are of course different in closed loop, but the value is the same. $\endgroup$
    – 50k4
    Feb 4 '17 at 16:30
  • $\begingroup$ Thanks @50k4. I am overthinking it. The controller is a block in the system like any other block. I will remove my answer. $\endgroup$
    – SteveO
    Feb 4 '17 at 16:31
  • $\begingroup$ No worries, next time it will be the other way around... $\endgroup$
    – 50k4
    Feb 4 '17 at 16:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.