下载IDE具体连接如下:IDE安装包
将下载的安装包放在纯英文路径下开始安装,一定要纯因为路径,是因为中文路径会有编译错误。就这块我整理好久。
找到AiThinkerIDE_V1.0安装路径下的Config.exe,右键以管理员身份运行,设置各个路径,并且保存。
打开AiThinkerIDE_V1.0\eclipse下的eclipse.exe开始我们的第一个工程吧!
2.如何编译第一个工程这里以ESP-IDF工程为例,其他的编译了但是没有详细研究。
使用eclipse引入工程File->Import首先打开网址https://www.aliyun.com点击免费注册这里不细说了,注册好后点击登录,登入完成后点击控制台,进入控制台后点击左上角,弹出产品与服务下拉菜单,再点击产品与服务会出来一堆选项,估计我们物联网的使用频率低你就往下拉吧找到物联网平台选择并进入如下图所示:
进入物联网平台后映入眼帘的就是快速连接设备,点击开始体验,它会引导你完成第一台设备的注册,这里产品名称:我填入“学习测试”,设备名称MCUIOT如下图所示:
选择开发包,小白我是Windows,选择Windows,协议MQTT,设备开发包Java比较熟悉(使用前提要配置好JDK)点击下一步,它会生成设备三元组还有个下载的Windows工具包,先点击下载,下载后才能点下一步如图所示:
第四部配置与测试,解压刚才下载的压缩包,找到start.bat运行批处理命令,你会看见一堆数据,前提你要装了JDK和你电脑连接了网络,同时网页中的设备日志也会有一堆数据,这样一个PC程序就成功连接阿里云了如下图所示:
你以为这就完事了,那当然不可能了,点击完成后我们会在设备列表里看见我们刚才建立的设备,首先我们点击产品,找到我们建立的学习测试产品,点击查看,我们会看见一个Topic类列表,我们先给这个成品建立一个自定义Topic,点击定义Topic类权限是发布和订阅Topic类名就叫tongxin,描述里我们备注通信,这样只要我们设备订阅了这个Topic类,我们发什么自己也能收到什么点击确定如下所示:
接下来我们要下载一个软件MQTT.fx,这个软件干嘛用的呢,就是模拟设备连接阿里云,这里有些配置参数我们要知道怎么正确的配置,就这块我研究了很久软件如下图所示:
网页上我们设置好Topic类后点击左侧设备找到自己设备点击查看,在右侧有个DeviceSecret查看,这个就重要了,这个就是你以后设备连接的三元组密钥,所谓的一机一密,具体可以看阿里云的文档,反正你看也行记住这些玩应如下图所示:
有了上面这些参数还不够,你还要下载一个软件进行计算Password生成工具打开sign.html如下图所示:
将刚才阿里云的设备三元组复制到sign.html网页中productKey、deviceName、deviceSecret,clientld中写个设备标识随便什么都行我这里写的liujiaolong,点击Generate生成password,这个密码干嘛用呢?一会后面会用到记好啊如图所示:
打开MQTT.fx软件,点击小齿轮进行配置,首先Profile Name你随便写个名字,Profile Type默认的不用改,下面核心了MQTT的连接配置,Broker Address:这里阿里云有自己的规则,但是现在除了头不一样后面全一样,a1y2SagZQEX.iot-as-mqtt.cn-shanghai.aliyuncs.com,这句话你与我不同的就是三元组中的ProductKey,替换了复制到Broker Address即可,Broker Port:1883,Client ID这里面有点说头,刚才咱们不是在计算Password中随便命名了个clientID吗,这里要用到这个clientID,他的组成是这样的“liujiaolong|securemode=3,signmethod=hmacsha1|”没有双引号啊,接下来点击,User Credentials 配置User Name和Password,Password直接复制我们刚才计算生成的Password,UserName命名规则是:deviceName&ProductKey,这样我得UserName就是:MCUIOT&a1y2SagZQEX,填写完成后点击OK,如下图所示:
配置好参数后点击Connect 右侧小灰圆编程绿色,如果连接错误会返回错误问题,重新查看上述过程,连接成功后我们在网页端也可以看见设备在线,如下图所示:
下面我们进行订阅与推送,找到我们一开始设置好的自定义Topic列表,复制/a1y2SagZQEX/MCUIOT/user/tongxin这句话如下图所示:
因为我们这个Topic支持发布和订阅所以一个地址就行了,打开MQTT.fx完成订阅与发布,如图所示:
首先完成订阅之后我们点击发布hello world我们在订阅处也会收到hello world 因为我们这个Topic即是发布又是订阅如下图所示:
在阿里云中一样可以查到相关信息,点击日志服务-前往查看-上行消息分析,在MessageID中点击蓝色的数字就能看见刚才发送的消息如图所示:
在阿里云中点击设备点击刚才建立的设备找到Topic列表->自定义Topic中找到我们定义的Topic点击发布消息,MQTT.fx也会收到相应消息如图所示:
以上就完成了阿里云的设备注册。
不知道你是不是记得在注册的时候阿里云给了你一个设备模型,里面有Text和开关量,下面我们玩下它,首先在Topic列表中找到物理模型通信Topic,里面有一个设备属性上报,复制这个类如下图所示:
这是一个消息的发布,我们这个模型使用的json方式,语法如下
{“id”:“230788029”,“method”:“thing.event.property.post”,“params”:{“Status”:1,“Data”:“Hello, Liujiaolong!”},“version”:“1.0”}具体的要自己研究了,复制到Publish中推送如图所示:
在阿里云上的设备中设备详情中的运行状态会看见刚才发送的结果如图所示:
以上就完成一件大工程,上面这些废话有助于小白快速调通阿里云与ESP32的通信,下面就开始更核心的内容了。