C# 运动控制系统。 雷赛运动控制卡控制系统。 像高川控制卡、高川控制器、或者固高运动控制卡以及正运动控制器、正运动控制卡可以用这个框架,自己替换一下库文件等代码就可以。 源码全开放,不设限,标有注释,函数等变量多数以中文命名,方便大家了解,功能多,特别适合新手入门,物超所值。

一、系统概述

雷赛DMC3400/DMC3C00控制卡控制系统代码基于C#语言开发,适配.NET Framework 4.5框架,主要应用于自动辅料贴装设备。该系统具备良好的兼容性,通过替换库文件等代码,可适配高川控制卡、固高运动控制卡、正运动控制器等多种控制硬件,实现对设备运动、IO信号、视觉数据、PLC通信等多方面的精准控制与管理,同时具备完善的报警、日志及参数配置功能,为自动辅料贴装设备的稳定运行提供全面技术支撑。

二、核心功能模块解析

(一)报警信息管理模块

1. 功能定位

该模块主要负责设备运行过程中报警信息的结构化存储与管理,为设备故障排查、运行状态监控提供关键数据支持,确保设备出现异常时,相关报警信息能被准确记录与追溯。

2. 核心数据结构

定义AlarmInfo类作为报警信息的载体,包含序号、发生时间、报警内容、报警代码等核心属性。其中序号用于唯一标识每条报警记录,发生时间精确记录报警触发时刻,报警内容描述具体故障现象,报警代码则为故障诊断提供标准化标识,便于快速定位故障类型。

3. 数据管理机制

通过静态成员变量ID实现报警记录序号的自动递增,确保每条报警信息都有唯一的序号标识,避免数据混淆。同时,各属性均通过get/set方法实现封装,保证数据的安全性与完整性,防止外部代码随意篡改报警信息。

(二)PLC通信模块

1. 功能定位

作为设备与PLC之间的数据交互桥梁,该模块实现了与不同型号PLC(如AM600、H3U)的通信连接、数据读写操作,支持多种数据类型传输,是设备协同控制的关键环节。

2. 通信初始化与断开
  • 初始化:提供InitialComm方法,默认使用IP地址“192.168.1.100”、端口502建立ETH通信连接,通过调用InitETHString函数完成底层通信初始化,为后续数据交互奠定基础。
  • 断开连接Dispose方法调用Exit_ETH函数,安全断开ETH通信连接,释放通信资源,避免资源泄漏。
3. PLC数据读写
  • 写操作:针对不同数据类型(double、uint等)提供专门的写PLC方法。例如,WriteToPlc方法可将double数组数据写入指定起始地址(默认1350),通过调用Am600WriteSoftElemFloat等函数,结合SoftElemType枚举指定软元件类型(如ELEM_MW),实现数据精准写入。
  • 读操作:提供多种读PLC方法,如读取坐标数据返回PointF类型结果,读取整数数据返回int类型结果。以ReadFromPlc方法为例,通过调用Am600ReadSoftElemFloat等函数,从指定起始地址读取对应长度的数据,并进行数据类型转换后返回,满足设备对PLC数据的实时获取需求。
4. 数据类型转换

内置多种数据类型转换方法,如intToBytes将int数组转换为byte数组,bytesToInt将byte数组转换为int数组等。这些方法通过位运算、字节操作等方式,确保不同数据类型在传输过程中的准确性,解决数据格式不兼容问题,保障通信数据的可靠交互。

(三)视觉数据管理模块

1. 功能定位

专门用于管理自动辅料贴装设备中的视觉相关数据,包括上料相机数据与贴合数据,为设备的视觉定位、精准贴装提供数据支持,是实现设备自动化贴装的重要数据保障。

2. 核心数据结构
  • 上料相机数据:定义PointD结构体存储上料相机采集的坐标数据(X、Y坐标),并通过静态列表pt_上料相机数据实现多个上料相机坐标数据的存储与管理,满足多位置上料定位需求。
  • 贴合数据:定义FitSruct结构体存储贴合过程中的关键数据(X、Y坐标、角度),通过静态列表pt_贴合数据管理多个贴合位置的相关参数,确保贴合过程的精准控制,提高贴装精度。

(四)公共参数配置模块

1. 功能定位

集中管理设备运行过程中的各类公共参数,包括系统信息、硬件配置、工艺参数、状态标志等,为设备各模块的协同运行提供统一的参数支撑,同时实现参数的读写与日志记录功能。

2. 核心参数分类
  • 系统信息:存储软件名称(“自动流水线设备”)、软件版本(“V2.1”)、当前用户(默认“设备操作人员”)等系统基础信息,便于用户了解设备软件基本情况。
  • 硬件配置:包含CAN节点号、轴号定义、I/O配置等。例如,轴号定义从轴0到轴11,明确各轴标识;I/O配置详细定义主卡输入输出、扩展输入输出的点位编号及对应功能(如启动按钮信号对应主卡输入0),为硬件控制提供清晰的点位映射。
  • 工艺参数:涵盖治具拍照参数(行数、列数、行距、列距等)、物料参数(物料总数、取料序号等)、机械参数(吸头距离、脉冲当量等)、生产参数(生产总数、抛料数量、生产周期等)。这些参数直接影响设备的贴装工艺精度与生产效率,通过统一配置实现工艺标准化。
  • 状态标志:包含设备运行状态标志(如自动运行中、暂停中、初始化中)、报警标志、各模块协同标志(如拍照位允许进料位放行)等,用于标识设备当前运行状态,协调各模块有序工作。
