diff --git a/docs/不同车型在线圈检测器上的信号特征与分辨策略.md b/docs/不同车型在线圈检测器上的信号特征与分辨策略.md new file mode 100644 index 0000000..69b73f0 --- /dev/null +++ b/docs/不同车型在线圈检测器上的信号特征与分辨策略.md @@ -0,0 +1,408 @@ +# 不同车型在线圈检测器上的信号特征与分辨策略 + +> 编写日期:2026-07-01 +> 技术领域:环形线圈车辆检测器 / 车型分类 +> 关键词:车型分辨、波形特征、自适应基线、双阈值检测、状态机、线圈变形补偿 + +--- + +## 一、物理层——不同车型对线圈信号的三个核心维度 + +环形线圈本质上是一个 LC 振荡器,车辆经过时等效于在电感线圈下方引入一个**涡流耦合的金属体**。不同车型在以下三个维度上影响振荡信号: + +### ① 底盘高度(耦合间距) +决定感应强度最重要的因素,遵循 **1/(d²)~1/(d³)** 衰减规律。 + +| 车型 | 典型底盘高度 | 耦合效率 | 关键影响 | +|------|------------|---------|---------| +| 自行车 | 无底盘,车架距地15~30cm | 极弱 | 金属质量太小,信号接近噪声底限 | +| 摩托车 | ~15cm(发动机部位更低) | 中等 | 发动机曲轴箱有一定金属量 | +| 三轮车 | 货斗部位可低至20~30cm | 弱-中等 | 电动三轮金属车架+电池组 | +| 小轿车 | ~15cm | 强 | 底盘平整,耦合好 | +| 人货车 | 25~35cm | 中等偏强 | 铁质货箱耦合面高,但底盘高 | +| 大货车 | 40~70cm | 弱-中等 | 底盘极高,但轮胎巨大、金属总量大 | +| 集装箱挂车 | 60~90cm | 极弱 | 底盘最高,但整个箱体是铁皮 | + +### ② 金属覆盖面积(ΔL/L 幅度) +单位时间内的有效金属体积影响**频率偏移量**: + +``` +自行车: Δf ≈ 20~80 Hz (信号幅度最低,接近噪声) +摩托车: Δf ≈ 100~300 Hz (发动机集中) +三轮车: Δf ≈ 150~400 Hz (车架+电池) +小轿车: Δf ≈ 400~1200 Hz (底盘全耦合) +人货车: Δf ≈ 300~800 Hz (铁质货箱,但耦合弱) +大货车: Δf ≈ 200~600 Hz (底盘高,金属在后轴集中) +集装箱: Δf ≈ 150~500 Hz (底盘极高,仅有集装箱底部) +``` + +### ③ 车身长度(信号持续时长) +车辆通过线圈的速度 × 车身长度 = 占道时间。详见下文"速度归一化"。 + +### ④ 铁磁性 vs 非铁磁性 +- **铁磁性材料**(钢制底盘、发动机缸体):不仅增加涡流损耗,还**提高线圈电感量**——初期信号方向相反(频率先降后升),形成特有波形特征 +- **纯铝/非铁金属**:纯涡流效应,**只降低电感量**(频率上升) + +> 大货车的信号波形有时会"先凹后凸"——铁质车轴进入时电感升高→频率下降,进入感应区后涡流占主导→频率上升。 + +--- + +## 二、各类车型的典型波形形态 + +``` +频率偏移量 ↑ + | ___ +1400Hz | / \_________ 小轿车 (底盘低, Δf大, 波形陡) + | / \____ +1200Hz |/ + | +1000Hz | + | ____ + 800Hz | / \ 人货车 (货箱铁皮, 波形有双峰) + | / \____ + 600Hz |/ \ + | + 400Hz | __/--\_____ 集装箱 (振幅小, 持续长, 可能平顶) + | / \__ + 200Hz | / + | -_ _ _ _ _ _ _ _ + 0Hz |__________________________→ 时间 + ↑ ↑ ↑ + 进入 车轴/发动机 离开 + (铁磁性凸起) +``` + +### 波形特征速查表 + +| 车型 | Δf 幅度 | 持续时长 | 波形包络 | 特征备注 | +|------|---------|---------|---------|---------| +| 自行车 | <80Hz | ~0.3s@20km/h | 窄尖峰 | 极难分辨,信噪比低 | +| 摩托车 | 100~300Hz | ~0.4s | 单峰对称 | 钢制车架可能有小凸起 | +| 三轮车 | 150~400Hz | ~0.5s | 单峰或双峰 | 电机/电池位置产生不对称 | +| 小轿车 | 400~1200Hz | ~0.8s | 平滑单峰 | 基准波形,波动小 | +| 人货车 | 300~800Hz | ~1s | 双峰(发动机舱+货箱) | 铁质货箱产生二次凸起 | +| 大货车 | 200~600Hz | ~1.5s | 平顶或双峰 | 铁质车轴+高底盘,振幅被压缩 | +| 集装箱 | 150~500Hz | ~2.5s | 平顶+缓慢起伏 | 持续极长,幅度不高 | + +--- + +## 三、稳定可靠的检测与分辨策略 + +### 3.1 基本检测——自适应基线 + 双阈值 + +所有分辨的基础是先检测到。针对大跨度信噪比,必须用**自适应基线跟踪**: + +```c +// 自适应基线 —— 抗温漂+抗噪声 +// 使用一阶低通滤波器跟踪无车时的频率 +#define BASELINE_ALPHA 0.01f // 慢速跟踪 + +if (!occupied) { + baseline_freq = baseline_freq * (1 - ALPHA) + current_freq * ALPHA; +} + +// 双阈值检测 +#define THRESHOLD_OCCUPY 150 // 占车阈值 (Hz) +#define THRESHOLD_RELEASE 80 // 释放阈值 (Hz) — 滞后比较 + +delta_f = current_freq - baseline_freq; + +if (!occupied && delta_f > THRESHOLD_OCCUPY) { + occupied = TRUE; + // 进入检测态 +} else if (occupied && delta_f < THRESHOLD_RELEASE) { + occupied = FALSE; + // 离开 → 触发分类流程 +} +``` + +**关键设计点**: +- 自行车Δf仅20~80Hz → 单车场景下可将阈值降至40Hz,但必须配合**持续时间滤波**(≥50ms才算检测到,避开尖峰噪声) +- 大货车Δf也偏小(200~600Hz) → 阈值150Hz能覆盖,但若安装深度过浅或线圈变形,货车可能被漏检 → 建议备用雷达或长线圈 + +### 3.2 车型分辨 — 特征向量 + 决策树 + +采集车辆经过的完整波形后,提取以下特征向量: + +``` +特征向量 = { + peak_delta_f: 最大频偏 (反映底盘高度+金属量) + mean_delta_f: 平均频偏 + std_delta_f: 波形标准差 (反映轮廓锐度) + duration_ms: 持续时长 (÷速度 = 车身长度) + rise_time_ms: 上升时间 (进入阶段) + fall_time_ms: 下降时间 (离开阶段) + asymmetry_ratio: 上升/下降时间比 (波形对称性) + double_peak_flag: 是否有多个峰值 (发动机+货箱) + plateau_ratio: 平顶占比 (平顶持续时间/总时间) +} +``` + +#### 分辨逻辑(决策树) + +```c +typedef enum { + UNKNOWN, + BICYCLE, + MOTORCYCLE, + TRICYCLE, + SEDAN, + TRUCK_LIGHT, // 人货车 + TRUCK_HEAVY, // 大货车 + CONTAINER +} VehicleClass; + +VehicleClass classify_vehicle(VehicleFeatures *f) { + // Step 1: 先评估信号强度,过滤弱信号 + if (f->peak_delta_f < 80) { + if (f->duration_ms > 300 && f->duration_ms < 800) + return BICYCLE; + else + return UNKNOWN; // 噪声/行人干扰 + } + + // Step 2: 按峰值幅度粗分 + if (f->peak_delta_f > 600) { + if (f->duration_ms > 600 && f->asymmetry_ratio < 1.3f) + return SEDAN; + if (f->duration_ms < 500 && f->double_peak_flag) + return MOTORCYCLE; + return SEDAN; // fallback + } + + // Step 3: 中等信号 → 货车类 + if (f->peak_delta_f > 300) { + if (f->duration_ms > 1200) + return TRUCK_HEAVY; + if (f->double_peak_flag) + return TRUCK_LIGHT; + if (f->duration_ms > 500 && f->duration_ms < 900) + return TRICYCLE; + return TRUCK_LIGHT; + } + + // Step 4: 弱信号 → 高底盘车辆 + if (f->duration_ms > 1000) { + if (f->plateau_ratio > 0.3f) + return CONTAINER; + return TRUCK_HEAVY; + } + + return UNKNOWN; +} +``` + +### 3.3 速度归一化——核心前提 + +没有速度,所有持续时间特征都无意义。 + +**方案:两个线圈成对使用(间距1m~3m)** +- 两个线圈分别检测,测速后反推车身长度 +- 用两线圈的进入时间差和离开时间差取平均,提高鲁棒性 + +```c +// 双线圈测速 +speed = coil_distance / (entry_time_2 - entry_time_1); // m/s + +// 车身长度 +body_length = speed * (exit_time_1 - entry_time_1); + +// 速度过滤 +if (speed < 0.5f) speed = 0.5f; // 怠速/蠕动处理 +``` + +--- + +## 四、线圈变形导致的异常与规避策略 + +### 4.1 常见变形问题 + +| 现象 | 物理本质 | 对信号的影响 | +|------|---------|------------| +| **线圈拉伸变形**(矩形变梯形/锥形) | 电感量不均,磁场分布畸变 | 同一车辆在不同位置通过时信号幅度相差2~3倍 | +| **引线断裂/接触不良** | 回路电阻增加,Q值下降 | 基线噪声增大,弱信号(自行车/高底盘)消失 | +| **线圈受潮** | 分布电容增大,串联等效电阻变化 | 基线频率持续漂移,信号幅度下降 | +| **路面沉降/线圈移位** | 线圈面与路面不平 | 感应区域偏移,部分车辆漏检 | + +### 4.2 锥形线圈的幅度变化 + +车辆从不同车道位置通过,频偏差异极大。这是最头疼的实际问题之一。 + +### 4.3 抗变形策略 + +#### 方案A:多区段采样 + 峰值保持 + +不依赖单点频偏,对完整窗口做分段分析: + +```c +void update_zone_features(SignalBuffer *buf) { + int samples_per_zone = buf->sample_count / SECTOR_COUNT; + if (samples_per_zone < 1) return; + + for (int z = 0; z < SECTOR_COUNT; z++) { + int16_t max_val = 0; + int start = z * samples_per_zone; + int end = (z == SECTOR_COUNT - 1) ? buf->sample_count + : start + samples_per_zone; + for (int i = start; i < end; i++) { + if (buf->freq_samples[i] > max_val) + max_val = buf->freq_samples[i]; + } + buf->zone_max[z] = max_val; + } + // 取分段峰值加权值——排掉最小1/4区段,取剩余最大值 +} +``` + +#### 方案B:自动阈值补偿(基线+噪声自适应) + +```c +static int16_t noise_floor = 50; +static int16_t noise_peak = 80; + +void update_noise_floor(int16_t baseline_stability_ms) { + static int16_t peak_buf[10]; + static int idx = 0; + peak_buf[idx % 10] = baseline_stability_ms; + idx++; + if (idx >= 10) { + int sum = 0, max = 0; + for (int i = 0; i < 10; i++) { + sum += peak_buf[i]; + if (peak_buf[i] > max) max = peak_buf[i]; + } + noise_floor = sum / 10; + noise_peak = max; + } +} +``` + +#### 方案C:双线圈相关性校验(高端方案) + +两个线圈一长一短或一前一后,校验一致性: +- 结果矛盾→标记"变形/异常" +- 峰值比超出历史基准→发出线圈退化预警 + +### 4.4 线圈维护体检建议 + +1. **空载测量**:无车时测线圈电感L + Q值(正常:L=50~200μH,Q>30;Q<20→需检修) +2. **频率漂移测试**:记录1小时内基线变化(正常<±50Hz;异常>±200Hz) +3. **行走测试**:推标准车从左中右分别通过(偏差>40%→已变形) + +--- + +## 五、完整状态机框架 + +适用于STM32/GD32等MCU的实用状态机伪代码: + +```c +typedef enum { + IDLE, RISE, PLATEAU, FALL, CLASSIFY, VERIFY +} CoilState; + +typedef struct { + CoilState state; + int32_t freq, baseline, delta_f; + uint32_t tick, entry_tick, peak_tick, exit_tick; + int32_t peak_delta, plateau_start_delta; + uint32_t plateau_duration; + uint8_t double_peak_cnt; + bool double_peak_flag, occupied; + VehicleClass vclass; +} CoilDetector; + +void coil_state_machine(CoilDetector *cd, int32_t cur_freq) { + cd->freq = cur_freq; + cd->delta_f = cur_freq - cd->baseline; + + uint8_t noise_margin = cd->noise_peak * 2 + 20; + if (abs(cd->delta_f) < noise_margin && cd->state == IDLE) return; + + switch (cd->state) { + case IDLE: + if (cd->delta_f > TH_OCCUPY) { + cd->state = RISE; + cd->entry_tick = cd->tick; + cd->peak_delta = cd->delta_f; + cd->double_peak_cnt = 0; + cd->double_peak_flag = false; + } + break; + + case RISE: + if (cd->delta_f > cd->peak_delta) { + cd->peak_delta = cd->delta_f; + cd->peak_tick = cd->tick; + } + if (cd->delta_f < cd->peak_delta - 50) + cd->double_peak_cnt++; + if (cd->delta_f < cd->peak_delta * 0.85f) { + if (cd->tick - cd->peak_tick > 20) + cd->state = PLATEAU; + else + cd->state = FALL; + } + if (cd->tick - cd->entry_tick > MAX_OCCUPY_TICKS) + cd->state = FALL; + break; + + case PLATEAU: + cd->plateau_duration++; + if (cd->delta_f < cd->plateau_start_delta * 0.7f) + cd->state = FALL; + break; + + case FALL: + if (cd->delta_f < TH_RELEASE) { + cd->exit_tick = cd->tick; + cd->state = CLASSIFY; + } + if (cd->delta_f > TH_OCCUPY + 100 + && cd->tick - cd->peak_tick > 100) { + cd->state = RISE; + cd->entry_tick = cd->tick; + cd->peak_delta = cd->delta_f; + } + break; + + case CLASSIFY: { + uint32_t duration = cd->exit_tick - cd->entry_tick; + VehicleFeatures f = { + .peak_delta_f = cd->peak_delta, + .duration_ms = duration * 10, + .double_peak_flag = (cd->double_peak_cnt > 1), + .plateau_ratio = (float)cd->plateau_duration / duration, + }; + cd->vclass = classify_vehicle(&f); + cd->occupied = false; + report_vehicle(cd->vclass, duration, cd->peak_delta); + cd->state = VERIFY; + } + break; + + case VERIFY: + if (cd->tick - cd->exit_tick > 5) + cd->state = IDLE; + break; + } + cd->tick++; +} +``` + +--- + +## 六、总结 + +| 问题 | 核心对策 | +|------|---------| +| 自行车/摩托车难检测 | 动态阈值+持续时间滤波+噪声跟踪 | +| 大货车/集装箱信号弱 | 双线圈+分段峰值保持+自动阈值补偿 | +| 车型分辨 | 特征向量(幅度+时长+波形形态)+速度归一化 | +| 线圈变形 | 分区分段采样+双线圈相关性校验+老化预警 | +| 尾随/并排 | 状态机的超时/再次触发逻辑+分类后的VERIFY窗口 | + +**现场实施优先级**: +1. 先做稳**自适应基线+双阈值** +2. 双线圈测速归一化(没有速度,"持续时长"特征毫无意义) +3. 分段峰值保持——免疫力最强、改动最小的抗变形手段 +4. 纯线圈做到5类车型已是较优水平,7类以上建议配合雷达/激光辅助 diff --git a/docs/线圈变形与老化环境影响的规避对策.md b/docs/线圈变形与老化环境影响的规避对策.md new file mode 100644 index 0000000..8142b29 --- /dev/null +++ b/docs/线圈变形与老化环境影响的规避对策.md @@ -0,0 +1,312 @@ +# 线圈变形与老化环境影响的规避对策 + +> 编写日期:2026-07-01 +> 技术领域:环形线圈车辆检测器 / 施工工艺 / 抗退化设计 +> 关键词:沥青沉降、线槽防水、热胀冷缩、铜线温度特性、老化预警 + +--- + +## 一、夏天沥青路面沉降变形 + +### 1.1 物理本质 + +沥青是**粘弹性材料**。夏天高温下,重车反复碾压→路面发生**塑性流动**→含线圈的槽体被挤压扭曲。典型失效过程(年循环): + +``` +春季:线圈完好,形状规整,磁场对称 +夏季高温期:沥青软化,重载车压过→槽体扭曲 +第二年:槽体永久变形,线圈被拉成"S"形 + → 电感量变化10%~30% + → 同一车道左右两侧信号幅度差可达2~3倍 +``` + +### 1.2 安装工艺对策 + +#### ✅ 柔性套管隔离层 + +关键:线圈导线在套管内可以**自由滑动**,沥青变形时套管跟着变形,线圈导线保持近似几何形状。 + +``` +┌───────────────────────────────────┐ +│ 沥青面层 (5~10cm) │ +├───────────────────────────────────┤ +│ 柔性PVC/PE套管 (内径8~12mm) │ ← 关键隔离层 +│ ┌───────────────────────┐ │ +│ │ 多股铜芯线(2.5mm²) │ │ +│ └───────────────────────┘ │ +├───────────────────────────────────┤ +│ 水泥砂浆找平层 │ ← 刚性垫层 +├───────────────────────────────────┤ +│ 混凝土基层 │ +└───────────────────────────────────┘ +``` + +- ❌ 不用硬质PVC管:硬管断裂后反而伤线 +- ❌ 不用纯沥青回填:用细砂+水泥砂浆形成刚性垫层 + +#### ✅ 预变形设计 + +已知车道中心线处重车碾压最集中,绕线时将**中心段略微拉宽**(+10%~15%),给退化留余量。 + +#### ✅ 双线圈冗余 + +在主线圈旁边30~50cm预埋一个**备用线圈**(平时不开、维护时用)。主线圈退化后MCU自动切换,无需破路重挖。 + +### 1.3 软件补偿:对称性因子跟踪 + +```c +// 检测线圈对称性退化 —— 跟踪车辆左右偏置的信号差异 +typedef struct { + float peak_history[100]; + float peak_mean, peak_variance; + uint8_t index; +} SymmetryMonitor; + +void update_symmetry(SymmetryMonitor *sm, float peak_hz) { + sm->peak_history[sm->index % 100] = peak_hz; + sm->index++; + + if (sm->index >= 100) { + float sum = 0.0f, sum_sq = 0.0f; + for (int i = 0; i < 100; i++) { + sum += sm->peak_history[i]; + sum_sq += sm->peak_history[i] * sm->peak_history[i]; + } + sm->peak_mean = sum / 100.0f; + sm->peak_variance = (sum_sq / 100.0f) + - (sm->peak_mean * sm->peak_mean); + + // 方差突增 + 均值下降 = 线圈退化信号 + if (sm->peak_variance > 0.3f * sm->peak_mean + && sm->peak_mean < INITIAL_PEAK_MEAN * 0.7f) { + emit_diagnostic("COIL_DEGRADED", "symmetry loss detected"); + } + } +} +``` + +--- + +## 二、雨水进入线槽 + +### 2.1 危害链 + +``` +雨水进入线槽 → 导线间分布电容增大(C_wet >> C_dry,约2~10倍) +→ LC振荡频率漂移:f = 1/(2π√(L*C)) → C↑ → f↓ +→ 基线频率持续偏降200~500Hz,系统误认为"有车" +→ 严重时长期占车,道闸不落 + +更隐蔽的二次危害: +· 水渗入接头 → 接触电阻逐渐腐蚀增大 → Q值从30降到5 → 灵敏度归零 +· 冬季结冰膨胀 → 撑裂线槽 → 更大面积进水 +``` + +### 2.2 防水工艺 + +#### 接头处理——整条线圈的"阿喀琉斯之踵" + +正确工艺顺序(自内向外): +1. 线圈端剥线→镀锡→**对焊**(非绞接!) +2. 第一层:**双壁热缩管**(内壁带热熔胶)→ 加热密封 +3. 第二层:**防水胶带**(如3M Scotch 130C)→ 半搭接缠绕 +4. 第三层:**冷缩密封管**(3M QS-II)→ 提供机械+防水 +5. 全部埋入水泥砂浆层 → 而非直接裸露在线槽内 + +#### 线槽坡度 + +切割线槽时形成**1%~2%的纵坡**,雨水自然排出。若路面本身平整,在线槽最低点打**泄水孔**(φ5mm,通到基层)。 + +#### 密封材料选择 + +| 材料 | 适用场景 | 注意事项 | +|------|---------|---------| +| **硅酮密封胶**(耐候型) | 沥青路面首选 | 弹性好,-50~200℃,不脆化 | +| **聚氨酯密封胶** | 水泥路面 | 强度高,但弹性不如硅酮 | +| **热沥青+砂** | 应急修补 | 不耐老化,半年要补一次 | +| ✘ 环氧树脂 | 别用在沥青路面 | 太硬,热胀系数跟沥青差太多,必开裂 | + +**关键施工细节**:密封胶必须与槽体**完全粘合**,不能有气泡。固化前用刮板抹压充填,深度应大于槽深的80%。 + +--- + +## 三、线槽热胀冷缩 + +### 3.1 量级估算 + +``` +夏天暴晒路面 60~70°C,夜间降温至 25~30°C,温差 30~45°C +沥青热膨胀系数 α ≈ 200×10⁻⁶ /°C +2m线圈边的 ΔL = 200×10⁻⁶ × 2m × 40°C = 16mm +三边总计每昼夜膨胀/收缩约 48mm +``` + +这个膨胀量**远大于导线的弹性余量**。日循环中沥青槽口逐渐把线圈导线往一端"挤"过去,最终在一点形成**灯笼鼓包**。 + +### 3.2 对策 + +#### ✅ 蛇形敷设 + +在线槽转角处预留蛇形余量(每个转角预留~15cm松弛区),用套管内的空腔容纳热胀位移。**这是最关键的工艺之一。** + +#### ✅ 分段固化 + +每隔80~100cm用**热熔胶**(低温型,70°C软化)将导线固定在套管壁上。热胀时受力被分散到多个固定点,而非汇聚于一处。 + +#### ✅ 套管预留伸缩空间 + +套管内径选导线外径的2~3倍(2.5mm²线外径~3mm,选内径8~10mm套管),给铜线留足"游动空间"。 + +--- + +## 四、多股铜芯线的温度特性 + +### 4.1 铜的电阻温度系数 + +``` +铜的电阻温度系数 α_Cu = 0.00393 /°C + +夏天日温差40°C: +R_hot = R_cold × (1 + 0.00393 × 40) + = R_cold × 1.157 → 电阻增大15.7% +``` + +**对线圈的双重影响**: + +| 效应 | 铜电阻↑ | 频率影响 | 方向 | +|------|---------|---------|------| +| 趋肤深度增加 | R_AC↑ | L微降(涡流损耗变化) | f↓ | +| 分布电阻→Q值下降 | R_total↑ | 起振条件变差,振荡幅度降低 | 灵敏度下降 | + +**总效果**:夏天中午基线频率可能比凌晨**降低100~300Hz**。固定阈值→中午灵敏度降低,夜晚灵敏度升高(可能虚报)。 + +### 4.2 自适应基线温度补偿 + +不需要外部温度传感器。基线跟踪器天然包含温度补偿,关键在于调节 `decay_rate`: +- 快于温度漂移(几分钟级别) +- 慢于车辆占车(秒级) + +建议 `decay_rate = 1/300`(300个采样周期更新一次,如采样率100Hz→3秒更新1%)。 + +### 4.3 导线选型建议 + +| 标称规格 | 股数×线径 | 优点 | 缺点 | +|---------|----------|------|------| +| 1.5mm² 7股 | 7×0.52mm | 柔韧性好,通用性强 | 温度特性一般 | +| 1.5mm² 19股 | 19×0.32mm | 极柔软,适合蛇形敷设 | 价格稍高 | +| **2.5mm² 7股** | **7×0.67mm** | **推荐**: 趋肤效应占比小,温度稳定性好 | 槽要宽一点 | +| ✘ 单股硬线 | | 极易被热胀冷缩拉断 | 别用 | + +**建议**:用**2.5mm² 7股镀锡铜线**替代常见的1.5mm²。线径粗→直流电阻占比更高→温度对趋肤深度的影响相对减小→频率稳定性更好。 + +### 4.4 可选:多股线并联 + +两根2.5mm²并联同绕,L不变,直流电阻减半,dR的相对变化减半,温度稳定性提升约40%。代价是槽要更宽,仅建议在新建项目上使用。 + +--- + +## 五、一体化抗退化方案总图 + +### 施工层面 + +``` +线槽切割 → 纵坡1%~2% + 泄水孔 + → 铺设PE/柔性套管 + → 穿线: 2.5mm² 7股镀锡线 蛇形余量 + → 分段热熔胶固定@80cm间距 + → 接头: 锡焊+热缩+胶带+冷缩管 + → 灌缝: 硅酮耐候密封胶 +备用线圈预埋 → 引至接线盒待用 +``` + +### 软件层面(全生命周期抗退化) + +```c +void coil_detection_task(void) { + init_coil_driver(); + while(1) { + int32_t freq = read_coil_frequency(); + + // Step 1: 数据清洗 + freq = median_filter(freq, 5); + + // Step 2: 基线跟踪 (天然含温度补偿) + update_baseline(freq); + + // Step 3: 噪声跟踪 (用于检测阈值自适应) + update_noise_floor(freq); + + // Step 4: 对称性监控 (线圈退化评估) + if (vehicle_detected) monitor_symmetry(peak_delta); + + // Step 5: 退化检测与降级模式 + if (symmetry_loss > DEGRADE_THRESHOLD) { + activate_degraded_mode(); + // - 放大动态阈值范围 + // - 增加分区峰值保持权重 + // - 车型分类降级(只分大/中/小) + } + + // Step 6: 异常状态诊断上报 + if (noise_floor > NOISE_ALARM_THRESHOLD) { + report_diagnostic("NOISE_HIGH: coil or wire damaged?"); + } + + vTaskDelay(pdMS_TO_TICKS(10)); // 100Hz + } +} +``` + +### 寿命退化预警规则 + +| 退化指标 | 阈值 | 可能原因 | +|---------|------|---------| +| 基线逐年下降 > 500Hz | 年度趋势 | 线圈受潮/老化 | +| 日波动幅度逐年增大 > 300Hz | 日趋势 | 线槽密封失效 | +| 车辆峰值方差逐年增大 > 40% | 季度趋势 | 线圈变形,建议检修 | + +--- + +## 六、现场快速诊断三连 + +如果现在就有线圈异常,不需要重挖,先做这些: + +1. **测空载Q值**:用LCR表挂在线圈引线端 + - Q < 10 → 大概率进水,阴干(断电48h)可能恢复 + - Q 10~20 → 劣化,软件降噪+阈值提高 + - Q > 25 → 线圈本身没问题,查阈值参数 + +2. **车辆左中右行走测试**: + - 从车道左中右推标准车通过 + - 三次峰值差异 > 50% → **软件启用分区峰值保持**,能撑到下一次槽修 + +3. **检查引线接头**: + - 拧开接线端子,看是否有铜绿/发黑 + - 有 → 剪掉重做接头,用**镀锡端子压接**(不要直接塞进弹簧端子) + +--- + +## 七、核心理念 + +> **线圈的"根"在施工工艺,不是后天的算法能完全找补回来的。** +> 一个施工规范的线圈,十年不出大问题;一个糊弄的线槽,第一年夏天就让人焦头烂额。 + +**最值钱的三条施工守则**: +1. 🐍 蛇形敷设——给热胀冷缩留余量 +2. 💧 防水工艺——三层密封接头 + 硅酮密封胶 +3. 🧈 软密封——柔性套管隔热绝缘 + +盯死这三样,后面省无数心。 + +--- + +## 附录:绕组选型推荐清单 + +| 项目 | 推荐选型 | 理由 | +|------|---------|------| +| 导线 | 2.5mm² 7股镀锡铜绞线 | 温度稳定性好、柔韧性好 | +| 套管 | PE柔性波纹管 内径10mm | 耐老化、柔韧性好、摩擦系数低 | +| 密封胶 | 硅酮耐候密封胶 | 弹性好、适应沥青热胀 | +| 热缩管 | 双壁含胶热缩管 3:1收缩比 | 内壁热熔胶密封性最佳 | +| 防水胶带 | 3M Scotch 130C 自熔胶带 | 橡胶基、自硫化密封 | +| 冷缩管 | 3M QS-II 冷缩密封管 | 无需加热、施工快速 | diff --git a/memory/2026-07-01.md b/memory/2026-07-01.md new file mode 100644 index 0000000..7f3ea15 --- /dev/null +++ b/memory/2026-07-01.md @@ -0,0 +1,26 @@ +# 2026-07-01 日志 + +## 09:17 — 车型在线圈检测器上的信号特征与分辨策略 +- 老大问:自行车、摩托车、三轮车、小轿车、人货车、大货车、集装箱挂车等车型在线圈检测器上的不同 +- 分析各车型的底盘高度、金属覆盖面积、铁磁性差异对频率偏移的影响 +- 给出典型波形对比和各车型的 Δf 幅度/持续时长/波形包络速查表 +- 输出自适应基线+双阈值检测方案、特征向量+决策树车型分类逻辑 +- 给出双线圈测速归一化方案 +- 针对线圈变形的抗退化策略:多区段峰值保持、自动阈值补偿、双线圈相关性校验 +- 输出完整的状态机框架(适用STM32/GD32) +- 文档已保存:`docs/不同车型在线圈检测器上的信号特征与分辨策略.md` + +## 09:46 — 线圈变形与老化环境影响的规避对策 +- 老大接着问:沥青路面沉降、线槽进水、热胀冷缩、铜线温度特性等环境因素 +- 分析沥青粘弹性变形机理,给出柔性套管隔离层+预变形设计+双线圈冗余方案 +- 水害分析:分布电容增大→基线漂移,接头腐蚀→Q值下降 +- 给出接头三层密封工艺(锡焊→双壁热缩管→防水胶带→冷缩管) +- 给出线槽纵坡+泄水孔的切割规范 +- 分析热胀冷缩量级(2m线圈边昼夜伸缩~16mm),给出蛇形敷设+分段固化方案 +- 分析铜电阻温度系数(α=0.00393/°C,40°C温差→电阻增大15.7%),给出自适应基线补偿 +- 建议用2.5mm² 7股镀锡线替代常规1.5mm² +- 输出一体化抗退化方案(施工+软件+寿命预警) +- 文档已保存:`docs/线圈变形与老化环境影响的规避对策.md` + +## 手动提交 +- 两篇技术文档 + 本日志 → git add → commit → push