- 博客(20)
- 收藏
- 关注
原创 MSPM0开发学习笔记:非阻塞二维云台运动代码
摘要:本文针对步进电机追踪红色小球时的抖动和响应延迟问题,提出了一种非阻塞式控制方案。通过高频中断(100us)精确生成电机脉冲,结合中频中断(10ms)进行PID计算和频率更新,实现了实时根据视觉误差数据调整电机转速。硬件采用MSPM0G3507主控、D36A驱动模块和42步进电机,树莓派提供视觉数据。核心创新点在于采用自定义脉冲生成机制替代传统PWM控制,解决了频繁更新占空比导致的芯片卡死问题。实验结果表明,该方法有效降低了系统抖动,提高了追踪响应速度,为电赛目标锁定提供了更优解决方案。
2025-08-06 10:14:18
654
原创 机器视觉:树莓派结合摄像头解决2025电赛E题锁定靶心 思路与代码分享
2025年电赛控制题要求小车结合云台实现打靶、跟踪等功能,视觉识别是关键环节。文章分析了4种视觉方案:白色靶板定位(最终采用)、黑色外框定位、YOLO算法和目标跟踪算法,详细说明了色块+矩形检测的实现原理。硬件方面对比了OpenMV、K210、树莓派等模块的算力与性价比,强调摄像头需选用全局快门避免果冻效应。软件部分提供了角度转换公式和树莓派UART通信类代码,通过串口与主控交互。实际测试表明,白色靶板检测方案在算力有限的条件下表现最优,而高帧率摄像头配合树莓派能显著提升系统响应速度。
2025-08-04 19:58:27
962
原创 MSPM0开发学习笔记:二维云台结合openmv实现小球追踪
这篇文章摘要如下: 本文介绍了一种基于MSPM0G3507主控的自动追踪云台系统设计方案。硬件采用42步进电机+D36A驱动构成二维云台,视觉部分使用Openart模块(后续比赛改用树莓派提升帧率)。系统通过UART实现Openart与主控间的通信,Openart检测红色小球位置后发送偏差坐标,主控完成PID计算并控制云台追踪。文章详细说明了硬件连接方式、UART通信原理,并提供了Openart的Python识别代码(含颜色阈值调整方法)和完整的阈值编辑器源码。该方案曾成功应用于电赛,针对视觉模块帧率不足的
2025-08-04 12:06:30
1121
原创 MSPM0开发学习笔记:二维云台画图(2025电赛 附源代码及引脚配置)
本文介绍了基于MSPM0G3507主控和D36A驱动的42步进电机二维云台系统开发过程,重点讲解了绘图功能的软件实现。硬件采用双步进电机驱动方案,通过3D打印结构组装成二维云台。软件部分使用C语言开发,包含三个核心函数:限幅函数确保角度范围安全,正方形绘制函数通过定义顶点坐标实现轨迹规划,圆形绘制函数利用三角函数计算圆周点坐标。两个绘图函数都支持自定义尺寸和速度参数,并包含回到原点功能。系统为2025年电子设计竞赛做准备,提供了完整的源代码和引脚配置参考,可实现基本的云台循迹功能。
2025-07-30 06:38:39
2188
原创 MSPM0开发学习笔记:D36A驱动的42步进电机二维云台(2025电赛 附源代码及引脚配置)
本文介绍了基于MSPM0G3507主控和D36A双路步进电机驱动的二维云台控制系统搭建过程。硬件部分采用42步进电机,通过3D打印结构组装云台,详细说明了电机驱动接口的连接方式,包括主控与驱动模块的GPIO配置、电源供应等关键环节。软件部分使用C语言开发,提供了角度转步数计算、电机驱动初始化、单/双电机角度控制等核心函数实现,并分析了步进电机控制中的脉冲时序问题。该系统为电赛云台类题目提供了可快速部署的解决方案,通过模块化设计实现了基础运动控制功能。
2025-07-30 05:20:43
1831
原创 人工智能大模型专栏:基于Pyqt与Api接口创造一个自己的AI助手
本文介绍了一个基于Python和DeepSeek API开发的轻量化AI对话助手。文章首先解释了API的基本原理及PyQt5框架的界面构建功能,随后详细说明了获取DeepSeek API Key的步骤。核心部分展示了使用PyQt5构建的桌面应用实现,通过多线程技术实现流式响应效果,AI回复可逐字实时显示。代码实现部分重点讲解了API通信类的设计,包括请求构建、流式响应处理和错误处理机制,体现了本地化AI工具的便捷性与实用性。
2025-07-28 21:04:06
1081
原创 MSPM0开发学习笔记:MSPM0G3507 LaunchPad外部供电
摘要:本文介绍了为TI LaunchPad开发板进行外部供电的两种方法。推荐方案是在原USB供电线路末端(原理图中5V线路)直接接入5V电源,通过板载稳压器转为3.3V供电。若直接接入3.3V电源会导致复位芯片引脚被持续拉低,需拔除复位跳线才能工作,但会禁用板载复位功能。通过对比分析,5V外部供电方式能保持全部功能正常,是更优选择。
2025-07-25 16:01:52
615
原创 机器学习专栏:基于Python实现历史天气数据爬取
本文介绍了使用Python爬取天气数据的实现方法。首先选取全国历史天气查询平台作为目标网站,分析其URL结构后发现可以通过修改地址中的区域编码实现批量爬取。作者使用requests库获取网页内容,并通过两种方法解析数据:直接输出响应文本和利用浏览器开发者工具定位数据。针对该网站特点,设计了正则表达式匹配和ast安全转换的数据提取函数,成功获取了温度、湿度、降水量等多维天气指标。最终代码实现了对指定地区24小时历史天气数据的自动化采集,为树莓派巡检小车提供天气预测所需的基础数据支持。
2025-07-21 18:15:56
1699
原创 Python报错解决:No module named ‘moviepy.editor‘
摘要 本文解决了一个因moviepy版本升级导致的导入错误问题。原程序因moviepy报错升级至2.2.1版本后,出现无法导入editor.py的错误。经查发现新版本已移除该文件。解决方法是将moviepy降级至支持该导入语句的稳定版本1.0.3,通过卸载当前版本并安装指定版本即可解决。操作命令为:先执行pip uninstall moviepy卸载,再执行pip install moviepy==1.0.3安装旧版本。
2025-07-14 19:32:45
631
原创 树莓派开发日记:基于Python实现树莓派外接USB摄像头与图像tcp传输(解决树莓派版本问题)
本文介绍了在树莓派5上配置USB摄像头并通过Python实现图像采集与传输的完整方案。硬件方面,针对树莓派5与摄像头的兼容性问题,采用guvcview替代luvcview完成驱动适配。软件部分基于TCP通信架构,使用OpenCV进行图像采集,通过ZMQ库实现树莓派(客户端)与上位机(服务器)间的实时视频流传输。方案包含详细的硬件调试步骤、Python代码实现(包括图像编码/解码、网络传输等关键环节),并解决了树莓派5特有的软件包适配问题。该方案为开发者提供了低成本、易实现的树莓派视觉系统搭建方法。
2025-06-16 04:36:45
896
原创 MSPM0开发学习笔记:DAC
本文介绍了MSPM0开发学习笔记中的DAC(数模转换器)模块。首先简要说明了DAC的原理与作用,接着详细描述了在syscfg中的配置步骤,包括参考电压设置、位数选择以及输出使能等。最后,提供了一个简单的C语言代码示例,展示了如何通过计算设置DAC输出值,并启用DAC模块。该代码通过公式将目标电压转换为DAC值,并配置DAC输出,适合初学者入门学习。
2025-05-23 02:17:52
468
原创 MSPM0开发学习笔记:ADC入门
本文介绍了MSPM0开发中的ADC(模数转换器)模块的配置与使用。首先,ADC的作用是将模拟信号转换为数字信号,便于微控制器处理。文章详细讲解了如何在syscfg中配置ADC,包括时钟选择、测量范围、通道选择等关键步骤,并通过代码示例展示了如何实现单通道和多通道的ADC数据读取。在多通道读取中,配置需将single模式改为sequence模式,并设置多个通道的测量顺序。代码部分展示了如何通过中断处理读取ADC结果,并存储到缓冲区中。
2025-05-22 15:39:32
1173
原创 MSPM0开发学习笔记:TIMER-PWM
本文介绍了MSPM0开发中的PWM(脉宽调制)功能,重点讲解了PWM的原理、配置及程序设计。PWM通过定时器生成可调占空比的方波,广泛应用于电机调速、LED亮度控制等场景。文章详细说明了如何在syscfg中配置PWM的频率、相位和输出引脚,并提供了简单的代码示例。此外,还介绍了如何通过按钮控制PWM的占空比,展示了进阶应用的可能性。通过本文,读者可以掌握PWM的基本配置和编程方法,并了解其在嵌入式系统中的实际应用。
2025-05-22 01:28:57
1598
原创 MSPM0开发学习笔记:外设Timer
本文介绍了MSPM0微控制器的定时器开发流程。首先讲解定时器原理,包括时钟分频、计数模式、中断机制等核心概念。然后通过SysConfig工具配置定时器参数,包括时钟源选择、分频计算和中断触发条件设置。最后提供代码示例,展示如何初始化定时器、启用中断服务函数,实现LED灯周期性闪烁功能。开发环境采用TI官方工具链,配置参数可通过头文件查询。文章包含原理说明、配置截图和完整代码,适合MSPM0初学者快速掌握定时器应用开发
2025-05-21 19:21:34
905
原创 MSPM0开发学习笔记:GPIO
本文介绍了MSPM0开发学习笔记中的初步安装与配置以及外设GPIO的使用。首先,通过示例文件的导入,详细说明了如何导入和使用GPIO相关的例程文件。接着,使用syscfg图形化配置工具进行GPIO_LED和GPIO_SWITCH的配置,重点讲解了参数设置和原理图分析。最后,通过代码示例展示了如何利用DL_GPIO_readPins和DL_GPIO_setPins等函数实现按钮控制LED灯的功能,并补充了DL_GPIO_readPins返回值的二进制解释。
2025-05-21 07:29:33
1992
原创 MSPM0开发学习笔记:初步安装与配置
本文介绍了如何为备战2025电赛小车题进行MSPM0G3507开发板的学习与开发。首先,文章详细说明了CCS(Code Composer Studio)的安装与配置步骤,并推荐了相关教程。接着,介绍了MSPM0软件开发套件(SDK)的下载与安装,强调了在下载过程中需注意的细节,如避免选择代表军事实体的选项。随后,文章讲解了如何在CCS中导入工程、添加头文件路径以及清除报错信息,帮助开发者更好地管理项目。最后,提供了MSPM0G3507原理图的下载链接,为后续开发提供参考。本文适合初学者快速上手MSPM0开发
2025-05-21 05:23:13
1505
原创 机器学习专栏:Python实现随机森林预测
随机森林凭借其独特的双重随机性(数据Bootstrap抽样与特征子集选择)和集成学习机制,在机器学习领域展现出强大的预测能力与稳定性。通过构建多棵低相关性的决策树并融合结果,该算法有效平衡了模型的准确性与泛化能力,尤其适用于高维数据、非平衡数据集等复杂场景。本文以加州房价预测为案例,完整演示了从数据加载、模型训练到评估优化的全流程
2025-05-14 19:42:36
1332
原创 树莓派开发日记:基于Python控制42步进电机
在物联网与智能硬件的浪潮中,树莓派凭借其轻量化架构与丰富的GPIO接口,已成为创客与开发者实现机电一体化项目的首选平台。42步进电机作为部分精密机械结构的核心执行器。二者的结合,便能实现实现1从代码到物理世界的精确映射。本文将以树莓派5为硬件载体,结合Python语言的gpiozero库,深入剖析42步进电机的控制逻辑。
2025-05-01 17:26:44
1194
原创 Bambu Studio学习笔记: 3D打印的简单实现
Bambu Studio 是一款功能强大的 3D 打印机控制软件,专为 Bambu Labs 的 3D 打印机设计。它提供了直观的界面和多种配置选项,使用户能够轻松操作和管理打印任务。无论是新手还是经验丰富的 3D 打印爱好者,Bambu Studio 都能帮助你优化打印过程,提升打印质量。在这系列博客中,我们将介绍如何简单上手使用 Bambu Studio,帮助你快速了解其核心功能,并掌握基本操作技巧。Bambu Studio 是一款直观易用的3D打印控制软件,适合不同经验水平的用户。
2025-04-30 20:42:44
2314
原创 树莓派开发日记:基于python实现树莓派与主机的TCP通讯
当今物联网技术迅速发展,树莓派作为一款功能强大且价格亲民的单板计算机,已广泛应用于各种智能硬件项目。为了实现树莓派与其他设备之间的通信,TCP协议作为一种常用的网络通信协议,成为了很多开发者的首选。在这篇博客中,我们将探讨如何通过Python语言在树莓派上实现TCP网络通信。TCP(传输控制协议)是一种面向连接的、可靠的通信协议,它用于在计算机网络中传输数据。TCP协议通过在发送端和接收端之间建立连接,确保数据的正确、按序传输。
2025-04-02 21:06:56
889
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人