- 博客(317)
- 收藏
- 关注
原创 手动开发一个串口调试工具(四):完整串口调试助手
本文介绍了如何基于Qt Widgets构建一个完整的串口调试助手。主要内容包括:1)功能结构划分五个核心模块(串口配置、控制按钮、接收显示、发送输入、状态统计);2)串口初始化与参数配置实现;3)串口打开/关闭控制逻辑;4)数据接收处理与显示;5)数据发送逻辑(支持HEX/ASCII模式);6)状态显示与选项控制。文章提供了完整源码下载,并建议了子线程优化、定时发送、波形显示等7个拓展方向。该工具实现了基本的串口通信功能,可作为开发基础进行个性化扩展。
2025-07-30 10:41:44
360
原创 工业相机拍出“拖影”?,这几招教你轻松搞定!
工业相机拍摄高速物体时容易出现模糊拖影,主要原因是曝光时间过长。解决方法包括硬件优化(大光圈镜头、大像元相机、高亮频闪光源)和软件调整(伽马值、增益值、合并像元),其中硬件方案效果更佳。软件手段虽能应急但会降低画质,建议优先选择硬件升级。合理搭配这些方法可有效解决高速拍摄的拖影问题。
2025-07-30 09:02:00
518
原创 一文教你计算像素精度,工业相机选型不踩坑!
《工业相机像素选择指南:从概念到选购》 本文系统介绍了工业相机像素的概念和应用选择方法。首先解释了像素是图像传感器捕捉信息的基本单位,像素数量决定画面清晰度。然后通过常见分辨率表格直观展示不同像素等级对应的应用场景。重点讲解了如何根据"像素精度"需求计算所需相机像素,并举例说明0.1mm和0.01mm精度要求的计算方法。最后强调像素并非越高越好,需要综合考虑检测尺寸、精度要求、处理能力等因素,并给出了不同应用场景的像素选择建议表。文章为工业相机选型提供了实用参考。
2025-07-29 10:00:00
350
原创 手动开发一个串口调试工具(三):基于 Qt Widgets 搭建串口调试界面
本文介绍如何将基础串口控制台程序封装为图形化界面程序,开发一个完整的串口调试助手。文章详细讲解了界面设计,包括串口配置区(使用QComboBox选择参数)、控制按钮区、数据接收显示区(QTextEdit)、状态选项区(QRadioButton统计信息)和数据发送区(QLineEdit输入)。通过信号槽机制实现串口打开/关闭、数据收发、格式转换等功能,并展示了运行效果。该工具支持ASCII/HEX格式收发,提供通信参数设置、实时数据显示和统计功能。
2025-07-28 15:26:50
549
原创 聊聊工业相机中的硬触发、软触发和视频流模式
工业相机在自动化产线中主要采用硬触发和软触发两种方式。硬触发通过物理信号(如光电传感器)精确控制拍照时机,具有接线简单、稳定可靠的特点;软触发则通过通讯协议指令实现灵活控制,适合复杂交互场景。相比持续拍摄的视频流模式,触发式拍照能有效降低系统负担,避免误判,确保图像采集的精准性。工业视觉系统强调"精准拍摄"而非"持续拍摄",通过合理选择触发方式,可在关键时机获取高质量图像,提升检测效率和准确性。
2025-07-28 09:08:53
641
原创 手动开发一个串口调试工具(二):Qt 串口类基本认识与使用
本文介绍了如何使用Qt开发串口调试工具。重点讲解了QtSerialPort模块的QSerialPort和QSerialPortInfo类,通过实例代码演示了串口初始化、数据收发和十六进制转换等核心功能。文章包含完整的控制台程序代码,实现了周期性发送指令、接收并格式化输出数据的功能,并提供了常见问题排查建议。该程序可作为后续开发图形化串口调试工具的"引擎核心"。项目代码已通过网盘分享,下篇将介绍如何基于Qt Widgets搭建串口调试界面。
2025-07-26 08:45:03
333
原创 像素、视野、光源,都有哪些因素影响测量精度?
本文系统介绍了机器视觉的基本原理、核心组成和典型应用。机器视觉系统由图像采集单元(相机与镜头)、光照系统和图像处理单元(工控机及算法)三大模块构成,分别承担图像捕捉、光线稳定和智能分析功能。在工业领域,该技术广泛应用于质量检测、自动装配、智能分拣和精密制造等场景,通过高精度识别显著提升了生产效率和产品质量。机器视觉作为智能制造的"眼睛",正成为现代工业自动化不可或缺的关键技术。
2025-07-26 08:37:50
659
原创 你真的了解机器视觉的原理组成吗?
本文系统介绍了机器视觉的基本原理、核心组成和典型应用。机器视觉系统由图像采集单元(相机与镜头)、光照系统和图像处理单元(工控机及算法)三大模块构成,分别承担图像捕捉、光线稳定和智能分析功能。在工业领域,该技术广泛应用于质量检测、自动装配、智能分拣和精密制造等场景,通过高精度识别显著提升了生产效率和产品质量。机器视觉作为智能制造的"眼睛",正成为现代工业自动化不可或缺的关键技术。
2025-07-26 08:07:43
570
原创 手动开发一个串口调试工具(一):Qt 串口类 `QSerialPort` 详解与使用技巧
本文系统讲解了Qt中QSerialPort类的核心功能与应用技巧。作为串口通信的核心类,它继承自QIODevice,提供了端口配置、数据读写和错误处理等完整功能。文章详细介绍了波特率、数据位、校验位等关键参数的设置方法,以及数据收发接口的使用方式,包括异步信号槽机制和同步阻塞模式。同时,还涵盖了错误处理、RTS/DTR控制、缓冲区清除等实用功能,并给出了开发中检查串口可用性和扫描可用端口的实用建议。通过掌握这些知识,开发者可以快速构建串口调试工具等嵌入式应用。
2025-07-25 09:54:10
884
原创 工业相机接口怎么选?搞懂这篇就够了!
工业相机接口选择指南:不同接口各有优劣,需根据实际需求匹配。千兆网口(GigE)性价比高、稳定性好,适合通用工业检测;万兆网口(10GigE)速度提升10倍,适合高分辨率应用;USB 3.0部署简单但距离受限,适合实验室场景;CoaXPress(CXP)性能顶尖但成本高,专为高端检测设计。其他如Camera Link、PCIe等也各有适用场景。选择时需平衡分辨率、帧率、距离、稳定性和成本等因素,确保系统高效稳定运行。
2025-07-25 09:35:17
737
原创 相机选型中别被帧率“忽悠”了!真正决定动态性能的是它!
【摘要】工业机器视觉中,动态场景拍摄效果的关键并非帧率,而是曝光时间。短曝光(可低至1微秒)能有效冻结高速运动物体,避免模糊。但短曝光需配合高亮光源、高感光传感器及精准同步技术,确保图像亮度。实际应用中应综合考虑曝光时间、光源和感光元件,而非单纯追求高帧率。典型配置如高速检测采用<100μs曝光+高亮同轴光+高感CMOS。帧率仅反映数据传输能力,真正的动态清晰度取决于系统整体设计。
2025-07-24 08:52:32
998
原创 为什么 TCP 服务器可以不指定 IP,而客户端必须指定?
TCP通信中服务器与客户端对IP地址的处理存在本质差异。服务器通过0.0.0.0监听所有网卡IP(如Qt中的QHostAddress::Any),而客户端必须明确指定目标服务器IP才能建立连接。文章通过Qt代码示例展示了服务器绑定特定IP与所有IP的区别,并解释了为何客户端不能使用0.0.0.0等泛地址。关键点在于:服务器是"被动接听方",客户端是"主动连接方",这种角色差异决定了IP地址的使用方式不同。
2025-07-23 09:12:33
942
原创 Qt 网络编程如何采用Http进行通信
Qt框架中HTTP通信的核心类包括QNetworkRequest(封装请求信息)、QNetworkAccessManager(管理请求)和QNetworkReply(处理响应)。QNetworkRequest用于设置URL、请求头和属性;QNetworkReply提供响应数据、状态码和错误处理,支持同步/异步处理。典型流程包括构建请求、发送请求、处理响应数据,并支持GET/POST等方法。这些类共同构成了Qt高效、灵活的网络通信机制,适用于各种HTTP交互场景。
2025-07-22 10:56:25
385
原创 工业相机选型保姆级教程:选对像机,项目少走弯路!
工业相机选型5步法:1️⃣根据检测精度和视野计算分辨率;2️⃣由像素自动确定传感器尺寸;3️⃣动态场景选全局快门;4️⃣优先考虑黑白相机(解析度高、传输快);5️⃣GigE/USB3.0接口性价比最优。关键要匹配项目需求,避免因选型不当造成成本浪费。掌握核心参数关系,可快速锁定合适机型。
2025-07-22 10:25:23
461
原创 如何在Qt中使用QGradient控制颜色渐变效果
Qt提供了强大的渐变功能,通过QGradient及其子类(QLinearGradient、QRadialGradient和QConicalGradient)实现颜色平滑过渡效果。用户可通过设置颜色停靠点、起始/终止点等属性控制渐变效果,并配合QPainter的setBrush方法应用于绘制对象。渐变功能可增强UI的视觉层次感,适用于背景、按钮等元素,支持动态控制和性能优化,是Qt图形绘制中的重要特性。
2025-07-21 09:19:10
1065
原创 光学成像系统全解析:从视场到分辨率,一文搞懂
光学成像系统要素与质量影响因素 光学成像通过光学系统捕捉物体光信号形成图像,广泛应用于摄影、医学及工业检测等领域。成像质量由多个关键要素决定: 视场决定观察范围,分辨率影响细节呈现能力; 景深与工作距离共同确保清晰成像范围; 畸变(如桶形、枕形)和视差可能导致图像失真; 传感器尺寸与放大倍数(预放大、系统放大)直接影响图像精度。 此外,镜头参数(焦距、光圈)和术语(每毫米对线、TV线)进一步影响成像效果。优化这些因素可提升系统性能,实现更精准的图像捕捉与分析。
2025-07-21 08:49:21
689
原创 如何使用 QElapsedTimer 精准测量纳秒级别时间
Qt框架中的QElapsedTimer提供了高精度计时功能,支持纳秒级性能测量。相比QTime和QDateTime,它具有跨平台一致性、不受系统时间影响等优势。通过start()/restart()开始计时,使用elapsed()或nsecsElapsed()获取耗时,还能配合hasExpired()实现超时检测。适用于代码性能优化、实时系统等场景,建议每个线程独立使用,并注意防止编译器优化影响测量结果。
2025-07-19 09:16:26
435
原创 STC89C52系列单片机内部结构详解
STC89C52 是基于 MCS-51 内核的增强型单片机,其内部结构集成了多种功能模块,具备强大的数据处理和控制能力,是嵌入式系统中常用的一种微控制器。本文将结合内部结构框图,详细介绍 STC89C52 的各个核心组成部分及其功能作用。
2025-07-18 10:51:37
331
原创 启动与控制外部进程的QProcess 模块
本文介绍了Qt中QProcess类的使用方法和核心功能。QProcess是一个跨平台进程控制类,可用于启动外部程序并实现标准输入输出通信。文章详细讲解了QProcess的五大核心功能:启动外部进程、向进程写入数据、读取进程输出、控制进程状态以及获取执行结果。通过调用ping命令的完整示例,展示了如何创建图形界面并实时显示命令输出。文章还总结了QProcess的常见应用场景和实用技巧,包括调用Python脚本、解决中文乱码、避免UI卡顿等问题。最后对比了QProcess的优缺点,指出它是Qt程序中调用外部命令
2025-07-18 10:29:31
500
原创 2D视觉系统标定流程与关键要求
相机标定是2D视觉系统实现高精度测量的关键步骤。本文从标定板尺寸选择、制作精度、图像采集等方面详细介绍了标定过程中的技术要点。标定板尺寸应为视野的1/3~1/2,制作精度需达0.01mm以内;图像采集需覆盖整个视野,包含不同旋转和倾斜角度,建议12~18张图像。通过Halcon标定助手评估图像质量,控制标定板精度、光照环境和镜头安装等关键因素,可实现0.01mm级的测量精度。严格遵循这些规范,能确保视觉系统满足工业检测等高精度应用需求。
2025-07-17 14:47:00
1367
原创 STC89C52系列单片机简介
STC89C52是一款基于8051内核的增强型单片机,由中国宏晶科技推出。它在兼容传统8051指令系统的基础上,显著提升了性能、功耗和抗干扰能力,工作频率可达35MHz(实测42MHz),支持5V/3V双电压系统。该芯片内置4K-62K Flash程序存储器、512/1280字节RAM,提供35-39个I/O口,集成看门狗、MAX810复位电路、3个定时器和4路外部中断。支持ISP/IAP编程,无需专用编程器,通过串口即可快速烧录程序。其工业级温度范围(-40℃~+85℃)和多种封装形式(如LQFP-44)
2025-07-17 08:53:33
753
原创 51单片机基础知识讲解
本文详细介绍了51单片机(以STC89C52为例)的基本特性与应用。作为经典8位微控制器,51单片机凭借低成本、高性能和丰富外设接口在嵌入式领域广泛应用。文章解析了STC89C52的命名规则、内存配置、35MHz工作频率等参数,剖析了其内部结构(CPU、定时器、串口等)和39个I/O端口功能。重点阐述了最小系统设计方法,包括电源、晶振和复位电路。最后展示了其在智能家电、传感器采集和工业控制等领域的实际应用,指出这款"老旧"芯片仍因易学易用、稳定可靠而保持重要地位。
2025-07-16 11:18:22
943
原创 关于机械臂控制中的 MoveL 和 MoveJ 操作
机械臂的两种关键运动控制方式——MoveL(线性运动)和MoveJ(关节运动)各有特点。MoveL通过协调各关节实现末端执行器的直线运动,适用于焊接、涂胶等需要高精度的场景,但需注意避免路径障碍。MoveJ则允许关节独立旋转,路径呈曲线,适用于搬运等快速移动任务,但需防止关节超限。选择时需权衡精度与速度需求:精密操作选MoveL,快速移动选MoveJ。正确运用这两种方式对提升工业自动化效率至关重要。
2025-07-14 17:44:54
329
原创 如何在QML中使用QImage显示动态图像或外设推送(附示例代码)图像
本文介绍了在Qt中使用QImage和QQuickImageProvider实现QML动态图像显示的方法。通过创建图像提供者类(CameraImageProvider)和图像获取器类(ImageFetcher),实现了从外设(如摄像头)获取图像数据并在QML界面实时显示的功能。核心步骤包括:注册图像提供者、通过信号槽机制更新图像、在QML中使用Image元素请求最新图像。该方法适用于视频流、传感器数据等动态图像场景,保证了图像显示的实时性和代码的可维护性。文章提供了完整的示例源码,涵盖从C++实现到QML调用
2025-07-11 08:49:28
430
原创 Qt 与Halcon联合开发九:算法类设计与实现讲解(附源码)
本文提出了一种基于Qt和Halcon的机器视觉算法类架构设计。通过抽象算法基类HalconAlgorithmBase,统一管理参数与窗口资源,并由具体检测算法子类继承实现。该设计具有以下特点: 采用面向对象思想,实现算法与界面的解耦 支持参数动态配置和统一调用接口 可与Halcon窗口联动,便于调试 具备良好的扩展性和维护性 文章详细介绍了基类设计、子类实现方法以及与Qt的集成方式,为机器视觉系统开发提供了可复用的算法框架方案。
2025-07-08 13:17:16
458
原创 Qt 与Halcon联合开发八: 结合Qt与Halcon实现海康相机采图显示(附源码)
在工业自动化、质量检测以及其他机器视觉领域,相机采集与图像处理的系统非常关键。本项目结合了 Qt 框架和 Halcon 库,配合 海康威视相机SDK,实现了一个完整的相机图像采集与处理系统。该系统不仅能够采集高质量图像,还支持实时显示和处理。
2025-07-07 11:47:52
710
原创 解决Halcon中二维数组使用中的常见报错问题
在Halcon中使用二维数组时,常常会遇到声明二维数组时报错的问题。以下是对这个问题的详细分析、解决方案和代码示例,以帮助更好地理解二维数组的使用方式。
2025-07-02 11:35:08
204
原创 基于Halcon平台的常规OCR与深度OCR性能对比分析
本文基于Halcon平台对比了深度学习OCR与传统OCR的性能差异。实验采用200张数字图像,在相同硬件环境下测试发现:深度学习OCR识别准确率达99%,显著高于传统方法的80%,尤其擅长处理模糊、复杂背景图像,但处理时间略长(300-450ms/图像)。结果表明,深度学习OCR虽耗时稍多,但其高精度、强适应性和持续优化能力使其更具实用价值,特别适用于高精度需求场景。未来可通过模型优化和硬件升级进一步提升实时性。
2025-07-01 11:46:17
947
原创 Qt 与Halcon联合开发七: 多线程图像处理架构设计(附源码)
本文介绍了一种基于生产者-消费者模型的工业视觉系统架构设计,用于解决相机采集与图像处理之间的性能矛盾。系统采用Qt多线程与Halcon图像接口,将海康SDK采集线程作为生产者,图像处理线程作为消费者,通过ImageData容器类实现线程安全的数据中转。该容器支持多缓存队列、等待/唤醒机制和状态反馈,确保了系统的高性能与稳定性。文章详细解析了图像采集回调函数、处理线程逻辑以及状态码设计,并提供了源码下载链接。该架构有效解决了工业视觉项目中常见的卡顿、数据丢失等问题。
2025-07-01 10:59:39
553
原创 机器视觉光源中光色特征是什么意思?
在机器视觉领域,光源的选择和配置对图像质量和分析结果有着重要影响。光源的光色特征,如色度、色温、相关色温和显色指数,都会影响最终的图像质量。以下是这些光色特征的通俗解释以及它们在机器视觉中的重要性。
2025-06-27 13:35:23
312
原创 Qt 与 Halcon 联合开发六:基于海康SDK设计完整的相机类【附源码】
在现代工业自动化、机器人视觉、等领域,相机模块的作用至关重要。通过相机模块采集到的图像数据,我们能够进行一系列的图像处理和分析。为了高效地控制相机和处理图像,本篇文章将介绍如何使用Qt和Halcon联合开发一个相机模块,帮助开发者掌握如何在视觉上位机中应用相机模块。
2025-06-27 13:22:49
1299
2
原创 非标自动化不是卷同行,是在被平台“替代”
过去你以为的对手,是和你一样做项目、搞集成的非标自动化公司。但现在你发现,真正的对手,其实是你一直以来依赖的那些供应商:
2025-06-26 10:22:26
363
原创 Qt 与 Halcon 联合开发五:为何与如何将耗时算法移入子线程
在 Qt 应用程序开发中,界面响应速度直接影响用户体验。而在集成图像处理库如 Halcon 的项目中,耗时算法一旦运行于主线程中,极易造成界面卡顿甚至假死。
2025-06-26 10:05:59
973
原创 Qt联合Halcon开发三:阈值二值化检测软件
本篇文章将介绍如何使用 **Qt** 和 **Halcon** 开发一个简单的图像阈值二值化检测工具。工具主要用于读取彩色图像,将其分解为单通道的RGB图像,并通过调整滑动条来动态地执行二值化处理。
2025-06-20 10:11:05
1368
原创 Halcon中该如何对圆形区域检测与直径测量
如何使用 Halcon 图像处理库进行球形区域的检测,并拟合最小圆以计算其直径。整个过程包括图像预处理、形状提取、圆形检测和最终的直径计算
2025-06-19 10:02:59
597
原创 Qt联合Halcon开发二:Halcon窗口绑定Qt控件显示Hobject图像【详细图解流程】
在本项目中,我们将使用Qt框架与Halcon库结合,展示图像并进行图像处理。
2025-06-19 09:35:51
558
通用的 Qt 安装器,支持安装 Qt 的多个版本(包括较新的版本
2025-06-17
Qt 在线安装程序 ,联网安装
2025-06-17
基于形状匹配的剃须刀刀片检测与缺陷分析的完整Halcon例程代码和示例图像文件
2024-12-27
基于形状匹配与OCR的多图像处理Halcon例程代码及示例图像文件
2024-12-27
高噪声环境下形状匹配的完整Halcon例程代码、示例图像以及相关配套文件
2024-12-27
基于HSV颜色的保险丝分类的完整Halcon例程代码和示例图像文件
2024-12-27
Halcon安全环检测例程资源包
2024-12-27
Halcon液位检测例程代码与图像资源
2024-12-27
工业视觉海康威视MVS客户端使用指南及注意事项
2024-11-25
基于Qt的多功能串口通信工具分享:实时数据收发与波形绘制
2024-09-28
该项目是一个基于 Qt 框架开发的桌面应用程序,主要用于与 MQTT 服务器进行连接和通信
2024-09-24
该串口助手工具基于Qt/C++开发,专为简化串口通信调试与开发而设计,适合新手快速上手 工具具有直观的用户界面和丰富的功能,旨在
2024-09-20
基于Qt/C++实现了一款功能丰富的TCP服务器与客户端调试助手 该工具不仅支持双向发送、群发、定时发送等基本功能,还具备接收显
2024-09-20
串口调试助手、多信息枚举、定时、
2024-09-06
Qt/C++ TCP服务器调试助手
2024-09-06
Halcon20替换DLL,替换后可直接使用
2023-12-12
HalconOCR字符识别源码+点阵字体图像资源
2023-11-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人