1. 设备接入平台前的物模型设计与属性定义
任务说明
本案例完成设备接入云平台前的准备工作:在IoT云平台上创建项目与产品,获取设备接入所需的鉴权信息(ProductKey、ProductSecret、DeviceName、DeviceSecret),为后续设备联网通信建立基础。以阿里云物联网平台为例进行操作。
操作步骤
1. 创建项目:登录阿里云物联网平台控制台,在“公共实例”或“企业版实例”中,点击“项目管理”→“创建项目”,输入项目名称(如“智能家居”),选择地域后完成创建。项目用于隔离不同业务场景的资源。
2. 创建产品:进入刚创建的项目,点击“产品”→“创建产品”,填写产品名称(如“温湿度传感器”),选择节点类型为“设备”,联网方式为“WiFi”,数据格式选择“ICA标准数据格式”(Alink JSON),认证方式选择“设备密钥”。创建完成后,系统自动生成ProductKey(产品唯一标识)和ProductSecret(产品密钥)。
3. 添加设备:在产品详情页点击“设备”→“添加设备”,输入DeviceName(如“device_001”),点击确认。系统生成该设备唯一的DeviceSecret(设备密钥)。设备三元组(ProductKey、DeviceName、DeviceSecret)是设备接入时的身份凭证。
关键参数说明
| 参数 | 获取位置 | 用途 |
|---|---|---|
| ProductKey | 产品详情页 | 设备认证时标识所属产品 |
| ProductSecret | 产品详情页 | 一机一密认证时使用 |
| DeviceName | 设备列表 | 设备在平台内的唯一名称 |
| DeviceSecret | 设备详情页 | 设备认证密钥,需妥善保管 |
// 当前案例缺失代码:设备接入准备 - 创建云平台项目与产品
// 使用阿里云物联网平台 Java SDK 示例
// 1. 创建项目(Product)
public class CreateProductExample {
public static void main(String[] args) {
// 初始化客户端
DefaultProfile profile = DefaultProfile.getProfile(
"cn-shanghai", // regionId
"<your-accessKeyId>", // 阿里云账号AccessKey ID
"<your-accessKeySecret>" // 阿里云账号AccessKey Secret
);
IAcsClient client = new DefaultAcsClient(profile);
// 创建产品请求
CreateProductRequest request = new CreateProductRequest();
request.setProductName("SmartDevice"); // 产品名称
request.setNodeType(0); // 0: 直连设备
request.setDataFormat(1); // 1: Alink JSON格式
request.setDescription("IoT实战案例-设备接入准备");
try {
CreateProductResponse response = client.getAcsResponse(request);
System.out.println("产品创建成功,ProductKey: " + response.getProductKey());
} catch (ClientException e) {
e.printStackTrace();
}
}
}
验证方法
在控制台完成上述创建后,进入“设备列表”,确认设备状态显示为“未激活”。该状态表示设备已注册但尚未联网通信,说明项目与产品创建成功,鉴权信息已正确生成,可进入下一阶段(设备端SDK接入)使用。
判定标准
- 控制台“产品”页面能看到已创建的产品,且ProductKey非空;
- “设备列表”中存在已添加的设备,状态为“未激活”;
- 设备详情页可查看DeviceSecret,且与ProductKey、DeviceName构成完整三元组。
满足以上条件即表示本案例目标达成,设备接入准备工作完成。