首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

嵌入式操作系统与物联网演进之路(二)

嵌入式操作系统与物联网演进之路(二)

CSDN:您认为物联网的发展经历了哪几个阶段?

  何小庆:我对于物联网发展阶段的理解,非常赞同英国格拉斯格大学 Duncan 博士看法,他把物联网比喻成是一棵树,认为物联网发展可以分为三个阶段:第一个阶段是个打基础的阶段;第二个阶段是培养的阶段;第三个阶段是收获的阶段。各个国家物联网发展的进程肯定会不大一样,我认为中国目前是在培养的阶段,但是距离我们可以有收获的阶段也应该很快了,现在树上可能已经结了一些果子了。

  CSDN:ARM、谷歌、微软、华为、阿里、庆科等国内外公司纷纷推出物联网操作系统,在这个诸侯争霸时代也暗示最终只有少数会成为主流,您认为一个好的物联网系统应该具备哪些特性?

  何小庆:最后能剩下的操作系统也就只有少数的几个,因为不需要那么多,如手机和 PC 系统一样。那么关于一个物联网操作系统需要具备以下技术特征:


管理物的能力:从嵌入式系统视角看,“物”是网络上发送和接受信息的一个个嵌入式计算小设备(或称为深嵌入式系统),比如家庭或者工业现场的智能传感器。现在嵌入式系统设计的一个共识就是降低功耗,常见的方法是系统尽可能快地执行,然后立即进入睡眠模式。现在的处理器核心架构,在低性能状态下,可以做到基本上不消耗任何电力。


可伸缩和扩展性的架构:随着 32 位 MCU 的价格下降,Linux 又无法支持没有 MMU 的 MCU,RTOS 理所当然地成为运行在 MCU 的物联网 OS 的首选,原因是基于 RTOS 的设计运行更灵活和可扩展的软件运行在这些系统中。


泛在互联网功能:支持物联网常用的无线和有线通信功能,比如支持GPRS/3G/HSPA/4G 等公共网络的无线通信功能,同时要支持 ZigBee/NFC/RFID/WiFi/Bluetooth 等近场通信功能,还要支持 Ethernet/CAN/USB 有线网络功能,以及广受关注的窄带通信技术NB-IoT 和LoRa。在这些不同的物理和链路层接口之上的协议之间要能够相互转换,能够把从一种协议获取到的数据报文,转换成为另外一种协议的报文发送出去,最后要能够迁移到互联网协议。


系统的安全性:物联网设备中很大一部分是使用 MCU 和资源有限的微处理器,与大型设备相比,这些小型设备更容易保护,不易受同类型威胁的攻击,更安全。


云计算后台:物联网设备区别于传统的设备的标志就是这些设备将产生海量的数据,如何管理和处理这些数据是摆在物联网企业面前的一个难题,云计算无疑是解决这个难题的最有效的技术手段。选择支持物联网系统的云计算平台需要考虑一下的技术因素:

  1)支持云计算和物联网协议(Websocket、RESTful、MQTT 和 CoAP 等)。

  2)灵活的标准和设备管理方式。

  3)支持安全的远程固件升级。

  4)Web/移动应用开发的能力。

  5)高效和可靠数据存储能力。


