]> rtime.felk.cvut.cz Git - fpga/rpi-motor-control.git/blobdiff - pmsm-control/test_sw/main_pmsm.c
Regulation function now implemented with use of polymorphism.
[fpga/rpi-motor-control.git] / pmsm-control / test_sw / main_pmsm.c
index ac3563d59b578396991ba6f0088415bb28668929..f0fc982529cb410ebf8fc4aafd3e8425a8d6803a 100644 (file)
@@ -61,7 +61,8 @@ struct rpi_state rps={
        .log_col=0,
        .doLogs=0,
        .alpha_offset=960,
-       .main_commutator=zero_commutator        /*komutace vypnuta*/
+       .main_commutator=zero_commutator,       /* komutace vypnuta */
+       .main_controller=zero_controller        /* rizeni vypnuto */
 };
 
 
@@ -154,11 +155,7 @@ void * control_loop(void* param){
                        }
 
                        /* pocitame sirku plneni podle potreb rizeni*/
-                       if (rps.pos_reg_ena){           /*pozicni rizeni*/
-                               pos_pid(&rps);
-                       }else if(rps.spd_reg_ena){      /*rizeni na rychlost*/
-                               spd_pid(&rps);
-                       }
+                       rps.main_controller(&rps);
 
                        /* sirku plneni prepocteme na jednotlive pwm */
                        rps.main_commutator(&rps);