自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(717)
  • 资源 (537)
  • 收藏
  • 关注

原创 伦茨8400调试引导单双闭环切换版

本文为伦茨伺服系统调试指南,主要步骤包括:1.更新固件并设置Profinet/IP;2.添加电机时需核对温度传感器和反馈类型;3.选择单/双闭环模式(初始调试用单闭环);4.设置减速比、进给量等机械参数,需特别注意方向一致性;5.配置手动/自动速度及加速度参数;6.设置软极限和位置环曲线;7.调整关键参数如跟随误差限、位置/速度环增益等。重点提示:调试前需手动验证方向,双闭环切换需断电操作,并注意参数间的匹配关系。

2026-07-25 19:32:00 122

原创 ABB机器人更换润滑油

2026-07-25 11:21:05 12

原创 Keil5编译器报错:ARMLMD_LICENSE_FILE unset

【摘要】Keil MDK V5.38默认使用编译器6导致兼容性问题,用户安装独立补丁的编译器5(V5.06u7)后出现许可证报错。解决方案:需将ARM编译器V5安装在Keil目录下的\ARM\ARM_Compiler_5.06u7路径(如D:\Keil\ARM\ARM_Compiler_5.06u7),然后在工程中重新选择编译器5即可解决"ARMLMD_LICENSE_FILE unset"等环境变量未设置的报错问题。(98字)

2026-07-21 22:58:36 33

原创 基于Lenze 9400驱动器的更换与参数配置 立库升降机系统维护技术方案

本文详细介绍了立库现场9400驱动器的更换流程:1)关闭电机维修开关确保安全;2)通过调试线核对并备份驱动器参数;3)更换驱动器时注意UVW接线顺序,先接24V电源再接网线;4)参数下载需先格式化安全模块;5)完成零点标定(需单位换算和模式设置);6)最后打开维护开关测试运行。全文重点强调了接线顺序不可错、参数一致性检查和安全操作流程,适用于类似工位驱动器更换作业。

2026-07-07 12:05:31 103

原创 如何使用Lenze Engineer软件的示波器功能

本文介绍了9400变频器使用Engineer软件采集数据的具体操作步骤:1. 打开软件进入Oscilloscope界面;2. 添加电机速度给定值、速度反馈值等变量并设置参数(单位、Y轴刻度等);3. 设置Trigger源后开始采集数据;4. 采集完成后可优化视图并保存数据(建议保存在程序中)。最后提供了电机转速(rpm)转换为线速度(mm/s)的公式:线速度= (转速/减速比)×Feedconstant,其中Feedconstant参数为C2524/0。

2026-07-07 11:34:55 20

原创 堆垛机PLC控制系统功能块 站台信号控制 FC25

本文介绍了堆垛机控制系统的STEP7硬件组态,核心部件为CPU 314C-2PN/DP处理器和SM338位置输入模块。系统通过站台列表管理激光读数值,实现站台块置位功能,并详细描述了一叉站台的取放货流程。关键控制逻辑体现在站台允许信号的置位处理,通过DB30数据块和地址寄存器AR1实现信号状态读取与输出控制(OUT0)。整个系统展现了基于STEP7的堆垛机自动化控制方案,包含硬件配置、变量管理和基本操作流程。

2026-07-07 10:56:02 18

原创 堆垛机PLC控制系统功能块 运动限制FC24

该文介绍了堆垛机控制系统的STEP7编程实现,主要包括:1)硬件组态配置,采用CPU 314C-2PN/DP和SM338等模块;2)系统变量定义;3)初始化控制;4)货叉动作控制;5)货格货物检测及叉站台取放货操作;6)自动/手动模式切换及步骤控制,包含左右伸叉操作功能。文章概述了该控制系统的核心功能模块和实现方法。

2026-07-07 10:47:07 15

原创 并发性能优化复盘

本文介绍了服务治理系统接口性能优化的全过程。系统通过缓存和并发优化,将单个环境资源查询时间从1分多钟降至20秒。主要优化点包括:1)修复代理客户端竞态问题;2)预热缓存减少20ms延迟;3)将并发协程数从20提升到100;4)重构API设计避免重复创建协程。意外发现是并非所有并发都能提升性能,当任务执行时间过短时,协程调度开销反而会导致性能下降。最终优化后的接口耗时2分30秒,满足5分钟的超时要求。该案例验证了Go并发优化中"扇出模式"的适用条件:长时间运行且无依赖的任务才适合并发处理。

2026-06-22 09:24:51 357

原创 海康RCS Linux Rockylinux系统安装部署文档

本文详细介绍了Linux系统部署的完整流程,主要包括以下步骤:1.选择部署语言;2.磁盘分区(删除冗余分区、修改VG名称、创建根目录和/mvd分区);3.软件选择最小化部署;4.设置上海时区;5.可选IP配置;6.设置root密码;7.完成安装后配置IP地址和SSHD服务(修改端口为55555并允许root登录);8.防火墙配置;9.特别强调需确保无swap交换空间;10.按照《Rcs-2000v4.1安装手册》从3.4节开始部署应用。关键操作包括nmcli网络配置和firewall-cmd防火墙规则设置。

2026-06-06 23:04:12 60

原创 Lenze伦茨8400调试引导_单双闭环切换版

