自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 PROFINET 调试记录(二):除了提高采样频率,如何验证采样相位问题

摘要:针对PROFINET通信中周期性数据跳变问题,通过采样相位监测和错开实验发现:当发送与接收周期相同且相位对齐时,采样点靠近数据更新边界会放大时序偏移,导致周期性数据异常。实验表明,提高接收频率或引入1ms相位偏移可使采样点远离更新边界,有效消除异常。结论指出应避免相同周期固定相位的采样方式,以降低对边界抖动的敏感性。(149字)

2025-12-24 10:44:08 807

原创 PROFINET 调试记录:一次周期性“丢包”问题的排查与定位

在调试S7-1200 PLC与ERTEC-200P 的 PROFINET RT通讯过程中,通过回环序号统计发现系统存在“丢包”现象。初期仅观察到 PLC中断周期越小,丢包率越高 的趋势,问题一度被误判为通信异常。随后引入 重复采样计数,确认丢包并非数据未到达,而是 PLC 在特定时刻重复采样同一帧IO数据所致。在统一固定PROFINET IO更新时间后,通过 提高采样频率而不改变数据更新节拍 的关键实验,成功消除丢包,实锤问题根因为PLC采样相位不对齐。本文总结了该类问题的工程定位思路

2025-12-22 11:34:51 1035

原创 PROFINET IO 丢包率测试记录|周期相位差、采样策略与统计误差分析

本文测试了STM32与PLC之间PROFINET链路的可靠性。测试方法采用双向递增值传输并计算差值来统计丢包率。结果显示:当发送周期≤2ms时,丢包率显著升高(1ms周期达50%);周期≥3ms时丢包率骤降(4ms周期完全稳定)。测试发现丢包主要由采样点与数据刷新点错位造成,而非真实链路问题。改进测试方式后,10ms监测周期显示丢包率约1.2%,而100ms监测周期则无丢包。结果表明通信周期越短,时序错位导致的假丢包现象越明显。

2025-12-12 13:50:18 331

原创 PROFINET 回环测试调试记录|ERTEC ↔ STM32 SPI 对齐问题分析

摘要:本文分析了PROFINET设备开发中PLC与STM32回环测试出现的异常现象。测试发现SeqBack差值常为2或3,而非预期的1,且丢包率高达50%。经排查,这是由于PLC、ERTEC和STM32三者的时序不同步导致:PLC1ms周期与STM32处理时机错位,造成数据"下采样"。解决方案包括降低PLC序号递增速度(已验证有效)或引入ACK握手机制。结果表明"高丢包率"实为时序不同步导致的伪现象,链路本身稳定,调整判断逻辑后可获得真实丢包数据。(149字)

2025-12-12 09:55:42 901

原创 PROFINET调试-STM32到PLC发送累加数据问题分析

调试STM32通过硬件协议栈与PLC-S1200之间的profinet通讯时,通讯周期1ms,STM32作为SPI从机回复一个数据值,是累加数据,每周期发送一个累加数据带校验,并在PLC中接收解析,在博途软件上监测数值变化和丢失率,测下来发现STM32的解析帧在主循环中不加延时一直跑会有比较大的丢包率。

2025-12-10 15:36:12 266

原创 一个连续发送CAN通信前几个ack不响应的问题:修改为多槽ACK响应机制

摘要: 在设备调试过程中发现连续发送CAN指令时出现ACK响应异常问题。通过分析发现,当连续发送三条指令时,前两条ACK超时,只有最后一条正常接收,但实际三个子控制板都已执行动作。调试发现是由于ACK跟踪机制采用单槽结构,后发命令会覆盖前发命令的cmd_code,导致前两条ACK虽然被接收但匹配失败。解决方案是将单槽ACK跟踪机制改为多槽结构,为每个设备维护独立的命令队列,从而正确匹配所有返回的ACK响应。该问题揭示了在连续通信场景下,单槽响应机制无法满足多命令跟踪需求的局限性。

2025-07-24 14:15:49 328

原创 QT的学习----串口调试软件

在文本框中显示发送的指令字节和接收的指令字节;点击串口端口时会自动刷新串口;可以通过按钮进行指令发送;

2024-09-24 16:57:27 195

原创 Qt打开文件对话框选择文件之后弹出两次的问题

使用QFileDialog::getOpenFileName()打开文本选择框,选择文件之后还会再次弹出。经过一番发现是通过连接信号和槽的函数中,对槽函数的命名与转到槽的自动生成的命名一致才导致这种情况发生;

2024-09-04 14:45:54 570

原创 Qt的学习----信号与槽机制

未完待续........

2024-08-23 14:56:43 266

原创 Qt的学习----界面设计布局要点

选中界面可以在下面属性栏进行属性更改。

2024-08-21 14:18:04 531

原创 Qt的学习----新建工程

安装Qt5.13.2之后,D:\Qt\Qt5.13.2\Tools\QtCreator\bin目录中找到QtCreator应用程序。1:打开应用程序,并选择新建项目;2:选择Qt Widgets Application;3:更改路径和名称;4:选择编译器qmake;5:选择基类信息MainWindow:包含完整菜单栏、工具栏和状态栏的主窗口应用程序框架。适合复杂的应用程序;Widget:是一个简单的窗口,没有内置的菜单栏、工具栏或状态栏,适合简单的或者专用的应用程序。选择Widget勾选Generate f

2024-08-20 16:48:26 396

原创 C++基础

学习C++的基础知识

2024-08-20 15:37:43 1031

单片机多槽ACK响应机制,带DONE响应

实现支持并发ACK管理,每个设备支持多个命令同时追踪,内含使用说明

2025-07-24

QT的学习-串口调试软件

做了一个简单的使用串口的上位机

2024-09-27

步进电机工作原理.pdf

一篇关于步进电机原理的文章,步进电机,顾名思义,就是一步一进,而这样我们怎么样才能控制他前进,她又是靠什么才能迈出步伐,这都有待深思,这篇关于步进电机原理的文章我觉得还不错,分享给大家

2020-03-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除