The system is controlled by cascaded control:

Note that there are other solutions for the control problem. However, cascaded control has proven to provide a simple and stable solution for teaching.

Note that it is necessary to calculate the magnet's position from the output of the hall effect sensor, correcting the influence of the (known) current. Additionally it is necessary to calculate the magnet's velocity (some sort of observer), and to calculate the reference current from reference force utilizing actual position as well as the force limits depending on actual position of the magnet for the speed controller.

Discrete control

As long as the samplePeriod of the discrete control is small compared to the time constants of the system, and the delay caused by the time discrete AD/DA (sample and hold) are taken into account, the time discrete controllers can be implemented and parameterized exactly like time continuous controllers.

It is important that all control blocks are executed within the same time schedule, i.e. with the same samplePeriod, and in the correct sequence:

  1. AD/DA delivers measured values to the controllers and holds the output of the current controller until the next communication time instant.
    PWM of the DC/DC-converter is synchronized with the AD/DA, i.e. starts at the same time instants.
  2. Position controller delivers reference speed
  3. Speed controller delivers reference force resp. current
  4. Current controller

Two versions are implemented:

In both versions usage of algorithm keeps the sequence of commands in the desired order withon one block. The tool is supposed to sort the algorithm sections of the blocks according to the causiality of the signals.

Note that the synchronization of the control tasks with the pwm of the DC/DC-converter is managed by using the same samplePeriod (and the correct startTime).

Generated at 2024-05-20T18:15:57Z by OpenModelicaOpenModelica 1.22.4 using GenerateDoc.mos