81 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | ||
|  *  说明: 科三项目[起步]评判
 | ||
|  *
 | ||
|  *  作者: 杨海洋
 | ||
|  *  日期: 2024-03-26
 | ||
|  *
 | ||
|  * ***************************************************************************************
 | ||
|  *
 | ||
|  *  补充知识-->可以人工触发的项目:直线行驶、变更车道、超车、会车、靠边停车、掉头:普通掉头(非路口项目定义的掉头)
 | ||
|  *  测绘及项目阶段定义
 | ||
|  *
 | ||
|  *  起步项目的内部代码:2
 | ||
|  *
 | ||
|  *    一、测绘相关
 | ||
|  *         (无)
 | ||
|  *
 | ||
|  *     二、  评判内容
 | ||
|  *         Step1: 起步距离小于1米(车辆停车状态到前进距离小于1米的阶段)
 | ||
|  *             1、起步时车辆发生闯动评判
 | ||
|  *                 (连续1秒前进状态,发动机转速<发动机怠速*发动机闯动比例)
 | ||
|  *               (闯动比例数据库中设置,发动机怠速通用评判中计算得到的)
 | ||
|  *                (每次起步,闯动只判1次)
 | ||
|  *            2、起步时,加速踏板控制不当,致使发动机转速过高
 | ||
|  *                 1)取出转速过高的 发动机转速值
 | ||
|  *                      ZSMax := StrToIntDef(GetDotStr(4, SysSet[502], ','), 2500);
 | ||
|  *                 2) 连续3帧发动机转速大于这个阈值
 | ||
|  *                 3) 2秒内不在点火状态(点火2不等于1)
 | ||
|  *
 | ||
|  *                  2)+3) 成立,扣分
 | ||
|  *
 | ||
|  *            3、具备起步条件,10秒没有起步
 | ||
|  *                 1)第一次准备起步的时候,记录一下准备起步时间
 | ||
|  *                      (挂了前进挡或者拉了手刹车)
 | ||
|  *                 2)  如果超过10秒没有起步,扣分。
 | ||
|  *
 | ||
|  *            4、起步了,并且起步距离大于1米了,进入Step2
 | ||
|  *
 | ||
|  *         Step2: 起步距离大于1米
 | ||
|  *                 1)手刹问题,如果当前手刹车等于1(当前距离小于10米),设置一个手刹错误标签。
 | ||
|  *                 2) 如果10米内,手刹松开了,扣:及时纠正
 | ||
|  *                 3)10米后,手刹还没有松开,扣:未及时纠正。
 | ||
|  *
 | ||
|  */
 | ||
| 
 | ||
| #ifndef SUB3JUDGE02QBXX_H
 | ||
| #define SUB3JUDGE02QBXX_H
 | ||
| 
 | ||
| #include "ISub3JudgeWrap.h"
 | ||
| 
 | ||
| class JUDGE_API Sub3Judge02Qbxx : public ISub3JudgeWrap
 | ||
| {
 | ||
| public:
 | ||
|     explicit Sub3Judge02Qbxx();
 | ||
|     virtual ~Sub3Judge02Qbxx();
 | ||
| 
 | ||
|     DEAL_API bool dealJudgeEnter() override;
 | ||
|     DEAL_API void dealJudgeItem() override;
 | ||
| 
 | ||
| protected:
 | ||
|     //具备起步条件,10秒没有起步
 | ||
|     void nogo_timeout();
 | ||
|     //1、溜车评判
 | ||
|     void Judge_LiuChe();
 | ||
|     //6、起步方向灯、喇叭
 | ||
|     void Judge_QiBu_FXD_LaBa();
 | ||
|     //22、起步挂错挡
 | ||
|     void Judge_QiBu_GuaCuoDang();
 | ||
| 
 | ||
| private:
 | ||
|     TSub3Item02Qbxx m_itemv;
 | ||
|     bool m_Pub_First_QiBu_Flag = false; //起步方向灯和喇叭 只判一次 第一次进起步项目才判
 | ||
|     bool m_sound_qibu = false;
 | ||
|     //**********************以下是新科目三************************
 | ||
| private:
 | ||
|     //起步项目中,车辆状态从停止切换前进前10s内,头部姿态没有大于左后侧角度【23度】
 | ||
|     void NS3JudgeVision_40202();
 | ||
| 
 | ||
| };
 | ||
| 
 | ||
| #endif // SUB3JUDGE02QBXX_H
 |