前言
PREFACE

从2009年开始,笔者在微软亚洲工程院做上海智慧停车、天津养牛场物联网监控和河北慈济医院远程医疗等物联网项目算起,到如今在物联网行业已经打拼十多个年头了。这些年里无论是智慧水务、智慧消防、农业大棚物联网远程监控、物联网肉鸡养殖监控,还是江河大坝的物联网监控,大大小小经手的物联网项目不计其数,对物联网的感悟也不一而足。如果再往前追溯,谈及对物联网热爱的“根”,那就是2001年便投身于工控行业,从事钢铁厂领域的工业自动化系统研发。从公司研发部,到首钢、济钢、本钢、邯钢和迁钢等工业现场一线,数年之间,来回奔波,深切体会着何谓工业自动化,所以从事物联网行业很多年后,内心其实一直认为物联网只是工业自动化的延伸。

2017年阿里云调整赛道,发力于物联网领域,和无锡市签署了上亿元的飞凤物联网平台(可以说是IoT Studio的前身)合作开发协议。无论是物联网智能设备和云平台的对接,还是最初的平台项目案例的构建,当年都有幸深度参与其中。时任阿里云IoT事业部CTO的丁总就曾这样说过:刘洪峰是最早在物联网领域使用阿里云产品的人,他对于阿里云的感情特别深。有了这种参与物联网大平台开发的经历,加上2018年阿里云对笔者有一个针对物联网的专访,让笔者对物联网有了更深的思考。其实物联网和工业自动化最大的区别就是,前者的量级非常巨大,对成本比较敏感,且没有专业的维护队伍;另外,典型的物联网项目对数据实时分析和深度挖掘也有很高的要求,所以在项目架构设计及实施上,二者也就有了很大的区别。

笔者一直认为未来物联网的发展可能分为两个方向:一是面向具体行业,为客户实现个性化需求的综合型产品将越来越多(工控领域大部分是通用产品,比如PLC、通用组态等)。二是越来越多的厂家将抛弃自己云端数据接入平台的设计,转为采用大公司的物联网基础平台(因为物联网项目连接的智能设备越来越多,一般公司很难有实力维护这么多设备的接入,更难进一步对采集的海量数据进行深度挖掘和分析)。

由此可见,未来的物联网领域分工越来越明确,环节也越来越多,需要多方通力合作,快速开发,才能构建一个真正实用,可落地的物联网项目,所以低代码开发或零代码的开发方式在此种大形势和大环境下应运而生。毕竟物联网系统的整体设计、实施、运维来源于一线项目集成公司(或者行业SaaS公司),如果再像传统工业自动化项目那样开发和实施,将使公司很难在未来市场竞争中存活。

十年磨一剑,笔者在物联网行业从业十多载,再结合已有的二十多年的工业自动化经验,从硬件底层入手,借鉴工业自动化领域成熟的“组态”技术,把以前运行在工控机的组态系统,通过简化和优化,成功实现仅在一个单芯片(MCU)就可以运行的YFIOs数据组态系统。通过搭积木的方式,零代码的代价,快速对接各种传感器,再通过各种上云通信策略,把传感器数据上传到物联网云平台。

阿里云推出的IoT Studio平台,从工业自动化的角度来看,就是一个“云化”的工业组态软件,只是数据来源不是本地各种PLC和智能设备,而是物联网开发平台上的云端设备,运行的载体也不是工控机,而是云端服务器。

IoT Studio平台无论是设备端,还是云端,都支持组态式、低代码开发模式。不仅可以让各种硬件采集网关和终端能快速对接各种行业传感器,还支持低代码二次开发,集成用户可以根据现场需要开发各种业务逻辑。然后与IoT Studio云端组态结合,通过拖拽方式,简单配置就可以快速实现一个比较完整的物联网系统。

本书就是拓展了上述的开发思路,介绍了如何从零开始,借助低代码的技术,从端到云,快速构建物联网项目。

第1章全面介绍了当前物联网设备端的各种低代码开发技术。第2章从历史发展的角度介绍了阿里云物联网平台的由来,以及从Alink协议实现的角度去讲解云端产品物模型的属性、事件和服务,从而更快地让真实的物理设备对接到云端平台上来。第3章讲解阿里云IoT Studio应用开发,在第2章各种智能设备上云的基础之上,通过组态技术,快速构建Web端或移动端的监控画面,从而实现云端一体化的物联网应用。

第4章又回到了硬件层面,从传感器讲起,不仅介绍了通信链路,还详细介绍了各种通信协议,最后又依次介绍了各种智能设备或智能网关。第5章详细地介绍了物联网时代的嵌入式数据组态软件YFIOs,用户可以采用低代码的方式快速开发各种设备驱动和业务逻辑策略,甚至通过零代码的方式,只需要通过简单的配置,就可以下对接各种传感器,上对接各种物联网云平台。

从第6章开始,站在物联网系统的整体角度,讲解如何实现大批量现场物联网设备的远程监管和维护。第7章更是从物联网实际案例出发,详细介绍了如何对接各种行业传感器,然后通过YFIOs和IoT Studio快速构建环境监控项目。

第8章详细讲解了如何实现自动化资产模型开发,非常有深度。

第9章讲解了城市消防监控物联网项目。

在本书的撰写过程中,笔者得到了很多朋友的帮助,在此深表感谢。首先非常感谢公司同事给予的中肯建议,没有你们就不会有这么多丰富而实用的章节;另外还要感谢阿里云IoT Studio团队的祥木和云弈,没有你们的支持,IoT Studio插件的开发就没有这么顺利;感谢合宙公司的董事长秦总,没有您的支持和帮助,就不会对Air系列的通信模组有了很深的理解,更不会这么快完成了Lua低代码开发相关章节的内容。

最后千言万语汇集成一句话,希望所有的付出都是值得的,希望本书能给投身物联网事业的朋友带来助益,真正起到“指南”的作用。

刘洪峰