4. 生产数据来源与分类
在iQ-R系统中,上位系统能采集到什么数据,取决于PLC内部把哪些信息放进了可访问的软元件。生产数据并不是“自动存在”的,而是由程序在设备运行过程中写入特定软元件,再由上位通过MC协议、OPC UA或SLMP等方式读取。因此,理解数据类型与软元件之间的映射关系,是设计数据采集方案的第一步。
iQ-R中常见的生产数据可归纳为六类:设备状态、产量计数、报警信息、工艺参数、质量结果和能耗数据。它们的数据形态、更新频率和存储位置各不相同,下面逐一梳理。
设备状态:位软元件表达运行模式
设备状态通常用位软元件(M、B、X、Y)表达,每个位代表一种离散状态。例如M100表示“自动运行中”,M101表示“手动模式”,M102表示“故障停机”,M103表示“待料”。上位读取时按位解析,组合判断设备当前处于哪个状态。对于需要表达多状态互斥的场景,也可以用连续的两个位组成2位编码,或直接用一个数据寄存器D存放状态码(如0=停机、1=待机、2=运行、3=故障)。
状态数据的更新由PLC程序在状态切换时写入,上位轮询周期通常设为200ms~1s。需要注意的是,X/Y是物理I/O的映像,反映的是外部信号,而M是内部继电器,反映的是程序判断后的逻辑状态。上位采集设备状态应优先读取M或D,而不是直接读X/Y,否则会把传感器抖动误判为设备状态变化。
产量计数:上升沿累加与清零控制
产量计数一般用数据寄存器D或文件寄存器存储累计值。典型做法是:在产品通过检测光电的上升沿,用INC或ADD指令对D200加1。D200存放当班产量,D210存放总产量。上位读取D200即可获得当前班次产量。
清零逻辑需要单独设计:当班结束时,由上位写入M500=ON,PLC程序检测到M500上升沿后将D200清零,并复位M500。这种“上位请求—PLC执行—复位握手”的方式可以避免清零信号丢失或重复清零。如果产量需要按小时统计,可以增加D202~D225共24个寄存器,用时钟脉冲触发移位或分段累加。
报警信息:位+寄存器组合表达
报警数据通常采用“报警位+报警代码”的组合方式。M300~M315共16个位分别对应16类报警,如M300=急停、M301=伺服过载、M302=气压低等。同时用D300存放当前最高优先级报警代码,D301存放报警发生时的产量快照。
上位采集报警时,既要读M300~M315的位状态用于实时显示,也要读D300获取报警代码用于记录和追溯。报警复位由上位写M400=ON,PLC程序执行报警清除并复位M400。对于需要记录报警发生时刻的场景,可以在报警置位时用DATEWR或时钟数据写入D310~D316,保存年、月、日、时、分、秒。
工艺参数:数据寄存器存放设定值与实际值
工艺参数包括温度、压力、速度、扭矩等模拟量。iQ-R中通过模拟量输入模块(如R60AD8)将4~20mA或0~10V信号转换为数字值,存入D400~D407。例如D400存放焊接温度实际值(单位0.1℃),D410存放温度设定值。上位读取D400和D410后,可以计算偏差并判断工艺是否稳定。
工艺参数的更新周期取决于模块刷新周期和程序扫描周期,通常为10ms~100ms。上位采集时要注意量程换算:如果模块设定为0~4000对应0~400℃,则D400=2500表示250.0℃。这个换算关系必须在上位组态中正确配置,否则会出现“数据读到了但数值不对”的问题。
质量结果:判定位与测量值并存
质量结果通常包含两部分:判定结果和测量值。判定结果用位软元件表达,如M600=合格、M601=不合格、M602=待检。测量值用D500~D509存放,如D500存放尺寸测量值,D502存放扭矩值。上位读取后,将判定位与测量值关联存储,形成“产品序列号—测量值—判定结果”的质量记录。
质量数据的写入时机很关键:应在检测完成后、产品放行前写入,确保上位读取到的判定结果与产品实际状态一致。如果检测需要时间,可以用M610=ON表示“检测完成”,上位检测到M610上升沿后再读取D500和M600。
能耗数据:脉冲累加与瞬时值
能耗数据分为瞬时功率和累计电量。瞬时功率由电力仪表通过Modbus或模拟量输入到D700,单位0.1kW。累计电量通过电能脉冲输入,每脉冲代表0.1kWh,用INC对D710累加。上位读取D700和D710后,可以计算单位产品能耗:D710除以D200(产量),得到每件产品耗电量。
能耗数据的采集周期可以放宽到1s~5s,因为电能变化相对缓慢。但累计电量的脉冲计数不能丢失,需要确保PLC扫描周期小于脉冲最小间隔,或在中断程序中处理脉冲输入。
映射关系的设计原则
从上述分类可以看出,iQ-R生产数据的软元件映射遵循几条实用原则。第一,位软元件用于表达“是/否”或“有/无”的离散状态,字软元件用于表达数值、代码和累计量。第二,每类数据应分配连续的地址段,便于上位批量读取。例如设备状态用M100~M199,报警用M300~M399,产量用D200~D299,工艺参数用D400~D499,质量用D500~D599,能耗用D700~D799。第三,需要上位写入的控制信号(如清零、复位)应单独分配地址段,并与PLC内部逻辑做好握手,避免竞争。
在实际项目中,建议先绘制一张“数据—软元件—更新周期—读写方向”的映射表,作为PLC编程和上位组态的共同依据。这张表不需要复杂,但必须覆盖每个数据点的地址、数据类型、量程换算和访问权限。上位组态时直接按表配置,可以大幅减少联调阶段的地址核对工作量。
掌握这六类数据的软元件映射规律后,下一步就可以根据采集周期和精度要求,选择MC协议、SLMP或OPC UA等具体通信方式,并设计上位系统的数据存储与展示结构。