Skip to main content
Skip table of contents

UDP 통신 메세지

본 섹션에서는 시뮬레이터에서 지원하는 통신에 따라, 주고받는 메시지의 종류 및 데이터 구조 등에 대한 UDP 메시지 프로토콜에 대해 기술한다.


UDP 통신 메시지

Network Settings 에서 제공하는 Ego NetworkSimulator Network 에서 UDP 통신으로 주고받는 메시지 타입, 각 메시지의 패킷 구조 및 데이터 크기와 같은 세부 프로토콜 정보를 설명한다.

 

Ego Network

Ego Network 로 전송되는 UDP 메시지 및 각 메시지 별 프로토콜 정보는 아래와 같다.

 

Ego Ctrl Cmd

  • 메시지 정의: 차량 제어 명령

  • 메시지 프로토콜:

    • 전체 패킷 크기 : 55 Bytes

    • 데이터 크기 : 3 Bytes + 20 Bytes

    • 데이터 구조 및 타입

      • CtrlMode 명령

        • 1 : KeyBoard

        • 2 : AutoMode

      • Gear 명령 (1 byte)

        • M : 0

        • P : 1 (주차)

        • R : 2 (후진)

        • N : 3 (중립)

        • D : 4 (주행)

        • L : 5 (L단)

      • longCmdType (1byte / CmdType / byte): 제어 방식을 결정하는 인덱스

        • longCmdType == 1: Throttle제어. accel/brake/steering

        • longCmdType == 2: Velocity제어. velocity/steering

        • longCmdType == 3: Acceleration제어

      • 종방향 속도 제어 (4byte / Veloctiy / float)

        • longCmdType이 2일경우 사용 ( km/h )

        • 종방향

      • 종방향 가속도 제어 (4byte / Acceleration / float)

        • longCmdType이 3일경우 사용 ( m/s2 )

      • 종방향 엑셀 제어 명령 (4byte /Acceleration CMD float)

        • 가속 페달 입력값 (0 ~ 1)

      • 종방향 브레이크 제어 명령 (4byte / Brake CMD / float)

        • 브레이크 페달 입력값 (0 ~ 1)

      • 횡방향 제어 명령 (4byte / Steer CMD / float)

        • 횡방향 제어 입력값 (-1 ~ 1 )

        • 실제 제어 값 = 원하는 스티어링 값(degree) / 최대 조향각. ex) 최대 조향각 : Niro = 36.25 , ioniq = 36.25

23.R.10 에서는 종방향 속도 제어 방식이 가속도 제어 방식으로 변경되어 속도 증가 시에는 1m/s2의 제한, 속도 감소 시에는 -2m/s2의 제한이 걸리도록 하여 한번에 갑자기 속도가 증가하거나 감속하여 채터링이 발생하는 현상을 방지했다. 따라서 아래 그림과 같이 불연속적인 속도 입력에 대한 반응 시간은 느려지나 안정적으로 목표 속도로 수렴하도록 변경되었다.

 

Ground Vehicle Direct Ctrl Cmd 24.R1.0 UPDATE

  • 메시지 정의: Wheel-based Ground Vehicle (차량 및 로봇)을 직접 제어하기 위한 메시지 (User → SIM)

  • 메시지 프로토콜

    • 전체 패킷 크기: 85 bytes

    • 데이터 크기: Header(33byte) + Payload(52byte)

  • Header

    • msg_type : 65

Name

Type

Field

Lenth [byte]

Description

header_version

uint32_t

0-3

4

default: 0

msg_type

uint32_t

4-7

4

메시지 별 상이

msg_size

uint32_t

8-11

4

default: 0

protocol_type

uint8_t

12

1

 default: 0

send_count

uint16_t

13-14

2

 default: 0

msg_frames

uint32_t

15-18

4

 default: 0

frame_size

uint32_t

19-22

4

 default: 0

frame_pos

uint32_t

23-26

4

 default: 0

frame_index

uint32_t

27-30

4

default: 0

reserved_01

uint8_t

31

1

default: 0

reserved_02

uint8_t

32

1

default: 0

  • Payload

Name

Type

Field

Lenth [byte]

Description

steer_type

