【经验】如何利用BLE AoA寻向技术开发一个具有自动跟随功能的小车
目前市场上可见几种具备自动跟随功能的行李箱,多依靠视觉或者UWB技术实现。本文介绍如何利用BLE AoA寻向技术开发一个具有自动跟随功能的小车。这个小车能够跟随信标前进、转向、停止。
整体框架
AoA自动跟随小车主要包括以下部件、模块。
小车的框图如下所示。其中主控为4x4 URA上的ING9188xx,它将采集到的CTE数据提交到树莓派完成方位角解算,再据此调整小车的前进方向。另外需要一块ING9188xx开发板用来发送CTE信标(烧录Peripheral LEC&CTE即可),引导小车前进。OLED模块可用来显示调试或者状态信息,它的驱动、使用方法参考Central Throughput。由于树莓派及底盘上的舵机都需要5V电源,且耗电较大,所以使用了DC-DC模块提供5V输出。
主要功能详解
1.底盘控制
由于天线阵的IO口数据有限,小车只能前进,不能后退。
2.CTE采集
AoX算法时间、空间复杂度都非常大,无法在ING918这样的低功耗SoC上运行。事实上,即便对于树莓派的低端型号Raspberry Pi Zero来说,进行4x4全阵列计算仍然非常吃力。考虑到我们只需要方位角,可以只使用1×4 ULA子阵列,Pi Zero完成一次计算大概需要0.1s。
实现上,仿照Central CTE,以扩展广播+桃芯扩展的方式采集CTE,经过Base64编码后送入树莓派进行方位角解算。
3.树莓派的控制
主控通过串口登录到树莓派并启动寻向算法程序alg -array 1x4。 之后的任务是将Base64编码的CTE数据送入树莓派,然后解析JSON 格式的解算结果。
实现时要考虑:
树莓派的启动时间长,登录Shell时要判断输出然后填写用户名、密码;
解析JSON结果时,算法程序可能报错(status != 'ok');
主控程序重新执行(调试、更新程序),树莓派已经处于登录状态(重启树莓派效率太低),需要做判断。
以上几种情况可能导致相关代码比较混乱。
4.转向控制
小车的转向采用PID控制:
误差:(当前方位角-目标值)
被控量:舵机角度
我们把KiKi参数设置为00,即只使用PP、DD两项进行控制。
5.速度控制
基本原理是小车距离信标比较远时速度快一些,反之就慢一些。但是根据RSSI估计距离效果很差, 我们联合使用了一个Kalman滤波器和一个IIR滤波器尝试提高距离估计的准确度。
6.停车控制
安全第一,为了(1)防止小车撞到自己的脚,(2)实现“急停”功能,在速度控制之外使用迟滞比较器实现了一个单独的停车控制逻辑:一旦(原始)RSSI 值超过某个门限(RSSI_LOCK),就立即停车,并屏蔽其它速度控制逻辑;当(原始)RSSI 低于另一个门限时,解除停车,允许其它速度控制逻辑控制小车移动。
测试
参考pin_def.h及上面的整体框图搭建硬件。我们搭建的小车如图所示,附加了一个内置ING9187xx芯片的Insta360 GO 2用来拍摄FPV 视频。
各模块使用的软件总结如下:
源代码里附带了FOTA功能,完成初次烧录后,通过OTA就能方便地升级。建议根据实际情况调整 REF_RSSI (即小车在距离信标1m远处所接收到的信号强度),以改善速度控制、停车控制的效果。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由Vicky转载自桃芯科技官网,原文标题为:AoA 自动跟随小车,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关研发服务和供应服务
相关推荐
为ING916搭建Zephyr开发环境
对于ING916/ING918 的NoOS 软件包,可以使用 Zephyr OS作为实时内核。SDK v8.4.1 提供了完整的 Controller 接口,可以对接 Zephyr BLE Host 协议栈。这里桃芯科技将为ING916 搭建 Zephyr 开发环境。在这个环境下,开发者可以使用 Zephyr RTOS 及其 BLE 协议栈。
【经验】桃芯科技蓝牙芯片板载天线设计指导及参考方案
在无线通信中天线性能严重影响产品的性能。在蓝牙应用中,板载天线是一种重要的天线形式,本文介绍一下板载天线设计中的关键点,并给出相应的参考方案。
【经验】解析桃芯科技蓝牙芯片ING918x六大新功能
本文介绍桃芯科技蓝牙芯片ING918x新功能:一、简易频偏测量;二、发射功率校准;三、新增小工具;四、加强兼容性;五、新增软件包;六、新增库函数。
【视频】桃芯科技BLE+UWB+NFC三合一汽车钥匙,完美解决10厘米安全定位
型号- ING91871B,ING91881B,ING91682C,ING91870C,ING91680C,ING91880C,ING91888A,ING91870CQ
桃芯科技低功耗蓝牙(BLE SoC)选型表
桃芯科技提供低功耗蓝牙芯片(BLE SoC),车规级低功耗蓝牙芯片/工规级低功耗蓝牙芯片/消费级低功耗蓝牙芯片;通讯方式:BLE+2.4G;RAM:128KB,80KB;Flash:512KB
产品型号
|
品类
|
封装
|
尺寸(mm)
|
RAM(KB)
|
Flash(KB)
|
LE 1M
|
LE 2M
|
Long Range
|
ADV Extension
|
内部晶振(KHz)
|
GPIO Number
|
ADC Channel
|
通讯方式
|
规格分类
|
BLE协议
|
适用温度(℃)
|
主要接口
|
ING91870C
|
低功耗蓝牙芯片
|
QFN32
|
4.0mm*4.0mm*0.75mm,pitch=0.40mm
|
128KB
|
512KB
|
LE 1M
|
LE 2M
|
Long Range
|
ADV Extension
|
32KHz
|
13
|
2
|
BLE+2.4G
|
工规级蓝牙BLE
|
BLE 5.0
|
-40℃~125℃
|
IO MUX: Uart/I2C/SPI/PWM/GPIO
|
选型表 - 桃芯科技 立即选型
【应用】桃芯科技ING918X低功耗蓝牙SOC帮助客户实现智能烧烤探针实时温度上报需求,工温高达125℃
智能烧烤领域对BLE SOC的要求在于高温环境中的稳定性、低功耗等特性。桃芯科技ING918x系列芯片作为工规/车规级BLE SOC ,稳定工作温度高达125℃,并拥有优秀的功耗表现,完全可以cover客户应用。支持BLE5.0&BLE5.1全特性自研协议栈,集成了32位RISC MCU,16KB ROM,128KB RAM,512KB嵌入式eFlash和丰富的外设资源。
【应用】桃芯科技蓝牙芯片ING9188助力电子全站仪,支持蓝牙5.0/5.1,实测最大传输距离可达370米
全站仪是建筑行业常用的一种工具,用于建筑测量,随着当前科技发展,目前已经从纯机械向电子化、自动化发展。本文介绍桃芯科技新出ING9188系列蓝牙芯片可实现实测最大传输距离370米,助力电子全站仪的设计和开发。
【视频】2023年3月30日汽车电子新技术研讨会
国民技术、拓尔微、XSENS、极海、芯海等厂商分享国产车规MCU、AI芯片、惯导模块、激光雷达、智能座舱等全新汽车电子产品与新技术。
桃芯科技ING9XX系列蓝牙SoC用在APPLE Findmy Network Accessory
桃芯科技的ING9XX系列BLE芯片成功通过苹果授权的第三方机构进行的各项合规性验证,该系列芯片已经全面兼容Find My network accessory的功能要求,可为第三方硬件产品提供高效快速寻找丢失物品的低功耗蓝牙应用方案。
【应用】采用2.4G私有协议的蓝牙芯片ING91870C有效提升电网故障指示器的传输距离,支持低延时
桃芯公司的ING91870C芯片是一款专为电网故障指示器而设计的芯片,它支持2.4G私有协议,低延时,低功耗设计,多种安全功能,满足电网故障指示器的应用需求,可以有效保障电网的安全运行。
电子商城
现货市场
服务
可支持TI AM335x/AM5718 和NXP iMX6/iMX8芯片定制核心板和计算单板;支持NXP iMX6核心模组X / F / H系列、TI AM335x核心模组X / N / H系列,与兼容的底板组合定制单板计算机。
最小起订量: 1pcs 提交需求>
世强深圳实验室提供Robei EDA软件免费使用服务,与VCS、NC-Verilog、Modelsim等EDA工具无缝衔接,将IC设计高度抽象化,并精简到三个基本元素:模块、引脚、连接线,自动生成代码。点击预约,支持到场/视频直播使用,资深专家全程指导。
实验室地址: 深圳 提交需求>
登录 | 立即注册
提交评论