本文摘要:8400控制器固件更新与调试指南 固件更新:通过Easystart获取最新固件并更新。 网络配置:使用Engineer软件设置Profinet/IP或Profibus名称;更换控制器时需右键选择替换。 电机设置:输入C86序号并匹配温度保护传感器类型(如Resolver反馈需连接X7接口)。 闭环模式选择:初始调试用单闭环(模式4),完成后切换至单/双闭环可切换版(模式10)。 机械参数:输入减速比(Z2/Z1)和进给量(如轮周长πd),计算最大速度并同步至手动/自动曲线。 关键调试步骤: 手动测

2026-06-06 09:43:57 42

原创 西门子V20变频器使用和接线说明

本文介绍了西门子V20变频器的接线图和控制方式,重点说明了变频器端子控制的具体实施方法。通过4个开关量输入点(DI1-DI4)控制电机运转(正转、反转、故障复位、高速信号),1个开关量输出点(DO2)用于故障信号输出。详细列出了13项关键参数设置步骤,包括电机额定参数、数字输入输出功能配置、频率设置等,并说明了参数设置的优先级和操作方法。特别提示了快速调试模式进入方式及部分参数设置时需要先调整P0003访问等级的操作要点。

2026-06-06 09:20:17 118

原创 ABB机器人仿真IO设置

ABB机器人I/O板设置步骤:1. 进入控制面板-I/O分配;2. 添加Unit单元:命名(如motors1),选择类型d651,设置DeviceNET地址(需唯一);3. 配置Signal信号:命名(如Di1),设置为数字输入,关联对应Unit并映射地址;4. 设置SystemInput:关联信号并选择执行动作。使用时需将I/O地址数据类型改为signaldi。注意每个I/O地址必须唯一,Unit映射地址通常设为1。

2026-06-06 09:17:53 25

原创 博图环境下利用SICK官网S7功能块实现RFU620对RFID芯片的读取

本文摘要介绍了SICK RFU620读码器的配置与使用流程。主要内容包括:1)博途软件中GSD文件安装、硬件组态及PLC程序编写要点;2)SOPAS软件中读码器参数设置,包括触发模式调整、读码功率优化(建议9dBm)和输出格式配置;3)读码测试方法及故障处理,强调需保持20cm以上安全距离。文档提供了硬件接口定义、数据块配置说明,并指出可参考现有程序案例(如FC113_Read_Bar_DP)。完整配置需下载参数至设备并永久保存。

2026-06-06 09:14:02 37

原创 基恩士KEYENCE SR-2000 基恩士读码器TCP/IP协议设置

本文介绍了基恩士SR-751读码器的设置步骤:1)通过软件搜索并连接读码器,调整激光指示器至最佳距离;2)设置IP地址和TCP/IP通讯参数;3)配置读取参数(触发命令、错误返回字符串等);4)使用终端或TELNET测试通讯。PLC端需设置读码器IP和端口号,使用TSEND_C/TRCV_C块进行通讯,注意发送指令需包含终端识别符(如"K"的ASCII码加16进制后缀)。不同品牌读码器对终端符要求可能不同。

2026-06-06 08:52:44 422 1

原创 日常问题排查-空闲一段时间再请求就超时

本文分析了外网调用偶发超时问题的根本原因和解决方案。通过排除服务端关闭连接、路由抖动等可能性,最终确定问题源于NAT设备对空闲连接的超时清理机制(默认15分钟)。作者提出了三种解决方案:1)使用短连接(可能引发端口耗尽问题);2)设置6秒空闲连接自动回收(推荐方案,平衡性能和稳定性);3)心跳保活机制(实现较复杂)。文章强调系统化网络知识的重要性,指出NAT作为IPv4地址短缺的临时方案存在固有缺陷,需要针对性解决。这些方案已在HttpClient等工具中内置实现,合理配置即可避免此类问题。

2026-06-06 07:18:16 394

原创 立体仓库PLC基于TCP/IP协议的DataLogic得力捷读码器硬件配置

本文摘要: 文章详细介绍了DataLogic得利捷读码器的配置步骤与西门子PLC通讯设置方法。读码器配置包括IP设置、触发信号选择(TCP接收字符'T')、相位控制、输出格式调整及参数优化(距离/增益/曝光)。PLC程序基于TSEND/TRCV模块,通过设定IP、端口等参数实现通讯,支持条码数据转换(如6位数字转DINT格式)及读码率统计功能(刷新时间设定、数据清零)。重点提示:输出格式需删除默认CAN字符避免串码,建议通过自动调节优化读码视野与清晰度。全文提供完整硬件调试与软件参数配置方案。

2026-06-06 07:12:44 203

原创 堆垛机PLC控制系统运动限制 FC24

1、堆垛机控制系统STEP7硬件组态如下图。2、堆垛机控制系统STEP7内部变量。

2026-05-25 12:58:41 187

原创 Oracle Deep Data Security (Deep Sec) 初体验

关于数据安全,之前介绍过的 Oracle RAS 虽然强大,但规则定义还是太复杂,如今 Oracle 推出的 Deep Data Security (Deep Sec) 重新定义了AI智能体时代的数据安全玩法,不但继承了RAS的核心功能,而且其提供的直接使用声明式SQL来配置的方法,也让AI时代的数据安全从此变得既简单又可控。

2026-05-17 21:17:44 510 1

原创 可视化Excel文档合并工具