uint32_t

33-36

4

Table 1 참조

throttle

float

37-40

4

-1~1

skid_steering

float

41-44

4

-1~1

steer_angle

float[10]

45-84

4*10

-1~1

  • steer_type

    • Table 1 참조

  • throttle

    • 종방향 전진/후진 엑셀 제어 명령

      • steer type == SKID_STEERING(1), ACKERMANN_STEERING(2)일 경우 차량의 전/후진 입력

        • sign : 방향을 의미함 [+(전진) / -(후진)]

        • value : throttle 입력 [1(최대) ~ 0(최소)]

      • steer type : ZERO_TURN (3)일 경우 zero turn 시 차량의 회전 방향 및 크기에 대한 입력

        • sign : 방향을 의미함 [+(우회전) / -(좌회전)]

        • value : 회전량에 대한 throttle 입력 [1(최대) ~ 0(최소)]

  • skid_steering

    • steer type == SKID_STEERING (1) 일 때 사용 가능한 횡방향 제어 명령

      • sign : 방향을 의미함 [+(우회전) / -(좌회전)]

      • value : 회전량에 대한 throttle 입력 [1(최대) ~ 0(최소)]

  • steer_angle

    • steer type == ACKERMANN_STEERING (2) 일 때 사용 가능한 횡방향 조향 제어 명령

      • sign : 방향을 의미함 [+(휠 조향 우회전) / -(휠 조향 좌회전)]

      • value : 조향각 입력 [1(최대) ~ 0(최소)]

        • 실제 제어 값 = 원하는 조향 값 (degree) / 최대 조향각
          최대 조향각은 차량의 Dynamics 제원을 따른다.

        • 최대 10축까지 대한 조향값을 받도록 array 구성. Dynamics 제원을 따른다.

 

Ground Vehicle State Ctrl Cmd 24.R1.0 UPDATE

  • 메시지 정의: Wheel-based Ground Vehicle (차량 및 로봇)의 Target State 제어를 위한 메시지 (User → SIM)

  • 메시지 프로토콜

    • 전체 패킷 크기: 41 bytes

    • 데이터 크기: Header (33byte) + Payload (8byte)

  • Header

    • msg_type : 66

Name

Type

Field

Lenth [byte]

Description

header_version

uint32_t

0-3

4

default: 0

msg_type

uint32_t

4-7

4

메시지 별 상이

msg_size

uint32_t

8-11

4

default: 0

protocol_type

uint8_t

12

1

 default: 0

send_count

uint16_t

13-14

2

 default: 0

msg_frames

uint32_t

15-18

4

 default: 0

frame_size

uint32_t

19-22

4

 default: 0

frame_pos

uint32_t

23-26

4

 default: 0

frame_index

uint32_t

27-30

4

default: 0

reserved_01

uint8_t

31

1

default: 0

reserved_02

uint8_t

32

1

default: 0

  • Payload

Name

Type

Field

Lenth [byte]

Description

TargetLongitudinalVelocity

float

33-36

4

m/s

TargetAngularVelocity

float

37-40

4

rad/s

  • TargetLongitudinalVelocity

    • 속도 제어시 타겟 종방향 속도

    • m/s

  • TargetAngularVelocity

    • 속도 제어시 타겟 각속도

    • rad/s

 

Ghost Ctrl Cmd

  • 메시지 정의: Ghost Mode를 이용한 Ego 차량을 제어하기 위한 메시지 (User → SIM)

  • 메시지 프로토콜

    • 전체 패킷 크기: 63 bytes

    • 데이터 크기: 32 bytes

  • 전체 패킷 구조

Name

Value

Type

Field

Lenth [byte]

Description

Units

start_indicator

0x23

byte

0

1

“#”

 

header_name

“EgoGhostCmd”

byte[]

1-10

11

 

 

doller_indicator

0x24

byte

11

1

“$”

 

data_length

32

uint32_t

12-15

4

 

 

aux_data

-

byte[12]

17-28

12

 

 

position_x

 

float

29-32

4

 

 

position_y

 

float

33-36

4

 

 

position_z

 

float

37-40

4

 

 

rotation_x

 

float

41-44

