物联网将物理世界的万物接入网络并通过整合各类服务实现智能化,“物”(Things)作为整个网络中的基础节点和商业触手,既是环境信息的采集者,也是智能服务的提供者和承载者。因此,我们首先需要对物联网中的“物”能做什么,能提供什么样的服务进行描述,这就需要开发者从产品层面进行功能建模,定义物的“属性”(Property)、“服务”(Service)和“事件”(Event)。通过功能建模将各类设备统一抽象为云端的资源,并对外暴露相应的接口,以满足不同场景下不同系统的调用和快速集成。

    属性Property 一般用于描述设备运行时的状态,如环境监测设备所读取的当前环境温度等。属性支持get和set,应用系统可发起对属性的读取和设置请求。
    服务Service 设备可被外部调用的能力或方法,包含输入参数和输出参数,相比于下发指令设置属性值,服务可通过一条指令实现更复杂的业务逻辑,如执行某项特定的任务;
    事件Event 设备运行时的事件,相比于属性状态,事件一般而言包含设备需要被外部感知和处理的通知信息,可包含多个输出参数,如某项任务完成的信息或者设备发生故障/告警时的温度等,事件可以被订阅和推送。

    表:描述设备模型的属性、服务和事件

    物模型是对设备是什么,能做什么的描述,包括设备身份标识、连接状态、描述信息,以及设备的属性、服务、事件,后三者构成了设备的功能定义。一站式开发平台通过定义一种物的描述语言来描述物模型,称之为 TSL(即 Thing Specification Language)。
    物模型包括属性、服务和事件,构成了平台中设备的功能:
    设备模型 - 图1
    一站式开发平台中已经按照不同的领域和行业分类,定义了标准品类的物模型,创建产品时系统已根据您选择的“所属分类”自动创建了该产品的标准功能,您可以直接使用并开始设备的固件开发工作,也可以根据实际需要添加自定义的功能。功能定义完成后,平台将自动生成 JSON 格式的 TSL,您可以结合Alink 协议组装上报设备的数据。

    产品指的是具有相同功能或特征的一类设备的集合,产品下的设备将自动继承其所属产品的名称、型号、功能(属性、服务、事件)等信息。您可以将开发好的产品发布并上架到 IoT 云市场,平台上的其他开发者可以直接购买一款产品下的若干设备,并集成到项目中进行设备管理,通过商业化的产业链协作,大大提升开发效率。
    产品功能定义:
    目前一站式开发平台支持创建的产品分类如下表

    智能城市 公共服务 路灯照明
    车辆定位卡
    能源管理 电表
    水表
    环境感知 空调
    环境监测设备
    活动监测设备
    大气监测设备
    消防安全 安防监控网关
    烟雾探测器
    声光报警设备
    井盖设备
    激光探测仪
    种植养殖 喷灌智能终端
    农业监控设备
    智能楼宇 蓝牙秤
    灯光设备
    饮水机
    智能生活 家居安防 燃气报警器
    水浸报警器
    红外探测器
    门磁传感器
    烟雾报警器
    环境电器 风扇
    加湿器
    取暖器
    空气盒子
    除湿器
    新风机
    地暖
    电工照明
    插座
    窗帘
    推窗器
    入墙开关
    大家电 冰箱
    电热水器
    厨房电器 油烟机
    个护健康 足浴盆
    电热毯
    边缘计算 边缘网关
    其它类型 需开发者定义


    除了使用官方定义好的产品标准外,开发者还可以提交新品类的合作申请,开发者可以定义的产品覆盖领域包括有智能家居、智能制造、智能城市、智能农业、智能楼宇、智能社区、智慧能源这些领域,并有机会成为这些领域产品标准的制定者,并在一站式开发平台上快速实现商业化。
    确定设备的产品标准后,开发者还需要选择设备类型(节点设备还是网关设备),设备的通讯方式(WiFi、蜂窝网络、LoRa、蓝牙BLE、ZigBee、以太网、其它),数据格式(透传自定义格式、Alink)。
    提交产品基本信息,系统自动生成当前产品的唯一标识ProductKey和ProductSecret,开发者可以选择进入产品详情页面开始产品开发,也可直接进入开发者中心查看相应的开发资源,或直接开始添加测试设备进行联调。若开发者选择平台定义好的产品标准进行开发,平台会自动定义好常用的标准功能,包括设备的属性、事件及服务,开发者可以在此基础上进行添加。
    设备模型 - 图2
    图:创建单一设备与创建网关+子设备流程图示

    若开发者需要创建包含网关的物联网应用,则需要先后创建子设备的产品类型,网关设备的产品类型,子设备连接网关后通过网关上传数据,网关则进行网络拓扑控制上报、子设备注册、自身数据与子设备数据上报、消息转发、网关OTA以及子设备OTA等功能,而属于子设备以及网关型设备的数据分别在两种产品下查看。