这篇文章介绍了一款简洁易用的Excel文件合并工具,主要特点包括:1)直观的界面设计,分为目录设置、合并设置、文件列表和保存设置四大模块;2)核心功能支持批量扫描文件、智能排序、可视化操作和本地安全处理;3)只需3步简单操作即可完成合并,适合财务、运营、行政等多场景使用;4)相比传统手动或VBA方式,具有操作简单、速度快、数据稳定等优势。该工具特别适合需要频繁合并Excel文件的职场人士,能显著提高工作效率。

2026-05-17 21:14:21 569

原创 西门子V90故障报警列表

摘要 本文详细列出了工业驱动系统中可能出现的故障代码、报警信息及其处理方案。故障分为硬件/软件故障、通讯故障、电源故障、过载故障等类别,涵盖内部软件错误、编码器故障、电机过热、直流母线电压异常、总线通讯中断等多种情况。针对每个故障代码(FXXXX)和报警代码(AXXXX),文档提供了故障描述、反应方式(OFF1/OFF2/OFF3)以及具体的处理建议,包括检查连接、重启设备、更新固件、调整参数、更换部件等解决方案。这些系统化的故障处理指南有助于技术人员快速定位问题并采取相应措施,确保驱动系统稳定运行。

2026-04-21 10:40:50 640

原创 单表五亿数据的查询优化 Mysql、StarRocks

本文对比了MySQL与StarRocks在大数据量场景下的性能表现。测试环境使用AMD Ryzen 7 7845H处理器和32GB内存,写入5亿条用户数据。结果显示:MySQL写入4.6亿条数据占用136GB存储空间,而StarRocks占用256GB。在统计查询方面,MySQL全表count(*)需要1-2分钟,StarRocks仅需260ms。索引使用方面,MySQL在like查询时性能差异显著(前缀匹配13ms vs 通配符匹配347ms),且多条件查询时索引选择受限。文章还提出了Token游标分页方

2026-04-13 09:54:56 154 1

原创 基于HelixToolkit.SharpDX 渲染3D模型

本文介绍了使用HelixToolkit.SharpDX在WPF中实现3D模型展示的方法。主要步骤包括:1)通过NuGet安装HelixToolkit.Wpf和SharpDX.Core.Wpf包;2)在XAML中引入命名空间并配置3D视口,包含相机控制、光源设置和模型渲染;3)实现视图模型处理模型加载、材质管理和选中效果,支持STL/OBJ/3DS格式;4)演示了机器人关节模型的加载与交互,包括选中高亮、视图旋转缩放等功能。

2026-04-13 09:51:37 142

原创 堆垛机PLC控制系统运动限制功能块FC24

本文介绍了堆垛机控制系统的硬件配置与关键变量设置。系统采用CPU 314C-2PN/DP作为主控制器,配备SM338位置输入模块和模拟量输出模块。重点阐述了走行机构的状态监测变量,包括反原点信号、变频器故障和空开故障等保护功能。同时详细说明了货叉操作相关的控制标志,如手动左右伸保持标志、货格检测标志及货叉极限位置信号,为堆垛机的自动化运行提供了完整的控制逻辑基础。

2026-04-12 20:46:27 161

原创 堆垛机PLC控制系统安全继电器控制块FC22

摘要:堆垛机控制系统采用西门子S7-300系列PLC(CPU 314C-2PN/DP)为核心控制器,配置SM338定位输入模块和模拟量输出模块。系统通过安全继电器实现多重保护功能,包括走行前后极限、配重失效、升降极限、紧急停止等安全联锁。程序设计包含安全继电器复位逻辑和200ms振荡信号源,确保设备在异常情况下能快速停机并实现安全复位。系统硬件组态和变量设置完整,为堆垛机运行提供了可靠的控制和安全保障。(148字)

2026-04-12 20:37:08 47

原创 Seata与分布式事务

TC(Transaction Coordinator)事务协调者:Seata服务器,用于全局控制,比如在XA模式下就是一个协调者角色,而一个分布式事务的启动就是由TM向TC发起请求,TC再来与其他RM进行协调操作。

2026-03-27 10:50:27 295

原创 [Linux][虚拟串口]0x03一个特殊的字节

然后有趣的事情开始了,开始时简单测试收发一切正常,然后机器开始自主运行,每当机器运行超过20W个脉冲之后就会莫名奇妙的停止,通过打印日志发现M4会发送一些不符合通信协议的数据过来,导致Linux发现接收的数据不对一直在重复请求数据重发,可是M4那边发送的数据是写的固定长度。我把电机实际脉冲数int类型拆分成了4个char,类似于(以下为示例代码不可运行,大端模式)在串口默认模式下,Linux 会启用的规范模式将 0x03 当作中断字符,一旦遇到这个字符便会舍弃0x03之前的内容,导致出现数据丢失。

2026-03-27 10:45:32 286

原创 现代工业移动机器人软件生态系统

本文系统探讨了现代AGV/AMR控制系统的技术演进与架构实现。随着工业自动化需求升级,传统AGV已向智能AMR转型,核心技术从硬件转向软件,强调集群协同、实时通信与系统集成。文章重点分析了三大技术支柱:1. VDA5050标准化协议实现异构车队协同调度;2. ROS中间件桥接技术解决单机自主性问题;3. C#生态在工业通信协议封装中的核心作用。通过开源框架与商业SDK的深度整合,现代AGV系统实现了从底层传感器到云端决策的全栈贯通,并展望了5G、数字孪生和AI预测等前沿技术的融合方向。

