更新时间:2024-05-29 GMT+08:00
分享

信号机上报SPAT

功能介绍

信号灯消息。包含了一个或多个路口信号灯的当前状态信息。结合MAP消息,为车辆提供实时的前方信号灯相位信息。

上行TOPIC

v2x/v1/signalcontroller/{traffic_controller_id}/spat/up

topic中{traffic_controller_id}替换为创建信号机时填写的traffic_controller_id(设备id)。例如traffic_controller_id为132293,topic:v2x/v1/signalcontroller/132293/spat/up。

Message参数

表1 请求Body参数

参数

是否必选

参数类型

描述

content

OpenSouthSpatData object

红绿灯消息内容

name

String

红绿灯消息名称

最小长度:0

最大长度:256

表2 OpenSouthSpatData

参数

是否必选

参数类型

描述

intersections

Array of OpenSouthIntersectionStateDTO objects

路口信号灯集合

数组长度:0 - 32

time_stamp

String

平台推送消息的UTC时间。格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z',如"2021-12-18T07:20:51.683Z"。

最大长度:256

name

String

供理解的名称描述。

最小长度:1

最大长度:63

表3 OpenSouthIntersectionStateDTO

参数

是否必选

参数类型

描述

intersection_id

OpenSouthNodeReferenceId object

节点属性ID。

intersection_status_object

OpenSouthIntersectionStatusObjDTO object

路口信号机的工作状态指示。

time_stamp

String

构造消息的UTC时间。格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z',如"2021-12-18T07:20:51.683Z"。

最大长度:256

time_confidence

Integer

数值描述了95%置信水平的时间精度。时间精度说明参见“API参考 > 附录 > 参数说明列表 > 时间精度”。

最小值:0

最大值:39

phases

Array of OpenSouthPhase objects

信号灯各道路方向的灯态列表。

数组长度:1 - 16

表4 OpenSouthNodeReferenceId

参数

是否必选

参数类型

描述

region

Integer

所在区域在地图中的编号,数值0仅用于测试

最小值:0

最大值:65535

node_id

Integer

节点编号。路网最基本的构成即节点和节点之间连接的路段。节点可以是路口,也可以是一条 路的端点。一个节点的 ID 在同一个区域内是唯一的。 数值 0~255 预留为测试使用。

最小值:0

最大值:65535

表5 OpenSouthIntersectionStatusObjDTO

参数

是否必选

参数类型

描述

manual_control_is_enabled

Boolean

手动控制状态开启。

stop_time_is_activated

Boolean

停止计时状态激活。

failure_flash

Boolean

用于硬件故障检测。

preempt_is_active

Boolean

优先状态激活。

signal_priority_is_active

Boolean

信号优先级状态激活。

fixed_time_operation

Boolean

固定配时。

traffic_dependent_operation

Boolean

基于交通流状态的配时。

standby_operation

Boolean

备用操作,可部分关闭或闪烁。

failure_mode

Boolean

故障模式。

controller_off

Boolean

控制状态关闭。

recent_map_message_update

Boolean

近期地图内容数据更新。

recent_change_in_map_assigned_lanes_ids_used

Boolean

近期地图道路id数据更新。

no_valid_map_is_available_at_this_time

Boolean

此时无有效地图。

no_valid_spat_is_available_at_this_time

Boolean

此时无有效spat信息。

表6 OpenSouthPhase

参数

是否必选

参数类型

描述

phase_id

Integer

定义信号灯相位ID。数值0表示无效ID。

最小值:0

最大值:255

phase_states

Array of OpenSouthPhaseState objects

一个信号灯的一个相位状态列表。列表中每一个相位状态物理上对应了一种相位灯色,其属性包括了该状态的实时计时信息。

数组长度:1 - 16

表7 OpenSouthPhaseState

参数

是否必选

参数类型

描述

light_state

Integer

定义信号灯相位的灯色状态。支持GB14886规定的红绿黄三种信号灯灯色,以及亮灯、 闪烁和熄灭三种状态。0代表不可用;1代表黑色;2代表红色闪烁;3代表红色;4代表绿色闪烁;5代表通行允许相位(通行绿);6代表通行保护相位(保护绿);7代表黄色;8代表黄色闪烁。

最小值:0

最大值:8

timing

OpenSouthTimeChangeDetails object

定义一个信号灯相位的计时状态。提供了两种可选的计时状态格式,一种是倒计时形式,另一种是UTC世界标准时间的形式。在实际使用时,由路侧设施根据实际情况选用。

表8 OpenSouthTimeChangeDetails

参数

是否必选

参数类型

描述

counting

OpenSouthTimeCountingDown object

用倒计时形式,描述一个信号灯相位状态的完整计时状态。

utc_timing

OpenSouthUTCTiming object

用UTC世界标准时间形式,描述一个信号灯相位状态的完整计时状态。

start_time

Integer

开始时间

最小值:0

最大值:65535

likely_end_time

Integer

可能结束时间

最小值:0

最大值:65535

表9 OpenSouthTimeCountingDown

参数

是否必选

参数类型

描述

start_time

OpenSouthTimeMark object

参数说明:表示该相位状态下一次开始(距离当前时刻)的时间,或者预测开始的时间。如果当前正值该相位状态,则该数值为0。

min_end_time

OpenSouthTimeMark object

参数说明:如果当前正值该相位状态,则此数值表示当前状态距现在的最短结束时间;如果信号灯相位并未处在该状态,则此数值表示距下一个该相位状态的最短结束时长。

max_end_time

OpenSouthTimeMark object

