1537| 0
|
[K10项目分享] 行空板k10——行空数码时钟创新智造 |
本帖最后由 云天 于 2025-2-10 11:36 编辑 一、项目来源 本项目基于新课标中对“人工智能与物联网”融合教育理念的要求,注重培养学生的科技创新思维与跨学科实践能力。让学生在制作行空数码时钟的过程中,不仅能够深入学习行空板的编程与应用,还能掌握舵机驱动、语音识别、网络通信及数据处理等多学科知识。借助行空板K10强大的计算能力和丰富的拓展接口,结合语音交互、物联网技术,打造一款功能齐全新颖别致的时间与天气信息展示工具。 二、项目介绍 1. 项目背景 在科技日新月异的当下,精准掌握时间与实时了解天气状况对于人们的日常生活至关重要。传统的电子时钟功能相对单一,而便捷获取天气信息的渠道又大多依赖手机等设备。基于此,我们创意性地设计出行空数码时钟,旨在通过一个装置实现时间显示和天气信息查询两项重要功能,满足人们对便捷生活的需求。 望通过此项目,引导学生学习跨学科知识,激发他们的创造力。在项目实施过程中,学生将深入学习编程、电子、机械等知识,掌握行空板编程、舵机控制、语音识别等技能。同时,鼓励学生细心观察生活,发现传统时钟与天气信息获取方式的不足,思考如何将两者结合,创造出更便捷、实用的产品。行空数码时钟项目不仅能满足人们对便捷生活的需求,还能成为学生学习知识、锻炼能力、激发创意的有力工具。 ![]() ![]() ![]() 2. 项目特色
![]() 3. 项目功能
三、项目原理 1. 行空板 K10 作为核心控制单元:行空板 K10 搭载高性能处理器,负责整个时钟系统的控制与运算。其不仅承担程序运行、数据处理的任务,还具备丰富的输入输出接口,能便捷地连接各种外围设备与传感器,通过加载不同的代码程序,驱动舵机精准动作,实现仿数码管数字的动态显示,并同步管理语音识别功能,处理来自网络的天气数据信息,是整个数码时钟的大脑中枢。 2. 舵机驱动仿数码管显示数字:7 个 9g 舵机按特定顺序排列组成单个仿数码管。每个舵机精准控制角度,模拟数码管的发光段,不同的组合角度对应不同的数字或符号显示。行空板 K10 根据需要显示的数字信号,发送特定指令至舵机驱动板,驱动板按序驱动相应舵机转动至预设角度,呈现出 0 至 9 的数字形态,实现直观生动的数字视觉化效果。 3. 语音识别功能实现语音交互:语音识别模块基于机器学习算法,可准确识别用户的语音指令。当用户说出特定的唤醒词时,语音识别模块迅速激活,进入等待指令状态。当用户发出如“显示时间”“查看天气”等指令时,行空板 K10 接收并解析指令,即时调用对应的程序功能模块,完成相关操作,反馈结果给用户,实现便捷的语音交互控制。 4. 网络通信实现天气数据获取:借助 Wi-Fi 连接互联网,行空板 K10 可与网络上的天气服务 API 实现通信。通过发送特定格式的 HTTP请求,访问天气数据接口,获取包括实时气温、最高气温、最低气温及天气状况描述等丰富气象信息。返回的天气数据以 JSON 格式呈现,行空板 K10 利用Mind+内置的 JSON 解析库,快速提取出关键数据信息,如温度值等,再进行相应的数据处理和格式转换,最终以简洁明了的形式展示在仿数码管上,为用户提供及时准确的天气资讯。 5. 时间服务器访问获取准确时间:行空板 K10 连接时间服务器,获取精准的网络时间。通过网络时间协议(NTP)与互联网上的时间服务器进行同步,确保显示的时间准确无误。时间服务器会定期回传标准时间数据,行空板 K10 将这些时间数据解析后,按照预定的显示规则,通过控制舵机的动作,转化为仿数码管上形象直观的时间数字显示,让用户无论何时何地都能获取与世界标准时间同步的精确时间。 四、项目知识点 1. 行空板 K10 编程与应用:学习基于行空板K10的 Mind+ 编程环境,包括程序结构、语法、函数定义与调用等基础编程知识,以及如何利用行空板的硬件资源(如 GPIO 接口、Wi-Fi 模块等),实现各种功能的开发与拓展应用,培养学生的编程思维能力和硬件操控技能。 2. 舵机控制原理:理解舵机的内部结构、工作原理和控制方式,包括舵机的驱动信号(PWM 信号)的产生、传输和解析过程,以及如何通过行空板向舵机发送精确的控制指令(如设置目标角度、控制转动速度等),实现对多个舵机的协同控制,完成复杂的运动控制任务,拓展学生对机电一体化系统的认知。 3. 语音识别技术基础:了解语音识别的基本概念、工作流程和技术原理,包括语音信号的采集、预处理、特征提取、模型训练与识别等关键环节,认识常见的语音识别算法和模型(如深度神经网络等),以及如何利用行空板K10的语音识别模块(如基于语音特征匹配的简单的模板匹配算法)实现对特定关键词或指令的识别与响应,提升学生对智能语音交互技术的理解。 4. 网络通信协议与数据传输:掌握 Wi-Fi 网络的基本组成、工作原理和连接过程,理解网络通信中的常见协议(如 TCP/IP、HTTP等),学习如何使用行空板与网络服务进行交互,包括发送 HTTP 请求、接收服务器响应以及解析 JSON 格式的网络数据等内容,培养学生在网络环境下的程序开发与数据处理能力,为后续深入学习物联网应用打下基础。 5. 数据处理与格式转换:学会对从时间服务器和天气 API 获取的原始数据进行处理和转换,涉及数据的筛选、清洗、解析、格式化等操作,如将 JSON 格式的天气数据提取出温度、湿度等关键信息,将网络时间转换为便于显示和操作的本地时间格式等,使学生能够熟练地运用数据处理技巧,为实现项目的各种功能提供准确可靠的数据支持。 五、项目实现 1. 硬件搭建:将绑扎气球用的塑料管切割、拼接成数码时钟的主框架,确保框架结构稳固,能够支撑舵机和行空板等部件。将 7 个 9g 舵机按照仿数码管的排列方式固定在主框架上,通过扩展板连接至行空板 K10 的舵机驱动接口,保证每个舵机与行空板之间的电气连接畅通。同时,将红色纸板根据需要裁剪成合适的形状与大小,贴在舵机的重要显示部位,增强数字显示的视觉效果和美观度。 ![]() 2. 软件编程:基于行空板 K10 的编程环境,利用 Arduino 语言编写程序。程序需包含舵机驱动、语音识别、Wi - Fi连接、时间服务器访问、天气 API 数据获取与处理等功能模块。其中,舵机驱动模块负责控制各个舵机的动作,实现数字的显示;语音识别模块负责接收用户的语音指令,并触发相应的功能;Wi - Fi 连接模块用于实现网络连接,保障时间服务器和天气 API 数据的获取;时间服务器访问模块则负责定期获取精准的网络时间;天气 API 数据获取与处理模块用于从网络上获取天气数据,并将其转换为适当的格式进行显示。编程过程中,应注重代码的优化与注释,提高程序的可读性和可维护性。 ![]() 3. 测试与调试:在硬件搭建和软件编程完成后,对行空数码时钟进行全面的测试与调试。首先,测试舵机的控制功能,检查每个舵机是否能按照预设的角度准确动作,确保数字的显示正确无误。接着,测试语音识别功能,验证其是否能准确识别用户的语音指令,并触发相应的功能。然后,测试 Wi - Fi 连接和网络数据获取功能,确认能够成功连接网络,准确获取时间服务器和天气 API 的数据。在测试过程中,如遇问题,应仔细排查原因,进行针对性的调试与修正,直至所有功能均能正常、稳定运行。 ![]() 六、项目拓展 1. 天气信息扩展:除了当前的实时气温、最高气温和最低气温等基本天气信息展示外,可以进一步拓展项目的功能,增加如风向、风力、空气质量指数(AQI)等更丰富的天气信息显示。只需根据相应的天气 API 提供的数据格式,对程序进行适当修改与扩展,即可全面展示更详尽的气候状况,满足用户对天气信息多样化的需求。 2. 语音指令丰富:针对语音识别模块,进一步丰富和完善语音指令集,增加更多的功能指令和查询选项。例如,可以实现用户通过语音指令查询特定日期的天气信息、设置闹钟提醒、获取日历事件提醒等,显著提升行空数码时钟的智能化程度和实用性,让用户享受更加便捷高效的生活体验。 3. 外观个性化设计:鼓励学生充分发挥创意,对时钟的外观进行个性化设计与装饰,使其更具艺术感和观赏性。可以采用不同的材料、颜色和造型进行搭配与组合,例如使用激光切割、3D打印框架、彩绘塑料管、添加装饰性图案、悬挂装饰挂件等,打造独一无二、个性鲜明的数码时钟作品,彰显学生的创造力和审美品味。 七、附件下载 1.因Mind+中的天气扩展插件使用时出现无法获取数据,编写了一个”天气“扩展: ![]() 2.因本项目中在数码管上显示数字时,程序中需要使用“整型”数据,而Mind+中的只有浮点型变量,编写了“整形变量“扩展插件: ![]() 3.程序图形化编程源码: ![]() 八、演示视频 |
© 2013-2025 Comsenz Inc. Powered by Discuz! X3.4 Licensed