#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict EVENT_LOOP = get_namedtuple_from_dict( "CONST", { "KEEP_ALIVE": 60, "TOPIC": { "CATEGORIES": { "REQUEST": ["request"], "RESPONSE": ["response"] } }, "ACTION": { "CHECK": "check", "KILL": "kill" }, "STATE": { "START": "start", "WILL": "will", "DISCONNECT": "disconnect" }, "RESPONSE": { "OK": "ok" } })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_base_class, get_namedtuple_from_dict ROUTE = get_namedtuple_from_dict("CONST", { "DELIMITER": ":" }) route_template = { "start_waypoint_id": "0", "goal_waypoint_id": "1", "arrow_codes": ["0_1"] } ''' route_code = "[start_waypoint_id]:[joined_arrow_codes]:[goal_waypoint_id]" routes = { route_code: route, } ''' route_schema = { "start_waypoint_id": { "type": "string", "required": True, "nullable": False, }, "goal_waypoint_id": { "type": "string", "required": True,
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict FLEET_MANAGER = get_namedtuple_from_dict( "CONST", { "NODE_NAME": "FleetManager", "TOPIC": { "CATEGORIES": { "STATUS": ["status"], "SCHEDULES": ["schedules"] } }, "TRIGGER": { "LOG_IN": "log_in", "LOG_OUT": "log_out" }, "STATE": { "LOG_IN": "log_in", "LOG_OUT": "log_out" } })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_base_class, get_namedtuple_from_dict, Pose WAYPOINT = get_namedtuple_from_dict("CONST", {"GEOHASH_PRECISION": 15}) template = { "geohash": "123456789012345", "pose": Pose.get_template(), "speed_limit": 5.5 } ''' waypoint_id = "[id defined by autoware maps]" waypoints = { waypoint_id: waypoint, } ''' schema = { "geohash": { "type": "string", "required": True, "nullable": False, "minlength": 15, }, "pose": { "type": "dict", "schema": Pose.get_schema(), "nullable": False, },
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_base_class, get_namedtuple_from_dict TARGET = get_namedtuple_from_dict("CONST", {"DELIMITER": "/"}) target_template = {"id": "uuid", "group": "EventLoop"} target_schema = { "id": { "type": "string", "required": True, "nullable": True, }, "group": { "type": "string", "required": True, "nullable": False, } } class Target(get_base_class(target_template, target_schema)): pass targets_template = [Target.get_template()] targets_schema = { "type": "list",
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict USER = get_namedtuple_from_dict( "CONST", { "TOPIC": { "CATEGORIES": { "STATUS": ["status"], } }, "EVENT": { "TRIP": "trip", }, "TRIGGER": { "LOG_IN": "log_in", "LOG_OUT": "log_out" }, "STATE": { "LOG_IN": "log_in", "LOG_OUT": "log_out" } })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict SIM_TAXI_FLEET = get_namedtuple_from_dict( "CONST", { "DISPATCHABLE_GEOHASH_DIGIT": 6, "TIMEOUT": 30.0, "TRIGGER": { "WAIT_USER_REQUEST": "wait_user_request", "DISPATCH": "dispatch", "NOTICE": "notice", "WAIT_TAXI_ARRIVAL": "wait_taxi_arrival", "WAIT_USER_ACTION": "wait_user_action", }, "STATE": { "WAITING_FOR_USER_LOG_IN": "waiting_for_user_log_in", "WAITING_FOR_USER_REQUEST": "waiting_for_user_request", "WAITING_FOR_TAXI_ARRIVE_AT_USER_LOCATION": "waiting_for_taxi_arrive_at_user_location", "WAITING_FOR_USER_GETTING_ON": "waiting_for_user_getting_on", "WAITING_FOR_TAXI_ARRIVE_AT_USER_DESTINATION": "waiting_for_taxi_arrive_at_user_destination", "WAITING_FOR_USER_GETTING_OUT": "waiting_for_user_getting_out", } })
from ams.structures import get_namedtuple_from_dict SIM_BUS_USER = get_namedtuple_from_dict("CONST", { "NODE_NAME": "SimBusUser", "TARGET_GROUP": { "START_BUS_STOP": "startBusStop", "GOAL_BUS_STOP": "goalBusStop" }, "TRIGGER": { "WAIT": "wait", "GET_ON": "get_on", "GOT_ON": "got_on", "MOVE_VEHICLE": "move_vehicle", "REQUEST_STOP": "request_stop", "GET_OUT": "get_out", "GOT_OUT": "got_out" }, "STATE": { "ARRIVED_AT_BUS_STOP": "arrived_at_bus_stop", "WAITING": "waiting", "GETTING_ON": "getting_on", "GOT_ON": "got_on", "MOVING": "moving", "READY_TO_GET_OUT": "ready_to_get_out", "GETTING_OUT": "getting_out", "GOT_OUT": "got_out" } })
#!/usr/bin/env python # coding: utf-8 from sys import float_info from ams.structures import get_namedtuple_from_dict SIM_CAR = get_namedtuple_from_dict("CONST", { "NODE_NAME": "SimCar", "TOPIC": { "CATEGORIES": { "LOCATION": ["status", "location"], "STATUS": ["status"] } }, "TRIGGER": { "MOVE": "move", "STOP": "stop" }, "STATE": { "MOVE": "move", "STOP": "stop" }, "LOWER_INTER_VEHICLE_DISTANCE": 3.0, "LOWER_INTER_TRAFFIC_SIGNAL_DISTANCE": 1.0, "FLOAT_MAX": float_info.max, "ACCELERATION_MAX": 0.3 # [m/s^2] })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict VEHICLE = get_namedtuple_from_dict( "CONST", { "TOPIC": { "CATEGORIES": { "STATUS": ["status"], "GEOTOPIC": ["geotopic"] } }, "STATE": { "LOG_IN": "log_in", "LOG_OUT": "log_out" } })
SIM_BUS = get_namedtuple_from_dict( "CONST", { "NODE_NAME": "SimBus", "EVENT": { "STAND_BY": "standBy", "MOVE_TO_CIRCULAR_ROUTE": "moveToCircularRoute", "MOVE_TO_SELECT_POINT": "moveToSelectPoint", "MOVE_TO_BRANCH_POINT": "moveToBranchPoint", "MOVE_TO_BUS_STOP": "moveToBusStop", "MOVE_TO_JUNCTION": "moveToJunction", "MOVE_TO_PARKING": "moveToParking", "STOP_TO_TAKE_UP": "stopToTakeUp", "STOP_TO_DISCHARGE": "stopToDischarge", "STOP_TO_DISCHARGE_AND_TAKE_UP": "stopToDischargeAndTakeUp", "STOP_TO_PARKING": "stopToParking" }, "TRIGGER": { "STAND_BY": "stand_by", "MOVE": "move", "MOVE_AND_REQUEST_SCHEDULES": "move_and_request_schedules", "REQUEST_SCHEDULES": "request_schedules", "STOP": "stop", }, "STATE": { "STAND_BY": "stand_by", "MOVE_TO_CIRCULAR_ROUTE": "move_to_circular_route", "MOVE_TO_SELECT_POINT": "move_to_select_point", "REQUEST_THROUGH_SCHEDULES": "request_through_schedules", "REQUEST_VIA_SCHEDULES": "request_via_schedules", "MOVE_TO_BRANCH_POINT": "move_to_branch_point", "MOVE_TO_BUS_STOP": "move_to_bus_stop", "MOVE_TO_JUNCTION": "move_to_junction", "MOVE_TO_PARKING": "move_to_parking", "STOP_FOR_DISCHARGING_AND_TAKING_UP": "stop_for_discharging_and_taking_up", "STOP_FOR_PARKING": "stop_for_parking" } })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict SIM_BUS_FLEET = get_namedtuple_from_dict( "CONST", { "DISPATCHABLE_GEOHASH_DIGIT": 6, "TIMEOUT": 30.0, "TARGET_GROUP": { "BUS_SCHEDULES": "bus_schedules" }, "TRIGGER": { "ASSIGN_BUS_SCHEDULES": "send_circular_route_schedules", "SEND_THROUGH_SCHEDULES": "send_through_schedules", "SEND_VIA_SCHEDULES": "send_via_schedules" }, "STATE": { "WAITING_FOR_BUS_STAND_BY": "waiting_for_bus_stand_by", "WAITING_FOR_SCHEDULES_REQUEST": "waiting_for_schedules_request", } })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict TRAFFIC_SIGNAL = get_namedtuple_from_dict( "CONST", { "NODE_NAME": "TrafficSignal", "TOPIC": { "CATEGORIES": { "STATUS": ["status"], "SCHEDULES": ["schedules"], "CYCLE": ["cycle"] } }, "LOWER_LIMIT_RATE": 600.0, # [sec] "STATE": { "GREEN": "green", "YELLOW": "yellow", "RED": "red", "UNKNOWN": "unknown" } })
AUTOWARE = get_namedtuple_from_dict( "CONST", { "NODE_NAME": "Autoware", "FLOAT_MAX": float_info.max, "DEFAULT_UPPER_DISTANCE_FROM_STOPLINE": 50.0, "ROS": { "DECISION_MAKER_STATES": { "MAIN": { "START": "Start", "DRIVE": "Drive", "INITIAL": "Initial", "MISSION_COMPLETE": "MissionComplete", }, "ACC": { "KEEP": "Keep", "STOP": "Stop", }, "STR": { "NONE": "" }, "BEHAVIOR": { "TRAFFIC_LIGHT_GREEN": "\nTrafficLightGreen", "TRAFFIC_LIGHT_RED": "\nTrafficLightRed", "WAIT_ORDERS": "\nWaitOrders", } }, "STATE_CMD": { "MAIN": { "START": 1, "INIT": 2, "DRIVE": 6 }, "SUB": { "KEEP": 13, "STOP": 14 }, }, "TRAFFIC_LIGHT": { "RED": 0, "GREEN": 1, "UNKNOWN": 2 }, }, "TRIGGER": { "LAUNCH": "launch", "ACTIVATE": "activate", "SCHEDULE": "schedule", "SYNCHRONIZE_ROUTE": "synchronize_route", "MOVE": "move", "STOP": "stop", "GET_READY": "get_ready" }, "STATE": { "LAUNCHED": "launched", "STAND_BY": "stand_by", "SCHEDULE_UPDATED": "schedule_updated", "READY_TO_MOVE": "ready_to_move", "MOVE": "move", "STOP": "stop", }, "TOPIC": { "ROS_NODE_NAME": "ros", "CATEGORIES": { "BASED_LANE_WAYPOINTS_ARRAY": ["based", "lane_waypoints_array"], "STATE_CMD": ["state_cmd"], "LIGHT_COLOR": ["light_color"], "CURRENT_POSE": ["current_pose"], "CLOSEST_WAYPOINT": ["closest_waypoint"], "DECISION_MAKER_STATES": ["decisionmaker", "states"], } }, })
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict SIM_TAXI_USER = get_namedtuple_from_dict( "CONST", { "NODE_NAME": "SimTaxiUser", "TRIGGER": { "REQUEST": "request", "WAIT": "wait", "GET_ON": "get_on", "GOT_ON": "got_on", "MOVE_VEHICLE": "move_vehicle", "GET_OUT": "get_out", "GOT_OUT": "got_out" }, "STATE": { "CALLING": "calling", "WAITING": "waiting", "GETTING_ON": "getting_on", "GOT_ON": "got_on", "MOVING": "moving", "GETTING_OUT": "getting_out", "GOT_OUT": "got_out" }, })
#!/usr/bin/env python # coding: utf-8 from numpy import pi from ams.structures import get_base_class, get_namedtuple_from_dict RPY = get_namedtuple_from_dict("CONST", { "PI2": 2.0 * pi }) template = { "roll": 0.0, "pitch": 0.0, "yaw": 0.0, } schema = { "roll": { "type": "number", "required": True, "nullable": True, "min": 0.0, "max": RPY.PI2 }, "pitch": { "type": "number", "required": True, "nullable": True, "min": 0.0, "max": RPY.PI2 },
#!/usr/bin/env python # coding: utf-8 from ams.structures import get_namedtuple_from_dict SIM_TAXI = get_namedtuple_from_dict( "CONST", { "NODE_NAME": "SimTaxi", "TRIGGER": { "STAND_BY": "stand_by", "MOVE": "move", "STOP": "stop", }, "STATE": { "STAND_BY": "stand_by", "MOVE_FOR_PICKING_UP": "move_for_picking_up", "STOP_FOR_PICKING_UP": "stop_for_picking_up", "MOVE_FOR_DISCHARGING": "move_for_discharging", "STOP_FOR_DISCHARGING": "stop_for_discharging" }, })