28 from rclpy.node
import Node
37 super().
__init__(
"mapem_ts_publisher")
38 topic =
"/etsi_its_conversion/spatem_ts/in"
39 self.
publisher = self.create_publisher(SPATEM, topic, 1)
46 msg.header.protocol_version = 2
47 msg.header.message_id = msg.header.MESSAGE_ID_MAPEM
48 msg.header.station_id.value = 100
50 movement_event = MovementEvent()
51 movement_event.event_state.value = movement_event.event_state.PROTECTED_MOVEMENT_ALLOWED
53 movement_state = MovementState()
54 movement_state.signal_group.value = 2
55 movement_state.state_time_speed.array.append(movement_event)
57 intersection_state = IntersectionState()
58 intersection_state.id.id.value = 1
59 status_array = [0] * intersection_state.status.SIZE_BITS
60 status_array[intersection_state.status.BIT_INDEX_MANUAL_CONTROL_IS_ENABLED] = 1
61 intersection_state.status.value = status_array
62 intersection_state.states.array.append(movement_state)
64 msg.spat.intersections.array.append(intersection_state)
66 self.get_logger().info(f
"Publishing SPATEM (TS)")
70 if __name__ ==
"__main__":