UDP 사용 예제
본 페이지는 시뮬레이터 및 Sensor(Lidar, Camera, GPS, IMU)의 UDP 네트워크 세팅 법과 사용 예제를 소개한다.
시뮬레이터 네트워크 세팅
네트워크 세팅
Host IP 및 Ego Ctrl, Object Info, Ego Vehicle Status 의 Port를 아래와 같이 세팅한다.
Local 환경에서 시뮬레이터를 실행시킨다면 Bridge IP 127.0.0.1 사용
기본 Port 번호 설정
ego ctrl cmd : 7601, 7600
get traffic : 7701, 7700
set traffic : 7801,7800
vehicle status : 8001, 8000
object info : 8101, 8100
가상 환경에서 시뮬레이터를 실행시킨다면 아래 그림과 같이 변경
Host IP 192.168.56.1
DST IP 192.168.56.101
Parameter 설정
Parameter 설정
사용자의 IP 와 Port 번호에 따라 입력하는 param 값을 수정
erp_udp/scripts/lib/params.json 파일 수정
params.json 파일을 수정 함으로 사용자가 원하는 값을 설정
Local 환경에서 실행시킨다면 user_ip, host_ip 127.0.0.1 사용

센서 코드 테스트
LiDAR
erp_udp/scripts 폴더로 경로 이동
params.json 파일 내부 IP 주소 확인
Local 환경에서 시뮬레이터를 실행시킨다면 Sensor IP, DST IP 127.0.0.1 사용
python lidar.py
출력 결과 확인
Port 번호 Lidar : 그대로
<params.json 파일 세팅>

<시뮬레이터 센서 세팅>

<실행 결과 콘솔창에 출력>
Camera
erp_udp/scripts 폴더로 경로 이동
params.json 파일 내부 IP 주소 확인
Local 환경에서 시뮬레이터를 실행시킨다면 Bridge IP 127.0.0.1 사용
python camera.py
출력 결과 확인
Port 번호 Cam : 1231, 1232
<params.json 파일 세팅>

<시뮬레이터 센서 세팅>

<실행 결과 이미지 생성>
GPS
erp_udp/scripts 폴더로 경로 이동
params.json 파일 내부 IP 주소 확인
Local 환경에서 시뮬레이터를 실행시킨다면 Bridge IP 127.0.0.1 사용
python gps.py
출력 결과 확인
Port 번호 GPS : 1233, 1234
<params.json 파일 세팅>

<시뮬레이터 센서 세팅>

<실행 결과 콘솔창에 출력>
IMU
erp_udp/scripts 폴더로 경로 이동
params.json 파일 내부 IP 주소 확인
Local 환경에서 시뮬레이터를 실행시킨다면 Bridge IP 127.0.0.1 사용
python imu.py
출력 결과 확인
Port 번호 imu : 1235, 1236
<params.json 파일 세팅>

<시뮬레이터 센서 세팅>

<실행 결과 콘솔창에 출력>
주행 경로 제작
UDP 주행 경로 제작
erp_udp/scripts/path_maker.py
json 파일을 열어서 경로 파일을 생성할 폴더 및 이름을 변경할 수 있다.
(저장 경로 및 파일 이름 입력) (User_ip 설정)
python path_maker.py
원하는 경로를 주행 후 python을 종료하면 파일이 완성된 걸 확인 가능하다.
erp_udp/path 폴더 내부 확인

<params.json 세팅>

<생성 된 path 파일>
주행 코드 테스트
주행 코드 테스트
erp_udp/scripts/lib 폴더로 경로 이동
json 파일을 열어서 경로파일를 생성할 폴더 및 이름을 변경 할 수 있다.
(user_ip host_ip 세팅) (추종할 경로의 이름) (신호등 GreenLight 세팅)
(신호등 상태)부분을 True로 설정시 차량이 지나가는 경로의
신호를 Green Light로 바꿀 수 있다.erp_udp/scripts 폴더로 경로 이동
python erp42_planner.py
auto mode로 변경(키보드 ‘q’ 모드변경)
정해진 경로를 따라 주행



<ERP_42 주행>

<실행 결과 출력>