FOR KASA

ERP42 기반 KASA 대회 준비를 위해 새로이 추가한 유틸리티들에 대한 설명입니다.

대회 대비를 위한 심화 유틸리티 설명입니다. 이해가 잘 안된다면 앞쪽을 정독하고 다시 와주세요.

세부사항 정리 도표 FOR KASA

앞의 표에서 대회때 실제로 사용하게 될 인덱스만 추렸습니다. 나머지 인덱스들은 0.0과 같은 쓰레기 float값으로 채워주세요! topic data의 len이 10이 안되면 오류가 납니다!

index

what

valid value

When you should use

0

car_type

1.0: ERP42

reset code 제외 모든 모드

1

mode

원하는 mode 선택

0.0 : E-STOP

5.0 : for nav_pilot (plz read FOR KASA)

6.0 : for mission manager (plz read FOR KASA)

reset code 제외 모든 모드

2

desired_speed

원하는 속도 (km/h)

mode 5.0, 6.0

5

steer

pub하고싶은 steer 값

-2000.0 <= val <= 2000.0

+가 오른쪽 회전

-가 왼쪽 회전 (71로 나누면 degree가 된답니다.)

mode 5.0, 6.0

6

gear

pub하고싶은 gear 값

gear_dict = {0:"Forward",1:"Neutral",2:"Backward"}

mode 5.0, 6.0

대회용 모드

mode 5.0 : for nav_pilot (plz read FOR KASA)

python 예시 :

move_carmsg.data = [1.0, 5.0,20.0,0.0, 0.0, 200.0, 0.0,0.0,0.0,0.0]

해석 >> ERP42에서 0.0에 해당하는 driving gear로 20km/h의 속도로 cruise control을 하며 steer를 200pub한다.

mode 4.0의 기능을 통신 충돌이 일어나지 않도록, 대회용으로 만든 것이다. 더불어 index 3번째에 해당하는 속도칸에 원하는 속도를 입력할 수 있는데, 주행팀 설계상 7km/h 이하까지만 PID 기반으로 돌아가고, 그 이상은 PID없이 direct accel 값을 발행한다.

mode 6.0 : for mission manager (plz read FOR KASA)

python 예시 :

move_carmsg.data = [1.0, 6.0,20.0,0.0, 0.0, 200.0, 0.0,0.0,0.0,0.0]

해석 >> ERP42에서 0.0에 해당하는 driving gear로 20km/h의 속도로 cruise control을 하며 steer를 200pub한다.

mode 4.0의 기능을 통신 충돌이 일어나지 않도록, 대회용으로 만든 것이다. 더불어 index 3번째에 해당하는 속도칸에 원하는 속도를 입력할 수 있는데, 주행팀 설계상 7km/h 이하까지만 PID 기반으로 돌아가고, 그 이상은 PID없이 direct accel 값을 발행한다.

추가적인 핵심 기능은, mode 5.0에 해당하는 nav_pilot은 계속 돌아가지만, /mission_manager/nav_pilot topic이 off되면, 해당 모드의 통신을 무시하고, 6.0만 수행하도록 설계되었다.

Last updated

Was this helpful?