知识锦囊

为什么需要物联网操作系统?

随着通讯芯片成本的降低、NB-IoT和4G甚至5G无线通讯网络技术的发展,物联网已经解决了设备连接互
联网的问题。而随着ARM32位MCU的普及,前端设备的计算能力有了很大提升,具备了运行更复杂应用
的能力。
旧的问题解决了,新的问题也相继出现。
网络数据量激增,网络响应延迟,难以与迭代快、协议复杂的互联网服务打通 ··· 于是边缘计算越发重要,
将计算分布到前端的网关和数据采集终端,和互联网服务结合,是物联网当前发展阶段的大势所趋。
边缘计算使得物联网终端软件复杂度大幅提升,而这个需求在几年前还都是不存在的。过去物联网产品的
软件功能在出厂时就基本固定了,上层软件应用开发和底层硬件紧密耦合,很难由第三方开发者为硬件开
发应用,这导致物联网软件应用迭代慢、成本高,生态闭塞。
参考PC、互联网以及移动互联网的技术发展历程,软件行业的爆发需要相对较为标准化的底层运行环境作
为支撑。于PC就是Windows、Linux、macOS,于互联网就是浏览器,于移动互联网就是iOS和Android。
所以,物联网也需要具备一套对软件开发者更友好的、相对统一的操作系统,使软件开发过程从硬件开发
中脱离出来,只需要基于操作系统,即可快速开发上层应用。
image.png

中国移动物联网操作系统——OneOS

OneOS 是中国移动针对物联网领域推出的轻量级操作系统,具有可裁剪、跨平台、低功耗、高安全等特点,支持ARM Cortex-M、MIPS、RISC-V等主流芯片架构,兼容POSIX、CMSIS等标准接口,支持MicroPython语言开发,提供图形化开发工具,能够有效提升开发效率并降低开发成本,帮助用户开发稳定可靠、安全易用的物联网应用。OneOS还遵循Apache2.0,支持中移OneNET、OneLink以及阿里云等三方平台,可应用于智能穿戴、智能门锁、智慧充电、环境监测等智慧系统领域。
image.png

实践操作

目前,OneOS 开发环境主要有两种,分别是:

  • 基于命令行的OneOS-Cube开发环境;
  • MDK开发环境。

这两种开发环境都支持在WINDOWS(WIN7 或 WIN10)操作系统下运行,OneOS-Cube支持LINUX操作系统。

任务一:安装OneOS-Cube开发环境

OneOS-Cube概述

OneOS-Cube是OneOS操作系统基于命令行的开发工具,提供系统配置、项目编译构造、包贡献下载等功能。详细介绍请参考工具简介

OneOS-Cube目前支持的主要功能如下:

  • 系统配置;
  • 项目编译构造;
  • 包贡献和下载;
  • 生成MDK(KEIL)工程。

在使用MDK开发环境时,由于OneOS配置项繁多,很难正确手动在MDK工程添加完整的待编译文件,因此建议使用OneOS-Cube工具根据Menuconfig生成的配置文件和Scons编译脚本生成正确的MDK工程,之后再使用MDK进行编译、烧录以及调试。


OneOS-Cube工具获取

下载工具请点击OneOS-Cube下载


OneOS-Cube工具安装

把下载的OneOS-Cube工具用WinRAR解压到一个不存在任可中文字符的任意目录中。说明:OneOS-Cube工具不支持含有中文字符的路径。

添加右键打开功能

当我们双击”OneOS-Cube.exe”打开工具时,命令行工具的工作目录为当前”OneOS-Cube.exe”目录,为了配置和编译实际项目工程,需要切换到工程目录下。为了简化操作,我们可以把OneOS-Cube工具界面的操作加到右键功能中,这样可以在项目工程中直接打开OneOS-Cube工具。
添加右键功能的步骤如下:

  1. 以管理员身份运行”cmd.exe”:第11课 物联网操作系统 - 图3
  2. 将OneOS-Cube添加到右键菜单中:第11课 物联网操作系统 - 图4

OneOS-Cube工具使用方法

进入到代码工程目录(顶层Kconfig文件和SConstruct文件所在目录),任意空白处点击右键,再找到“OneOS-Cube Here”执行,即可打开OneOS-Cube的命令行操作界面。
第11课 物联网操作系统 - 图5
这样OneOS-Cube成功启动了,
第11课 物联网操作系统 - 图6

任务二:安装MDK开发环境

MDK开发环境简介

MDK-ARM(MDK-ARM Microcontroller Development Kit)软件是一套完整的集成开发环境(IDE),它出自 ARM 公司,包括了针对 ARM 芯片(ARM7、ARM9、Cortex-M 系列、Cortex-R 系列等)的高效 C/C++ 编译器;针对各类 ARM 设备、评估板的工程向导,工程管理;用于软件模拟运行硬件平台的模拟器;以及与市面上常见的如 ST-Link,JLink 等在线仿真器相连接以配合调试目标板的调试器。
OneOS支持的MDK开发工具版本为5.14以上的版本。
下面操作指导中所使用的版本为MDK-ARM 5.25。它能够提供相对比较完善的调试功能。这里采用了 16K 编译代码限制的评估版 5.25 版本,如果要解除 16K 编译代码限制,请购买 MDK-ARM 正式版。


MDK开发工具安装

在安装前,先从 www.keil.com 官方网站下载 MDK-ARM 评估版:http://www.keil.com/download/
在下载时,需要填一些个人基本信息,请填写相应的完整信息,然后开始下载。下载完成后,鼠标双击运行,会出现如图所示的软件安装画面:
第11课 物联网操作系统 - 图7
这是 MDK-ARM 的安装说明,点击 “Next>>” 进入下一画面,如图所示:
第11课 物联网操作系统 - 图8
在 “I agree to all the terms of the preceding License Agreement” 前的选择框中点击选择 “√”,并点击 “Next >>” 进入下一步安装,如图所示:
第11课 物联网操作系统 - 图9
点击Core和Pack后面的“Browse…”,可以自定义定装路径,也可以在对应的文本框内输入安装路径,这里我们使用默认路径即可,然后点击 “Next>>”进入下一步安装,如图所示:
第11课 物联网操作系统 - 图10
在 “First Name” 后输入您的名字,“Last Name”后输入您的姓,“Company Name”后输入您的公司名称,“E-mail”后输入您的邮箱地址,然后点击 “Next>>” 进行安装,出现如图所示画面:
第11课 物联网操作系统 - 图11
在安装过程中,可能会多次弹出类似如下图所示的“Windows安全”提示框:
第11课 物联网操作系统 - 图12
选择“始终信任”并点击“安装”即可。
最后,会弹出“Keil MDK-ARM Setup completed”提示框,如下图所示:
第11课 物联网操作系统 - 图13
点击“Finish”按钮完成安装过程。