刘哲轩:构建基于无人机的物联网 | DroneSalon 分享回
无人机过去十年最大的变化在于它具备了联机能力,这让无人机能像智能手机一样,可以连接人、物、网络,并进行信息交换和通信,从而构建出一个以无人机为主的物联网信息世界。
今天钟德夫给大家带来的是刘哲轩在杭州氪空间分享的《构建基于无人机的物联网》演讲主题。他分别从感知层、网络层、平台层和应用层的角度阐释了无人机物联网系统架构。
刘哲轩,本科毕业于美国威斯康星大学麦迪逊校区 CS 专业,硕士毕业于美国佐治亚理工学院机器学习与计算机视觉方向。毕业后,在微软云与企业服务部门担任软件开发工程师。于 2017 年加入奇志科技,负责公司人工智能相关开发。
以下,enjoy:
大家好,今天很荣幸在这里和大家分享一下我对无人机和物联网的一些浅见,以及我们的产品 Mesh 在这之中发挥的作用。
首先我们从物联网说起。物联网是现在非常火热的话题了,一句话概括就是万物相联。可是为什么我们需要它,或者说它们能为我们带来什么呢?现在对于物联网的解读非常多,我始终觉得 Kevin Ashton 在 2009 年的一次评论中的观点非常有启发,这里也借他的话来抛砖引玉一下。
其实 IoT,Internet of Things 这个词就是 Kevin Ashton 在 1999 年的一次演讲中提出的,那时候的目的还是为了将供应链和方兴未艾的互联网结合起来。十年之后,在 2009 年他又一次阐述了自己对于物联网的看法:在那个时候,互联网的基础建设已经非常完善。电脑与电脑的连接,通过路由器,通过各类协议相互连接以及交换由人类及人类社会产生的信息。这张巨大的网络已经铺满了整个世界,中间有数不清的节点,可是却漏掉了一个环节 —— 人。可是人偏偏是不擅长消化这些存在于数字领域的信息的,我们看不懂任何一个字节,更不能以它们为食。物联网的存在就是为了解决这里的矛盾,在把人纳入这个信息网络的同时,尽可能地去解放人的时间和精力,让信息的传递更有效率。IoT 概念里有一句话叫「Anything that can be connected, will be connected.」,其实你和我也在这其中。
比如说,从你起床到出门,闹铃响起后会自动逐步调亮卧室到厕所的灯光,告诉咖啡机算好时间给你倒上咖啡,又或是马云爸爸提到过的智慧城市的概念。
那么怎么做到呢?其实很简单,让机器能理解它所存在的世界,能主动地去收集、分析和输出数据,而不再是被动地依赖人来进行数据的输入和统筹。当越来越多这样的机器,甚至是机器上的一个个部件被连接起来之后,能给我们的工作和生活带来极大的便利、以及效率的提升。
下面我将通过我们公司的产品 Mesh 来将构建物联网的过程展示出来,同时将我们看到的,其中的价值与大家分享。
概括地说,就是我们提纲中提到的:
感知层 - 传感器在此的参与度非常高,解决的问题是【我是谁,我在哪儿?】
网络层 - 我怎么把我知道的、我做了的事情告诉大家
平台层 - 其实是一次分工,不同的物体专注做它们的事情,在平台中处理、交换信息
应用层 - 这样一个体系,在具体的市场和场景中,带来的定制化服务能产生巨大的价值和效应
感知层
首先我们来解剖一下无人机,无人机是什么呢?很简单,就是没有人在上面的飞机嘛,然后由人通过远程遥控技术对它进行操控。其实无人机就是一个空中的机器人,是接入物联网的一环。好,我们从无人机上来看看它是怎么样解决【我是谁?我在哪儿?】这个宇宙级的哲学问题的。
无人机身上有非常多的传感器,比如陀螺仪,加速度计、IMU、磁场感应器、斜度感应器、GPS等等,加上一台照相机,其实就构成了一个非常简化版的我们的头部——它能「看」到、能「感觉」到它周遭的世界,它不一定知道这些东西是什么——这些需要我们人来教授它,但它能感知到这些东西的存在。可以把它想象为一个两三岁的婴儿,它还能保证自己走路是平稳的,是走直线的,但是它还不知道什么东西是有害的,什么东西是有益的。
可是,拥有这些设备的它,采集回来的信息将是非常丰富的 —— 我们能通过相机知道它看到了什么,能通过陀螺仪、加速度计和 IMU 知道它的飞行姿态、特征和路径,能通过斜度计来知道它的飞行高度,能通过 GPS 来知道它的具体定位。而这些信息结合起来,又可以知道它“看”到的东西在什么具体的位置,结合计算机视觉的技术,又能够知道它「看」到的东西是什么。这么一个动态循环的过程,它其实就逐步绘制出了自己所在的世界,也完成了对周遭环境数据的一次采集。
这之中还能涉及到非常多的其他设备,比如红外热像仪,能够得到红外热成像的视频和图像;比如云台,能够增加无人机相机镜头的稳定性、兼容性、旋转角度等等。这些设备都在处理硬件层面的信息交互。一般来说,它们组合在一起形成了一个完整的飞控系统,并由无人机生产方在具体操作系统(如 iOS)上接入它们,提供更便捷的接口给使用者,比如 DJI GO。
还有的无人机厂商,如 DJI 和 Parrot 将这些硬件的接口封装成了 SDK 并开放了出来。事实上,这是一个趋势。我们的 Mesh 产品就有针对这些 SDK 做二次开发。二次开发之后,我们能提供 DJI GO 所有的功能 —— 基本的操控,以及更多定制化的操作和服务。同时,我们也会对这些接口二次封装,让更多的开发者能通过 javascript 来调用底层的接口。
网络层
当我们能够帮助用户和开发者通过无人机采集到这些数据之后,我们要做的就是将信息和数据流向其他端点,比如将无人机的照片从我的手机端流到你的手机端,就是一次图传;比如将你对无人机的操作从你的手机端流向我再流向无人机,就是一次多人基于无人机的协作;比如将多台机子收集到的数据同步到远程的桌面端,再经由云端来进行运算处理、返回结果、生成模型。可以看到,在这个过程中,数据的流动是贯穿全程的关键词,也是我们 Mesh「一切皆流」的意思。
这之中会涉及到许多的通信技术和协议。目前 DJI 它们自己研发出了传输的硬件,保证了从无人机到遥控器之间数据的流通,而我们 Mesh 里除了 http 之外,我们还会使用 udp 来进行图传和多人协作中消息的传递。会用到 WebRTC 的技术来做多节点之间数据的同步。除此之外,还会通过 WiFi/蓝牙等实现极端条件下短距离的数据传输。
这样规模和体量的通信过程中需要克服的难点很多,稳定性、抗毁性、覆盖面积都是需要不断提升的。在 Mesh 里我们会实现基于无人机的自组织网络。所谓自组织网络就是无中心的网络结构。每一台无人机既是主机也是路由,作为主机可以执行面向用户的各项程序和任务,作为路由则又是整个网络信息交换的节点。
平台层
在保证了数据和信息可以在这张网之中畅通流动之后,我们又能做什么呢?按照我们上面提到的物联网的意义的思路,就是去帮助人们去不断地消化这些海量的信息,将人也纳入网络中来,优化人们的体验。说到处理海量信息,首先去想用的就是云计算的平台了。云计算在物联网中也可以被看作一个大的节点,它里面可以有更细化的功能性的分工,但作为一个节点来说它们各有各的任务。
在 Mesh 里,我们提供的云计算平台服务,能够对输入的数据进行处理消化,输出成能够直接或间接提升人们体验的实体,比如二维/三维的建模,比如全景图的生成,比如计算机视觉对物体进行实时识别的模型等等。而且数据的流动并不在这里停止,它输出的信息会在其他节点中转化成反馈,帮助在未来输出更优质、准确的信息。
应用层
说到这里,好像已经说完了,我们展示了 Mesh 是怎样从无人机这一个点,连通更多的设备和服务,组成一张网络的。但其实,我们的愿景远不如此。
上面说到的这些,都是我们定下的一张物联网蓝图,它的节点互相连通,可是并不固步自封地选择在自己的网络中闭合。因为我们意识到,这样一张蓝图,接入到应用层,接入到企业服务中会产生巨大的效应。
可以看到,这样的一张网络是看不到止境的,因为它只止于我们的想象力。同样的,无人机也只是 Mesh 切入物联网的一个点,我们的愿景和物联网的初衷是一致的,就是连通更多的智能设备,在具体的企业化服务中、或者人们的生活场景中,提高信息传递和消化的效率,提供更便捷的服务。
最后,我们可以通过录制视频(https://v.qq.com/x/page/a0508bttnmv.html)观看到完整版的现场分享,可温故,亦可知新。