1、 基于ESP8266物联网处理方案序言:物联网处于爆发十二个月,乐鑫ESP8266WIFI 芯片成为强烈催化剂。成功将前40以上WIFI成本压缩到现在10元左右。内置WIFI前端和高性能32位MCU,基础引爆物联网市场,几乎牵扯到电子行业,全部能够用上,比如WIFI开关 灯具 WIFI定位 电饭锅 电冰箱 洗衣机 厨房电器 空调 空气净化器 等消费类小家电和大家电,全部面临这一场技术革新,和新用户体验!几乎势在必行。比如一台空调,增加了10块钱左右成本,不过却能用任何智能终端比如手机平板 电脑等直接控制。总结:WIFI加入不是锦上添花,而是比较实用功效,将直接决定着你产品档次和销路。几乎决定着
2、您这款产品存亡。现在出WIFI SOC 厂家有5家以上,乐鑫这款ESP8266 将利用本身性能和价格和技术优势引领市场2年左右,所以本厂 SDK APP 和云服务,全部是以 ESP8266 为目标设计。 要云有什么用? 一个服务器(云)能够把设备A数据转发给地球另外一头设备B,为远程数据传输提供通路。不然你只能在家里局域网控制你设备,无法远程控制,安信可是唯一一家无偿 开放云服务器给工厂用户厂家。特征描述以下: 0 全裸数据,无复杂协议,不用跑HTTP协议,很多单片机承受不来! 1 支持UDP 打洞P2P技术 2 支持转发机制 3 支持WIFI设备和设备通讯 4 支持WIFI设备和智能终端通讯
3、 5 对服务器端搭建提供支持 6 服务器一台一般配置可挂 5-10 万设备,每台设备年费用在5分钱成本 7 提供从APP云到ESP8266 SDK 整套技术支持。 8 目标:快速推广 ESP8266 应用范围,和开发进程。 9 物联网APP 和 设备 之间SDK应用,有共性,所以我们提供无偿APP成熟框架 安信可云有两种使用方法: 1 安信可云服务代码运行在安信可无偿给您提供主机上。 2 安信可云服务代码运行在您自己主机上。 云代码给授权工厂无偿使用 安信可云服务器内部机制和使用方法: 一个事实:云服务器内部有10万个设备存在,所以内部设备总不能你想跟谁通讯,就跟谁通讯。安信可云内部,以多个设
4、备为一个家庭,同一家庭组员间能够相互通讯。不过这个家庭组建必需有一个提议者,愿意听从这个提议者命令,就被提议者加入这个家庭组。通常这个组建提议设备为手机,比如手机要控制多个WIFI开关设备,手机必需要让这多个WIFI设备加入到云服务器内部以这个手机为家长一个家庭组中。显然,每个手机上APP第一步必需注册到服务器上建立一个空家庭组账户!这么才有权利组织其它WIFI设备加入这个家庭组。当然,并不是全部手机全部能够无条件随意在服务器上注册,这么服务器会被恶意注册,直至内部资源耗尽,所以手机注册时候,必需同时和一个在云服务器存在设备绑定!然后用这部手机能够陆续把剩下WIFI开关逐一上报道服务器,也就是
5、告诉服务器,这个模块绑定在这个手机组建家庭组内,并受这个手机控制。加入家庭组后,设备权利:能够获取家庭组内家庭组员,并和之通讯,能够自己删除退出这个家庭组。要想用安信可云,必需得根据安信可云协议 去写手机端APP 和模块端SDK ,就SDK端来说,云协议,代码最小占用2K ROM 和 256个字节以下RAM 即可完成。不过即便如此少代码量,对新手来说,也是比较头痛。不过手机APP 上云协议 和 模块上云协议,全部写好了演示程序,而且公开源代码,这么对比协议文档,能够很轻松了解整个工作过程。对于设备端 当然有更简单: 1 对于模块这头,用AT只用调用一个加入云端服务器指令,然后直接远程收发数据。
6、简单吧! 2 若你不想用AT指令去开发,那能够用我们安信可内嵌了AI-CLOUD 8266 SDK 去开发。 对于手机APP端: 我们提基于安信可供安卓和IOS源代码,演示整套通用IOT构架。比如WIFI插座,WIFI灯具,WIFI风扇,WIFI报警器。 最好了解方法是以一个实物来演示: 所以以上全套程序,和框架结构,全部会在一个DEMO 板子上演示。比如在我们50元大测试板上能够演示,和在本周公布25元小测试板。均完成了用单片机控制模块完成上述功效!而且在小黄板,用ESP8266(ESP8266 SDK) 最小系统板也能够完成(整个云平台展示 APP)比如 要设计一套商业化用WIFI插座 或
7、WIFI灯具 一 (产品软件硬件部分): 1 你能够用ESP8266芯片 或模块直接完成整个硬件关键设计(因为ESP8266包含WIFI和32系统SOC)还有足够引脚。(SDK方法) 2 你能够用ESP8266芯片 或模块+外置MCU 实现系统功效。(AT方法) 方法一优势是:让系统成本体积最小,缺点(新手需要一个礼拜到半个月时间去熟悉代码研读) 方法二优势:用户只需要知道几条AT指令即可用外部单片机实现网络通讯!开发速度快。劣势:增加了外置CPU成本 方法二因为采取外置MCU经过串口形式驱动WIFI模块,比如采取STM8S003系列单片机,需要增加1块钱左右成本。不过开发速度 却很快,因为避
8、开了内部程序研读,用户只用在STM8里实现自己关键功效,额外取得了整机可用资源和安全性!值得一提是,很多产品并非新兴事物,这里WIFI功效加入,只是为了产品升级换代,比如说微波炉,或空调行业已经是很成 熟行业,硬件设计部分相当成熟,本身已经带有很成熟软件和硬件部分,所以WIFI加入,只作为一个新增外设出现,而非系统主控CPU,通常新增这一部分和系统主控CPU用串口方法实现。 难点:因为牵扯到网络应用,最好含有 TCP UDP 常规基础知识,可能需要花多个小时去了解下,更关键是能够用现成模块依据教 程手动测试下,做多个小试验,完成数据收发。 二(网络远程数据传输实现) 若没有远程控制和监测,那么
9、产品实用性将很受限,所以完成异地数据传输和交换(也就是所谓云服务)在80%物联网系统中表现,这是难点!以前非物联网行业研发团体,极少接触这些,也没有配置这么专业人员。不过这又是必需若一切从零做起,没有十二个月半载开发周期,和大笔研发投入,不可能会做好产品,安信可很早意识到这点,所以花了比较多人力去投入这方面研发。并开放给用户们。接入云所要协议代码,在AT指令类模块中已经包含,一条指令搞定,在SDK中提供API供调用 三 (终端APP应用设计,包含IOS和安卓) WIFI加入很大程度上用来和操作者进行便捷交互,并经过云服务器把操作数据和设备进行交换。除了功效上实现,美观简练界面能给用户带来比很好
10、感官体验。这需要软硬件结合,并实现部分或简单或复杂通讯协议,往往需要专业开发团体才能完成,这方面投入仅次于云平台开发,安信可也为用户考虑到这些。并无偿开放给大家使用! 所以提议为了你能快速开发,我们设计了DEMO 板能够充足展示安信可给你资源。购置或申请信息 可到安信可官网获取。 另外我们云服务是放出给工厂或其它机关使用,同时我们自己也提供给个人用户部分无偿云服务器,可让用户长久使用,除此之外想补充是:对于中国一家技术力量雄厚,规模比较大机智云,我们软硬件也做出全方面支持。所以我们演示套件,支持安信可云,和机智云!开发步骤: 1 依据自己产品和研发能力选择硬件结构,是用模块 还是芯片,是用SD
11、K开发还是用AT外挂一个MCU开发,利弊已经描述。 2 云平台,您是想选择安信可云平台,还是选择机智云,这在ESP8266 中全部支持。若选安信可开放云平台,你是自己买服务器搭建,还是直接用安信可云服务器。 3 每个用户产品类型不一样,不过我们提供APP为物联网而生,全部有一定通用性,您拿到后只需修改一点就能够用到自己产品中,或委托安信可APP开发团体帮您修改。整个过程最好在DEMO板上玩一遍,即可轻松掌握。 演示平台:ESP8266T3全功效小体积有外置CPU版 演示平台:ESP8266T1多功效版演示品台:ESP8266T4 SDK内核开发版 演示平台:ESP8266T2 内核SDK测试板
12、 以上平台均能够完整演示物联网应用全套设计开发过程,简单修改代码就能够完成整个物联网行业各类应用。开发方法关键分:AT 模式和 SDK 直接开发模式,AT模式需要外置一个CPU ,SDK模式则能够只利用ESP8266 内部CPU完成整个产品设计。所以ESP8266硬件部分代码有两种,用户任选。1 外挂51单片机,驱动ESP8266 AT WIFI模块2 提供基于安信可云 或 机智云ESP8266 SDK相关安信可云协议,因为设计比较符合嵌入式工程师思维习惯,加上具体文档和模拟工具,用户能够在多个小时内了解到安信可云整套代码步骤。了解了代码实现,不过个人去实现估量得花费几天时间去写代码实现,所以
13、我们已经把写好安信可云API函数源代码实现部分全部开源(在ESP8266 SDK 最新版本上实现),而且在AT固件中,也封装好了整个云代码实现,您使用只需要调用一个AT指令,即可自动连接到安信可云平台或机制云上!实际上你无需对ESP8266复杂多种函数和步骤做过多了解,即可用封装好AT指令完成你所需要全部WIFI功效,而且速度不慢,而且很稳定。最关键是开发速度很快!只需要一个WIFI模块外置一个STM8S003系列单片机,就增加1块钱左右成本,即可取得高性能物联网关键板子!个人认为多花这一块钱比较值得,从稳定性和这一块钱带来附加值上全部是不错选择。不过我们测试板上却用是51单片机,因为STC5
14、1单片机下载程序方便,而且编译环境,和大家接触比较多,所以用来做演示和了解代码很有益。下面测试 用100行左右关键代码,RAM占用160个字节,ROM占用2K字节以内,即可实现灯具调光调色,和开关状态,温度信息双向传输。(全球广域网控制)代码在51单片机用标准C实现。测试前提:1 ESP8266T1 测试板(支持安信可全部模块)2 5V电源 和随机赠予USB线3 手机上测试APP软件温馨提醒:安信可最新1.1.10 版本固件才支持网际跨地域控制! 在6月25日才向市场供货此版本模块和开发板。以前WIFI模块能够云升级后使用.板子出厂前 WIFI模块已经是带有最新AT云固件,而且板子上STC单片
15、机也烧写了控制这个AT类型ESP8266 完成数据传输程序。所以无需自己再烧写!而且拨码开关也在正常位置,无需您再去动。你所要做就是连好电源上电即可。出厂时,拨码开关位置和 上电前,(最好用随机赠予5V供电)。1进入设置状态,让设备知道你家上网账户和密码:上电前,按着MCU_P1.3 这个按键不放,直到听到滴一声响,而且蓝色指示灯闪烁一下,方可松手!这个时候系统进入获取你家账户密码状态!就是所谓Smartlink打开串口调试工具 你能够在串口界面看到下面图3东西。图3打开你APP软件,打开你手机WIFI,选中你家路由器。2测试板子获取上网账户和密码图4点击上图smartlinke 进入图5界面
16、输入您PASSWORD:就是上网密码,然后点confirm 等候设备获取到你手机发来上网账户和密码后,三色灯停止闪烁,代表获取成功!图5图6 获取密码后能够得到上图信息模块自动连上安信可服务器。3 既然你要使用手机上APP,那么你手机也得登录服务器,服务器不是想登就登,你得注册个账号和密码对吧?那下一步就是在APP上注册一个账户名和密码。打开手机APP图7刚开始你是没有用户名和密码,那点“注册”按钮!图8随便输入你名字,和设置一个密码,另外手机号和邮箱最好填写真实,因为以后找回密码是需要。为了避免恶意注册,你注册时候必需绑定一个真实设备ID 和设备密码,这里设备ID和设备密码不需要手动填写,只
17、需关键点击扫描,即可自动获取,原理:测试平台取得上网账户和密码后,会连接到当地路由器,也就是说和手机APP处于同一个局域网内了。不过手机APP 根本不知道测试板子上WIFI账户和密码,这个时候你点扫描,手机会从IP地址00扫到255,当模块收到扫描信息后,能够从信息中获取到手机IP和端口,然后模块把自己设备ID和设备密码返回给APP。下一步点注册,手机就会携带一个正当设备ID 和一个设备KEY(密码)向服务器注册了!注册成功后,系统会有提醒注册成功!若此模块被注册过,那么会显示注册失败!图9 扫描成功获取ID和KEY密码后,点注册图10注册成功后,会有用户名和密码被自动统计下来。同时服务器端会
18、记住你信息。点登录 图11刚才设备就会出现在设备列表里了!这个时候你能够点控制 图12在这个界面里,你能够开关测试板子上继电器,也能够经过拖动条控制板上红绿蓝三盏灯亮度!而且从测试板上传来数据也能够显示在APP上比左上角亮度!以上部分源码公开,您能够做简单修改,就能够完成你自己物联网系统!你能够修改51单片机程序,完成硬件实施部分,修改APP完成界面控制部分!再次提醒:测试板在上电前按下P1.3后上电,系统上LED在整个过程会闪烁一次,等候手机经过SMARTLINK 发送上网账号和密码给模块,取得后测试板会停止闪烁!以后每次打开测试板,什么全部不许操作。5秒内即可连上云端,被控制!近期会公布基
19、于STM8控制ESP8266AT测试开发板,用来实现各个行业中需求!而且成本很低。能够在小家电行业中得到广泛应用!压缩包解压后你能够取得上面文件,第一个文件C51配合AT WIFI模块实现把数据经过安信可云进行传输控制,第二个文件 云实现在ESP8266 固件内部实现,51单片机只用调用指令!第三个文件是用电脑模拟实现WIFI设备登录 和数据传输(进过云)全部过程,第四个文件是用电脑模拟实现手机侧登录注册 和控制和数据传输部分(基于安信可云)利用第三个和第四个程序,您能够很具体看到安信可云传输整个过程,帮您了解代码,第五个文件是安信可云协议整个协议部分,第六个文件说明了ESP8266 内置云固
20、件使用方法。第七个文件就是本文档了!其中APP源代码 能够申请后开放给任何人,云服务器 代码为关键部分,需要签署合作协议才能取得(我们组建了足够服务器为您提供无偿服务,通常见户不需要用到云服务器代码),所以云服务器代码现在只提供给工厂生产类型用户。您能够租用阿里服务器,运行安信可云平台代码,从而把自己用户资料掌握在自己手里,而且能够更改代码,实现特殊新功效,工厂用户在阿里组建服务器,登录你自己专属云服务后,输入你用户名,和密码就能够进入管理界面,对你用户和设备进行管理和查看!以后云端完全属于你自己。已经稳定实现设备管理,用户管理。数据正反向控制,用户异常信息管理等必备功效,用户能够放心用来做自
21、己产品,稳定性和安全性全部有保障。 安信可云协议PC端模拟工具使用提议先在真机APP上配合测试板体验后,再用模拟软件了解安信可云通讯协议,学习效果更佳。因为ESP8266API函数或AT固件已经实现了这些,你只需要拿来用就能够。安信可云协议比较简单,为了给大家更直观了解方法,做了PC端模拟软件。用来加紧您了解和开发速度,当然我们做好了ESP8266端API函数和AT固件,直接使用即可,无需了解细节。本工具能够把数据通讯细节展现给大家!分PC模拟手机APP端 和 PC模拟WIFI设备端手机APP和模拟调试工具能够共享你账号和密码,设备端也能够共享你设备ID和KEY !所以您能够在手机上和在电脑端
22、交叉测试,和了解。设备端ID 和鉴权码 你能够用AT+CSYSID 获取后转成10进制方法后填入,然后点连接。手机端模拟器,在图25点登陆后,关键点右上角X,关掉本窗口后,才会弹出控制窗口,您能够试试。图25 手机模拟端图26 设备端模拟软件任何基于安信可云控制模组全部必需包含一个CHIP ID和一个KEY 用来标示设备正当性,这在服务器内部,这是服务器为这个模块提供服务通行证!这个通行证在服务器数据库中有统计。没测试板安信可1.1.10新版模块怎么玩?单独用模块测试云功效:安信可从1.1.10开始支持直接远程控制功效!你只需要三条AT指令就能够开启全球跨网络异地传输,而且能够将你手机强制把这个模块加入“家庭组”,和这个模块能够退出这个远程“家庭组”。下面四条指令输入完,可用手机APP全球控制。让模块加入当地路由器:AT+CWSMARTSTART=1让模块加入云家庭组: AT+LANSTART模块进入云透传模式: AT+CLDSTART模块自己退出家庭组: AT+CLDUNBIND最终一条是退出云端家庭组,谨慎。然后您点手机上APP 开关或进度条,就会远端传输到你模块里,你模块发任何信息,也能够被你手机收到,试试吧!数据就能够在手机和模块间直接数据传输!APP 源码也开放。