低速前碰开发
為實現車輛在10km/h的速度下,當檢測到前方有障礙物(車)的同時,能夠給與駕駛員報警提示,并且在碰撞發生前,自主響應剎車系統避免碰撞的發生。
嘗試開發低速前碰功能。
?
確認所需求的輸入輸出信號。
輸入信號:ABS輸入當前車速信息,前向超聲波雷達輸入前方障礙物的距離等信息
輸出信號:輸出報警聲音信息,輸出制動所需要的制動壓力
?
超聲波雷達的工作情況:
采用的是4.5m探測距離的雷達,帶有主機,通過主機發送探測命令給雷達后,雷達執行探測完畢才會將探測的結果通過I/O端口反饋給主機。
主機探測命令的起效方式?命令信號周期?命令發送至雷達的傳輸時間?
雷達探測時間?雷達將探測結果數據傳回主機時間?
主機將雷達的數據通過CAN按照周期20ms傳出?
主機應該是不斷發探測命令,傳輸時間加上雷達探測時間就是數據的更新時間,但是CAN的周期時間為20ms,則只有更新數據后才改變CAN數據,故而17ms,34ms是更新時間?
如果主機周期短,那多余的數據如何處理?
如果主機周期長,也有問題。
?
具體功能描述:
當汽車在10km/h(TBD)以下的速度行駛時,通過前向超聲波雷達檢測前方是否存在障礙物。
當檢測到障礙物的同時,把距離信息輸出,計算此時的速度與距離之間的關系,可以得出此時是否需要采取措施,諸如報警、制動。
預定汽車能夠在制動措施前提前報警1s(TBD),若在報警時間內駕駛員未采取減速措施,則需要自主執行制動功能,制動后剎停距離障礙物的安全距離在30cm~50cm之間。
?
控制策略:
相關信號信息:輸入的障礙物距離信息distance,安全距離safe_s,延遲時間delay_t,報警距離warn_s。
每時每刻獲得的距離信息減去安全距離以及延遲時間內車走過的距離,計算得到剩余策略距離last_s=distance-safe_s-v*delay_t。
通過對比剩余策略距離和剎車距離brake_s來確認是否執行剎車。
通過對比剩余策略距離和brake_s+warm_s的大小來決定報警。
?
當超聲波雷達檢測到障礙物的時刻,此時的車速情況暫且分為三類:
車速大于10km/h時,車速大于低速前碰的最大閾值,需要立即響應剎車并報警,并最終只能減緩碰撞不能剎停。
當車速大于5km/h并小于10km/h時,需求的剎車距離大于50cm,使得報警時間無法達到1s,則需要在檢測到障礙物的同時立刻響應報警,當在剩余策略距離小于剎車距離時響應剎車,并給與平均3~4m/s2的減速度使車停在安全距離內。
當車速在5km/h的范圍內時,剎車距離小于50cm,且能夠報警1s以上,當在剩余策略距離小于剎車距離時響應剎車,給與的減速度預定為2m/s2,能夠使車剎停。
?
轉載于:https://www.cnblogs.com/shinedaisiki/p/10231386.html
總結
- 上一篇: MySql实现分页查询的SQL,mysq
- 下一篇: visual studio code的使