本文是Andrew演讲的中文翻译,你可以直接观看视频了解演讲的全部内容,此演讲视频的中文版本已经发布在Ardupilot社区的Blog板块,你可以在 Arudpilot官网(https://ardupilot.org) 获取该视频:
你也可以直接通过Bilibili链接(https://www.bilibili.com/video/BV1N5B8YbEbL/ )跳转该视频。
【翻译中文版】DroneCAN 2024最新开发进展 Andrew在ardupilot开发者大会2024上的演讲
非常感谢。我很高兴来到加贺市。市长先生,非常感谢您精彩的介绍,我必须说,这次会议比澳大利亚的会议组织得好得多,Drone Japan做得太棒了,Randy和整个团队组织了这次会议。
我今天的演讲主题是系统更新(Systems Update),这实际上只是一个借口,有各种各样的技术,这些技术使ardupilot的底层在过去的18个月里发生了变化,距离我们上次在堪培拉举行的会议已经过去了18个月。
刚开始,我通常会向你介绍一下ardupilot的开发速度,我们处理了大约2500个PRs,大约从上次会议开始,在过去的18个月里,有超过8000个补丁 ,42万行代码发生了变化,我们有314位个人贡献者为主代码库贡献了代码,这太棒了!这些贡献者中有很多人就在这里。非常感谢大家对ardupilot的贡献。
我今天演讲的真正主题是连接和桥接,基本上,在过去的18个月里,我们做了很多工作,将我们在ardupilot中支持的所有不同类型的总线连接起来。我这里有一架示范的小四轴。这是一台小型Hexsoon EDU-450,如果你走到前面看到它,你会看到它有很多额外的部件,这些部件通常不会出现在这种规模的飞行器上,它展示了很多新的连接选项。
在过去的18个月里,ardupilot在以太网连接方面做了很多工作,因此网络支持已经取得了很大进展,我们开始看到以太网被部署在更多的车辆中,这太棒了!我们现在在IPv4上都有了虚拟串行端口,所以我们在网络上有了虚拟串行端口。我们在can总线上也有虚拟串行端口,允许我们传输所有不同的串行协议,我们支持通过以太网传输dronecan协议数据,稍后我会详细讨论这个问题。
IPv4网络通过串行桥接,所以我们可以通过快速串行端口连接网络。我们有连接虚拟设备和真实设备的软件在环仿真,我们有了基于CAN总线的R/C输入,总的来说,我们有很多不同的数据传输方式聚集在一起。
顺便说一下,在这个演讲中,如果你想提问,请大声喊出来
【有人在提问,但听不到具体问的什么,后面Andrew复述了问题】
在我配置的这个特殊设备中,是12.5Mbps。汤姆的问题是,他问IPv4串行链路,串行链路有多快?通过串行网络建立的典型串行链路是12.5Mbps。作为参考,ardupilot用户使用的大多数CAN设备都是1Mbps,这意味着我们实际上可以通过快速串行端口获得的带宽,比我们通过直接CAN端口(bxCAN)获得的带宽高12倍。当然,你可以配置为使用FDCAN的CAN端口,最高可达8Mbps。但串行总线实际上比CAN总线速度更快。我一会要展示的这个设备,它使用12.5Mbps的串行链路,使用点对点协议。
虚拟串行端口基本上允许任何ardupilot串行协议通过IPv4网络传输,所以最常见的用例是,例如,一个虚拟的mavlink TCP或UDP端口,以便您可以连接。比如我这里通过地面站连接了端口,这可能很难看到,我用MAVProxy和这个小无人机建立了两个连接,其中一个通过Herelink,使用91600波特率的Herelink,第二个连接是通过以太网的TCP连接,我有一个以太网连接,连接到serial to ethernet适配器,所以我在飞控中获得了12.5Mbps。
这架无人机的飞控是CubeOrange Plus,CubeOrange Plus没有原生以太网,但是用我这里的小适配器,你可以得到12.5Mbps的IPv4网络,在那些基于H7 MCU的飞控上,像CubeOrange、CubeOrange Plus和许多其他H7飞控上。
过去18个月发生的另一件事是大量用于网络的lua绑定,现在可以编写能够访问本地网络资源的lua脚本了。有了TCP/IP,你就可以和其他lua脚本,和其他组件比如配套计算机,和基于IP的无线电设备,和摄像机进行通信,除此之外你也可以和互联网资源进行通信。所以你可以有一个lua脚本,持续从云端获取数据,lua脚本可以直接运行在飞控上,一个基于STM32的飞控,或一个基于Linux的飞控,当你飞行时它可以访问互联网资源,这可以为你在你的飞控内的操作提供丰富的可能性。
我最近有一个非常有用的案例是和热像仪通信,比如ZT-30,有一个lua脚本,直接通过UDP和热像仪通信,查询热像仪的热数据,然后将其打包成数据包发送到地面站进行地理投影。这是我和某大学一起做的一个火灾观测项目的一部分,还有彼得和米歇尔,他们就在观众席上,它为与基于IP的设备交互提供了巨大的可能性。我认为,在未来几年,我们将看到越来越多的飞机使用IPv4以太网作为车辆内部通信的核心骨干网。
有问题吗?请再说一下。Q:你能引导加载吗?
所以问题是:能通过它引导加载吗?
可以的,实际上,我们确实有一个IPv4引导加载程序
既然我在这里,我就来演示一下
这是一个网页,该网页直接在小型飞控上运行,以及这里的这些小设备,有几个不同的可用设备,这是来自CubePilot的,这是一个非常小的以太网到串行和CAN适配器,我马上就会把它传递给大家;然后这个是BotBlox DroneCAN设备,它有一个小的五端口以太网交换机
这是一个很小的网页,这有一个 Reboot for firmware update,它进入一个基于网络的引导加载程序,这意味着你可以通过以太网更新设备上的固件,您的CAN外设都可以从远程地面站通过以太网更新,这些小设备的固件本身可以通过IPv4网络更新,因为我们在这些设备上有一个基于以太网的引导加载程序。
既然我在这里,不妨展示一下,这是一个用Lua编写的web服务器,如果你愿意,你可以用Lua编写一个完整的web服务器,这是一个非常简单的例子,我知道Tom有一个更复杂的web服务器,里面有很多javascript和漂亮的图片等等,我不太擅长javascript,所以我只做了一个非常基本的web服务器在这些小设备上运行。
而这个网络服务器可以,例如,访问你的日志,所以我在这里访问这个设备上的日志,我可以通过一个IP无线电从地面站下载这些日志,这实际上是通过一个Herelink Air Uint(一个产品的名称),我这里有一个Herelink,我通过我的笔记本电脑连接到Herelink,它将连接到无人机上的Air Uint,Ari Uint有一个以太网连接,连接到无人机上的小以太网交换机,然后连接到CubeOrange Plus飞控。
当我查看这些日志时,通常会使用点对点协议的串行到以太网连接器
以及这些设备中的以太网支持来访问飞行控制器上的日志
事实上,你可以通过这个下载日志,比直接用USB下载要快
从地面站远程获取日志比插入USB电缆获取日志要快得多
实际上您可以获得每秒约900kb的数据
这大约是直接USB连接速度的两倍
好了,我已经提到了网络引导加载程序和web服务器
现在我们已经有了基本的基础
我所期待的是
现在它已经准备好交给那些更好的
web开发人员来创建更好的web界面
我知道Peter 将会谈论一些新的基于 javascript 网络的界面
我希望我们将来能够将其直接放到车辆上
以便能够通过网络服务器
在飞控上直接提供更好的全面监控界面
就像我说的,汤姆已经在他的无人机里开发了一个
这是一些小型的串行转以太网的设备
这些都是基于AP_Periph的设备
AP_Periph 是我们为 ardupilot 设计的外围基础设施
它使我们能够创建GPS、空速传感器、指南针、测距仪
以及您可能需要作为无人机外设的所有其他不同的东西
网络带来的是能够支持以太网和IPv4网络连接的外设
我将分发给大家看一下
Andrew离麦克风太远了,听不清
我刚刚开始分发的这个小设备是CubePilot
一个小型的以太网CubeNode设备
它提供CAN总线,以太网和高速串行
因此你可以把这个小设备插到没有以太网的现有飞控上
然后你就可以在飞控上获得以太网
你也可以通过以太网访问你的CAN总线
我马上就会演示这个
不幸的是,只有一个CubePilot用以传递
屏幕右边的这个是BotBlox DroneNet
它和左侧设备的主要区别在于
它是一个更大的设备,内置了一个五端口的交换器
它是一个相当智能的交换器,真的是一个了不起的设备
我在我这架无人机上用的就是这个BotBlox DroneNet
这个五个端口的交换器意味着你可以把很多设备
很多以太网设备集成到飞行器上,把它们连接到飞控上
你可以连接你的云台,你的IP无线电
以及任何其他基于以太网的设备,都可以一次插进去
并且之后你就可以在lua中访问交换器的监控
继续下一页PPT
接下来这个是最近的更新
这就是基于多播UDP的CAN总线
基于前面的基础,现在我们在ardupilot中有了以太网
那么接下来的重点是,我们需要一套协议来利用以太网
很明显,有现有的协议
比如视频流RTSP,这是现有的IP无线电协议
但我们真正想要的是一套成熟的协议
可以反映传感器、执行器,以及飞行器、潜艇或漫游者的状态
最明显的协议就是DroneCAN
所以这部分内容就是将DroneCAN引入以太网或IPv4网络
这意味着我们得到了DroneCAN协议的全部力量
在车辆的IPv4以太网网络上有数百种不同的消息和控制机制
这意味着,例如,有一个以太网端口的配套计算机
可以看到并控制你车上所有的can设备
因此你可以去监控所有的ESC、伺服器、空速计的can流量
您可以使用它来更新固件
从而基于以太网的设备可以完全参与您的DroneCAN网络
如此这般,DroneCAN协议不再局限于CAN总线
它也适用于您的以太网
那么我来做个演示
我这里有...,这是dronecan_gui_tool上位机
这是dronecan_gui_tool
我之前已经把它和飞控建立了连接
你可以看到那些ESC
我马上就会讲到这些来自VimDrones的神奇的ESC
飞行器上的DroneCAN ESC通过can总线与飞控连接
然后CAN总线被桥接在点对点协议链路上
最大为12.5Mbps的点对点协议链路
该链路连接到以太网交换机
以太网交换机通过笔记本电脑桥接到地面站
通过我们基于Herelink建立的网络链路
此外,实际上我也有一条直接的以太网电缆来演示这一点
所以我实际上有一台假装是配套计算机的设备
所以我有两个连接,两个以太网连接,或者两个网络连接到飞机
所以我现在看到了这些ESC的状态,我看到了这里的流消息
我可以使用上位机去运行电机
现在这里有几个电机在运转
我把编号搞错了
现在是启动电机,由地面站(gui_tool)控制
可以看到所有从ESC到地面站的遥测信息
这些消息是在DroneCAN的Message中通过以太网传下来的
我在这里只是展示了你拥有的各种能力
现在这条数据链路有足够的速度(12.5Mbps)
我甚至不需要启用过滤
整个CAN总线的数据可以很轻松地把通过这条链路
因为我们有12.5Mbps,它很容易地承载整个CAN总线
我可以切换到另一个can总线
我可以连接到另一个,我现在就不麻烦了,非常轻松
我可以看到它们在这里,它在另一个can总线上,并连接到它
这确实为地面站管理CAN设备提供了有趣的可能性
我认为,特别是配套计算机
能够通过以太网访问所有CAN设备将会非常的棒
有什么问题吗
是的 乔治 我可以 我可以重复问题
在这种情况下
将机载的DroneCAN外设通过以太网连接在一起是否是个好方案
或者物理CAN总线仍然是一个更好的方案?
我认为,这些设备,无人机飞行时的控制信号
还是直接通过物理CAN总线连接与传输
我演讲的最后一张幻灯片
我将讨论未来的车辆架构
我怀疑,对于更大的车辆
在大型车辆上迁移到基于以太网的主干是值得的
我将在后面讨论更多
所以George的问题是
是直接使用CAN总线连接外围设备更好?
还是我们应该通过以太网?
在后面的幻灯片中会有更多的内容
您还可以将软件在环仿真与真正的can网络混合使用
如果我在这里启动一个SITL模拟,ardupilot运行你的模拟车辆
例如在Mission Planner中运行模拟
那么它将能够看到真实车辆的escs和gps
因为这些被投射到以太网上的多播UDP网络上
该网络是与居家进行SITL模拟的用户相同的网络
这意味着您可以居家开发can总线设备,并且可以控制这些设备
并且可以通过多播UDP网络进行模拟和物理设备混合仿真
我发现这非常有用
我对一些用户做过的一件事是
当一个远程用户有一个CAN总线设备的问题,我想要调试
我让他们使用我们的支持系统:support.ardupilot.org
把所有的遥测数据发给在澳大利亚的我
稍后我会展示更多关于 supported.ardupilot.org 的内容
遥测数据包括所有通过support.ardupilot.org的CAN总线流量
然后我可以做的是,将从用户输入的链接连接到本地仿真
然后我能够在本地仿真与他们的远程设备交互
这些物理设备在另一个国家,来自世界的另一边
出现在我的本地仿真里
这意味着我可以测试这些物理设备, 例如
如果有一个CANGPS行为不正常
我可以连接这个远程CANGPS或者连接我这里的本地副本
然后我可以编辑代码,重新编译,并重新连接
看看我是否已经解决了问题
就好像我坐在他们旁边,不管他们的物理设备在哪里
这是一项非常强大的技术 可以将物理世界与模拟世界连接起来
这可以通过网络从世界的另一端远程完成
我们有一个叫做DroneCAN Bridge的通用工具
它是pydronecan的一部分
它允许你在不同的传输之间进行n路桥接
因为DroneCAN支持CAN总线
并且它也支持slcan和mavcan以及多播UDP和TCP
你可以把所有这些连接在一起,创造出有趣的网络
我提到了支持系统:support.ardupilot.org
我把这个小窗户挪开
我知道你们很多人都知道ardupilot支持系统
有多少人用过ardupilot.support.org系统?
也许你们中有三分之一的人
你们中有多少人是作为支持工程师,而不是作为用户使用它的?
是的,所以说真的
你们所有人都应该给自己弄一个支持工程师的ID来远程支持别人
如果你还没有用过它
我强烈建议你去support.ardupilot.org看看它是如何工作的
自从上次会议以来
support.ardupilot.org的使用率增加了很多
我查看了系统的日志
我们已经有超过8400个基于这个系统的支持会议
自从我们在上次会议之前不久启动了这个系统后
并且有1.95亿个mavlink数据包通过支持系统
这是相当大的mavlink流量
确实有一些合作伙伴经常使用它来支持他们的用户
但很多其他的ardupilot合作伙伴还没有利用它
如果你不知道它,基本上它是一种方式
当你试图帮助你的一个客户,你可以让他们按下这个按钮
你们可以看到这个按钮在幻灯片的右下角
这是Mission Planner中的Support Proxy按钮
这就把他们的地面站和你这个支持工程师连接起来
你需要一个支持工程师的id,我可以在系统中给你分配一个id
这样就在他们的电脑和支持工程师之间建立了一个安全的连接
然后你可以得到它们所有的参数,所有的遥测数据
你还可以看到它们的can总线
实际上,您可以查看它们的can总线上的参数
并且可以远程调试问题
因此它是一个非常有用的工具来支持你的终端用户
如果你们中有人没有支持ID,请问我
或者在你们的合作伙伴支持频道上问
我们可以为你们的公司创建一组支持工程师ID
在过去的一年里,我们一直在继续研究各种事物
现在我们有了一个新的 HAL
它实际上是几年前我们有过的HAL的复兴
叫做HAL_QURT
所以HAL_QURT
QURT它运行在一个可爱的小的叫做VOXL-2的飞控上
我们找到Eric了吗?是的,Eric在后面
我们从ModalAI请来了Eric
Eric一直在和我们密切合作
与Eric合作非常棒
因为他非常了解QURT和VOXL-2的内部结构
所以这架小型多轴是一个漂亮的基于视觉的开发工具
这是ModalAI技术的试验台
他们有一个可爱的视觉里程计
事实上,他们在ModalAI系统中有两个视觉里程计系统
我们几年前就有了这个QURT
现在我们重新启用了它,它工作得很好
右下角的图片是空中书写的一个例子
我所做的就是让这架小无人机在户外飞行
它完全依靠视觉里程计飞行,它带着相机飞行,在空中书写
绿色的是视觉里程计路径,红色的是GPS显示的
但实际上不确定是GPS更准确还是视觉里程计更准确
但它确实能飞
通过一个小型视觉飞行里程计系统,它可以飞得非常好
这是一个非常紧凑的小板,功能非常强大
所以如果你有一个基于视觉的飞行器和视觉飞行里程计
VOXL-2系统是很值得研究的
有什么问题吗?
好吧。现在来谈谈我目前痴迷的事情
在过去的几个月里,我对这个叫做AM32的东西非常着迷
AM32是一个开源的ESC固件
它已经存在了好几年
但当BLHeli32停止向您提供固件时,它得到了真正的推动
停止向您提供固件
现在很多ESC供应商正在转换到AM32开源固件
它确实是一个很棒的固件
巨大的创造力,特别是 AM32 的首席开发人员 AlkaMotors
在开发这个固件方面做得非常出色
我已经思考了一段时间了
如果Ardupilot社区中有更多的人
可以使用开源ESC固件,那将是非常棒的
这样我们就可以在飞控和ESC之间建立更紧密的关系
并且对我们来说,调试ESC问题更容易了
因为在Ardupilot车辆中遇见ESC问题太常见了
通常很难找出ESC内部出了什么问题
因此,拥有一个开源 ESC,我们可以在其中添加额外的调试信息
可以获得有关ESC中发生的情况的真正详细的内部信息
这是一个巨大的机会
AM32是一个非常灵活的设计
目前,它支持八种不同的微控制器,有STM32、GD32和AT32
此外我一直在做CHV23,它很快就会被合并到AM32主固件中
当然,它支持DShot, BDShot和PWM输入
它支持EDT(扩展DShot遥测),给你反馈RPM,电压和电流
这就是标准的东西,和你用blhelixx得到的东西很相似
和你用BLHeli32得到的东西很相似
但AM32真正令人兴奋的地方在于它是开源的,我们可以扩展它
我们最近做的一件大事
就是在AM32上增加了对DroneCAN的支持
这辆车有四个AM32 DroneCAN ESC
这些ESC是由VimDrones制造的
那么,HuiBean,你想站起来打个招呼吗?
这是来自VimDrones的开发者HuiBean
我和他一直在密切合作,他是另一个AM32开发者
他一直在创建AM32 DroneCAN ESC
我要在房间里传一些,你们可以看看,因为它们真的很了不起
我还要把这个development-ESC传递给大家
下一张幻灯片是它的图片,这是development-ESC
这太棒了。这是一个小型ESC,它有一个内置电机
有一个小型的4000Kv电机,它有CAN总线和调试端口
都在一个小PCB上
所以对于一个软件工程师来说
收到来自VimDrones(HuiBean的团队)的
这个development-ESC真是太棒了
因为这推动了DroneCAN AM32的开发
我要把它们传下去
我还有这些小型ESC
微小的由VimDrones制造的DroneCAN AM32 ESCs
Andrew下去分发电调去了
这两个电调都是国内团队VimDrones做的
它们非常酷,非常漂亮的小型ESC
所以,我们现在在固件中拥有的是
我们在过去的一两个月里才开发出这个固件
但是我们已经有了DroneCAN参数管理
有一个完整的DroneCAN引导加载程序,引导更新固件
我们有ESC遥测
我们已经有四种不同的ESC设计 还有更多的在路上
我一直在被联系
几乎每周都会有一个供应商就创建AM32 ESC联系我
我预计很多供应商将开始制造自己的 ESC
因为您可以根据这个参考设计进行设计
并且可以非常轻松地构建适合您车辆的新型 ESC 设计
这是你们可以看到的一些ESC
左边是VimDrones的development-ESC
右上方的这个,是Sierra的,叫做Sierra脉冲ESC
右下角的这个,看不太清楚
这是TBS(Team Blacksheep)的12S ESC
现在,我只有一张没有DroneCAN支持的照片
但是有一个基于AT-F415微控制器的新版本
我有一个与 DroneCAN 配合使用的测试版本
它是一个 90A 12S ESC,完全支持 DroneCAN
很高兴看到像 Team-Blacksheep
这样享有盛誉的制造商推出更大一点的 ESC
trappy 我相信你就在观众席的某个地方
是的!站起来打个招呼
这是来自Team-Backsheep的trappy
所以和TBS合作非常棒
他们即将推出他们的90A 12S ESC的DroneCAN版本
然后中间的这个微小的微型的,纳米的
就是我正在传递的ESC之一
蒂姆的问题是,没有DroneCAN,遥测技术是否有效?
有效,你在DShot上得到EDT(扩展DShot遥测)遥测
ardupilot支持这一点
和BLHeli_32一样,你得到RPM,电压,电流和温度
所以你只需要DShot(扩展DShot遥测)支持
就可以获得基本的遥测
有了DroneCAN,你可以得到更多的数据
所以我预计,至少对于大型车辆
大多数人会使用基于DroneCAN的ESC
好了,我想谈谈关于DroneCAN AM32 ESs的未来展望
因为拥有开源固件给了我们用这些ESC做更多事情的绝佳机会
我想做的是开始在飞行控制器和ESC之间建立更紧密的关系
你在飞行控制器上有一个lua脚本
它向ESC发送信息,根据你的飞行阶段改变ESC的设置
最明显的例子是你有一个倾斜旋翼
所以飞行器的电机是有垂直的,当你在悬停和向前飞行时
ESC的最佳设置在向前飞行和悬停时是完全不同的
所以如果你有一个长航时无人机
你想要最大限度地利用ESC
我想要能够告诉ESC我现在在向前飞行
更改为此替代参数集,不同的高级设置
关闭互补 PWM,更改制动级别,在飞行时更改 pwm 频率
以获得适合您的特定车辆的最佳设置
我们也可以在悬停时做这个
如果你处于非常安静的状态你不需要非常快速的控制
你可以调整ESC以获得最大的效率
然后在你需要的时候调整到最大的控制
因为它应该能够非常非常快地改变
比如在几毫秒内,在ESC的不同配置之间
现在,这些都是推测性的
我还没有对这种类型的变化做过很多测试
但我认为它开启了一些有趣的可能性
这是我上周刚刚添加的一个新Message,叫做FlexDebug
这不仅适用于AM32 ESC
也适用于任何制造DroneCAN外设的人
这是什么?这是一个新的DroneCAN消息
允许外设将任意的调试或内部数据
从设备发送到飞控并进入lua脚本
在这个特殊的例子中
我在这个飞行器上运行
我让飞行器发送了一个数据结构
里面有很多关于ESC内部发生的事情的详细信息
然后我让它出现在地面站上
我来展示一下这里发生了什么
如果你看这里,这是我的MAVProxy控制台
我要进去看看这个小图表
我现在画的是ESC内部的换相间隔
所以如果我真的启动了一些电机
你会看到它现在实时显示了换相间隔
我需要启动其他的电机,我们应该开始实时遥测了
它的作用是,你可以看到它在这里的数据流
这是FlexDebug消息的一小部分
FlexDebug消息只是一团数据
它以你想要的速率从ESC内部发送原始数据结构
在这种情况下,我发送25Hz,但也可以是200Hz
你正在发送这些原始的调试数据
这些调试数据可以在飞控上运行的lua脚本中使用
lua脚本可以将数据记录到我们的ardupilot板载bin日志中
或者它可以,在这种情况下
我将它作为名称-值流发送到地面站
或者你可以对此做出决定
Message非常简单,这就是这里的Message
这是一个非常简单的Message
我所做的是它有一个消息id,其中有一个保留区域
因此每个供应商可以保留他们自己的调试消息id范围
我期待更多正在开发他们自己的外设的ardupilot供应商
或者正在开发他们自己的专有设备的供应商,专有ESC
我希望像xxxx和xxxx等供应商将添加此消息
以便从他们的设备发送快速内部信息
并能够在ardupilot飞控中进行日志记录
这是试图解决我们在esc和伺服系统中遇到的一个核心问题
我昨天和xxx的人谈过
从他们的伺服器发送这个消息的可能性
从他们的伺服器获得内部调试信息
发送到飞控中进行记录和转储到地面站
我认为这将是一种调试复杂设备的绝妙方法
好了,差不多讲完了
这是最后一张幻灯片,我想谈谈ardupilot未来的架构
在右下角的图片 是从谁那里借来的,因为我不擅长画图等
随着飞机变得越来越大,越来越复杂
它们有越来越多的执行器,越来越多的设备
在过去的几年里,大多数大型车辆的标准都在向CAN总线转移
我认为值得考虑的一件事是,在接下来的几年里
像这样的交通工具是否会开始转向以太网骨干网
使用以太网到CAN适配器
这些小设备,我正在分发的其中一些,比如CubePilot
这个小设备它是以太网到串行适配器
它也是以太网到CAN适配器
这意味着您可以将它们作为车辆的外设从而拥有以太网主干网
然后连接到 CAN 总线外围设备
更好的是,我希望开始看到具有本机以太网支持的外设
我很乐意为AM32 ESC添加本地以太网支持
从而您可以将以太网电缆直接插入ESC
这就提供了一个有趣的机会
我们可以使用以太网链路聚合这样的设备
允许在车辆周围有冗余的以太网总线
如果你丢失了一个总线...
内置在这个BotBlox上的小交换机,以太网交换机DroneNet
是一个非常智能的小交换机
它可以做一些像链路聚合这样的事情
这意味着当你在车辆周围有多路总线时
如果你失去了其中一个以太网总线
它会自动将流量转移到另一个以太网总线上
同时所有的流量仍然可以通过
我认为,在未来几年内
这对于大型车辆来说将是一种绝妙的方式
可以拥有一个真正可靠的高速主干网
该主干网可以通用,适用于其视频设备、IP 无线电
以及所有不同类型的设备、执行器、传感器等
我的演讲到此结束
有问题吗?在我结束演讲并交给下一位演讲者之前
你提到过lua现在可以承载网页吗?
是的,的确,是的
这是否意味着在ardupilot上,我们可以运行自己的GCS?
是的 你可以 确实 是的 我们有所有需要的钩子
所以我今天的演讲确实展示了我们所能做的所有基础设施
但是我们还没有为这些部分开发用户界面层
有些改进了很多
像来自VimDrones的HuiBean确实改进了dronecan_gui_tool
我来展示给你看
在这里,例如,你会注意到这个界面
这个ESC界面,你可能以前没有见过
所有这些遥测信息都直接显示在ESC管理工具中
如果我去看参数,这些是其中一个VimDrone的ESC的参数
这是在飞行器上运行的小型ESC所有的内部调整和控制参数
HuiBean做的其中一件事是
我们可以用STARTUP_TUNE编辑器来编辑STARTUP_TUNE
所以我们需要更多这样的东西来创造更好的界面
我们已经有了基础
我们可以创建lua脚本,可以用javascript创建复杂的网页
我们有服务器端lua支持,在web html中嵌入lua脚本
可以访问车辆上任意的lua操作、参数等。
所以你的网页在你的地面站上运行
并访问所有数以百计的lua功能
现在这些功能在你的飞控中也可用
这为你的飞行器创造真正丰富的受控环境提供了巨大的机会
但我们需要优秀的网络开发人员
他们可以利用这一点开发出漂亮的界面
希望在未来的演讲中,在未来的几年里
我们可以展示这些类型的新界面,新功能
还有问题吗 好的 非常感谢大家。