#include "Ignition.h" #include "Global_Variable.h" #include "BMS_SOC.h" #include "Low_SOC_mode.h" #include "CE_ON_CMD.h" #include "Angle_Speed.h" #include "can.h" #include "board.h" // RWA ¾Þ±Û ½ºÇǵå Á¶Àý, Æ©´× º¯¼ö int RWA_Angle_Speed_limit = 2.7; // RWS ¾Þ±Û ½ºÇǵå Á¶Àý, Æ©´× º¯¼ö int RWS_Angle_Speed_limit = 2.7; // Á¶Çâ ¾Þ±Û °¢ 120/s ·Î Á¦ÇÑ // Á¤ÀÎÁ¦ ´ã´çÀÚ Çǵå¹é -> 50% ½ºÇÇµå »óÇâ ¿äû void Angle_Speed(void){ if(GV_MASTER_RWA_RackAngleCommand != Cur_RWA_RACK_ANGLE){ if(GV_MASTER_RWA_RackAngleCommand < 0){ // ¿ìȸÀü ÀÏ ¶§ if(Cur_RWA_RACK_ANGLE < GV_MASTER_RWA_RackAngleCommand){ // ¿ìȸÀü °¡´Ù°¡ ÁÂȸÀü ²ªÀ»¶§ Cur_RWA_RACK_ANGLE = Cur_RWA_RACK_ANGLE+RWA_Angle_Speed_limit; GV_RWA_040_RackAngleCmd = Cur_RWA_RACK_ANGLE; GV_RWA2_040_RackAngleCmd= Cur_RWA_RACK_ANGLE; } if(Cur_RWA_RACK_ANGLE > GV_MASTER_RWA_RackAngleCommand){ // ¿ìȸÀü °è¼Ó ÇÒ¶§ Cur_RWA_RACK_ANGLE = Cur_RWA_RACK_ANGLE-RWA_Angle_Speed_limit; GV_RWA_040_RackAngleCmd = Cur_RWA_RACK_ANGLE; GV_RWA2_040_RackAngleCmd= Cur_RWA_RACK_ANGLE; } } if(GV_MASTER_RWA_RackAngleCommand > 0){ // ÁÂȸÀü ÀÏ ¶§ if(Cur_RWA_RACK_ANGLE > GV_MASTER_RWA_RackAngleCommand){// ÁÂȸÀü °¡´Ù°¡ ¿ìȸÀü ²ªÀ»¶§ Cur_RWA_RACK_ANGLE = Cur_RWA_RACK_ANGLE-RWA_Angle_Speed_limit; GV_RWA_040_RackAngleCmd = Cur_RWA_RACK_ANGLE; GV_RWA2_040_RackAngleCmd= Cur_RWA_RACK_ANGLE; } if(Cur_RWA_RACK_ANGLE < GV_MASTER_RWA_RackAngleCommand){// ÁÂȸÀü °è¼Ó ÇÒ¶§ Cur_RWA_RACK_ANGLE = Cur_RWA_RACK_ANGLE+RWA_Angle_Speed_limit; GV_RWA_040_RackAngleCmd = Cur_RWA_RACK_ANGLE; GV_RWA2_040_RackAngleCmd= Cur_RWA_RACK_ANGLE; } } } } void RWS_Angle_Speed(void){ if(GV_MASTER_RWS_RackAngleCommand != Cur_RWS_RACK_ANGLE){ if(GV_MASTER_RWS_RackAngleCommand < 0){ // ¿ìȸÀü ÀÏ ¶§ if(Cur_RWS_RACK_ANGLE < GV_MASTER_RWS_RackAngleCommand){ // ¿ìȸÀü °¡´Ù°¡ ÁÂȸÀü ²ªÀ»¶§ Cur_RWS_RACK_ANGLE = Cur_RWS_RACK_ANGLE+RWS_Angle_Speed_limit; GV_RWS1_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; GV_RWS2_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; } if(Cur_RWS_RACK_ANGLE > GV_MASTER_RWS_RackAngleCommand){ // ¿ìȸÀü °è¼Ó ÇÒ¶§ Cur_RWS_RACK_ANGLE = Cur_RWS_RACK_ANGLE-RWS_Angle_Speed_limit; GV_RWS1_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; GV_RWS2_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; } } if(GV_MASTER_RWS_RackAngleCommand > 0){ // ÁÂȸÀü ÀÏ ¶§ if(Cur_RWS_RACK_ANGLE > GV_MASTER_RWS_RackAngleCommand){// ÁÂȸÀü °¡´Ù°¡ ¿ìȸÀü ²ªÀ»¶§ Cur_RWS_RACK_ANGLE = Cur_RWS_RACK_ANGLE-RWS_Angle_Speed_limit; GV_RWS1_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; GV_RWS2_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; } if(Cur_RWS_RACK_ANGLE < GV_MASTER_RWS_RackAngleCommand){// ÁÂȸÀü °è¼Ó ÇÒ¶§ Cur_RWS_RACK_ANGLE = Cur_RWS_RACK_ANGLE+RWS_Angle_Speed_limit; GV_RWS1_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; GV_RWS2_040_RackAngleCmd = Cur_RWS_RACK_ANGLE; } } } }