4

roll

 

rotation_y

 

float

45-48

4

pitch

 

rotation_z

 

float

49-52

4

yaw

 

speed

 

float

53-56

4

차량의 속력

km/h

steer angle

 

float

57-60

4

차량의 앞바퀴 조향 각도

deg

tail01

0x0D

byte

61

1

 

 

tail02

0x0A

byte

62

1

 

 


Ego Vehicle Status

23.R1.0에서는 UDP 통신의 Ego Vehicle Status 메시지의 데이터 구조가 아래와 같이 변경되었다.

  • Timestamp (8 bytes) 추가

  • Angular Velocity (12 bytes) 추가

Sync Mode 사용 시 unix timestamp 가 아닌 시뮬레이터 시작 시간 기준으로 계산을 한다.

 

  • 메시지 정의: Ego 차량을 제어하기 위한 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기 : 181 Bytes

    • 데이터 크기 : 50 Bytes + 102 Bytes

    • Timestamp 정보

      • 데이터 설명: Unix timestamp (1970/01/01) 으로부터 경과된 시간

      • 첫번째 4 bytes: 경과된 초 단위 시간 (seconds)

      • 두번째 4 bytes: timestamp의 소수 단위 초를 nanoseconds 로 표현

    • CtrlMode 정보

      • 1 : KeyBoard

      • 2 : AutoMode

    • gear 정보

      • M : 0

      • P : 1 (주차)

      • R : 2 (후진)

      • N : 3 (중립)

      • D : 4 (주행)

      • L : 5 (L단)

    • 차량 진행 방향 속도(4byte / signed velocity, float)

      • 데이터 설명 : 차량 진행 방향 속도를 나타내는 정보이며 단위는 km/h 이다.

    • Map data id 값 (Map data id, int)

      • DigitalTwin Map = 0 ~ 9999

      • Virtual Map = 10000 ~ 19999

    • 종방향 제어 명령 (4byte / Accel / float)

      • 데이터 설명 : 가속 페달 입력값 (0 ~ 1)

    • 종방향 제어 명령 (4byte / Brake / float)

      • 데이터 설명 : 브레이크 페달 입력값 (0 ~ 1)

    • Ego 차량 크기 정보(sizeXYZ, float)

      • 데이터 설명 : 오브젝트의 크기를 나타내는 정보이며 단위는 m 이다.

    • 차량 Overhang 정보 (4byte / OverHang / float)

      • 데이터 설명 : Ego 차량의 OverHang 정보

    • 차량 WheelBase 정보 (4byte / WheelBase/ float)

      • 데이터 설명 : Ego 차량의 WheelBase 정보

    • 차량 Rear Overhang 정보 (4byte / Rear OverHang / float)

      • 데이터 설명 : Ego 차량의 Rear OverHang 정보

    • 차량 위치 정보(posXYZ, float)

      • 데이터 설명 : 차량의 위치를 나타내는 정보이며 단위는 m 이다.

    • 차량 회전 정보(Roll/Pitch/Heading, float)

      • 데이터 설명 : 차량의 회전을 나타내는 정보이며 단위는 deg 이다.

    • 차량 속도 정보(4Byte * 3 / Velocity_XYZ / float)

      • 데이터 설명 : 차량의 현재 속도를 나타내는 정보이며 단위는 km/h 이다.

        • float x

        • float y

        • float z

    • 회전 각속도 정보( 4 bytes * 3, deg/s)

      • 데이터 설명: 차량의 중심 기준 회전 각속도를 나타내는 벡터

      • float x

      • float y

      • float z

    • acceleration (4Byte * 3 / Accel_XYZ / float)

      • 차량의 가속도 벡터 ( m/s2 )

        • float x

        • float y

        • float z

    • 차량 횡방향 정보(Steer, float)

      • 데이터 설명 : 차량의 횡방향을 나타내는 정보이며 단위는 deg 이다.

    • 차량이 위치한 Mgeo Link 의 ID 정보 ( 38 byte / Link ID / String) (New)


Object Info

