博客摘录「 智能汽车竞赛越野组入门-GPS/北斗导航原理」2024年1月15日

本文介绍了智能车使用GPS进行越野循迹的方案,包括通过GPS获取经纬度并转换为平面坐标,利用方位角计算函数确定目标方位,结合车身IMU获取车头方向,实现舵机闭环控制的导航方法。推荐使用灵动公司的单片机和逐飞的GPS、陀螺仪模块。还提供了坐标采集和两点距离计算的函数,并分享了传感器选择与GPS数据采集的实用建议。
摘要由CSDN通过智能技术生成

利用GPS进行越野车循迹的方案

智能车从片内FLASH实时读取目标点的地理位置信息,根据方位角计算公式计算出目标地点的方位角,并将目标地方位角与智能车本身的方位角的数据传回给舵机方向PID控制程序,将目标方位角作为车身方位角的期望值,通过内部10ms定时器将控制值输出给舵机进行方向控制,内部20ms定时器实时监测目标点与智能车当前地理坐标信息,一但进入目标点附近,将及时切换下一个目标点,当片内FLASH读取完成,导航结束。

方位角的获取方式:

(值得注意的是由于地球是圆形,由GPS获取到的经纬度并不是平面坐标系,想获得平面坐标系要通过转换,后续将为大家提供转换代码)知道位置信息后,之后需要通过方位角计算函数去获取目标方位角angle,逐飞开源库已提供方位角计算函数

//-------------------------------------------------------------------------------------------------------------------
// 函数简介     计算从第一个点到第二个点的方位角
// 参数说明     latitude1       第一个点的纬度
// 参数说明     longitude1      第一个点的经度
// 参数说明     latitude2       第二个点的纬度
// 参数说明     longitude2      第二个点的经度
// 返回参数     double          返回方位角(0至360)
// 使用示例     get_two_points_azimuth(latitude1_1, longitude1, latitude2, longitude2);
// 备注信息     逐飞

  • 10
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值