开发者社区> AIoT科技物语> 正文

谷歌Android things物联网硬件接入阿里云IoT物联网套件实战

简介: 谷歌Android things物联网硬件接入阿里云IoT物联网套件云端实战,DHT12传感器,甲醛传感器,NXP i.MX7D开发板
+关注继续查看

aliyun-iot-androidthings-nxp

谷歌Android things物联网硬件接入阿里云IoT物联网套件云端实战
项目代码 https://github.com/iot-blog/aliyun-iot-android-things-nxp

1.硬件设备

android things开发板 NXP Pico i.MX7D

NXP Pico i.MX7D 完整I/O接口文档

温湿度传感器 DHT12

DHT12支持I2C,淘宝有售

甲醛传感器 ZE08-CH2O

ZE08支持UART,淘宝有售

设备接线
aliyun_iot_androidthings_dht12_ze08

2.阿里云IoT物联网套件

2.1 开通阿里云IoT物联网套件

IoT物联网套件官网地址

2.2 创建高级版产品

产品属性定义

属性名 标识符 数据类型 描述
温度 temperature float DHT12传感器采集
湿度 humidity float DHT12传感器采集
甲醛浓度 ch2o double ZE08传感器采集

iot_product_property

2.3 设备端开发

a) 使用Android Studio创建Android things工程,添加网络权限

<uses-permission android:name="android.permission.INTERNET" />

b) gradle引入eclipse.paho.mqtt

implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.0'

c) DHT12Thermometer通过I2C读取DHT12数据

private void readDataFromI2C() {

        try {

            byte[] data = new byte[5];
            i2cDevice.readRegBuffer(0x00, data, data.length);

            // check data
            if ((data[0] + data[1] + data[2] + data[3]) % 256 != data[4]) {
                humidity = temperature = 0;
                return;
            }
            // humidity data
            humidity = Double.valueOf(String.valueOf(data[0]) + "." + String.valueOf(data[1]));
            Log.d(TAG, "humidity: " + humidity);
            // temperature data
            if (data[3] < 128) {
                temperature = Double.valueOf(String.valueOf(data[2]) + "." + String.valueOf(data[3]));
            } else {
                temperature = Double.valueOf("-" + String.valueOf(data[2]) + "." + String.valueOf(data[3] - 128));
            }

            Log.d(TAG, "temperature: " + temperature);

        } catch (IOException e) {
            Log.e(TAG, "readDataFromI2C error " + e.getMessage(), e);
        }

    }

d) Ze08CH2O通过UART获取ZE08数据

try {
                // data buffer
                byte[] buffer = new byte[9];

                while (uartDevice.read(buffer, buffer.length) > 0) {

                    if (checkSum(buffer)) {
                        ppbCh2o = buffer[4] * 256 + buffer[5];
                        ch2o = ppbCh2o / 66.64 * 0.08;
                    } else {
                        ch2o = ppbCh2o = 0;
                    }
                    Log.d(TAG, "ch2o: " + ch2o);
                }

            } catch (IOException e) {
                Log.e(TAG, "Ze08CH2O read data error " + e.getMessage(), e);
            }

e) 创建阿里云IoT连接,上报数据


/*
payload格式
{
  "id": 123243,
  "params": {
    "temperature": 25.6,
    "humidity": 60.3,
    "ch2o": 0.048
  },
  "method": "thing.event.property.post"
}
*/
MqttMessage message = new MqttMessage(payload.getBytes("utf-8"));
message.setQos(1);

String pubTopic = "/sys/" + productKey + "/" + deviceName + "/thing/event/property/post";

mqttClient.publish(pubTopic, message);

2.4 设备启动后,在阿里云IoT云端控制台查看实时数据

iot_device_status

3. 帮助&反馈

iot_dd

联系我:
wongxming

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云推全新IoT解决方案 可帮消费电子应用开发效率提升70%
低算力也可以富应用,阿里云全新云端一体IoT解决方案助消费电子智能升级!
184 0
阿里云IoT物联网实例视频讲解、场景案例汇总
阿里云IoT物联网实例视频讲解、场景案例汇总
293 0
《阿里云IoT物联网市场暨合作伙伴计划发布》电子版地址
阿里云IoT物联网市场暨合作伙伴计划发布
31 0
《阿里云IoT官方刊物第5期-物联网应用专刊2019年5月刊》电子版地址
阿里云IoT官方刊物第5期-物联网应用专刊2019年5月刊
22 0
阿里云EMAS-专家测试服务iOS和Android上百种机型性能、兼容及UI等测试
阿里云EMAS测试专家有着集团内部多个日活过亿规模APP经验,提供EMAS专家测试,客户只需提交测试需求,从用例设计、脚本录制、海量机型测试、整理测试结果、48小时输出专家测试报告均由阿里云EMAS测试专家一站式服务完成。覆盖功能测试、深度兼容测试、性能测试、UI适配测试以及隐私合规检测等,帮助用户以更低成本获得高质量的全面测试能力,可用于APP正式发版前验收,规避手机APP上线前或发版过程中各类隐患。
176 0
阿里云EMAS专家测试手机APP测试Android和iOS上百款机型
阿里云EMAS专家测试服务覆盖Android和iOS上百种手机型号,日活过亿规模手机APP经验的阿里云EMAS测试专家,48小时输出详细测试报告,包括功能测试、性能测试、UI适配测试以及隐私合规检测等。阿里云百科来详细说下阿里云EMAS专家测试服务说明及价格
248 0
Android 阿里云镜像整理
Android 阿里云镜像整理
1255 0
+关注
AIoT科技物语
阿里云IoT物联网场景实践案例分享 https://www.yuque.com/cloud-dev/aliyun-in-action/zclrsc?#
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Elastic与阿里云合作宣传信息白皮书
立即下载
阿里云&信通院《Serverless数据库技术研究报告》
立即下载
降本增效,阿里云数据治理Workshop上海站
立即下载