23.R1.0 에서는 UDP 통신의 Object Info 메시지의 데이터 구조가 아래와 같이 변경되었다.

  • 데이터 패킷 앞에 Timestamp (8 bytes) 추가

  • Timestamp는 패킷 내 각 오브젝트마다 추가하지 않고 한 패킷 당 한번만 추가하여 전송

  • 메시지 정의: 사용자가 배치한 주변 물체에 대한 정보를 나타내는 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기 : 2160 Bytes

    • 데이터 크기 : 2120 Bytes (106 Bytes * 20)

      • 데이터는 주변 차량, 보행자, Object 를 현재 자신의 차량의 거리가 가까운 순으로 총 20개 Object 의 데이터를 얻을 수 있다.

    • Object 아이디(인덱스) 정보(2byte / Objid / int)

      • 데이터 설명 : Object 의 Unique ID 를 나타내는 정보

    • Object 타입 정보(ObjType, short)

      • 데이터 설명 : Object 의 타입을 나타내는 정보이다.

        • Ego Vehicle : -1 (ROS 의 경우 Ego Type 을 -1 로 정의 중 이여서 추가 하였음)

        • 보행자 : 0

        • 주변 차량 : 1

        • Object : 2

    • Object 위치 정보(posXYZ, float)

      • 데이터 설명 : Object 의 위치를 나타내는 정보이며 단위는 m 이다.

    • Object 회전 정보(Heading, float)

      • 데이터 설명 : Object 의 회전을 나타내는 정보이며 단위는 deg 이다.

    • Object 크기 정보 (sizeXYZ, float)

      • 데이터 설명 : Object 의 크기를 나타내는 정보이며 단위는 m 이다.

    • Object Overhang 정보 (4byte / OverHang / float)

      • 데이터 설명 : Object 의 OverHang 정보

    • Object WheelBase 정보 (4byte / WheelBase/ float)

      • 데이터 설명 : Object 의 WheelBase 정보

    • Object Rear Overhang 정보 (4byte / Rear OverHang / float)

      • 데이터 설명 : Object 의 Rear OverHang 정보

    • Object 의 속도 정보 (4Byte * 3 / Velocity_XYZ / float)

      • 데이터 설명 : Object 의 현재 속도를 나타내는 정보이며 단위는 km/h 이다.

        • float x

        • float y

        • float z

    • Object 의 acceleration (4Byte * 3 / Accel_XYZ / float)

      • Object 의 가속도 벡터 ( m/s2 )

        • float x

        • float y

        • float z

    • Object 가 위치한 Mgeo Link 의 ID 정보 ( 38 byte / Link ID / String)

      • NPC만 Mgeo Link 의 ID 정보 출력, 타 Object 는 출력하지 않음

 

Get TrafficLight Status

  • 메시지 정의: 신호등 상태 정보를 나타내는 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기 : 48 Bytes

    • 데이터 크기 : 16 Bytes

    • trafficLightIndex

      • 메시지 설명 : 신호등의 ID

    • trafficLightType

      • 메시지 설명 : 신호등의 종류

        • 3구(R-Y-G) : 0

        • 3구(R-Y-GLeft) : 1

        • 4구(R-Y-GLeft-G) : 2

        • 3구(Y-Y-Y) : 100

    • trfficLightStatus

      • 메시지 설명 : 신호등의 신호 상태

        • Red : 1

        • Yellow : 4

        • Green : 16

        • GreenLeft : 32

        • Green with GreenLeft : 48

        • Yellow with Green : 20

        • Yellow with GreenLeft : 36

        • Red with Yellow: 5

        • default : -1


Set TrafficLight Ctrl

  • 메시지 정의: 신호등 상태를 제어하는 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기 : 46 Bytes

    • 데이터 크기 : 14 Bytes

    • trafficLightIndex

      • 메시지 설명 : 신호등의 ID

    • trafficLightStatus

      • 메시지 설명 : 신호등의 신호 상태를 설정함

        • Red : 1

        • Yellow : 4

        • Green : 16

        • GreenLeft : 32

        • Green with GreenLeft : 48

        • Yellow with Green : 20

        • Yellow with GreenLeft : 36

        • Red with Yellow: 5

        • default : -1


Collision Data

