串口连接大疆A3飞控

本文详细描述了如何使用串口连接大疆A3飞控。N3飞控及经纬系列无人机也可参考本文。

接口

根据大疆用户手册,大疆A3飞控提供了两个用于SDK传递数据的接口,分别为CAN和API。其中,API接口本质上是TTL串口。

图1 支持SDK的接口

由于TTL串口的广泛性,我们使用API接口连接飞控。大疆Onboard SDK 3.9版本文档的“DEVELOPMENT WORKFLOW”--“Hardware Setup”--“UART”部分指示了该接口的定义,如图2和图3所示。

图2 API接口定义
图3 接口示意图

连接

现代电脑一般都取消了串口。因此,一般情况下,我们需要使用USB转TTL串口模块,将TTL串口信号转换为USB信号后,再通过USB连接到上位机。

图4 USB转TTL模块

如果您使用了像树莓派这种自带TTL串口的设备,可直接查看对应的产品手册进行连线。

一般情况下,TTL串口双方之间的TX和RX需要交叉连接。在两边设备都有独立供电的情况下,VCC是不需要连接的。最终连线情况如图5所示。

图5 飞控与USB转TTL模块连接示意图

连线完成并将USB转TTL模块插入到电脑后,电脑的设备管理器的“端口”一栏会出现一个全新的设备,设备名称取决于你购买的USB转TTL模块的芯片类型,如图6所示。

图6 USB转TTL模块成功连接到电脑

如果您将USB转TTL模块插入电脑后,电脑的设备管理器的“端口”一栏没有出现全新的设备。而是在“其他设备”中出现一个全新的设备,如图7所示。那么请您向购买该模块的地方索要对应的驱动程序并安装。在驱动程序安装后,该模块才可以正常工作。

图7 USB转TTL模块连接电脑失败

检验连接是否成功

为了检验是否连线是否成功,我们可以通过尝试使用串口获取飞控数据,观察飞控数据格式是否正确。

开启API数据发送

为了获取飞行数据,需要首先开启数据授权。打开DJI Assistant 2,登录您的账号并在右上角的“设置”界面中开启数据授权,如图8和图9所示。

图8 DJI Assistant 2界面
图9 开启数据授权

接着,您需要将飞控通过Micro USB--USB线缆连接到电脑。DJI Assistant 2会自动检测并识别飞控。

如果您在插入线缆后,DJI Assistant 2没有识别到飞控,请尝试重复插拔或使用电脑的其他USB接口。如果重复插拔和更换USB接口均无效,请关闭DJI Assistant 2并重新打开。如果重新打开时提示“DJI Assistant 2仍在后台运行中”,请打开电脑的任务管理器,在“进程”页面中搜索“DJI”,在“后台进程”一栏中手动结束进程,如图10所示。

图10 结束后台进程

DJI Assistant 2成功连接到飞控后,请打开“SDK”页面,点击“启用API控制”,如图11所示。

图11 启用API控制

在此页面中,您还可以设置波特率与传输数据的速率。启用或关闭API控制不需要重启飞控,更改波特率需要重启飞控。如果使用STM32或ROS环境连接飞控,那么波特率有额外要求,详情请翻阅大疆OnBoard SDK 3.9版本文档

开启API控制后,飞控会不断通过API口发送飞控数据。我们通过检验串口接收的飞控数据正常与否从而检验连接是否正常。

检验数据格式

本文使用正点原子串口调试助手V3.0作为串口调试工具,您也可以使用其他串口调试工具。

打开串口调试工具,选择对应的串口,将波特率设置为DJI Assistant 2的“SDK”页面中设置的波特率,默认为230400,其余设置保持默认。

如果接收数据中出现多个00000000000数据,那么表明数据可以成功接收。根据接收的数据情况来看,大疆飞控的通讯包头似乎是AA DA 00 00 00 00 00 00。

图12 串口接收数据

至此,已成功通过串口连接到大疆A3飞控。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值