参数说明:如果当前正值该相位状态,则此数值表示当前状态距现在的最大结束时间;如果信号灯相位并未处在该状态,则此数值表示距下一个该相位状态的最大结束时长。

likely_end_time

OpenSouthTimeMark object

参数说明:如果该信号灯相位是固定时长,则该数值就表示当前状态距现在的准确结束时间。如果信号灯当前相位是非固定配时(感应配时、手动控制等),则该数值表示预测的结束时间,且预测时间必须在minEndTime和maxEndTime之间,可能由历史数据或一些事件触发等来进行预测。如果信号灯没有处在该状态,则此数值表示下一个该相位状态的(固定或预测)时长。

time_confidence

Integer

参数说明: 上述likely_end_time预测时间的置信度水平。单位为0.5%。

最小值:0

最大值:200

next_start_time

OpenSouthTimeMark object

参数说明:表示该相位状态从likely_end_time时间点到第二次再出现的估计时长。与start_time不同的是,start_time表示最近一次该相位状态的开始时间,next_start_time则表示第一次结束后,直至该相位状态第二次出现的时间间隔。通常在一些经济驾驶模式(ECO Drive)等相关的应用中。

next_duration

OpenSouthTimeMark object

参数说明:表示该相位状态第二次出现时的估计持续时长。与next_start_time配合使用,通常在一些经济驾驶模式(ECO Drive)等相关的应用中。

表10 OpenSouthUTCTiming

参数

是否必选

参数类型

描述

start_utc_time

OpenSouthTimeMark object

参数说明:表示该相位状态下一次开始的时刻,或者预测开始的时刻。如果当前该相位状态已开始(未结束),则该数值为当前状态开始的时刻。

min_end_utc_time

OpenSouthTimeMark object

参数说明:如果当前正值该相位状态,则此数值表示当前状态最小结束时刻;如果信号灯相位并未处在该状态,则此数值表示距下一个该相位状态的最小结束时刻。

max_end_utc_time

OpenSouthTimeMark object

参数说明:如果当前正值该相位状态,则此数值表示当前状态最大结束时刻;如果信号灯相位并未处在该状态,则此数值表示距下一个该相位状态的最大结束时刻。

likely_end_utc_time

OpenSouthTimeMark object

参数说明:如果该信号灯相位是固定时长,则该数值就表示当前状态准确结束时刻。如果信号灯当前相位是非固定配时(感应配时、手动控制等),则该数值表示预测的结束时刻,且预测时刻必须在min_end_time和max_end_time之间,可能由历史数据或一些事件触发等来进行预测。如果信号灯没有处在该状态,则此数值表示下一个该相位状态的(固定或预测)结束时刻。

time_confidence

Integer

参数说明:上述likely_end_utc_time预测时间的置信度水平。单位为0.5%。

最小值:0

最大值:200

next_start_utc_time

OpenSouthTimeMark object

参数说明:表示该相位状态从likely_end_utc_time时间点到第二次再出现的估计时长。与start_utc_time不同的是,start_utc_time表示最近一次该相位状态的开始时刻,next_start_utc_time则表示第一次结束后,第二次开始的时刻。通常在一些经济驾驶模式(ECO Drive)等相关的应用中。

next_end_utc_time

OpenSouthTimeMark object

参数说明:如果当前该相位状态已开始(未结束),则该数值表示该相位状态下一次开始后再结束的估计时刻;如果当前该相位状态未开始,则表示该相位状态第二次开始后再结束的估计时刻。与next_start_utc_time配合使用,通常在一些经济驾驶模式(ECO Drive)等相关的应用中。

表11 OpenSouthTimeMark

参数

是否必选

参数类型

描述

time_mark

Integer

以0.1 秒为单位,定义一小时中的时间。可以表示当前小时中的时刻,也可以表示长度不超过1小时的时间段。单位为0.1秒。有效范围是0~35999。数值36000表示大于1小时的时间长度。数值 36001表示无效数值。

最小值:0

最大值:36001

Message示例

{
  "name" : "spatName",
  "content" : {
    "name" : "name",
    "time_stamp" : "2021-12-18T07:20:51.683Z",
    "intersections" : [ {
      "intersection_id" : {
        "region" : 12,
        "node_id" : 11
      },
      "intersection_status_object" : {
        "manual_control_is_enabled" : true,
        "stop_time_is_activated" : true,
        "preempt_is_active" : true,
        "signal_priority_is_active" : true,
        "traffic_dependent_operation" : true,
        "standby_operation" : true,
        "recent_map_message_update" : true,
        "recent_change_in_map_assigned_lanes_ids_used" : true,
        "no_valid_map_is_available_at_this_time" : true,
        "no_valid_spat_is_available_at_this_time" : true
      },
      "time_stamp" : 684313553,
      "time_confidence" : 1,
      "phases" : [ {
        "phase_id" : 123,
        "phase_states" : [ {
          "light_state" : 423,
          "timing" : {
            "utc_timing" : {
              "start_utc_time" : {
                "time_mark" : 0
              },
              "min_end_utc_time" : {
                "time_mark" : 0
              },
              "max_end_utc_time" : {
                "time_mark" : 0
              },
              "likely_end_utc_time" : {
                "time_mark" : 0
              },
              "next_start_utc_time" : {
                "time_mark" : 0
              },
              "next_end_utc_time" : {
                "time_mark" : 0
              }
            },
            "start_time" : 0,
            "likely_end_time" : 123
          }
        } ]
      } ]
    } ]
  }
}

相关文档