X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=projects%2Fmicrob2010%2Fmainboard%2Fcs.c;h=896fa163570950e56ce533717f9f41c99eb59146;hb=c20f7eb8460dd04e42f95d799f17d9b60b5ee8e4;hp=516f00b0e27c6266e0c7da03d7d2539d0c773926;hpb=78150017ab8c5615af414df706a0525fe7c262ae;p=aversive.git diff --git a/projects/microb2010/mainboard/cs.c b/projects/microb2010/mainboard/cs.c index 516f00b..896fa16 100644 --- a/projects/microb2010/mainboard/cs.c +++ b/projects/microb2010/mainboard/cs.c @@ -133,11 +133,11 @@ static void do_cs(void *dummy) bd_manage_from_cs(&mainboard.left_cobroller.bd, &mainboard.left_cobroller.cs); bd_manage_from_cs(&mainboard.right_cobroller.bd, &mainboard.right_cobroller.cs); if (mainboard.flags & DO_ERRBLOCKING) { - if (bd_get(&mainboard.left_cobroller.bd) || - bd_get(&mainboard.left_cobroller.bd)) { - printf_P(PSTR("MOTOR BLOCKED STOP ALL\r\n")); - mainboard.flags &= ~(DO_POWER | DO_ERRBLOCKING); - } +/* if (bd_get(&mainboard.left_cobroller.bd) || */ +/* bd_get(&mainboard.left_cobroller.bd)) { */ +/* printf_P(PSTR("MOTOR BLOCKED STOP ALL\r\n")); */ +/* mainboard.flags &= ~(DO_POWER | DO_ERRBLOCKING); */ +/* } */ } #endif } @@ -165,7 +165,6 @@ static void do_cs(void *dummy) #ifdef HOST_VERSION if ((cpt & 7) == 0) { - // dump_cs("dist", &mainboard.distance.cs); robotsim_dump(); } #endif @@ -224,7 +223,7 @@ void microb_cs_init(void) position_init(&mainboard.pos); position_set_physical_params(&mainboard.pos, VIRTUAL_TRACK_MM, DIST_IMP_MM); position_set_related_robot_system(&mainboard.pos, &mainboard.rs); - position_set_centrifugal_coef(&mainboard.pos, 0.000016); + //position_set_centrifugal_coef(&mainboard.pos, 0.000025); position_use_ext(&mainboard.pos); /* TRAJECTORY MANAGER */ @@ -240,8 +239,8 @@ void microb_cs_init(void) /* ---- CS angle */ /* PID */ pid_init(&mainboard.angle.pid); - pid_set_gains(&mainboard.angle.pid, 500, 10, 7000); - pid_set_maximums(&mainboard.angle.pid, 0, 20000, 4095); + pid_set_gains(&mainboard.angle.pid, 850, 30, 15000); + pid_set_maximums(&mainboard.angle.pid, 0, 10000, 4095); pid_set_out_shift(&mainboard.angle.pid, 10); pid_set_derivate_filter(&mainboard.angle.pid, 4); @@ -266,8 +265,8 @@ void microb_cs_init(void) /* ---- CS distance */ /* PID */ pid_init(&mainboard.distance.pid); - pid_set_gains(&mainboard.distance.pid, 500, 10, 7000); - pid_set_maximums(&mainboard.distance.pid, 0, 2000, 4095); + pid_set_gains(&mainboard.distance.pid, 850, 30, 15000); + pid_set_maximums(&mainboard.distance.pid, 0, 10000, 4095); pid_set_out_shift(&mainboard.distance.pid, 10); pid_set_derivate_filter(&mainboard.distance.pid, 6); @@ -337,8 +336,8 @@ void microb_cs_init(void) mainboard.left_cobroller.on = 1; mainboard.right_cobroller.on = 1; - scheduler_add_periodical_event_priority(do_cs, NULL, 5000L / SCHEDULER_UNIT, CS_PRIO); + }