不懂嵌入式,何谈物联网?
封图 | 付费下载自东方IC
不知这两天,你有没有被这部极具情怀的漫威 11 年第 22 部老英雄集结的《复仇者联盟4:终局之战》刷屏或剧透。
伴随着“I'm Ironman”的话语声,钢铁侠的一个响指,使得灭霸与其大军最终灰飞烟灭,而复仇者领军人物钢铁侠也因此完美地谢幕。英雄落幕虽不问归处,但是其留在我们心中的永远是那个无可比拟的战神。
在此过程中,你是否曾幻想过,在现实世界的某一天,也能拥有如托尼·斯塔克一样的可穿戴式 Mark 50 钢铁侠战衣?其中撇开能源、飞行、防护等系统不谈,就通讯和定位系统而言,既可远端和服务器端的虚拟助手贾维斯连接,将传感器设备捕获的信息传递给贾维斯进行处理、分析后由其回执,也可以在钢铁侠身体参数不正常时进行检测提醒,此外,还能对其他目标物体进行扫描以及定位。
其实,在万物互联时代的今天,可穿戴设备作为构成物联网众多设备中的一种,已经可以通过部分便携的设备实现读取和记录人体参数,并将数据通过物联网卡传输到平台层进行处理,与此同时,也可以采集人体外部的环境温度和空气质量等等。不过,从技术角度上来讲,如何才能更进一步地将未来拉近?作为物联网开发者,如何能实现更好的解决方案?其在上手的路途中,是否又有更快的捷道可走?在此,我们邀请到了两位一线的物联网技术专家,同时也是 Qualcomm IoT 荣誉技术大使——中科创达科技有限公司物联网事业部软件负责人陈丽娜和物联网 BU 软件架构师罗晓巍,请他们为我们分享当前物联网的困局与上手解决方案。
陈丽娜,2012 年硕士毕业于北京邮电大学,随后加入到 Availink,作为高级软件工程师在该公司工作了 4 年多。2016 年,加入 ThunderSoft,负责基于 Qualcomm® APQ8053 和 Qualcomm® APQ8016 的应用及 Mediaware 开发。目前作为物联网部门的软件负责人,带领团队设计并实现了基于 STM32L476 的水情检测系统的窄带物联网采集设备,以及基于 STM32L4R9 的笔记本辅助屏幕的设计实现。
罗晓巍,西电计算机通信毕业,曾经在华为北京、 摩托罗拉北京、索爱北京、法电北京等供职,一直从事通信,手机研发,和云计算等相关行业,目前在中科创达任职软件架构师。
百花齐放的物联网领域,国内的真实现状
提及物联网领域,在过去几年间,我们见证了诸多物联网平台的诞生、终端设备和产品的普及、以及资本和媒体的热烈追捧,不过,在繁华的表面背后,国内物联网的真实现状究竟什么样?
对此,罗晓巍和陈丽娜皆表示,当前国内的物联网产业还在发展的初级阶段。
其中,从全局来看,罗晓巍认为,国内的物联网处于:
起步阶段,碎片化问题不容忽视。物联网本身就是碎片化、多场景的应用,各个细分行业都有自己的物联网规划和发展思路。这可以类似早期互联网一样,百家发展,但各有所长。
基础网络建设阶段,如 NB-IoT 和 Lora 技术。在国内,因为 NB-IoT 有运营商的加持,所以会更有希望成为标准和主流。
物联网云建设阶段。目前阿里、亚马逊、微软、Google 等科技巨头都开始发力该平台的构建,2B 市场前景较为明朗。同时,国内大型企业的需求已经在电网、石油石化、物流行业、传统制造等行业中有所体现。
然而技术发展从初步往成熟过渡的期间,必然需要面临无数的问题和挑战,物联网领域也不例外。陈丽娜表示,当前物联网在发展初期,有很多因素制约了其快速发展,譬如行业间的分割情况明显、资源共享不足、缺乏统筹规划、缺乏核心技术、信息安全方面没有保障、产业链不够完善等等。
不过幸运的是,目前,随着各部门的不懈努力,国内物联网已初步形成了完整的产业体系,具备了一定的技术、产业和应用基础,市场环境与场景化日趋成熟。
新技术对物联网带来的影响
在此趋势之下,随着云计算、人工智能、大数据等技术的崛起与发展,物联网也开始进入加速演变阶段。其中,以云计算为例,从最早的 IaaS 架构演变到 PaaS、SaaS 和当下非常火爆的 Serverless、Devops,云计算的统一管理、虚拟化技术使得整个互联网架构和开发效率得到了极大提升。且从组网、云资源和云安全到管控、数据存储和数据分析、数据展示等方面,云计算也做到相当完美的统一。
罗晓巍解释道,整体来讲,云计算加速了物联网的发展,提供物联网更为便捷和高效的管理、部署和运维模式,并充分发挥数据共享、数据融合的特点,提供更为详尽的物联监控、数据分析和决策实施手段。同时物联网自身的发展也能带动云计算二次革命,使得多云融合、数据融合、数据共享等成为可能。下一代云计算和物联网必定是融合为一个整体,融合设备接入、Web 服务、数据共享和数据治理等维度。通过云平台粘合人与设备,设备与设备的互联。
4G 无法满足物联网的网络需求,5G 是否可以?
除此之外,今年与往年相比,物联网领域或将迎来新的变革,即 5G 的建设与部署正在进行中。
至于为何这么讲?
在此,罗晓巍从技术角度剖析了 4G 在物联网时代存在的诸多缺陷:
容量:4G 网络,一个小区 FDD 最多只支持 1200 个用户,TDD 约 400,同时接入业务只有二三百个。
时延:4G 的时延约 30-50 毫秒,很多情景下太高了。
速率:最高 300M 的传输速率,面对未来的音视频还是不够的。
功耗:5G (4G 的 100 倍或更高)具有低时延(1ms)大连接(支持每平方公里百万连接)的特性。
因此,4G 虽几乎满足了我们对于移动互联网的所有需求,但是在万物互联的场景下,机器类通信、大规模通信、关键性任务的通信对网络的速率、稳定性、时延等提出更高的要求,包括自动驾驶、AR、VR、触觉互联网等新应用对 5G 的需求十分迫切。对此,陈丽娜表示,面向未来,人们对移动互联网大流量应用的需求及万物互联的需求十分巨大,现有 4G 网络性能根本无法满足这些需求。
那么为什么 5G 就可以满足?
对此,罗晓巍表示,首先 5G 新技术的提出就包含了对下一代移动网络的升级和改造,在接入设备数量、接入和传输速率、接入安全性等技术指标大大领先于目前的 3G/4G 移动网络。随着通信技术的发展,电波频率不断升高、波长不断缩短,因此在频率资源有限、不同的无线通信都需要使用频率的窘境之下,5G 带着更强的优势诞生了:
毫米波:波长短,传输距离大幅缩短,覆盖能力大幅减弱。因此同一范围内,5G 需要的基站数量更多。
微基站:基站数量变多,原有的大型基站成本巨大。因此,微基站诞生,优势明显,低功耗微基站使得未来城市中的电线杆、广告牌、路灯等接入设施,都将成为微基站挂靠的地方。
大规模 MIMO 天线技术:意味着一个基站能够同时向更多用户发送和接收信号,从而增加移动网络的容量 22 倍或更多。
波束成型:将信号传送给特定的用户,减少附近其他用户的干扰。在大规模 MIMO 基站上信号处理算法规划出最佳的路径到达用户,通过规划信号传播和抵达时间,波束成型允许多用户和天线在天线阵列上同时交换更多的信息。
D2D 设备到设备:同一基站下的用户,如果互相通信,他们的数据将不会基站转发,而是设备和设备直接互联,既节约了大量的空中资源,又减轻了基站的压力。
相比于上一代 4G 网络,5G 组网便捷,可在工业、生活等领域降低建网成本。同时 5G 速度快、延时低,可为经济效益带来巨大改变。根据 Ericsson 主导的一项研究发现,网速每增加一倍,就能带来 0.3% 的经济增长。
由此,单从物联网领域看,罗晓巍表示,以下的这些 5G 特性可以为更多的物联网应用赋能:
数据速率高达 10Gbps,比 4G 和 4.5G 网络提高 10 至 100 倍;
延迟低至 1 毫秒;
每单位面积 1000x 带宽;
与 4G LTE 相比,5G 每单位面积的联网设备数量高达 100x;
可用性达 99.999%;
覆盖率达 100%;
网络能源消耗减少 90%;
低功耗 IoT 设备电池寿命长达 10 年。
基于此,陈丽娜总结道,5G 的优点就是高速、低延时、广连接。而物联网和上述的云计算一样,都是速率和容量的大户,5G 拥有更高的容量和更快的数据处理速度,那么 5G 标准对于物联网就提供了更充分的支持,必然会催进物联网的发展进程。有利于产业互联全面推进,进一步促进移动互联网和物联网的整合,这样大量的可穿戴设备可以走进人们的日常生活,同时会促进智能家居、车联网领域的发展。
走在风口浪尖的物联网,5G 将为其带来什么?
就细分领域而言,如智能音箱与智能锁为代表的智能家居、自动驾驶的车联网等物联网应用在我们日常生活中均已很常见了。但是对于大多数消费者而言,这些产品仍尚未达到必需品的层面,因此,我们也不禁发问,究竟什么样的产品才能成为物联网的风口?对此,罗晓巍认为,想要让物联网深入生活主要取决于其商业应用场景。以下几个方面会随着 5G 的到来有着很好的发展趋势:
车联网,即车与车、车与 4S 店、车与人、车与停车场的互联和数据共享会带来更多的机会。
远程医疗,目前的移动带宽还是满足不了远程医疗,远程会诊的场景,所以 5G 的提速能够对医疗产业起到极大的推动。包括医疗可穿戴设备的接入和数据共享,对整个产业的推动是巨大的。
智慧城市的发展,大量的数据需要收集和监控和预测,包括城市的人群分布、轨迹预测、交通状况、城市气候等,需要大量的物联终端设备,部署在城市各个角落。5G 的到来提供了网络基础设施,和数据通道对建设智慧城市的发展起到了决定性作用。
相较而言,陈丽娜则更看好智能家居,如智能音响、智能门锁、智能浴霸、智能马桶、智能电视、智能洗衣机等。其表示,如此一来,家里的电器都可以联通,实现远程控制,无论人在哪里,都可以对家中的情况了如指掌。由此,那些曾在科幻片里看到的场景都可以成为现实。普通家庭中的联网终端数量远超我们的想象,可能有几十个之多,具有感知能力的智能家居,给人们的生活提供便捷及安全。随着技术不断的发展完善,以及对于消费者的各种需的不断了解和掌握,智能家居一定会出现品类及数量的爆发式增长。
物联网安全不容忽视
如果说上面是物联网即将或已经迎来的机遇,那么接下来的挑战,我们则需要更加正视。其中,每年随着物联网连接设备的不断增加和海量数据的产出,安全问题成为重中之重。
在这方面,陈丽娜和罗晓巍从软件层面和设备端为我们详解了中科创达的解决方案,其表示,中科创达的安全技术方向,依托高通芯片安全解决方案,提升整个物联网的安全。其中,对设备端和边缘计算节点,中科创达主要采取措施如下:
代码级别的保护,保证设备的中的所有代码在设备出厂、更新和升级过程中可控,不会被篡改。
传输层的加密保证数据不会被劫持和篡改。
口令和敏感数据例如(密钥)等保存一致性、私密性。通过可信硬件设备保证安全性。
通过对固件升级和固件生命周期管理,保证设备安全性。
对云端管理上,罗晓巍表示,:
在云端通过软件或者硬件服务器,存储敏感数据信息。
云端数据进行加密保护,防止敏感信息泄露。
通过云端监控和日志等,对所有操作留痕、保留现场操作日志等。
设备端接入云端的认证识别,和权限开放等操作保证用户合法性和权限可操纵。
物联网的入门,嵌入式才是关键!
事实上,安全仅是物联网当前面临的诸多挑战之一,此外,人才缺失的问题也亟待解决。在本月初,我国人力资源社会保障部、市场监管总局、统计局正式向社会发布了 13 个新职业,其中就包括了物联网工程技术人员、人工智能工程技术人员、大数据工程技术人员等等。
入门物联网,嵌入式是关键但不是唯一
那么对于想要成为物联网工程师,面对碎片化极为严重的物联网,我们首先要掌握哪些方面?且想要从事物联网开发,是否要必须嵌入式知识基础?
对此,陈丽娜解释道,物联网是新一代信息技术的重要组成部分,传统的嵌入式系统与互联网的发展衍生出了物联网,物联网应用开发是典型的嵌入式开发,因此嵌入式是物联网开发的基础。
不过,对于初级入门者,或许会存在一定的误解,其可能认为掌握了嵌入式开发的技术就等于已经懂了物联网,但事实并未如此。
物联网技术不是单独的一个技术,它是多种技术的融合。物联网涉及感知、控制、网络通信、微电子、软件、嵌入式系统、微机电等技术领域,因此物联网涵盖的关键技术也非常多,大致划分为感知关键技术、网络通信关键技术、应用关键技术、共性技术和支撑技术。所以,对于开发者而言,首先要对物联网有整体的认识,围绕着未来的发展方向来找准自己的方向,学习精通其中的一个或几个关键技术,理论和实践项目配合,才能在未来的工作中有好的发展。
物联网的实战技能
当然以上仅是进入物联的第一步,至于如何进阶?在此,罗晓巍以自身从 Linux 开发工程师转变成物联网软件架构师为例,分享了他的多年的成长心得,其表示:
首先要跟上时代的趋势,不能坐以待毙,要主动去发现机会并不断地尝试。同时,对最新的商业模式和新技术保持开放的心态,要学会接纳并分析其是否能成长为新的趋势;
从 Linux 底层驱动开发到上层云计算,Java 应用开发的转换是需要时间和技术积累;
技术栈需要重新建立。思考问题的方式也要随之转变,从面对硬件和机器语言转换为面向客户需求、面向用户体验。这种转变过程从心理上要做准备。
多参加技术交流,保持学习的态度,通过独立实现一个规模比较小的网站系统、小程序等项目开始,发展成为全栈,继而提升为软件架构师。
此外,由于物联网范畴之广,决定了其上手的路途充满荆棘。基于此,罗晓巍从物联网 BU 的软件架构师角度出发,表示需要具备以下实战技能:
深入掌握 2-3 门编程语言,如 Java、C 或 Python;
对操作系统要有深入的了解,包括进程、线程、存储、内存管理、锁机制等知识点;
对 Linux 操作系统需要有深入了解,譬如从 shell 到内核的运行机制等;
有终端设备驱动开发经验和汇编经验;
对软件算法的理解越深越好;
在网络层面,要对 TCP/IP、HTTP 和组网等技术有一定的了解;
数据库 MySQL、NoSQL 等持久化技术;
云计算 IaaS、PAAS、SaaS 和 Devops 技术;
持久热爱互联网技术,并坚信技术的力量。
高效的工具助力进阶
其实结合高效的开发工具,开发者在学习物联网的过程中也可以事半功倍。
对此,罗晓巍分享道,通过使用 Qualcomm IoT 工具、编译器、调试工具、性能测试工具等,方便了开发者对系统运行能够有更深入的了解,并且在以后的设计和编码中能够快速规避问题,解决问题等起到了很大的帮助。同时,陈丽娜也表示,高通开发者工具覆盖了从编码到产品部署的各个阶段,能够极大提升开发者的开发效率,提高产品质量、缩短开发时间。也有利于标准化解决方案的形成,简化繁复的开发流程,节省开发成本,助力产品快速入局市场。不过,陈丽娜在此也提醒诸多的物联网开发者们,具体的工具学习,还是要大家根据实际应用情况来确定,不同阶段选择不同的开发工具,并且要善于多工具的联合使用,提高工作效率。
特别提示:
Qualcomm 荣誉技术大使所发表的内容及观点均属原作者个人意见,并不必然代表 Qualcomm 或其分支机构的立场。这些内容仅供信息参考,并非获得 Qualcomm 或其他任何一方的认可或代表其观点。
System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!\n");
cout << "点个在看吧!" << endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"