23.R1.0 에서는 UDP 통신의 Collision Data 메시지의 데이터 구조가 아래와 같이 변경되었다.

  • ObjType 앞 Timestamp (8 bytes) 추가

  • Timestamp 는 패킷 내 각 오브젝트마다 추가하지 않고 한 패킷 당 한번만 추가하여 전송

  • 특정 오브젝트에 대한 실제 출력되는 데이터에는 Timestamp 를 포함하지 않음

  • 메시지 정의: Ego 차량과의 충돌 데이터를 나타내는 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기 : 181 bytes

    • 데이터 크기 : 148 (28*5 + 8) bytes

    • Timestamp 정보

    • 오브젝트 타입 정보 (2byte / ObjType / short)

      • 데이터 설명 : Ego Vehicle 과 충돌한 오브젝트의 타입을 나타내는 정보이다.

        • Ego Vehicle : -1

        • 보행자 : 0

        • 주변 차량 : 1

        • 오브젝트 : 2

    • 오브젝트 아이디 (인덱스) 정보(2byte / Objid / short)

      • 데이터 설명 : Ego Vehicle 과 충돌한 오브젝트의 Unique ID 를 나타내는 정보

    • 오브젝트 위치 정보 (4byte / posXYZ / float)

      • 데이터 설명 : Ego Vehicle 과 충돌한 오브젝트의 위치를 나타내는 정보이며 단위는 m 이다.

    • 글로벌 오프셋 정보 (4byte / posXYZ / float)

      • global_offset_x

      • global_offset_y

      • global_offset_z


Get Intersection Status

  • 메시지 정의: 교차로 상태 정보

  • 통신 프로토콜

    • 전체 패킷 크기 : 37 Bytes

    • 데이터 크기 : 8 Bytes

    • 교차로 인덱스 (2 byte / IntIndex / short)

      • 교차로의 인덱스 나타냄

    • 교차로 상태 (2 byte / IntStatus / short)

      • 교차로의 상태를 나타냄

    • 현재 교차로 상태로 지난 시간 (4 byte / IntTime / float)

      • intersection_status_time


Set Intersection Status

  • 메시지 정의: 교차로 제어 정보

  • 메시지 프로토콜

    • 전체 패킷 크기 : 40 Bytes

    • 데이터 크기 : 8 Bytes

    • 교차로 인덱스 (2 byte / IntIndex / short)

      • 교차로의 인덱스 나타냄

    • 교차로 상태 (2 byte / IntStatus / short)

      • 교차로의 상태

    • 세팅한 교차로 상태의 지난 시간 (4 byte / IntTime / float)

      • intersection_status_time


Scenario Load

  • 메시지 정의 : 시나리오 .json 파일을 Load

  • 메시지 프로토콜

    • 전체 패킷 크기 : 69 Bytes

    • 데이터 크기 : 37 Bytes

    • file_name (30 byte / filename / string)

      • 불러올 .json 형식의 파일 이름 결정

        • 30 byte 이내여야 하며 .json 은 붙이지 않는다.

        • 파일이름이 30 byte 이하인 경우 남는 byte 수 (30 Byte - 파일이름 Byte) 만큼 공백으로 처리해서 Byte 수를 맞춰 보내준다.

    • delete_all (1 byte / delete_all /bool )

      • True : Ego 를 제외한 Scenario Data 를 Delete 하고 Load

      • False : 모든 Scenario Data Load

        • delete_all 이 False 일 때 아래의 Load Option 을 사용해서 원하는 Scenario Data Load 가능

    • load_network_connection_data (1 byte / network /bool )

      • True : network connection Load

      • False : network connection Load 안 함

    • load_ego_vehicle_data (1 byte / ego_vehicle /bool )

      • True : Ego Scenario Data Load

      • False : Ego Scenario Data Load 안 함

    • load_surrounding_vehicle_data (1 byte / npc_vehicle /bool )

      • True : NPC Vehicle Scenario Data Load

      • False : NPC Vehicle Scenario Data Load 안 함

    • load_pedestrian_data (1 byte / pedestrian /bool )

      • True : pedestrian Scenario Data Load

      • False : pedestrian Scenario Data Load 안 함

    • load_object_data (1 byte / object /bool )

      • True : Object Scenario Data Load

      • False : Object Scenario Data Load 안 함

    • set_pause (1 byte / pause /bool )

      • True : Scenario Load 후 Pause 상태로 유지 (Esc 키를 입력하여 Play 상태 전환 가능)

      • False : Scenario Load 후 바로 Play 상태로 전환


