物联网将物理世界的万物接入网络并通过整合各类服务实现智能化,“物”(Things)作为整个网络中的基础节点和商业触手,既是环境信息的采集者,也是智能服务的提供者和承载者。因此,我们首先需要对物联网中的“物”能做什么,能提供什么样的服务进行描述,这就需要开发者从产品层面进行功能建模,定义物的“属性”(Property)、“服务”(Service)和“事件”(Event)。通过功能建模将各类设备统一抽象为云端的资源,并对外暴露相应的接口,以满足不同场景下不同系统的调用和快速集成。
| 属性Property | 一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持get和set,应用系统可发起对属性的读取和设置请求。 |
|---|---|
| 服务Service | 设备可被外部调用的能力或方法,包含输入参数和输出参数,相比于下发指令设置属性值,服务可通过一条指令实现更复杂的业务逻辑,如执行某项特定的任务; |
| 事件Event | 设备运行时的事件,相比于属性状态,事件一般而言包含设备需要被外部感知和处理的通知信息,可包含多个输出参数,如某项任务完成的信息或者设备发生故障/告警时的温度等,事件可以被订阅和推送。 |
表:描述设备模型的属性、服务和事件
物模型是对设备是什么,能做什么的描述,包括设备身份标识、连接状态、描述信息,以及设备的属性、服务、事件,后三者构成了设备的功能定义。一站式开发平台通过定义一种物的描述语言来描述物模型,称之为 TSL(即 Thing Specification Language)。
物模型包括属性、服务和事件,构成了平台中设备的功能:
一站式开发平台中已经按照不同的领域和行业分类,定义了标准品类的物模型,创建产品时系统已根据您选择的“所属分类”自动创建了该产品的标准功能,您可以直接使用并开始设备的固件开发工作,也可以根据实际需要添加自定义的功能。功能定义完成后,平台将自动生成 JSON 格式的 TSL,您可以结合Alink 协议组装上报设备的数据。
产品指的是具有相同功能或特征的一类设备的集合,产品下的设备将自动继承其所属产品的名称、型号、功能(属性、服务、事件)等信息。您可以将开发好的产品发布并上架到 IoT 云市场,平台上的其他开发者可以直接购买一款产品下的若干设备,并集成到项目中进行设备管理,通过商业化的产业链协作,大大提升开发效率。
产品功能定义:
目前一站式开发平台支持创建的产品分类如下表
| 智能城市 | 公共服务 | 路灯照明 |
|---|---|---|
| 车辆定位卡 | ||
| 能源管理 | 电表 | |
| 水表 | ||
| 环境感知 | 空调 | |
| 环境监测设备 | ||
| 活动监测设备 | ||
| 大气监测设备 | ||
| 消防安全 | 安防监控网关 | |
| 烟雾探测器 | ||
| 声光报警设备 | ||
| 井盖设备 | ||
| 激光探测仪 | ||
| 种植养殖 | 喷灌智能终端 | |
| 农业监控设备 | ||
| 智能楼宇 | 蓝牙秤 | |
| 灯光设备 | ||
| 饮水机 | ||
| 智能生活 | 家居安防 | 燃气报警器 |
| 水浸报警器 | ||
| 红外探测器 | ||
| 门磁传感器 | ||
| 烟雾报警器 | ||
| 环境电器 | 风扇 | |
| 加湿器 | ||
| 取暖器 | ||
| 空气盒子 | ||
| 除湿器 | ||
| 新风机 | ||
| 地暖 | ||
| 电工照明 | 灯 | |
| 插座 | ||
| 窗帘 | ||
| 推窗器 | ||
| 入墙开关 | ||
| 大家电 | 冰箱 | |
| 电热水器 | ||
| 厨房电器 | 油烟机 | |
| 个护健康 | 足浴盆 | |
| 电热毯 | ||
| 边缘计算 | 边缘网关 | |
| 其它类型 | 需开发者定义 |
除了使用官方定义好的产品标准外,开发者还可以提交新品类的合作申请,开发者可以定义的产品覆盖领域包括有智能家居、智能制造、智能城市、智能农业、智能楼宇、智能社区、智慧能源这些领域,并有机会成为这些领域产品标准的制定者,并在一站式开发平台上快速实现商业化。
确定设备的产品标准后,开发者还需要选择设备类型(节点设备还是网关设备),设备的通讯方式(WiFi、蜂窝网络、LoRa、蓝牙BLE、ZigBee、以太网、其它),数据格式(透传自定义格式、Alink)。
提交产品基本信息,系统自动生成当前产品的唯一标识ProductKey和ProductSecret,开发者可以选择进入产品详情页面开始产品开发,也可直接进入开发者中心查看相应的开发资源,或直接开始添加测试设备进行联调。若开发者选择平台定义好的产品标准进行开发,平台会自动定义好常用的标准功能,包括设备的属性、事件及服务,开发者可以在此基础上进行添加。
图:创建单一设备与创建网关+子设备流程图示
若开发者需要创建包含网关的物联网应用,则需要先后创建子设备的产品类型,网关设备的产品类型,子设备连接网关后通过网关上传数据,网关则进行网络拓扑控制上报、子设备注册、自身数据与子设备数据上报、消息转发、网关OTA以及子设备OTA等功能,而属于子设备以及网关型设备的数据分别在两种产品下查看。
