送藥小車代碼倉庫:https://gitee.com/lcsc/medical_car
更好的觀看體驗(yàn)請去:https://lceda001.feishu.cn/wiki/ZDYbwqDfCiwVlckUEcScF0KSnRh
送藥小車立創(chuàng)開源平臺資料:https://oshwhub.com/li-chuang-kai-fa-ban/21-dian-sai-f-ti-zhi-neng-song-yao-xiao-che
小車尋紅線環(huán)的調(diào)試與實(shí)現(xiàn)
一般我們在小車比賽中最常用的是光電二極管灰度傳感器,但是這里我們已經(jīng)有K210識別到的紅色色塊坐標(biāo)了。所以在地圖中的尋紅線是在K210返回來的色塊坐標(biāo)基礎(chǔ)上進(jìn)行的。
依靠K210返回來的巡線中線偏移,對于PID控制來說,測量值是紅線相較屏幕中線的偏移,目標(biāo)值是想讓紅線偏移為0,輸出值是電機(jī)的速度。
根據(jù)14_立創(chuàng)梁山派與K210串口通信協(xié)議框架搭建.md文檔我們的立創(chuàng)梁山派已經(jīng)可以獲取到色塊的坐標(biāo)了。接下來就可以參考10_小車角度環(huán)的調(diào)試與實(shí)現(xiàn).md文檔來實(shí)現(xiàn)了。
用K210發(fā)送過來的數(shù)據(jù)實(shí)現(xiàn)尋紅線
還是在pid_thread.c中實(shí)現(xiàn)(和文檔10_小車角度環(huán)的調(diào)試與實(shí)現(xiàn)中是一樣的套路):
創(chuàng)建相應(yīng)的PID控制參數(shù)的結(jié)構(gòu)體:
positional_pid_params_t red_lines_pid;
初始化控制結(jié)構(gòu)體并修改kp ki kd(因?yàn)橐呀?jīng)有速度環(huán)了,兩邊輪子轉(zhuǎn)速基本是一樣的,所以kp取的是比較小的):
// 巡紅線回中pid配置 // 尋紅線 pid 參數(shù)初始化 positional_pid_init(&red_lines_pid, 0.004, 0, 0, 5, 1.5, -1.5); // 修改 尋紅線 kp ki kd red_lines_pid.positional_pid_set_value(&red_lines_pid, 0.005, 0, 0.0005);
在PID的軟件定時器回調(diào)函數(shù)中計算兩個輪子需要的速度:
// 巡紅線環(huán) if (car_find_red_line_enable_flag == 1) { red_lines_result_motor1_speed_target = positional_pid_compute( &red_lines_pid, red_lines_target, lines_offset); } else { red_lines_result_motor1_speed_target = 0; }
在打開巡紅線環(huán)后,給小車一個運(yùn)行速度,如果能能識別到紅線并成功傳輸給立創(chuàng)梁山派,此時小車就可以沿著紅線前進(jìn)了。
最終就是各個外環(huán)計算出來的速度一起加起來給速度環(huán)(內(nèi)環(huán)):
motor1_speed_target = raw_target_speed + red_lines_result_motor1_speed_target + position_result_motor1_speed_target + angle_ring_speed_target; motor2_speed_target = raw_target_speed + (-red_lines_result_motor1_speed_target) + position_result_motor2_speed_target - angle_ring_speed_target;
在實(shí)際運(yùn)行時,巡線時打開尋紅線環(huán),關(guān)閉角度環(huán)(或位置環(huán))。轉(zhuǎn)彎時關(guān)閉巡紅線環(huán),打開角度環(huán)(或位置環(huán))。
審核編輯 黃宇
-
PID
+關(guān)注
關(guān)注
35文章
1469瀏覽量
85197 -
調(diào)試
+關(guān)注
關(guān)注
7文章
571瀏覽量
33874 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
4900瀏覽量
97065 -
智能小車
+關(guān)注
關(guān)注
86文章
548瀏覽量
81609 -
智能循跡小車
+關(guān)注
關(guān)注
1文章
11瀏覽量
10585
發(fā)布評論請先 登錄
相關(guān)推薦
評論