2026-03-23 10:26:26 579

原创 MyBatis-plus拓展之字段类型处理器、自动填充和乐观锁

本文介绍了MyBatis-plus的核心拓展功能:1)逻辑删除通过@TableLogic注解或全局配置实现标记删除;2)通用枚举使用@EnumValue标注映射值;3)字段类型处理器实现JSON与Map转换;4)自动填充功能处理创建/更新时间;5)防止全表更新插件配置;6)MyBatisX插件的快速开发;7)乐观锁实现并发控制;8)代码生成器自动生成项目文件;9)SQL打印分析监控执行;10)多数据源动态切换。这些功能极大提升了开发效率,同时提供了数据安全和性能优化方案。

2026-03-14 08:13:12 388

原创 C# + ViewFaceCore 快速实现高精度人脸识别

人工智能技术快速发展,人脸识别技术已广泛应用于安防监控、移动支付、社交娱乐等多个领域。本文介绍基于C#开发的WFFace人脸识别系统,该系统采用WinForm框架开发,集成ViewFaceCore开源库实现核心算法,通过SkiaSharp处理图像数据,在VS 2022开发环境下完成。系统不仅具备基础的人脸检测功能,还扩展了性别识别、年龄预测等高级特性,形成完整的图像处理解决方案。项目定位为轻量级人脸识别工具集,采用模块化设计思想,将核心算法与界面展示分离。

2026-03-14 08:11:36 467

原创 Oracle数据库物理备份工具支持本机+异机

摘要:该工具针对Oracle数据库备份场景进行了全面升级,支持本机物理备份和异机备份两种模式。自主研发的底层架构既能匹配业务系统备份节奏,又能避免通用工具的适配问题,显著提升备份灵活性与安全性。提供从本地快速备份到跨服务器异地存储的一站式解决方案,并支持通过EXCEL模板查看备份内容,为Oracle数据安全提供可靠保障。(148字)

2026-03-11 14:36:03 158

原创 一文讲清楚 OpenClaw 以及 Windows 下的部署

OpenClaw是一个AI系统运行时管理平台,主要负责将外部请求接入并管理后端AI执行系统。它包含两大核心功能:1)接入层 - 统一连接Web/App/IM等外部入口;2)运行时管理 - 提供配置、鉴权、路由等运维能力。不同于单纯聊天界面,OpenClaw将AI能力封装成可管理的服务,支持Agent、Workflow、Skill等组件的协同运行。典型应用场景包括构建可控的知识库服务、创建可复用能力库等。部署建议优先选择Linux环境,Windows需注意token加载等特殊配置。随着AI从"聊天&

2026-03-07 19:09:23 996

原创 在 Windows+WSL2 上部署 OpenClaw AI

WSL2 给你的不是模拟器,是一个跑在 Hyper-V 上的真实 Linux 内核,而且你不需要学习linux,就像操作Windows上的一个命令行窗口一样简单。我目前配置的主大脑是 Gemini 3 Flash,效果很好,反应速度很快,而且是原生多模态有视觉能力。这才是这篇文章的核心价值。云服务器的数据存在别人的机房里,你的 API Key、聊天记录、知识库全在云端。但 WSL 里没有浏览器,Windows 侧浏览器的回调又穿不透 WSL 的网络隔离——登录流程无限挂起,没有任何报错,就是卡住不动。

2026-03-07 19:07:19 1430

原创 关于前端项目运行不兼容20.10.0的解决方法

摘要:安装Node.js 20.10.0后运行yarn install时出现版本不兼容错误,提示node-ipc模块不支持该版本。通过执行yarn config set ignore-engines true命令忽略引擎版本检查后,成功解决了依赖安装问题。该方法避免了逐个升级模块的繁琐操作,快速完成了项目依赖的安装。

2026-03-07 12:49:37 48

原创 用 GPUStack + OpenClaw 无限用的本地 AI 助手

推理后端」→「编辑 vLLM」→「添加版本」

2026-03-03 14:00:11 969

原创 高光谱成像高光谱图像

高光谱图像是一种包含数十至数百个连续窄波段光谱信息的图像,相比传统RGB图像的三通道结构,每个像素点都记录了物体在不同波长下的反射特性,形成高维光谱特征向量。其核心优势在于能够通过光谱特征识别物质本身,而不仅依赖视觉外观,因此在遥感地物分类、材料识别和医学检测等领域具有独特价值。深度学习模型处理高光谱数据时需要专门设计网络结构,关注光谱反射模式和空间特征,与RGB图像模型不兼容。当前研究方向包括提升模型表达能力、降低计算成本、减少标注依赖等,以充分发挥高光谱数据在物质识别方面的潜力。

2026-03-03 13:57:23 913

原创 Claude Opus 4.6 与 国产 M2.5 实测

摘要:MiniMax M2.5以超高性价比(1美元/小时)挑战高价大模型市场,实测显示其编程能力惊艳,在项目重构和全栈开发中展现出"老架构师"般的规划能力。该模型采用原生Spec行为,实现文档驱动的四步开发流程,并支持私有化部署。与Claude Code结合使用时,可节省90%的Token费用,使复杂Agent任务的经济可行性大幅提升。M2.5在OpenRouter调用量迅速登顶,成为开发者替代高价模型的新选择。