SaveSensorData

  • 메시지 정의: 현재 센서의 데이터를 저장

  • 메시지 프로토콜

    • 전체 패킷 크기 : 125 Bytes

    • 데이터 크기 : 91 Bytes

    • is_custom_file_name (1 byte / custom / bool)

      • false 실행 시 시뮬레이터 파일의 SaveFile\SensorData 경로에 Data 저장

    • custom_file_name (30 byte / file name / String)

      • (is_custom_file_name : true 설정 시 사용) 저장할 file 이름

    • file_dir (60 byte / file dir/ String)

      • (is_custom_file_name : true 설정 시 사용) 저장할 file 의 경로

 

SaveSensorData 는 SIM 의 UDP 네트워크 설정 시 아래의 Sensor Sync Data 와 이름만 다를 뿐 동일한 메시지이다.


Sensor Control

  • 메시지 정의 : 센서의 위치를 Control

  • 메시지 프로토콜

    • 전체 패킷 크기: 59 Bytes

    • 데이터 크기: 26 Bytes

    • sensor_index (2 byte / Sensor Index/ int)

      • 위치를 제어할 센서 인덱스 번호 이름
        센서 Index 는 아래 사진과 같이 센서 옆에 적혀있는 번호로 한다.

        메세지프로토콜2.png
    • 센서 위치 정보 (4 byte / posXYZ / float)

      • 데이터 설명: 센서의 위치를 나타내는 정보이며 단위는 m 이다.

    • 센서 회전 정보 (4 byte *3 / Roll Pitch Heading / float)

      • 데이터 설명: 센서의 회전을 나타내는 정보이며 단위는 deg 이다.


Turn Signal Lamp Control

  • 메시지 정의: 방향 지시등 제어

  • 통신 프로토콜

    • 전체 패킷 크기 : 33 Bytes

    • 데이터 크기 : 2 Bytes

    • trunSignal (1byte / turnSignal / byte)

      • 0 : No Signal

      • 1 : Left Signal

      • 2 : Right Signal

    • emergencySignal (1byte / emergencySignal / byte)

      • 0 : No Signal

      • 1 : Emergency Signal

 

Simulator Network

Simulator Network 로 전송되는 UDP 메시지 및 각 메시지 별 프로토콜 정보는 아래와 같다.

 

Multi Ego Setting

  • 메시지 정의

    • Multi_Ego 제어 명령 (User → SIM)

    • 여러 대의 Ego 차량의 위치, 회전, 속도, 기어 등을 세팅할 수 있게 하는 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기: 683 Bytes

    • 데이터 크기: 648 Bytes (4 + 4 + 32 Bytes * 20)

    • 전체 패킷 구조

Name

Value

Type

Field

Lenth [byte]

Description

start_indicator

0x23

byte

0

1

“#”

header_name

“MultiEgoSetting”

byte[]

1-14

15

 

doller_indicator

0x24

byte

15

1

“$”

data_length

648

uint32_t

16-19

4

 

aux_data

-

byte[12]

20-31

12

 

num_of_ego

 

int32_t

32-35

4

제어할 차량의 개수

camera_index

 

int32_t

36-39

4

어떤 차량에 카메라를 고정 시킬지 정함. 차량 인덱스 번호를 적는다.

[Data] x 20

tail01

0x0D

byte

681

1

 

tail02

0x0A

byte

682

1

 

Body Data (32 Bytes)

Name

Value

Type

Field

Lenth [byte]

Description

Unit

ego_index

 

int16_t

40-41

2

차량의 인덱스 번호

 

g_pos_x

 

float

42-45

4

차량의 position

m

g_pos_y

 

float

46-49

4

차량의 position

m

g_pos_z

 

float

50-53

4

차량의 position

m

g_roll

 

float

54-57

4

차량의 rotation

deg

g_pitch

 

