// 称重系统 IDL 定义文件 // 用于 DDS 数据分发服务 module WeighingSystem { // ============================================ // Topic: onScaleInfoUpdate // 称重设备信息更新主题 // ============================================ struct ScaleInfo { boolean HasVehicle; // 有车 0:无车 1:有车 boolean WeightOK; // 重量稳定信号 0: 不稳定 1:稳定 boolean State; // 设备状态 0:异常仪表 1:正常接收仪表 float Value; // 实时重量 float StableValue; // 稳定重量 }; // ============================================ // Topic: onScaleCommandUpdate // 称重设备命令更新主题 // ============================================ struct ScaleCommand { boolean Enable; // 是否启用 启动参数 long ResetZero; // 仪表重置0 脉冲信号 1:清零 自动变0 }; // ============================================ // Topic: onWeightInfoOKUpdate // 称重业务成功信息更新主题 // ============================================ struct WeightInfoOk { // 基础信息属性 long DeviceID; // 磅称编号 string DeviceName; // 磅称名称 string DeviceType; // 磅称类型 1:重磅 2:轻磅 3:通用称重 4:转煤 string EnterpriseName; // 本系统企业名称 // 业务单据属性 string BillNumber; // 票据号 string CarNumber; // 车牌号 string Supplier; // 往来单位 string GoodsType; // 品种 // 重量数据属性 float GrossWeight; // 毛重 string GrossTime; // 毛重时间 string GrossOperater; // 毛重操作员 float Tare; // 皮重 string TareTime; // 皮重时间 string TareOperater; // 皮重操作员 float Suttle; // 净重 // 扣重属性 float duduction1; // 扣矸 大宗物资扣吨打印 float duduction2; // 扣水 大宗物资扣钱打印 float duduction3; // 扣杂 // 物流信息属性 string INCoalYard; // 卸货点 string OutCoalYard; // 装货点 string BatchNumber; // 批次号 // 操作结果提示属性 string Warning; // 提示 字符串 // 打印磅单相关 string TicketType; // 磅单类型 1:一次称重 2:二次称重 boolean IsPrintTicker; // 是否打印磅单 }; // ============================================ // Topic: onWeightInfoErrorUpdate // 称重业务成功信息更新主题 // ============================================ struct WeightInfoError { //车牌 string CarNumber; // 车牌号 // 操作结果提示属性 string Warning; // 提示 字符串 }; // ============================================ // Topic: onBarCommandUpdate // 拦车器命令更新主题 // ============================================ struct BarCommandUpdate { // 前拦车器控制 long FrontBarSignalUp; // 前拦车器抬起信号 脉冲信号 1-》0 发1 自动置为0 long FrontBarSignalDown; // 前拦车器放下信号 脉冲信号 1-》0 发1 自动置为0 boolean FrontBarEnable; // 前拦车器是否启用 1: 启用 0: 不启用 // 后拦车器控制 long BackBarSignalUp; // 后拦车器抬起信号 脉冲信号 1-》0 发1 自动置为0 (属性ID: 7) long BackBarSignalDown; // 后拦车器放下信号 脉冲信号 1-》0 发1 自动置为0 boolean BackBarEnable; // 后拦车器是否启用 1: 启用 0: 不启用 }; // ============================================ // Topic: onLightsCommandUpdate // 红绿灯命令更新主题 // ============================================ struct LightsCommandUpdate { // 前红绿灯控制 long FrontLEDSignal; // 前红绿灯信号 1.红 2.绿 boolean FrontLEDEnable; // 前红绿灯是否启用 1: 启用 0: 不启用 // 后红绿灯控制 long BackLEDSignal; // 后红绿灯信号 1.红 2.绿 long BackLEDEnable; // 后红绿灯是否启用 1: 启用 0: 不启用 }; // ============================================ // Topic: InfraredCommandUpdate // 拦车器与红绿灯命令更新主题 // ============================================ struct InfraredCommandUpdate { // 前红外对射控制 long FrontResistanceUnLock; // 前红外对射临时解除 1.解除 0.不解除 boolean FrontResistanceEnable; // 前红外对射启用 1: 启用 0: 不启用 // 后红外对射控制 long BackResistanceUnLock; // 后红外对射临时解除 1.解除 0.不解除 boolean BackResistanceEnable; // 后红外对射启用 1: 启用 0: 不启用 }; // ============================================ // Topic: onBarUpdate // 拦车器更新主题 // ============================================ struct BarUpdate { // 前拦车器状态 long FrontBarState; // 1 抬起状态 2 放下状态 // 后拦车器状态 long BackBarState; // 1 抬起状态 2 放下状态 }; // ============================================ // Topic: onLightsUpdate // 红绿灯状态更新主题 // ============================================ struct LightsUpdate { // 前红绿灯状态 long FrontLEDState; // 1.红 2.绿 // 后红绿灯状态 long BackLEDState; // 1.红 2.绿 }; // ============================================ // Topic: onInfraredUpdate // 拦车器与红绿灯状态更新主题 // ============================================ struct InfraredUpdate { // 前红外对射状态 long FrontResistanceSignal; // 1 有阻挡 0 无阻挡 // 后红外对射状态 long BackResistanceSignal; // 1 有阻挡 0 无阻挡 }; // ============================================ // Topic: LicenseSnap // 车牌识别类 // ============================================ struct LicenseSnapUpdate { long NewTag; // 车牌更新 1 新的 2 旧的不变 string License; // 车牌号 }; // ============================================ // Topic: LicenseSnap // 语音播放ID // ============================================ struct Voice { long VoiceID; //语音ID string VoiceContent; //语音string,后续如果可以程序用tts直接播放语音内容 }; // ============================================ // Topic: SummaryUpdate // 称重类 // ============================================ struct SummaryUpdate { string License; // 车牌号 float StableValue; // 稳定重量 }; }; module InternalSystem { struct PrintReq { unsigned long index; map msg; }; struct PrintRsp { unsigned long index; string msg; }; struct IoCtrlReq { unsigned long index; map msg; }; struct IoCtrlRsp { unsigned long index; map msg; }; };