哈Ha! 我向您展示了文章
“通过Azure IoT连接Raspberry PI:分步教程”的翻译 。
在本文中,我们将向您展示如何连接Raspberry Pi作为外围设备,以使用Azure IoT Edge模块将信号传输到LED面板。
在大多数步骤中,我们将使用Azure CLI和Azure门户来启动Azure IoT Edge。
为此,我们将需要:- Raspberry Pi 3 Model B +(LED面板)
- Microsoft Azure帐户
- 最新版本的Azure CLI
- Azure IoT CLI扩展(组件)
安装和配置Azure IoT
现在,我们安装Azure CLI,创建IoT中心并连接设备。 我们还将为Raspberry Pi创建标识符,并使用其访问参数在IoT中心中进行识别。 此外,我们使用启用了add-edge的功能将Raspberry Pi连接到Azure IoT Edge。
若要安装和初始配置Azure IoT,您需要:
- 从docs.microsoft.com/zh-cn/cli/azure/install-azure-cli?view=azure-cli-latest在计算机上安装最新版本的Azure CLI
- 使用以下方法配置Azure CLI:
$ az extension add --name azure-cli-iot-ext</li>
- 为我们的项目建立一个资源组:
$ az group create --name rasp-IoT --location westus
- 创建用于将外围设备连接到Azure IoT的网关:
$ az iot hub create --resource-group rasp-IoT --name rasp-IoT-Hub --sku S1
- 为Raspberry Pi和设备创建ID:
$ az iot hub device-identity create --hub-name rasp-IoT-Hub --device-id myPi001 --edge-enabled
此命令将产生连接设备所需的特定字符串。 - 将输出字符串复制到文件或剪贴板。 稍后我们将使用它将设备连接到IoT中心。
连接树莓派
Azure IoT Edge模块充当容器。 要将Raspberry Pi连接到Azure IoT中心和Azure IoT Edge,我们需要:
- 在Raspberry Pi上安装Docker:
$ curl -fsSL get.docker.com -o get-docker.sh && sh get-docker.sh
您还可以使用以下命令检查其版本:$ sudo docker version - 安装Azure IoT Edge运行时,它将作为后台守护程序运行:
$ curl -L https://aka.ms/libiothsm-std-linux-armhf-latest -o libiothsm-std.deb && sudo dpkg -i ./libiothsm-std.deb
$ curl -L https://aka.ms/iotedged-linux-armhf-latest -o iotedge.deb && sudo dpkg -i ./iotedge.deb
$sudo apt-get install -f
$ curl -L https://aka.ms/iotedged-linux-armhf-latest -o iotedge.deb && sudo dpkg -i ./iotedge.deb
$sudo apt-get install -f
- 使用以下方法将设备连接到Azure IoT中心:
$ az iot hub device-identity create --hub-name rasp-IoT-Hub --device-id myPi001 --edge-enabled
我们已经使用此命令为Raspberry Pi创建标识符。 - 在任何编辑器中打开
/etc/iotedge/config.yaml
文件,并将“ ADD DEVICE CONNECTION STRING HERE”替换为用于连接以前复制到文件/缓冲区的设备的特定行。

- 重新启动IoT Edge后台进程并检查其状态:
$ sudo systemctl restart iotedge
$ sudo systemctl status iotedge

现在我们可以安装LED面板控制模块了。
部署Azure IoT Edge模块
以下是一个简单的示例,清楚地显示了Azure IoT Edge模块的概念,部署和管理:
- 在浏览器中启动Azure门户。
- 转到IoT中心,然后使用“自动化设备管理”选择IoT Edge。

- 在IoT Edge设备中,选择PI1设备,然后单击Set Modules。

- 展开添加列表,然后选择IoT Edge模块以部署自定义模块。

现在,我们将使用Azure门户将容器作为模块进行部署。 在此之前,我们需要创建一个Docker映像并将其保存在Docker Hub中作为示例。
转到IoT Edge自定义模块,然后执行以下步骤:
- 在名称字段中,输入矩阵。 这将是我们模块的名称。
- 在图像URI字段中,输入janakiramm /矩阵:v1。
- 由于不需要访问Raspberry Pi上的本地I2C总线,因此需要以特权模式运行容器。 要启用它,请在“容器创建选项”中插入以下JSON行:
{ “HostConfig”: { “Privileged”: true } }
- 在以下框中保留默认设置。
- 单击“保存”以确认部署。

这将在外围设备上启动自定义模块的部署。
您还可以使用Raspberry Pi上的iotedge CLI检查模块与设备的连接:
$ sudo iotedge list

成功部署模块后,连接到Raspberry Pi的面板上的二极管将闪烁。

使用Azure IoT云服务,您可以创建更加复杂且功能丰富的IoT解决方案。 例如,即时扩展外围设备上的自定义开发,仅将当前数据发送到云,而主要功能在本地使用。
我们认为这听起来很有希望。
Azure中的去中心化芯片
出现了一个很酷的新功能,该功能使Microsoft与其他云服务提供商区分开来,并且在我们看来,它更全面地实现了WEB 3.0的完全去中心化概念。 当然,我们指的是分布式注册表技术。
在Azure区块链工作台上,您可以在全球可访问的平台上实施创新的区块链解决方案。 老实说,几乎没有人能与专业分散式应用程序(DApps)对用户造成的“哇效应”相抗衡。
然而,这不仅是指围绕ICO的加密和炒作的盛行。 使用Azure区块链工作台,开发人员可以在其项目中实现分布式注册表的独特功能,包括IoT解决方案。 这就是为客户获得的结果带来附加值的原因。
分布式注册表技术有望将价值交付提升到一个全新的水平,因此,即使对相应的云服务(如同一个Azure Blockchain Workbench)进行表面研究也将需要单独发布。 当然,如果您也对该主题感兴趣,我们绝对不介意“潜水”,尤其是Azure区块链。
保持联系,保持关注并谈论您对阅读还有其他兴趣。