Search

🟨 DF-05. PATH TO MOVING PLAN

SECTION
DECISION
νƒœκ·Έ
Done
Date
2023/08/22 β†’ 2023/08/27
Date 1
github
μ—°κ΄€ 된 μž‘μ—… / 지식
μž‘μ—…μž

κ΅¬ν˜„ λ‚΄μš©

DECISION SECTION 의 smoothing path 이후, 경둜λ₯Ό λ°”νƒ•μœΌλ‘œ μ°¨λŸ‰μ˜ λ™μž‘κ³„νš μ½”λ“œ μž‘μ—…

κ΅¬ν˜„ 일정

Search
μ½”λ“œ ν•œ 쀄 ν•œ 쀄 적기 λ³΄λ‹€λŠ”, νŠΈλžœμž­μ…˜ λ‹¨μœ„λ‘œ μž‘μ„±ν•΄μ£ΌκΈ° λ°”λžŒ.

μ–΄λ ΅λ‹€! λ„μ›€μ€˜λΌ!

1. 정상적이지 μ•Šμ€ 경둜둜 움직이고 μžˆλ‹€λŠ” νŒλ‹¨ν• μˆ˜μžˆλŠ” κ·Όκ±°κ°€ 뭘까 ?

1-1. 콘 간격 3m μ™Όμͺ½μ˜€λ₯Έμͺ½ <폭>
1-2. μ™Όμͺ½μ— λ…Έλž€μƒ‰ νŒŒλž€μƒ‰μ΄ μžˆλŠ”μ§€ ?

2. 정상주행 쀑 κ³ λ €ν•΄μ•Όν•  경우의 수 γ…Žγ…‡

def motionplanning(self,smoothingpath): #---λ―Έμž‘μ„±μ½”λ“œ--- ## 우리 μ°¨κ°€ 초기 μœ„μΉ˜λ‘œ λŒμ•„μ™”λƒ ? --- if perception.gps_isInitStatus(): return self ''' 전방에 λΉ¨κ°„μ½˜μ΄ μ‘΄μž¬ν•˜μ§€ μ•Šμ„ λ•Œ ''' if not perception.isBarricade(): radian_tmp = gradient.calculate_radian(smoothingpath[0][0],smoothingpath[0][1],smoothingpath[1][0],smoothingpath[1][1]) target_degree = gradient.rad2deg(radian_tmp) self.first_target_steering = self.get_now_steering - target_degree self.first_target_velocity = DEFAULT_VELOCITY radian_tmp = gradient.calculate_radian(smoothingpath[1][0],smoothingpath[1][1],smoothingpath[2][0],smoothingpath[2][1]) target_degree = gradient.rad2deg(radian_tmp) self.second_target_steering = self.first_target_steering - target_degree # degree self.second_target_velocity = DEFAULT_VELOCITY return self ### λΉ¨κ°„μ½˜μ΄ μ‘΄μž¬ν•˜κ³ , μ „λ°© 콘과의 거리가 10 λ―Έν„° μ΄λ‚΄μΌλ•Œ elif perception.isBarricade()==1 and BARRICADE_DISTANCE_THRESHOLD < 100 : if BARRICADE_DISTANCE_THRESHOLD < 50: self.first_target_velocity = 0 return self print(" ************ OH FUCK! WE SHOULD STOP!! ***************** ") self.first_target_velocity = DEFAULT_VELOCITY-10 return self
Python
볡사