2026-02-28 12:14:33 1093

原创 springMVC-HTTP消息转换器与文件上传、下载、异常处理

摘要:本文介绍了SpringMVC中HttpMessageConverter的用法,包括@ResponseBody、@RequestBody等注解的使用,以及JSON转换、文件上传下载的实现方式。重点讲解了StringHttpMessageConverter、MappingJackson2HttpMessageConverter等转换器的应用场景,并详细说明了文件上传下载的配置和实现步骤。此外还介绍了异常处理机制,包括DefaultHandlerExceptionResolver和自定义异常处理器的配置方法

2026-02-28 12:10:12 662

原创 堆垛机PLC控制FC21功能块减速段控制

摘要:本文介绍了堆垛机控制系统的硬件配置和关键变量设置。硬件采用CPU 314C-2PN/DP处理器,配置SM338 POS-INPUT和AO2x12Bit模块。系统内部变量包括走行减速距离、速度、测距变化率等运行参数,以及走行自学习标志、抱闸标志、超速标志等状态指示,同时包含升降减速和自学习相关参数。这些配置和变量共同构成了堆垛机控制系统的核心功能模块。(120字)

2026-02-26 14:29:16 252

原创 堆垛机控制系统测距器校验FC20

摘要:本文介绍了堆垛机控制系统的STEP7硬件组态,采用CPU 314C-2PN/DP和SM338模块。系统包含走行和升降运行控制程序,通过DB数据块进行位移计算与误差校验。走行运行程序通过双字运算实现位移差值计算,并采用取整处理;升降运行程序采用类似逻辑,实现精确位置控制。文中还提及走行与升降的认址测距校验错误问题。控制系统通过数据块存储关键参数,实现堆垛机的精确定位控制。

2026-02-26 14:05:59 259

原创 C# PC版微信消息监听自动回复

本文介绍了基于Windows消息机制的微信消息监听实现方案。通过重写DefWndProc方法捕获WM_COPYDATA(74)消息,解析微信不同操作类型:当WParam为10003时处理登录信息,获取用户昵称和wxid;当WParam为10012时处理群聊消息,使用正则表达式提取群ID、群名称、发送人昵称和消息内容。系统通过关键字匹配机制,当检测到预设关键词时自动调用SendMessage方法进行回复,实现了基于Windows API的消息收发功能。该方案利用COPYDATASTRUCT结构体传递数据,通过

2026-02-23 09:10:47 956

TIA-Portal-V17-HSP.zip

TIA_Portal_V17_HSP.zip

2026-07-30

TIA-Portal-V15-HSP.zip TIA15 hsp0276 s71200 cpu v4.3 v1.0 hsp0280 s71200 cpu bundle v4.3 v1.0 下载

TIA15 hsp0276 s71200 cpu v4.3 v1.0 hsp0280 s71200 cpu bundle v4.3 v1.0 下载

2026-07-30

四向车WCS 源码 win-SubWalk-Learn-W.c

四向车WCS 源码 win_SubWalk_Learn_W.c static u32 sSubSensorState; //子道数孔传感器状态 static double sV_RPM_Factor; static u16 DacValue; static u32 W_Sub_HoleAndHole_Encoder_Min; // static u32 W_Sub_HoleAndHole_Encoder_Max; // static u32 W_Sub_HoleAndMain_Encoder_Min; // static u32 sWalkMotor_Cur_AbsEncoder; //当前绝对编码器脉冲数 static u32 sWalkMotor_Pre_AbsEncoder; //上次绝对编码器脉冲数 static u32 sWalkMotor_PitchEncoder; //两个孔之间的编码器脉冲数

2026-07-30

四向车单片机 ARM 控制程序win-SubWalk-RePosCtrl.c