3. 参数读写与日志
  • 参数读取:提供ReadXMl方法从XML文件读取配置参数(如端口信息、IP地址、数据库连接信息等),ReadParameter方法从INI文件读取特定参数,确保设备启动时能加载预设参数,快速进入正常运行状态。
  • 参数写入WriteIniFileString方法用于将参数写入INI文件,WriteParameterID方法写入特定ID参数,实现参数的持久化存储,方便参数修改与保存。
  • 日志记录:提供多种日志写入方法,如WriteRunLog记录运行日志、WriteAlarmLog记录报警日志、WriteOperateLog记录操作日志等。日志文件按日期命名,存储在指定目录下,便于设备运行过程的追溯、故障排查与生产管理。

(五)IO控制模块

1. 功能定位

实现对设备IO端口的精准控制,包括输入口状态读取、输出口置位与复位操作,是设备硬件控制的核心模块,直接影响设备执行机构的动作控制。

2. IO状态读取

IN方法根据输入点位数据(卡号、节点、端口),区分主卡输入与扩展卡输入。对于主卡输入,调用LTDMC.dmcreadinbit函数读取输入口电平状态;对于扩展卡输入,调用LTDMC.nmcreadinbit函数读取,并根据IOon(低电平)判断输入状态,返回bool类型结果,为设备获取外部信号(如按钮按下、传感器触发)提供途径。

3. IO输出控制
  • 置位输出SETOUT方法根据输出点位数据,若为为0主卡输出,调用LTDMC.dmcwriteoutbit函数将指定端口置位;若为扩展卡输出,调用LTDMC.nmcwriteoutbit函数置位,实现输出口的高电平控制,驱动执行机构动作(如指示灯亮、电机启动)。
  • 复位输出RSTOUT方法与置位输出方法类似,通过调用相应函数将指定输出端口复位,实现输出口的低电平控制,停止执行机构动作,确保设备IO控制的灵活性与可靠性。

(六)IO监控界面模块

1. 功能定位

以可视化界面形式实时监控设备IO信号状态,包括控制卡与扩展卡的输入输出信号、单轴信号等,便于操作人员直观了解设备硬件运行状态,及时发现IO异常问题。

2. 界面布局与功能
  • 输入信号监控:通过多个分组框(如“控制卡 I0-I15”“扩展1 I0-I15”等),采用表格布局展示各输入端口的编号与状态。界面元素(如标签)实时刷新,通过颜色变化或文字标识显示输入端口的电平状态(如高电平、低电平),操作人员可快速查看各输入信号是否正常。
  • 输出信号监控:与输入信号监控类似,分组展示控制卡与扩展卡的输出端口状态,同时支持对部分输出端口的手动控制(如点击标签触发输出状态切换),方便操作人员进行设备调试与故障排查。
  • 单轴信号监控:专门监控各轴的关键信号(如ALM电机报错、EL+正极限、EL-负极限、EMG急停、HOME原点、SL+正软限位、SL-负软限位、INP到位、SEVON使能),通过面板布局清晰展示各轴信号状态,为设备轴控系统的运行状态监控提供直观界面,便于及时发现轴运行异常(如极限触发、电机报错)。
3. 实时刷新机制

界面集成定时器(timer1),设置固定时间间隔(如500ms)触发Tick事件,在事件处理函数中实时读取IO信号状态,并更新界面显示内容,确保界面展示的IO状态与设备实际状态保持一致,实现IO信号的实时监控。

三、系统特色与优势

(一)兼容性强

系统设计采用模块化架构,核心控制逻辑与硬件驱动相对分离,通过替换库文件等代码,可适配雷赛DMC3400/DMC3C00控制卡、高川控制卡、固高运动控制卡、正运动控制器等多种硬件设备,降低设备硬件更换的开发成本,提高系统的适用性。

(二)功能全面

涵盖报警管理、PLC通信、视觉数据管理、公共参数配置、IO控制、IO监控等核心功能模块,覆盖自动辅料贴装设备从数据采集、参数配置、控制执行到状态监控的全流程需求,实现设备的一体化控制与管理。

(三)可靠性高

通过数据封装、类型转换校验、日志记录等机制,确保数据传输的准确性、参数配置的稳定性以及设备运行状态的可追溯性。同时,IO控制、PLC通信等关键模块采用成熟的函数调用与错误处理机制,降低设备运行故障风险,保障设备稳定运行。

(四)易用性好

提供直观的IO监控界面,实时展示设备硬件状态,便于操作人员快速了解设备运行情况;公共参数配置模块支持参数的读写与持久化存储,简化参数配置流程;报警信息管理模块清晰记录报警详情,为故障排查提供明确指引,降低设备操作与维护难度。

四、总结

雷赛DMC3400/DMC3C00控制卡控制系统代码围绕自动辅料贴装设备的核心需求,构建了完善的功能模块体系。各模块协同工作,实现了设备的精准控制、数据高效交互、状态实时监控与故障及时预警,为自动辅料贴装设备的自动化、智能化运行提供了坚实的技术基础。同时,系统具备良好的兼容性与易用性,可满足不同硬件配置与实际应用场景需求,具有较高的实用价值与推广意义。在实际应用中,可根据具体设备需求进一步优化参数配置、扩展功能模块,持续提升系统性能与适应性。

Logo

立足具身智能前沿赛道,致力于搭建全球化、开源化、全栈式技术交流与实践共创平台。

更多推荐