四、可靠应用
第13课 加入异常处理的物联网应用

一、任务目标
体验用 try/except 包住「连接中…」打印;随后连接 Wi‑Fi,每 5 秒把 T2 触摸状态发布到 MixIO。完整代码改为看门狗 10 秒,循环末喂狗。Zero 没有 ALS / 光照传感器,发布主题改为「触摸」,用 onboard_bot.touched(2)。
二、我们要学什么
- 学习要点:try/except 与 machine.reset;MQTT publish 板载触摸量
- 本课过关:能指出 try 只包住 print,联网在后面;发布的是 touched(2) 不是光照
- 示例对齐:保留「异常处理 + 物联网」教学目标,传感改为 Zero 触摸。
三、本节要点
可靠应用 = 异常捕获 / 看门狗 + 周期上报。不要再写 onboard_als / als_vis /「光照」。
四、解题思路
- 输入:T2 触摸 touched(2)。
- 输出:主题「触摸」上的 0/1。
- 生活对照:联网设备上报按键状态,出错要能复位。
本课主要用到:Wi‑Fi、MixIO、触摸;完整代码另用看门狗。
- 1try 只包 print('连接中...')。
- 2再 socket.config 与 init_MQTT_client。
- 3循环 publish 触摸,sleep(5)。
- 4完整代码用 WDT + feed。
五、图形块功能讲解
本课以图形化积木为主:关注 try/except、publish、touched、WDT。不要寻找光照 / ALS 积木。
六、知识点讲解
本课核心是可靠上报:异常捕获或看门狗,加上周期 publish 触摸状态。
try 范围要小
体验里 try 只包 print('连接中...'),联网在后面。
发布触摸
Zero 无 ALS,用 onboard_bot.touched(2) 发布到主题「触摸」。
看门狗
完整代码 WDT(timeout=10000),循环末 wdt.feed()。
- 易错:把 ALS/光照抄进 Zero 课。
- 过关:能说明发布的是触摸 0/1,不是光照。
七、编程练习
点「载入」打开 MixVM(board=mixgo_zero_design)。本课默认图形化积木。运行后「检查」核对 try / publish / touched 等关键字。
4-1-1 加入异常处理的物联网应用.mix。载入后运行。
正在载入编程环境
正在载入 MixGo ZERO 仿真编程环境…
八、课堂练习
先完成两道判断题,再完成选择题;全部选定后点「检查」。
判断:体验把 socket.config 写在 try 里面。
判断:发布主题是「触摸」,内容是 touched(2)。
本课为什么不发布光照?
完整代码相对体验的主要变化?
九、本节小结
记住:异常处理 + 物联网上报触摸;Zero 没有 ALS / soundlevel。