先进的编程语言:用于传统的嵌入式系统的编程语言多数是 C 和 C++。因为物联网设备的特点,互联网编程技术将进入物联网设备,优化后的互联网编程语言可以低功耗的 MCU 上运行,比如 Java、Java 和 Python。需要注意的是, Java 总是运行在操作系统之上,所以你的选择不是 C/C++ 或 Java 两者之一,而是 C/C++ 和 Java 都会使用。

  但是物联网操作系统就是具备了以上的六个特征,也未必会有人用,所以怎么能做得好?我认为做好一个物联网操作系统,生态环境建设的要放在一个重要的位置上,一定要让人能够去愿意去用它。另外现在的物联网操作系统中有一个很大的问题是,搭建的生态的环境还不够丰富,大家还没有意识到或有迫切性认为,现在要开发一个物联网的项目,就一定要需要用一个物联网的操作系统,需求不太强烈。因此一个好的物联网操作系统一定要去打造生态环境,让更多的人了解继而使用。

  CSDN:随着设备在医疗、航空、交通等重要领域的应用,安全、隐私和可靠性成为嵌入式系统最重要的问题,对从业者来说,在这些领域,有哪些特殊的规则和标准需要遵循?

  何小庆:安全现在非常的重要,也受到更多人的关注。物联网前段时间也发生由于黑客操纵木马机制,导致物联网的设备域名无法解析。“安全”这次词英文有两种:security 和 safety,security 更多的是指信息安全,比如说物联网安全,safety 是与安全和可靠性相关。以上这两种安全对于我们目前这个领域的从业人员都要关心。现在在一些重要的行业中已经有相关的功能标准,那么从业人员可以去学习和遵循。如在轨道交通上用的比较多的 IEC 61508;在汽车工业上用的比较多的为 ISO 26262,这些标准都定义了你所开发的软件,包括整个系统、功能模块,应该遵循的规范。作为开发工程师,想要把控好安全的问题,可以从编程开始。嵌入式一般是用 C/C++ 语言来编程,那可以先去学习 MISRAC,学会如何书写的更安全可靠 C 语言代码。

  CSDN:作为开发者,想要物联网开发,首先要学嵌入式吗?对于入门级开发者,常见的误区有哪些?

  何小庆:“想要物联网开发,首先要学习嵌入式”这个观点是正确的,嵌入式是物联网开发的基础,现在各大高校的自动化、计算机、电子信息等这些专业中,都有嵌入式的课程。也有不少学校开设了物联网专业,其中也有大量的嵌入式的课程。但是并不是所有的从事物联网系统开发应用的人都要懂嵌入式,因为物联网是一个系统,它有传感器、网关,即为就是我们计算的部分,它后面有手机 App、服务器,假如你正好是只是从事手机 App 开发的,或者服务器端开发的,那就不需要深入了解嵌入式系统的知识,你只要知道嵌入式的设备是如何跟你的手机和服务器进行通讯的,比如蓝牙通讯协议,你只要知道这些通讯协议基本原理就可以。

  CSDN:如果传统的嵌入式工程师想要拓展转型物联网方向,需要掌握哪些技能?

  何小庆:从自身这些年从事一些物联网的项目和教学的经验总结起来,我认为想要转型至少应该具备以下三个方面的技能:

  1. 无线通讯。因为原来的嵌入式系统是个单品,通讯可能就是个串口,这个是有线的。而现在物联网多数都是无线的,所以开发者必须要掌握一种无线通讯的技术,比如蓝牙、WiFi 等,在嵌入式系统编程学会如何能够通过这种无线通讯协议把你的数据给送出去。

  2. 手机编程技术。以前的嵌入式系统的开发者只关心在设备端编程,比如 MCU 的编程,现在嵌入式系统一定要会一种手机的编程技术,比如 Android 编程。你不一定是个 Java 的编程专家,但是你应该能够看懂手机端编程的代码,对它可以进行一些小的修改。因为现在很多物联网的设备,它是与手机进行通讯的,比如智能家居的一些产品。

  3. 传感器的接口驱动和算法。传统的嵌入式系统工程师不太涉及到这个领域,现在每个物联网的设备几乎都带着传感器,那么这种传感器的使用、驱动程序以及一些简单的算法该怎么编写。这些嵌入式的工程师应该要掌握这一点。

  CSDN:关于嵌入式物联网行业的未来发展,您什么期待?

  何小庆:回到物联网的打基础、培养、收获的三个阶段来讲,中国目前是在一个培养阶段,培养阶段最大的好处就是百花齐放,百家争鸣,机会很多。对于这些从事于这个领域的工程技术人员,无论是创客还是传统行业,都有机会,所以我是希望年轻的工程技术人员可以结合自己的现在所学、所用、所做,同时借助于物联网这个参天大树,找寻发展机会和发展空间。
上海.羿歌,主要立足于物联网之感知层的解决方案和组件设计制造。  18918134319
返回列表