Search code examples
veinssumo

How to make the vehicles collide in SUMO?


I want to make Collision warning and emergency braking in veins with SUMO, but I find I can't make the two vehicles collide in SUMO. So What should I do to make the two vehicles collide in SUMO?

collision.net.xml

    <net version="1.3" junctionCornerDetail="5" limitTurnSpeed="5.50">
    <location netOffset="0.00,0.00" convBoundary="-300.00,0.00,300.00,0.00" origBoundary="10000000000.00,10000000000.00,-10000000000.00,-10000000000.00" projParameter="!"/>
    <edge id=":gneJ1_0" function="internal">
        <lane id=":gneJ1_0_0" index="0" speed=" 30" length="0.10" shape="0.00,-1.60 0.00,-1.60"/>
    </edge>
    <edge id="gneE0" from="gneJ0" to="gneJ1" priority="-1">
        <lane id="gneE0_0" index="0" speed=" 30" length="300.00" shape="-300.00,-1.60 0.00,-1.60"/>
    </edge>
    <edge id="gneE1" from="gneJ1" to="gneJ2" priority="-1">
        <lane id="gneE1_0" index="0" speed=" 30" length="300.00" shape="0.00,-1.60 300.00,-1.60"/>
    </edge>
    <junction id="gneJ0" type="dead_end" x="-300.00" y="0.00" incLanes="" intLanes="" shape="-300.00,0.00 -300.00,-3.20"/>
    <junction id="gneJ1" type="priority" x="0.00" y="0.00" incLanes="gneE0_0" intLanes=":gneJ1_0_0" shape="0.00,0.00 0.00,-3.20 0.00,0.00">
        <request index="0" response="0" foes="0" cont="0"/>
    </junction>
    <junction id="gneJ2" type="dead_end" x="300.00" y="0.00" incLanes="gneE1_0" intLanes="" shape="300.00,-3.20 300.00,0.00"/>
    <connection from="gneE0" to="gneE1" fromLane="0" toLane="0" via=":gneJ1_0_0" dir="s" state="M"/>
    <connection from=":gneJ1_0" to="gneE1" fromLane="0" toLane="0" dir="s" state="M"/>
</net>

collision.rou.xml

<routes>
    <vType sigma="0" id="t1" maxSpeed="70" minGap="0"/>
    <route edges="gneE0 gneE1" color="yellow" id="route_0"/>
    <vehicle id="vehicle_0" depart="0.00" departPos="100.00" departSpeed="0" color="red" route="route_0" type="t1"/>
    <vehicle id="vehicle_1" depart="0.00" departPos="95.00"  departSpeed="20" color="blue" route="route_0" type="t1"/>
</routes>

Solution

  • First:setSpeedMode(0) Second: Set the speed of the car behind enough,setSpeed(100); Then two cars will collide!!!