Skip to main content
Skip table of contents

WeCAR

WeCAR Simulator에서는 ROS 프로토콜을 제공한다.


네트워크 설정

사용자의 자율주행SW와 시뮬레이터 사이의 데이터 통신을 위한 설정 정보를 입력한다.

ROS

Bridge Setting

  • ROS Bridge의 IP와 Port를 입력한다.

WeCAR ROS Message Type

Object_topic는 시뮬레이터 자체 메시지 타입임. 제어 명령과 차량 상태정보는 실제 WeCAR에서 사용되는 ROS Message Type과 동일하다.

Ego Ctrl Cmd
  • 종방향 제어 명령

    • Message Type : std_msgs/Float64

    • Default Topic : /commands/motor/speed

    • 타입 설명 : 차량 종방향 제어를 위한 명령값이며 단위는 rpm이다.

  • 횡방향 제어 명령

    • Message Type : std_msgs/Float64

    • Default Topic : /commands/servo/position

    • 타입 설명 : 차량 횡방향 제어를 위한 명령값이다.
      (min : -0.1049(deg -30) ~ 0.5304(deg 0) ~ max : 1.1657(deg 30)

Ego Vehicle Status
  • 차량 상태 정보

    • Message Type : vesc_msgs/VescStateStamped

    • Default Topic : /sensors/core

    • 타입 설명 : 차량의 상태를 나타내는 메시지이며 현재 speed(rpm)값만 전송된다.

  • 차량 종방향 Servo 정보

    • Message Type : std_msgs/Float64

    • Default Topic : /sensors/servo_position_command

    • 타입 설명 : 스티어링 값을 나타내며 현재는 /commands/servo/position값을 bypass한다.

Ego Vehicle Status(시뮬레이터에서만 사용가능)
  • 차량 상태 정보

    • Message Type : morai_msgs/EgoVehicleStatus

    • Default Topic : /Ego_topic

    • 타입 설명 : 제어 차량의 상태 정보를 나타내는 메시지

      • Header header

      • int32 unique_id : 오브젝트의 unique id 값

      • geometry_msgs/Vector3 position : 차량의 위치 벡터

        • float64 x : 차량의 x(m단위) 위치를 나타내며 동쪽(East)이다. Global UTM좌표에서 (302459.942m, 4122635.537m)을 뺀 값이다. (K-City기준)

        • float64 y : 차량의 y(m단위) 위치를 나타내며 북쪽(North)이다. Global UTM좌표에서 (302459.942m, 4122635.537m)을 뺀 값이다. (K-City기준)

        • float64 z : 차량의 z(m단위) 위치를 나타내며 위(Up)다.

      • geometry_msgs/Vector3 velocity : 차량의 속도 벡터

        • float64 x : 차량 기준 좌표의 x축 방향 속도

        • float64 y : 차량 기준 좌표의 y축 방향 속도

        • float64 z : 차량 기준 좌표의 z축 방향 속도

      • geometry_msgs/Vector3 acceleration : 차량의 가속도 벡터

        • float64 x : 차량 기준 좌표의 x축 방향 가속도

        • float64 y : 차량 기준 좌표의 y축 방향 가속도

        • float64 z : 차량 기준 좌표의 z축 방향 가속도

      • float64 heading : 차량의 헤딩(deg)을 나타냄. 동쪽이 0deg 이며 동쪽에서 북쪽으로 이동할 때 +방향이다. 즉, CCW일때 각도가 증가한다.

      • float64 accel : 차량의 엑셀 상태 값

      • float64 brake : 차량의 브레이크 상태 값

      • float64 wheel_angle : 현재 차량 제어로 입력받은 Wheel_angle 값

Object Info(시뮬레이터에서만 사용가능)
  • 주변 물체 정보

    • MoraiObjectInfoPublisher (Sim → User)

      • Message Type : morai_msgs/ObjectStatusList

      • Default Topic : /Object_topic

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

        • Header header

        • int32 num_of_npcs : 사용자가 배치한 npc 차량의 개수.

        • int32 num_of_pedestrian : 사용자가 배치한 pedestrian의 개수.

        • int32 num_of_obstacle : 사용자가 배치한 obstacle의 개수.

        • ObjectStatus[] npc_list : npc 차량 정보 ( 아래의 ObjectStatus 타입 참고)

        • ObjectStatus[] pedestrian_list : pedestrian 정보 ( 아래의 ObjectStatus 타입 참고)

        • ObjectStatus[] obstacle_list : obstacle 정보 ( 아래의 ObjectStatus 타입 참고)

ObjectStatus 메시지 타입 설명
  • ObjectStatus 타입 설명

    • int32 unique_id : 물체의 unique id 값

    • int32 type : 물체의 타입

      • 0 : Pedestrian, 1 : Vehicle, 2: Obstacle

    • string name : 물체의 이름

    • float64 heading : 차량의 헤딩(deg)을 나타냄. 북쪽이 0deg 이며 동쪽에서 북쪽으로 이동할 때 +방향이다.

    • geometry_msgs/Vector3 velocity : 물체 헤딩방향의 속도(km/h).

      • float64 x : 차량 기준 좌표의 x축 방향 속도

      • float64 y : 차량 기준 좌표의 y축 방향 속도

      • float64 z : 차량 기준 좌표의 z축 방향 속도

    • geometry_msgs/Vector3 position : 물체의 위치 벡터

      • float64 x : 물체의 x(m단위) 위치를 나타내며 동쪽(East)이다.

      • float64 y : 물체의 y(m단위) 위치를 나타내며 북쪽(North)이다.

      • float64 z : 물체의 z(m단위) 위치를 나타내며 위(Up)다.

    • geometry_msgs/Vector3 acceleration : 물체의 가속도 벡터 ( https://morai.atlassian.net/wiki/spaces/MUMSP/pages/580649139 기준 )

      • float64 x : 물체의 x축 방향 가속도.

      • float64 y : 물체의 y축 방향 가속도.

      • float64 z : 물체의 z축 방향 가속도.

    • geometry_msgs/Vector3 position : 물체의 크기 벡터

      • float64 x : 물체의 x(m단위) 크기.

      • float64 y : 물체의 y(m단위) 크기.

      • float64 z : 물체의 z(m단위) 크기.

네트워크 설정 저장 & 불러오기

  • Network Setting에 Save를 이용하여 현재의 네트워크 설정 정보를 저장할 수 있다.

  • 저장된 네트워크 설정 정보는 File List에 표시되며, 설정 정보를 Load를 통해 불러오거나, Del을 통해 삭제할 수 있다.

JavaScript errors detected

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

If this problem persists, please contact our support.