四向车单片机 ARM 控制程序win_SubWalk_RePosCtrl.c case WM_EMERGENCY_STOP: if( Parameter==STOP_WALK_PLACE ){ if( GetSignal(SUB_HOLE_A)==0 && GetSignal(SUB_HOLE_B)==0 ){ CloseWindow(MAIN_TASK); (*ActiveWindowProc(MAIN_TASK))(WM_SUB_WALK,SUB_WALK_REPOS_OK,0,SYS_WIN_SUBWALK_REPOSCTRL,0); } else{ RT_LOG(RT_LOG_WCS,("\n数孔光电A:%d,数孔光电B:%d\n",GetSignal(SUB_HOLE_A),GetSignal(SUB_HOLE_B))); if(sTagProperty==SUB_PROPERTY_POS){//普通货位 LOG_ALARM_CODE(ALARM_WALK_REPOS_SUB_NOT_IN_HOLE);//小车重定位后不在孔内 CloseWindow(MAIN_TASK); (*ActiveWindowProc(MAIN_TASK))(WM_ALARM_CODE,ALARM_WALK_REPOS_SUB_NOT_IN_HOLE,0,SYS_WIN_SUBWALK_REPOSCTRL,0); return; }

2026-07-30

Keil单片机开发入门项目win-SubWalk-Pos-Main-Ctrl.c

Keil单片机开发入门项目win_SubWalk_Pos_Main_Ctrl.c

2026-07-30

win-MainWalk-Learn-W.c 限位编码器脉冲数

win_MainWalk_Learn_W.c static s32 sWalkMotor_Limit_Pre_AbsEncoder; //限位编码器脉冲数,用于判断是否到限位 static s32 sWalkMotor_Limit_Pitch_AbsEncoder; //限位编码器脉冲数,用于判断是否到限位

2026-07-29

ScanInput.c 扫描关机按钮

ScanInput.c PowKeyBoard();// 扫描关机按钮 #endif // 扫描遥控器IO点变化 RF_Chip_IO_Read();

2026-07-28

Keil单片机开发入门项目Fram-API.c

Keil单片机开发入门项目Fram_API.c

2026-07-27

四向车Read-Config.c #define BOOT-HARDWARE-VERSION-ADDRESS (USER-APP-END-ADDRESS - 0x0000000C) //

static u16 Ver_Year, Ver_Month,Ver_Date,Ver_Number;//软件版本-年,月,日,子版本 #define BOOT_HARDWARE_VERSION_ADDRESS (USER_APP_END_ADDRESS - 0x0000000C) //0x00000105Bootloader硬件为F105 #define BOOT_SOFTWARE_VERSION_ADDRESS (USER_APP_END_ADDRESS - 0x00000008) //0x000A0001Bootloader软件为10.1 #define BOOT_USER_APP_FLAG_ADDRESS (USER_APP_END_ADDRESS - 0x00000004) //FLASH最后的位置

2026-07-27

AlarmCode.c//伺服电机类 #define MSG-ALARM-MOTOR-ALARM-SUB "子道行走驱动器报警,检查子道轨道上是否有杂物,导致小车被卡住了 " #d

AlarmCode.c //伺服电机类 #define MSG_ALARM_MOTOR_ALARM_SUB "子道行走驱动器报警,检查子道轨道上是否有杂物,导致小车被卡住了。" #define ENG_MSG_ALARM_MOTOR_ALARM_SUB "The child road drive alarm, check the subtrack path is a clutter, cause the car is stuck. " #define MSG_ALARM_MOTOR_ALARM_MAIN "母道行走驱动器报警,检查母道轨道上是否有杂物,导致小车被卡住了。" #define ENG_MSG_ALARM_MOTOR_ALARM_MAIN "The bus driver alarms to check whether there is debris on the bus track, which causes the car to be stuck. " #define MSG_ALARM_MOTOR_ALARM_FORK "货叉电机驱动器报警,检查取放货时,是否被卡住。" #define ENG_MSG_ALARM_MOTOR_ALARM_FORK "The motor driver of the fork alarms to check whether it is stuck when taking and putting goods." #if (configUSE_SINGLE_LIFT_MOTOR) #define MSG_ALARM_MOTOR_ALARM_LIFT "顶升换向驱动器报警,检查换向结构是否卡住,需要进行手动调整。" #else #def

2026-07-26

SysWindowMsg.c 写入AlarmCode缓存区 根据AlarmCode寻找报警信息

SysWindowMsg.c 写入AlarmCode缓存区 根据AlarmCode寻找报警信息

2026-07-26

救援器发给主控板读取设备参数 主控板反馈 RSC-Ctrl.c

救援器发给主控板读取设备参数 主控板反馈 RSC_Ctrl.c

2026-07-26

subway-rcs-server JAVA MVC项目 前后端 前端VUE 源码 地铁项目

subway_rcs_server JAVA MVC项目 前后端 前端VUE 源码 地铁项目

2026-07-24

win-SubWalk-Pause-Stop.c 减速停止后停留在此窗口,更新当前状态为暂停,可接受任务取消,任务恢复,当前位置为可靠位置

win_SubWalk_Pause_Stop.c 减速停止后停留在此窗口,更新当前状态为暂停,可接受任务取消,任务恢复,当前位置为可靠位置

2026-07-25

Go语言并发编程实战项目 win-CANOpen-Stop.c

Go语言并发编程实战项目 win_CANOpen_Stop.c

2026-07-25

四向车win-CANOpen-TPDO-Set.c

win_CANOpen_TPDO_Set.cv {KINCO_QUICK_STOP_MODE , 6 }, //快速停止模式,2快速停止减速度停止 6:快速减速度停止,最后停在快速停止状态 {KINCO_HALT_MODE , 6 }, //报错停止模式,2快速停止减速度停止 {KINCO_QUICK_STOP_DEC , (u32)(150*POS_ACC_FACTOR) }, //快速停止减速度 150rps

2026-07-25

deyuan-wcs-master WCS项目 堆垛机 C#项目源码

deyuan-wcs-master WCS项目 堆垛机 C#项目源码 public string code { get; set; } public string taskno { get; set; } public bool tray { get; set; } public bool alarm { get; set; } public int connect { get; set; } public int rack { get; set; } public int column { get; set; } /// <summary>行走坐标(mm),PLC 实时读数,供前端沿轨道平滑定位。</summary> public int posXmm { get; set; } /// <summary>升降坐标(mm)。</summary> public int posYmm { get; set; } /// <summary>货叉坐标(mm)。</summary> public int posZmm { get; set; } /// <summary>当前层(R_I_PosY)。</summary> public int row { get; set; } /// <summary>行走方向:0=静止 1=正向 2=反向,前端平滑动画用。</summary> public int movedir { get; set; } // ===== 双工位字段(单工位设备下均为 0/false,前

2026-07-23

deyuan-wcs-huanchuan WCS项目 环穿 C#项目

================================================================================ 方案B 改造指南:PlcService 线程安全改造 + 输送线设备全并行 适用项目:ShanXi-MeiYe-WCS 编写时间:2026-06-13 前置条件:已完成方案A(按PLC分组并行)的改造 ================================================================================ 【目标】 当前方案A:不同PLC之间并行,同一PLC内设备串行 方案B完成后:不同PLC之间并行,同一PLC内设备也并行 效果:30台PLC × 每台100节线体,所有3000台设备同时轮询,轮询速度最快 【核心原理】 WriteSignal 的 WriteSignalQueue 是普通 Queue(非线程安全),多线程同时写会崩溃。 方案B 在 PlcService.WriteSignal 内部加"每台PLC独立的 lock", 使写队列操作串行化到PLC粒度——不同PLC互不干扰,同一PLC内的并发写被锁保护。 这样上层 CovTask_Request 就可以让每台设备独立跑一个 Task,彻底并行。 【风险评估】 - PlcService.WriteSignal 是全局公共方法,改动影响: CovTask_Request.cs(输送线) ArmTask_Request.cs(机械臂) SrmTask_Request.cs / SrmTask_RequestTest.cs(堆垛机) RgvTask_Request.cs(单工位RGV) Rgv

2026-07-23

PCV100-F200-B17-V1D Software Vision Configurator

PCV100-F200-B17-V1D Software Vision Configurator

2026-07-23

GSDML-V2.41-Pepperl+Fuchs-PXVxQ-20210104.xml

GSDML-V2.41-Pepperl+Fuchs-PXVxQ-20210104.xml

2026-07-23

gsdml-v2.31-datalogic-5k1p-20170529-100000.xml

gsdml-v2.31-datalogic-5k1p-20170529-100000.xml

2026-08-21

gsdml-v2.33-jy-entalk-20210807.xml

gsdml-v2.33-jy-entalk-20210807.xml

2026-08-21

gsdml-v2.33-#siemens-preconf-0pnpn-coupler.x2-20250502-104718.xml

gsdml-v2.33-#siemens-preconf_0pnpn_coupler.x2-20250502-104718.xml

2026-08-21

gsdml-v2.32-datalogic-m120-20160628.xml

gsdml-v2.32-datalogic-m120-20160628.xml

2026-08-21

gsdml-v2.25-sick-dl100-20191106.xml

gsdml-v2.25-sick-dl100-20191106.xml

2026-08-21

gsdml-v2.31-siemens-sinamics-g120s-vector-20200511.xml

gsdml-v2.31-siemens-sinamics_g120s_vector-20200511.xml

2026-08-21

gsdml-v2.33-odot-bn8032-20221010.xml

gsdml-v2.33-odot-bn8032-20221010.xml

2026-08-21

wcs-platform-master连接 WMS 与 AGVPLC 的仓储任务调度系统.zip JAVA 源码

wcs-platform-master连接 WMS 与 AGVPLC 的仓储任务调度系统.zip JAVA 源码

2026-08-06

步科驱动器 急停win-KincoCAN-Break.c

win_KincoCAN_Break.c // 1 对于步科驱动器 急停 // 3500 - 00FD 什么? // 6F00 - 写入2个字 目标速度 // 3100 - 000F

2026-08-05

四向车控制程序win-L-Four-Take-Out-Func.c

win_L_Four_Take_Out_Func.c * 取货流程 * 1.拨指全收 * 2.伸叉 一段速到目标位置 * 3.放拨指最边沿侧拨指 * 4.回叉,过中心点 二段速,先低速回叉贴料箱,之后高速收叉 * 5.货叉回中,检测中心点 * 6.放另侧拨指 * 7.检测取货是否取到货 有信号->取货成功 * 无信号->取货无货 * 8.取货完成之后确定,当前传感器信号->信号正常->流程结束 * ->信号异常->等待3s后确认->信号仍然异常,取货校准流程

2026-08-04

win-L-Four-Put-In-Func.c 货叉二段速从第二位置点到目标点 Pulse5 Speed5 Pulse6 Speed6

Keil单片机开发入门项目 //货叉放货控制 //2拨指 4拨指 /** * 放货流程 * 1.放下料箱两侧拨指 * 2.伸叉 二段速,先低速伸叉贴料箱,之后高速伸叉 * 3.收放货侧拨指 * 4.收叉回中 一段速收叉,检测中心点 * 5.收全部拨指 * 6.检测放货是否成功 有信号->放货后叉内有货 * 无信号->放货成功 */ //4拨指 /** * 倒货 * 1.货物两次拨指放下 * 2.倒货伸叉,二段速 * 3.收倒货目标侧拨指 * 4.倒货收叉,回中,一段速 * 5.全收拨指 */

2026-08-04

win-L-Four-Fork-PosCtrl-Two-Speed.c

win_L_Four_Fork_PosCtrl_Two_Speed.c LOG_ALARM_CODE(ALARM_FORK_ONE_SPEED_PARAM_ERR);//取货货叉参数错误 CloseWindow(MAIN_TASK); (*ActiveWindowProc(MAIN_TASK))(WM_ALARM_CODE,ALARM_FORK_ONE_SPEED_PARAM_ERR,0,SYS_WIN_L_FOUR_FORK_POSCTRL_ONE_SPEED,0); return;

2026-08-03

win-L-Four-Fork-PosCtrl-One-Speed.c

win_L_Four_Fork_PosCtrl_One_Speed.c static void TimerProc_OverTime(u16 hTimer) { if(sStep==3){ if( !ForkMotor.StatusWord.Bits.Status_TargetReached ){//目标位置到 sForkMotorEncoderErr = abs(ForkMotor.RealEncoder - sPulse_E); if(sForkMotorEncoderErr <= 1000){ //编码器值误差小于1000,则认为到位。 RT_LOG(RT_LOG_WCS,("货叉电机目标位置未到但编码器与目标位置差值%d<=1000,认为目标位置到",sStep,sForkMotorEncoderErr)); KillWindow_SpecialTimer(MAIN_TASK,TimerProc_GetStatus); sStep = 4; //读取编码器值 Set_Timer_Window(MAIN_TASK,&Window,SYSTICK_TIMER_MS*50,1,TimerProc); ResetWindow_SpecialTimer(MAIN_TASK,TimerProc_OverTime); return; } } } sForkMotorEncoderErr = sPulse_E - ForkMotor.RealEncoder; RT_LOG(RT_LOG_WCS,("货叉电机一段速超时报警,当前在第%d步,编码器与目标位置差值%d",sStep,sForkMotorEncoderErr)); KillWindow_SpecialTimer(MAIN_TASK,

2026-08-01

win-L-Four-Fork-Origin-SetAndRead.c

win_L_Four_Fork_Origin_SetAndRead.c else { if(sRetry++ >= 5){ RT_LOG(RT_LOG_SELFTEST, ("货叉归零第%d次重试",sRetry)); CloseWindow(MAIN_TASK); (*ActiveWindowProc(MAIN_TASK))(WM_L_FOUR_FORK_POWON_SELFTEST,MOTOR_FORK_POWON_SETANDREAD_ERR,0,SYS_WIN_L_FOUR_FORK_ORIGIN_SETANDREAD,0); } else{ (*ActiveWindowProc(MDX_TASK))(WM_MDX_CMD_TOUART,( (L_FORK_MOTOR_ADDR<<8)|MDX_CMD_CLR_ENCODER),0,SYS_WIN_L_FOUR_FORK_ORIGIN_SETANDREAD,0); //(*ActiveWindowProc(MDX_TASK))(WM_MDX_CMD_TOUART,( (L_FORK_MOTOR_ADDR<<8)|MDX_CMD_ORIGIN),0,SYS_WIN_L_FOUR_FORK_ORIGIN_SETANDREAD,0); } }

2026-08-01

win-Cycle-Task-Manager.c

case WM_CANOPEN_CMD_EXC: //CANOPEN执行结果 if( CANOpen_Command_Irq[0].Idle ){ CANOpen_Command_Irq[0].Idle = 0; // 后续任务往前移位 发送命令 for(i=0;i<(sizeof(CANOpen_Command_Irq)/sizeof(CANOpen_Command_Irq[0])-1);i++){ CANOpen_Command_Irq[i] = CANOpen_Command_Irq[i+1]; } CANOpen_Command_Irq[sizeof(CANOpen_Command_Irq)/sizeof(CANOpen_Command_Irq[0])-1].Idle = 0; if( CANOpen_Command_Irq[0].Idle ){ CANOpen_Start_One_Irq(); } } break;

2026-07-31

win-Motor-Alarm.c

win_Motor_Alarm.c

2026-07-31

chengduJDZL-master 成都低温智狼 WCS 上位机(WinForms,C#)- 上料 RK / 输送 HK / 下料 CK 三层线

chengduJDZL-master 成都低温智狼 WCS 上位机(WinForms,C#)—— 上料 RK / 输送 HK / 下料 CK 三层线

2026-07-30

输送线标准对接协议HP+ELG版v4.0.8.docx

输送线标准对接协议HP+ELG版v4.0.8.docx 本文档根为 JDWCS-CSPLC 两个系统间的数据交互业务报文文档。对后期双方接口程序的开发起指导作用。 该文档是通用标准,适用于JDWCS输送线对PLC或者厂商wcs,部分报文可以根据具体设备和实际需求进行忽略。 下面列举一下完整报文格式(以CSR为例)。 <1SC0001CSRX2019022614261234567BCR0001000020081046692 > 此例子报文是转向申请的完整报文。请求头报文长度固定,业务报文长度根据前三位业务类型来决定 1、确认请求标志:1 0:未确认 1:确认。 未确认的报文(确认请求标志为0 )没有直接的低级应答,发送端可以立即发送下一 封报文。 确认的报文(确认请求标志为1),接收端将给一个低级的ACK。发送端只有在这个报文被应答之后才可以发送下一个(确认)报文。 2、设备编号:CON001。所有报文的设备编码均为PLC的编码。京东下发给PLC的也是设备编码,PLC上报给京东WCS也是此编码。 3、报文类型:CSR 4、唯一任务号:C2019022614261234567。以某个字母开头+时间戳。固定长度20位。 5、目的地编号:BCR1001 6、容器号:000020081046692

2026-07-30

72341852-TIA-Portal-V19-HSP.zip

72341852_TIA_Portal_V19_HSP.zip

2026-07-30

72341852-TIA-Portal-V18-HSP.zip

72341852_TIA_Portal_V18_HSP.zip

2026-07-30

空空如也

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

TA关注的人

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