float

58-61

4

차량의 rotation

deg

g_yaw

 

float

62-65

4

차량의 rotation

deg

speed

 

float

66-69

4

차량의 속력

km/h

gear

 

byte

70

1

기어모드 변경

enum

ctrl_mode

 

byte

71

1

제어하는 방식

enum

Gear Mode

Name

Value

Description

Parking

1

주차

Rear

2

후진

Neutral

3

중립

Drive

4

주행

Ctrl_Mode

Name

Value

Description

Keyboard

1

사용자가 키보드를 이용하여 Ego 차량을 제어

Automode

2

자율주행 로직으로 네트워크를 통해서 Ego 차량을 제어

 

NPC Vehicle Collision Data

  • 메시지 정의: NPC 차량의 충돌 데이터를 나타내는 메시지

  • 메시지 프로토콜

    • 전체 패킷 크기 : 1156 Bytes

    • 데이터 크기 : 1120 Bytes(112 Bytes * 10)

      • 데이터는 주변 차량, 보행자, 오브젝트를 현재 자신의 차량의 거리가 가까운 순으로 총 20개 오브젝트의 데이터를 얻을 수 있다.

    • 1번 오브젝트 타입 정보(ObjType, short)

      • 데이터 설명 : 오브젝트의 타입을 나타내는 정보이다.

        • Ego Vehicle : -1

        • 보행자 : 0

        • 주변 차량 : 1

        • 오브젝트 : 2

    • 1번 오브젝트 아이디 (인덱스) 정보 (2byte / Objid / short)

      • 데이터 설명: Ego Vehicle 과 충돌한 오브젝트의 Unique ID 를 나타내는 정보

    • 1번 오브젝트 위치 정보 (posXYZ, float)

      • 데이터 설명: 오브젝트의 위치를 나타내는 정보이며 단위는 m 이다.

    • 1번 오브젝트 회전 정보 (Heading, float)

      • 데이터 설명: 오브젝트의 회전을 나타내는 정보이며 단위는 deg 이다.

    • 1번 오브젝트 크기 정보 (sizeXYZ, float)

      • 데이터 설명: 오브젝트의 크기를 나타내는 정보이며 단위는 m 이다.

    • 1번 오브젝트 속도 정보(4Byte * 3 / Velocity_XYZ / float)

      • 데이터 설명 : NPC의 현재 속도를 나타내는 정보이며 단위는 km/h 이다.

        • float x

        • float y

        • float z

    • 1번 오브젝트의 acceleration (4Byte * 3 / Accel_XYZ / float)

      • 차량의 가속도 벡터 ( m/s2 )

        • float x

        • float y

        • float z

    • 2번 오브젝트 타입 정보 (ObjType, short)

      • 데이터 설명 : 오브젝트의 타입을 나타내는 정보이다.

        • Ego Vehicle : -1

        • 보행자 : 0

        • 주변 차량 : 1

        • 오브젝트 : 2

    • 1번 오브젝트 아이디 (인덱스) 정보 (2byte / Objid / short)

      • 데이터 설명 : Ego Vehicle 과 충돌한 오브젝트의 Unique ID 를 나타내는 정보

    • 2번 오브젝트 위치 정보 (posXYZ, float)

      • 데이터 설명 : 오브젝트의 위치를 나타내는 정보이며 단위는 m 이다.

    • 2번 오브젝트 회전 정보 (Heading, float)

      • 데이터 설명 : 오브젝트의 회전을 나타내는 정보이며 단위는 deg 이다.

    • 2번 오브젝트 크기 정보 (sizeXYZ, float)

      • 데이터 설명 : 오브젝트의 크기를 나타내는 정보이며 단위는 m 이다.

    • 2번 오브젝트 속도 정보(4Byte * 3 / Velocity_XYZ / float)

      • 데이터 설명 : NPC의 현재 속도를 나타내는 정보이며 단위는 km/h 이다.

        • float x

        • float y

        • float z

    • 2번 오브젝트의 acceleration (4Byte * 3 / Accel_XYZ / float)

      • 차량의 가속도 벡터 ( m/s2 )

        • float x

        • float y

        • float z

 

 

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.