360 Secure SkillHub
360 安全技能中心

vehicle-dynamics

该 Skill 以 Python 示例给出车辆离散运动学更新、安全跟车距离、碰撞时间、加速度限幅和巡航模式状态机,适合在车辆仿真中作为计算与代码参考。

wu-uk
wu-uk
热度 41.20
最近更新 2026-05-11 17:42:16
分类:开发依赖:代码执行应用场景:代码生成

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add adaptive-cruise-control-vehicle-dynamics
Metadata
name
vehicle-dynamics
description
Use this skill when simulating vehicle motion, calculating safe following distances, time-to-collision, speed/position updates, or implementing vehicle state machines for cruise control modes.

Vehicle Dynamics Simulation

Basic Kinematic Model

For vehicle simulations, use discrete-time kinematic equations.

Speed Update:

new_speed = current_speed + acceleration * dt
new_speed = max(0, new_speed)  # Speed cannot be negative

Position Update:

new_position = current_position + speed * dt

Distance Between Vehicles:

# When following another vehicle
relative_speed = ego_speed - lead_speed
new_distance = current_distance - relative_speed * dt

Safe Following Distance

The time headway model calculates safe following distance:

def safe_following_distance(speed, time_headway, min_distance):
    """
    Calculate safe distance based on current speed.

    Args:
        speed: Current vehicle speed (m/s)
        time_headway: Time gap to maintain (seconds)
        min_distance: Minimum distance at standstill (meters)
    """
    return speed * time_headway + min_distance

Time-to-Collision (TTC)

TTC estimates time until collision at current velocities:

def time_to_collision(distance, ego_speed, lead_speed):
    """
    Calculate time to collision.

    Returns None if not approaching (ego slower than lead).
    """
    relative_speed = ego_speed - lead_speed

    if relative_speed <= 0:
        return None  # Not approaching

    return distance / relative_speed

Acceleration Limits

Real vehicles have physical constraints:

def clamp_acceleration(accel, max_accel, max_decel):
    """Constrain acceleration to physical limits."""
    return max(max_decel, min(accel, max_accel))

State Machine Pattern

Vehicle control often uses mode-based logic:

def determine_mode(lead_present, ttc, ttc_threshold):
    """
    Determine operating mode based on conditions.

    Returns one of: 'cruise', 'follow', 'emergency'
    """
    if not lead_present:
        return 'cruise'

    if ttc is not None and ttc < ttc_threshold:
        return 'emergency'

    return 'follow'