|
|
<!--
|
|
|
CO_OP_TRANSLATOR_METADATA:
|
|
|
{
|
|
|
"original_hash": "72ea6b6dc04ec5e98a8a34a45cbe5042",
|
|
|
"translation_date": "2025-11-18T17:17:08+00:00",
|
|
|
"source_file": "README.md",
|
|
|
"language_code": "zh"
|
|
|
}
|
|
|
-->
|
|
|
[](https://github.com/microsoft/IoT-For-Beginners/blob/master/LICENSE)
|
|
|
[](https://GitHub.com/microsoft/IoT-For-Beginners/graphs/contributors/)
|
|
|
[](https://GitHub.com/microsoft/IoT-For-Beginners/issues/)
|
|
|
[](https://GitHub.com/microsoft/IoT-For-Beginners/pulls/)
|
|
|
[](http://makeapullrequest.com)
|
|
|
|
|
|
[](https://GitHub.com/microsoft/IoT-For-Beginners/watchers/)
|
|
|
[](https://GitHub.com/microsoft/IoT-For-Beginners/network/)
|
|
|
[](https://GitHub.com/microsoft/IoT-For-Beginners/stargazers/)
|
|
|
|
|
|
### 加入 Azure AI Foundry 社区
|
|
|
|
|
|
如果你在构建 AI 应用时遇到困难或有任何问题,可以加入其他学习者和经验丰富的开发者,一起讨论 MCP。这是一个支持性的社区,欢迎提问并自由分享知识。
|
|
|
|
|
|
[](https://discord.gg/nTYy5BXMWG)
|
|
|
|
|
|
如果你有产品反馈或在构建过程中遇到错误,请访问:
|
|
|
|
|
|
[](https://aka.ms/foundry/forum)
|
|
|
|
|
|
按照以下步骤开始使用这些资源:
|
|
|
1. **分叉仓库**:点击 [](https://GitHub.com/microsoft/IoT-For-Beginners/fork)
|
|
|
2. **克隆仓库**:`git clone https://github.com/microsoft/IoT-For-Beginners.git`
|
|
|
3. [**加入 Microsoft Foundry Discord,与专家和其他开发者交流**](https://discord.com/invite/ByRwuEEgH4)
|
|
|
|
|
|
### 🌐 多语言支持
|
|
|
|
|
|
#### 通过 GitHub Action 支持(自动化且始终保持最新)
|
|
|
|
|
|
[阿拉伯语](../ar/README.md) | [孟加拉语](../bn/README.md) | [保加利亚语](../bg/README.md) | [缅甸语](../my/README.md) | [中文(简体)](./README.md) | [中文(繁体,香港)](../hk/README.md) | [中文(繁体,澳门)](../mo/README.md) | [中文(繁体,台湾)](../tw/README.md) | [克罗地亚语](../hr/README.md) | [捷克语](../cs/README.md) | [丹麦语](../da/README.md) | [荷兰语](../nl/README.md) | [爱沙尼亚语](../et/README.md) | [芬兰语](../fi/README.md) | [法语](../fr/README.md) | [德语](../de/README.md) | [希腊语](../el/README.md) | [希伯来语](../he/README.md) | [印地语](../hi/README.md) | [匈牙利语](../hu/README.md) | [印尼语](../id/README.md) | [意大利语](../it/README.md) | [日语](../ja/README.md) | [韩语](../ko/README.md) | [立陶宛语](../lt/README.md) | [马来语](../ms/README.md) | [马拉地语](../mr/README.md) | [尼泊尔语](../ne/README.md) | [尼日利亚皮钦语](../pcm/README.md) | [挪威语](../no/README.md) | [波斯语(法尔西语)](../fa/README.md) | [波兰语](../pl/README.md) | [葡萄牙语(巴西)](../br/README.md) | [葡萄牙语(葡萄牙)](../pt/README.md) | [旁遮普语(古木基文)](../pa/README.md) | [罗马尼亚语](../ro/README.md) | [俄语](../ru/README.md) | [塞尔维亚语(西里尔文)](../sr/README.md) | [斯洛伐克语](../sk/README.md) | [斯洛文尼亚语](../sl/README.md) | [西班牙语](../es/README.md) | [斯瓦希里语](../sw/README.md) | [瑞典语](../sv/README.md) | [他加禄语(菲律宾语)](../tl/README.md) | [泰米尔语](../ta/README.md) | [泰语](../th/README.md) | [土耳其语](../tr/README.md) | [乌克兰语](../uk/README.md) | [乌尔都语](../ur/README.md) | [越南语](../vi/README.md)
|
|
|
|
|
|
# IoT 初学者 - 一套课程
|
|
|
|
|
|
微软的 Azure Cloud Advocates 很高兴为大家提供一套为期 12 周、共 24 节课的课程,涵盖 IoT 基础知识。每节课包括课前和课后测验、完成课程的书面指导、解决方案、作业等。我们的项目式教学法让你在实践中学习,这是一种被证明能让新技能“记住”的有效方法。
|
|
|
|
|
|
这些项目涵盖了从农场到餐桌的食物旅程,包括农业、物流、制造、零售和消费者——这些都是 IoT 设备的热门行业领域。
|
|
|
|
|
|

|
|
|
|
|
|
> 由 [Nitya Narasimhan](https://github.com/nitya) 绘制的草图笔记。点击图片查看大图。
|
|
|
|
|
|
**特别感谢我们的作者 [Jen Fox](https://github.com/jenfoxbot)、[Jen Looper](https://github.com/jlooper)、[Jim Bennett](https://github.com/jimbobbennett) 和我们的草图笔记艺术家 [Nitya Narasimhan](https://github.com/nitya)。**
|
|
|
|
|
|
**同时感谢我们的 [Microsoft Learn 学生大使](https://studentambassadors.microsoft.com?WT.mc_id=academic-17441-jabenn),他们审阅并翻译了这套课程——[Aditya Garg](https://github.com/AdityaGarg00)、[Anurag Sharma](https://github.com/Anurag-0-1-A)、[Arpita Das](https://github.com/Arpiiitaaa)、[Aryan Jain](https://www.linkedin.com/in/aryan-jain-47a4a1145/)、[Bhavesh Suneja](https://github.com/EliteWarrior315)、[Faith Hunja](https://faithhunja.github.io/)、[Lateefah Bello](https://www.linkedin.com/in/lateefah-bello/)、[Manvi Jha](https://github.com/Severus-Matthew)、[Mireille Tan](https://www.linkedin.com/in/mireille-tan-a4834819a/)、[Mohammad Iftekher (Iftu) Ebne Jalal](https://github.com/Iftu119)、[Mohammad Zulfikar](https://github.com/mohzulfikar)、[Priyanshu Srivastav](https://www.linkedin.com/in/priyanshu-srivastav-b067241ba)、[Thanmai Gowducheruvu](https://github.com/innovation-platform) 和 [Zina Kamel](https://www.linkedin.com/in/zina-kamel/)。**
|
|
|
|
|
|
认识我们的团队!
|
|
|
|
|
|
[](https://youtu.be/-wippUJRi5k)
|
|
|
|
|
|
**Gif 制作:** [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
|
|
|
|
|
|
> 🎥 点击上方图片观看项目相关视频!
|
|
|
|
|
|
> **教师们**,我们提供了[一些建议](for-teachers.md),帮助你使用这套课程。如果你想创建自己的课程,我们还提供了[课程模板](lesson-template/README.md)。
|
|
|
|
|
|
> **[学生们](https://aka.ms/student-page)**,如果你想自己使用这套课程,可以分叉整个仓库并自行完成练习,从课前测验开始,然后阅读课程内容并完成其他活动。尽量通过理解课程内容来完成项目,而不是直接复制解决方案代码;不过这些代码可以在每个项目课程的 /solutions 文件夹中找到。另一个建议是与朋友组成学习小组,一起学习内容。想要进一步学习,我们推荐 [Microsoft Learn](https://docs.microsoft.com/users/jimbobbennett/collections/ke2ehd351jopwr?WT.mc_id=academic-17441-jabenn)。
|
|
|
|
|
|
想了解本课程的概述,请观看以下视频:
|
|
|
|
|
|
[](https://youtube.com/watch?v=bccEMm8gRuc "宣传视频")
|
|
|
|
|
|
> 🎥 点击上方图片观看项目相关视频!
|
|
|
|
|
|
## 教学法
|
|
|
|
|
|
在设计这套课程时,我们选择了两个教学原则:确保课程是基于项目的,并且包含频繁的测验。在本系列课程结束时,学生将完成一个植物监测和浇水系统、一个车辆追踪器、一个智能工厂设置(用于追踪和检查食品)以及一个语音控制的烹饪计时器,并学习 IoT 的基础知识,包括如何编写设备代码、连接云端、分析遥测数据以及在边缘运行 AI。
|
|
|
|
|
|
通过确保内容与项目相关联,学习过程对学生来说更加有趣,同时也能增强概念的记忆。
|
|
|
|
|
|
此外,课前的低风险测验可以让学生专注于学习某个主题,而课后的测验则能进一步巩固记忆。这套课程设计灵活有趣,可以完整学习,也可以部分学习。项目从简单开始,到 12 周课程结束时逐渐变得复杂。
|
|
|
|
|
|
每个项目都基于学生和爱好者可以获得的真实硬件。每个项目都会探讨特定的项目领域,提供相关的背景知识。要成为一名成功的开发者,了解你正在解决问题的领域是很有帮助的。提供这些背景知识可以让学生在构建 IoT 解决方案时,能够从现实世界的问题中获得启发。学生不仅学习如何构建解决方案,还能理解其背后的原因,并对最终用户有更深的理解。
|
|
|
|
|
|
## 硬件
|
|
|
|
|
|
我们为项目提供了两种 IoT 硬件选择,具体取决于个人偏好、编程语言知识或偏好、学习目标和硬件的可用性。对于没有硬件或想在购买前多了解的用户,我们还提供了“虚拟硬件”版本。你可以在[硬件页面](./hardware.md)上了解更多信息,并找到“购物清单”,其中包括来自 Seeed Studio 的完整套件购买链接。
|
|
|
|
|
|
> 💁 查看我们的 [行为准则](CODE_OF_CONDUCT.md)、[贡献指南](CONTRIBUTING.md) 和 [翻译指南](TRANSLATIONS.md)。我们欢迎你的建设性反馈!
|
|
|
|
|
|
## 每节课包括:
|
|
|
|
|
|
- 草图笔记
|
|
|
- 可选的补充视频
|
|
|
- 课前热身测验
|
|
|
- 书面课程内容
|
|
|
- 对于基于项目的课程,提供逐步构建项目的指南
|
|
|
- 知识检查
|
|
|
- 挑战
|
|
|
- 补充阅读材料
|
|
|
- 作业
|
|
|
- [课后测验](https://ff-quizzes.netlify.app/en/)
|
|
|
> **关于测验的说明**:所有测验都包含在 quiz-app 文件夹中,共有 48 个测验,每个测验包含三个问题。这些测验可以从课程中链接,也可以在本地运行或部署到 Azure;请按照 `quiz-app` 文件夹中的说明操作。这些测验正在逐步进行本地化。
|
|
|
|
|
|
## 课程
|
|
|
|
|
|
| | 项目名称 | 教授的概念 | 学习目标 | 相关课程链接 |
|
|
|
| :---: | :------------------------------------: | :---------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------: |
|
|
|
| 01 | [入门](./1-getting-started/README.md) | IoT 简介 | 学习 IoT 的基本原理以及 IoT 解决方案的基本构建模块,例如传感器和云服务,同时设置您的第一个 IoT 设备 | [IoT 简介](./1-getting-started/lessons/1-introduction-to-iot/README.md) |
|
|
|
| 02 | [入门](./1-getting-started/README.md) | 深入了解 IoT | 进一步了解 IoT 系统的组件,以及微控制器和单板计算机 | [深入了解 IoT](./1-getting-started/lessons/2-deeper-dive/README.md) |
|
|
|
| 03 | [入门](./1-getting-started/README.md) | 使用传感器和执行器与物理世界交互 | 学习如何使用传感器从物理世界收集数据,以及使用执行器发送反馈,同时构建一个夜灯 | [使用传感器和执行器与物理世界交互](./1-getting-started/lessons/3-sensors-and-actuators/README.md) |
|
|
|
| 04 | [入门](./1-getting-started/README.md) | 将设备连接到互联网 | 学习如何将 IoT 设备连接到互联网以发送和接收消息,通过将夜灯连接到 MQTT 代理来实现 | [将设备连接到互联网](./1-getting-started/lessons/4-connect-internet/README.md) |
|
|
|
| 05 | [农场](./2-farm/README.md) | 预测植物生长 | 学习如何使用 IoT 设备捕获的温度数据预测植物生长 | [预测植物生长](./2-farm/lessons/1-predict-plant-growth/README.md) |
|
|
|
| 06 | [农场](./2-farm/README.md) | 检测土壤湿度 | 学习如何检测土壤湿度并校准土壤湿度传感器 | [检测土壤湿度](./2-farm/lessons/2-detect-soil-moisture/README.md) |
|
|
|
| 07 | [农场](./2-farm/README.md) | 自动植物浇水 | 学习如何使用继电器和 MQTT 实现自动化和定时浇水 | [自动植物浇水](./2-farm/lessons/3-automated-plant-watering/README.md) |
|
|
|
| 08 | [农场](./2-farm/README.md) | 将植物迁移到云端 | 学习云和云托管的 IoT 服务,以及如何将植物连接到这些服务,而不是公共 MQTT 代理 | [将植物迁移到云端](./2-farm/lessons/4-migrate-your-plant-to-the-cloud/README.md) |
|
|
|
| 09 | [农场](./2-farm/README.md) | 将应用逻辑迁移到云端 | 学习如何在云端编写响应 IoT 消息的应用逻辑 | [将应用逻辑迁移到云端](./2-farm/lessons/5-migrate-application-to-the-cloud/README.md) |
|
|
|
| 10 | [农场](./2-farm/README.md) | 保护植物安全 | 学习 IoT 安全性以及如何使用密钥和证书保护植物安全 | [保护植物安全](./2-farm/lessons/6-keep-your-plant-secure/README.md) |
|
|
|
| 11 | [运输](./3-transport/README.md) | 位置追踪 | 学习 IoT 设备的 GPS 位置追踪 | [位置追踪](./3-transport/lessons/1-location-tracking/README.md) |
|
|
|
| 12 | [运输](./3-transport/README.md) | 存储位置数据 | 学习如何存储 IoT 数据以便后续可视化或分析 | [存储位置数据](./3-transport/lessons/2-store-location-data/README.md) |
|
|
|
| 13 | [运输](./3-transport/README.md) | 可视化位置数据 | 学习如何在地图上可视化位置数据,以及地图如何将真实的三维世界表示为二维 | [可视化位置数据](./3-transport/lessons/3-visualize-location-data/README.md) |
|
|
|
| 14 | [运输](./3-transport/README.md) | 地理围栏 | 学习地理围栏,以及如何在供应链中的车辆接近目的地时发出警报 | [地理围栏](./3-transport/lessons/4-geofences/README.md) |
|
|
|
| 15 | [制造业](./4-manufacturing/README.md) | 训练水果质量检测器 | 学习如何在云端训练图像分类器以检测水果质量 | [训练水果质量检测器](./4-manufacturing/lessons/1-train-fruit-detector/README.md) |
|
|
|
| 16 | [制造业](./4-manufacturing/README.md) | 从 IoT 设备检查水果质量 | 学习如何从 IoT 设备使用水果质量检测器 | [从 IoT 设备检查水果质量](./4-manufacturing/lessons/2-check-fruit-from-device/README.md) |
|
|
|
| 17 | [制造业](./4-manufacturing/README.md) | 在边缘运行水果检测器 | 学习如何在边缘的 IoT 设备上运行水果检测器 | [在边缘运行水果检测器](./4-manufacturing/lessons/3-run-fruit-detector-edge/README.md) |
|
|
|
| 18 | [制造业](./4-manufacturing/README.md) | 从传感器触发水果质量检测 | 学习如何从传感器触发水果质量检测 | [从传感器触发水果质量检测](./4-manufacturing/lessons/4-trigger-fruit-detector/README.md) |
|
|
|
| 19 | [零售](./5-retail/README.md) | 训练库存检测器 | 学习如何使用对象检测训练库存检测器以统计商店库存 | [训练库存检测器](./5-retail/lessons/1-train-stock-detector/README.md) |
|
|
|
| 20 | [零售](./5-retail/README.md) | 从 IoT 设备检查库存 | 学习如何使用对象检测模型从 IoT 设备检查库存 | [从 IoT 设备检查库存](./5-retail/lessons/2-check-stock-device/README.md) |
|
|
|
| 21 | [消费品](./6-consumer/README.md) | 使用 IoT 设备识别语音 | 学习如何从 IoT 设备识别语音以构建智能计时器 | [使用 IoT 设备识别语音](./6-consumer/lessons/1-speech-recognition/README.md) |
|
|
|
| 22 | [消费品](./6-consumer/README.md) | 理解语言 | 学习如何理解对 IoT 设备说出的句子 | [理解语言](./6-consumer/lessons/2-language-understanding/README.md) |
|
|
|
| 23 | [消费品](./6-consumer/README.md) | 设置计时器并提供语音反馈 | 学习如何在 IoT 设备上设置计时器,并在计时器设置和完成时提供语音反馈 | [设置计时器并提供语音反馈](./6-consumer/lessons/3-spoken-feedback/README.md) |
|
|
|
| 24 | [消费品](./6-consumer/README.md) | 支持多语言 | 学习如何支持多语言,包括对智能计时器的输入和响应 | [支持多语言](./6-consumer/lessons/4-multiple-language-support/README.md) |
|
|
|
|
|
|
## 离线访问
|
|
|
|
|
|
您可以使用 [Docsify](https://docsify.js.org/#/) 离线运行此文档。Fork 此仓库,在本地机器上[安装 Docsify](https://docsify.js.org/#/quickstart),然后在此仓库的根文件夹中输入 `docsify serve`。网站将在本地的 3000 端口上运行:`localhost:3000`。
|
|
|
|
|
|
## 测验
|
|
|
|
|
|
感谢社区提供互动测验,测试您对每章内容的掌握情况。您可以在[这里](https://ff-quizzes.netlify.app/en/)测试您的知识。
|
|
|
|
|
|
### PDF
|
|
|
|
|
|
如果需要,您可以生成此内容的 PDF 以供离线访问。为此,请确保您已安装 [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm),然后在此仓库的根文件夹中运行以下命令:
|
|
|
|
|
|
```sh
|
|
|
npm i
|
|
|
npm run convert
|
|
|
```
|
|
|
|
|
|
### 幻灯片
|
|
|
|
|
|
部分课程的幻灯片文件位于 [slides](../../slides) 文件夹中。
|
|
|
|
|
|
## 其他课程
|
|
|
|
|
|
我们的团队还制作了其他课程!查看以下内容:
|
|
|
|
|
|
### Azure / Edge / MCP / Agents
|
|
|
[](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
|
|
|
---
|
|
|
|
|
|
### 生成式 AI 系列
|
|
|
[](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
|
|
|
[-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
|
|
|
[-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
|
|
|
|
|
|
---
|
|
|
|
|
|
### 核心学习
|
|
|
[](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
|
|
|
[](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
|
|
|
|
|
|
---
|
|
|
|
|
|
### Copilot 系列
|
|
|
[](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
|
|
|
[](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
|
|
|
<!-- CO-OP TRANSLATOR OTHER COURSES END -->
|
|
|
|
|
|
## 图片归属
|
|
|
|
|
|
您可以在 [归属](./attributions.md) 中找到本课程中使用的图片的所有归属信息(如有需要)。
|
|
|
|
|
|
---
|
|
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
|
**免责声明**:
|
|
|
本文档使用AI翻译服务[Co-op Translator](https://github.com/Azure/co-op-translator)进行翻译。尽管我们努力确保准确性,但请注意,自动翻译可能包含错误或不准确之处。应以原始语言的文档作为权威来源。对于关键信息,建议使用专业人工翻译。因使用本翻译而引起的任何误解或误读,我们概不负责。
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |