- Drive_Mode.c 수정
: RC - ACU handover 전환 로직 보완
: RC -> ACU / ACU -> RC 전환 시 5km/h 이하에서만 Permit 되도록 수정
: 5km/h 초과 시 Handover Phase가 In Progress가 되도록 수정
: handover 속도 조건에 차속 피드백 외 제어 명령 속도 조건 추가
: ACU -> RC 전환 시 RC 속도 명령 5km/h 이하 조건 추가
: RC -> ACU 전환 시 ACU 속도 명령 5km/h 이하 조건 추가
: handover 진행 중 요청/제어 주체 해제 시 비상정지 진입 조건 보완
: ACU -> RC 진행 중 ACU Drive Mode 해제 시 Emergency 진입
: RC -> ACU 진행 중 RC ACU 요청 해제 시 Emergency 진입
: 관련 Handover/Emergency 상태 변수 설정 보완
- Drive_Mode.c/ExecuteEmergencyMode 함수 수정
: Handover conflict 발생 후 RC manual 요청으로 복구 가능하도록 조건 보완
- DBC 수정
: 1채널(41 → 42)
: 2채널(22 → 23)
- Drive_Mode.c 수정
: bool 변수 삭제
: Drive Mode 변환 로직 작성
: ACU 전환 시퀀스 검토-v2.1 참고
- Drive_Mode.c/RcRequestCheck 함수 수정
: RC ACU 동시 요청 시 비상정지
: 마지막 요청을 RC_ModeReq에 저장하도록 수정
- Drive_Mode.c/ExecuteEmergencyMode 함수 수정
: VCU_Emergency_Flag 조건 추가
- VSCode에서 빌드 가능하도록 수정
: Test 기능으로 수정 필요
: 타 환경에서 빌드 불가
: GW/Debug_STANDALONE 생성
- Drive_Mode.c 수정
: bool 변수 삭제
- Drive_Mode.c/RcRequestCheck 함수 수정
: RC ACU 동시 요청 시 비상정지
: 마지막 요청을 RC_ModeReq에 저장하도록 수정
- Drive_Mode.c/ExecuteEmergencyMode 함수 수정
: VCU_Emergency_Flag 조건 추가
- VSCode에서 빌드 가능하도록 수정
: GW/Debug_STANDALONE 생성
- 코드 구조 변경(파일 삭제/통합)
: CE_ON_CMD.c 삭제 (Drive_Mode.c로 통합)
: Charging_Status.c 삭제 (Drive_Mode.c로 통합)
: Ignition.c 삭제 (Drive_Mode.c로 통합)
- 코드 효율 개선
: Drive_Mode.c 내 시동 로직 개선
: Drive_Mode.c 내 key off 조건 추가
- ACU ARC 함수 수정
: ECU_Check.c 내 ACU_Arc_check 함수로 통합
- 코드 구조 변경(파일 삭제/통합)
: CE_ON_CMD.c 삭제 (Drive_Mode.c로 통합)
: Charging_Status.c 삭제 (Drive_Mode.c로 통합)
: Ignition.c 삭제 (Drive_Mode.c로 통합)
- 코드 효율 개선
: Drive_Mode.c 내 시동 로직 개선
: Drive_Mode.c 내 key off 조건 추가
- ACU ARC 함수 수정
: ECU_Check.c 내 ACU_Arc_check 함수로 통합
- 코드 구조 변경(레이어 삭제/추가)
: IG_Layer 삭제
: Vehicle_System_Mode_Layer 삭제
: System_Layer 추가
- 코드 구조 변경(통합)
: System_Check 내 함수 Drive_Mode로 이동
: System_Layer로 Drive_Mode, Ignition 이동
- DBC 업데이트
: CAN_DBC_ch1_v41.dbc
: RC_VCU_Signal2(0x41) 내 RC_ACU_Drive_Mode 신호 추가
- LongitudinalCtrlMode 함수 비활성화
- Param match에서 가속도 관련 변수 0으로 비활성화
- Drive_ACC_Cmd 오프셋 적용
- GV_RC_Drive_ACC_Cmd 변수 생성
- Fault 시 명령 0으로 설정하는 조건 수정
- 속도 - 가속도 제어 전환 조건 추가
- 통합 로직 수정
: 가속도 제어 로직 적용
: 가속도 명령을 처리하는 Pre-processing 과정에 문제가 있어 해당 부분 재검토 필요
: 가속도 제어 로직이 동작하지 않도록 AccCmd_Out, AccControlFlag 0으로 설정
- 1채널 DBC 수정
: 0x140
: EstMass 신호 Length 수정(15 → 14)
: EstMassFlag 신호 Length 수정(1 → 2)
: EstMassFlag 신호 Value Table 추가
- DBC 수정에 따른 can.c 및 관련 변수 수정
- 질량 추정 로직 개선
: R 행렬 중 Ax 분산 실차 데이터 적용
: Flag 신호 개선
- DBC 수정
= 1채널 v38
: ID0x13/ACU_ECU_Fault_Flag 추가
= 2채널 v22
: ID0x17/ACU_ECU_Fault_Flag 추가
- CAN 송신 코드 추가
= 1채널 ID 0x13 내 ACU_ECU_Fault_Flag_Master 신호 추가
= 1채널 ID 0x17 내 ACU_ECU_Fault_Flag_Master 신호 추가
- ECU_Check.c 로직 수정
= ACU ARC 확인 후 각 메시지에 1개라도 Fault 존재 시 ACU_ECU_Fault_Flag_Master 1로 변화
- Simulink 로직 수정
= 최대 제동 토크 2500Nm로 수정
- 1채널(ACU) RX ID 수정(150 → 151)
- ACU ARC 적용
- [!] Message buffer(MB) 오류 수정
= define.h 내 MAX_RX_MB_1ch 수정 (4U → 32U)
= board.c 내 LN.1244 RXID setting for문 수정(RX_MB_IDX → RX_MB_IDX_1ch)
- Simulink 로직 수정
= ACU CAN Fault Flag 적용
= ACU 모드일때만 적용
1. VCU → ACU Fault Flag CAN 송신 코드 추가(0x017)
2. canMessageObjectConfigType ID 오름차순 변경
3. board.c 내 변수 initialize ID 오름차순 변경
4. can.h 내 함수 ID 오름차순 변경
5. can.h 내 CAN 채널별 enum ID 오름차순 변경
6. DBC 최신화