100

阿木币

0

精华

34 小时

在线时间

老司机

Rank: 2

发表于 2021-4-4 20:50:08 14155 浏览 8 回复

vfh避障的程序和原理问题

请问px4_command项目中,vfh避障程序,real_index这样计算的意义是什么,同时请问是否有vfh数学原理的依据,或者参考的论文,谢谢大家!
Screenshot from 2021-04-04 20-45-51.png
BOSHEN97已获得悬赏 1 阿木币

最佳答案

这只是对激光数据做一个处理,并不是扇区的处理。

扫一扫浏览分享
回复

使用道具 举报

39

阿木币

0

精华

91 小时

在线时间

技术大V

Rank: 4

发表于 2021-4-7 14:40:43
这个函数是确认目标方向的两个相邻扇区是否安全,real_index这个值是防止当目标方向为350度时,在循环的时候超过了360度,如果不加real_index这一块代码,检测范围就是320 - 380度,加了后就变成320 - 360以及0-20度
回复 点赞 2

使用道具 举报

255

阿木币

1

精华

55 小时

在线时间

老司机

Rank: 2

发表于 2021-4-6 09:36:10
VFH算法参考论文,直接谷歌/CSDN吧,原理都一样的。
回复 点赞

使用道具 举报

100

阿木币

0

精华

34 小时

在线时间

老司机

Rank: 2

 楼主| 发表于 2021-4-6 10:52:08 来自手机
blueboats 发表于 2021-4-6 09:36
VFH算法参考论文,直接谷歌/CSDN吧,原理都一样的。

您好,感谢回答,我看了论文,还是没看懂它为啥要有这个real_index,且想问问最后demo中的vfh控制的是无人机的速度嘛
回复 点赞

使用道具 举报

100

阿木币

0

精华

34 小时

在线时间

老司机

Rank: 2

 楼主| 发表于 2021-4-8 15:00:12
BOSHEN97 发表于 2021-4-7 14:40
这个函数是确认目标方向的两个相邻扇区是否安全,real_index这个值是防止当目标方向为350度时,在循环的时 ...

感谢您的回答,代码中设30为一个扇区,那么请问float goal_sector = (int)(goal_ori - sector_value + 360) % 360描述的目标扇区,为啥是这样计算的,同时为啥要计算320-360和0-20范围,不应该按30度一个扇区的范围来计算嘛,期待您的解答!
回复 点赞

使用道具 举报

39

阿木币

0

精华

91 小时

在线时间

技术大V

Rank: 4

发表于 2021-4-9 11:00:39
这只是对激光数据做一个处理,并不是扇区的处理。
回复 点赞

使用道具 举报

100

阿木币

0

精华

34 小时

在线时间

老司机

Rank: 2

 楼主| 发表于 2021-4-9 14:51:52
BOSHEN97 发表于 2021-4-9 11:00
这只是对激光数据做一个处理,并不是扇区的处理。

请问为什么要在目标方向左右的各30度扇区内计算是否安全,如果按照之前的选择扇区理论,是否改为左右各15度总合为30度的扇区更加合理,期待您的解答!
回复 点赞

使用道具 举报

39

阿木币

0

精华

91 小时

在线时间

技术大V

Rank: 4

发表于 2021-4-9 18:21:53
shen_bai 发表于 2021-4-9 14:51
请问为什么要在目标方向左右的各30度扇区内计算是否安全,如果按照之前的选择扇区理论,是否改为左右各15 ...

你已经理解了,只是代码里面选择的是一个扇区30度
回复 点赞

使用道具 举报

100

阿木币

0

精华

34 小时

在线时间

老司机

Rank: 2

 楼主| 发表于 2021-4-9 19:48:13
BOSHEN97 发表于 2021-4-9 18:21
你已经理解了,只是代码里面选择的是一个扇区30度

明白了,再次感谢您的解答!
回复 点赞

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表