From 868daf94f29ce1ffdd799a68c07bb668cd373bcd Mon Sep 17 00:00:00 2001 From: HP\李良庭 <liliangting@lanpucloud.cn:1111> Date: 星期二, 08 七月 2025 11:49:03 +0800 Subject: [PATCH] 提交分辨率自适应版本V3.1.0.1500 --- src/pub/Global.~pas | 208 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 208 insertions(+), 0 deletions(-) diff --git a/src/pub/Global.~pas b/src/pub/Global.~pas new file mode 100644 index 0000000..0698d6c --- /dev/null +++ b/src/pub/Global.~pas @@ -0,0 +1,208 @@ +{------------------------------------------------------------------------------} +{单元名称:Global.pas } +{模块名称:全局公共变量集 } +{模块说明:包括全局变量、全局宏定义、参数数据结构等 } +{建立日期:2009-12-20 } +{修改修改:2024-10-14 } +{版权所有:李良庭 liangtingli@outlook.com } +{------------------------------------------------------------------------------} +//2024-10-14 增加gmmdata数据库,用来存储自动检测和手动检测的所有数据。 + +unit Global; + +interface + +uses + Windows; + + {定义全局常量} +const + NOTE = '警告:本计算机程序受著作权法和计算机软件保护条例保护,未经授权擅' + +'自复制或传播本程序的部分或全部,可能受到严厉的民事及刑事制裁,并' + +'将在法律许可的范围内受到最大可能的起诉。'; + + CONFIG_DIR = 'config\'; {配置文件夹} + DATA_DIR = 'data\'; {数据文件夹} + LOG_DIR = 'log\'; {日志文件夹} + LOG_FILE = 'log4me.ini'; {日志配置文件} + LICENSE_FILE = 'License.lic'; {授权文件} + sConfig = 'Config.db'; {配置文件} + + //config配置全局变量 + t_Config = 'config'; {配置数据库-仪器参数} + t_Conn = 'conn'; {配置数据库-通讯参数} + t_Grain = 'grain'; {配置数据库-粮种参数} + //t_Test = 'test'; {检测数据库-检测结果} + t_Data = 'data'; {检测数据库-自动和手动检测结果} + t_Weight = 'weight'; {重量校准数据库} + t_Manager = 'manager'; {登录口令数据库} + + //枚举运行模式 +type RunMode = (rmAuto, rmManual); //自动模式=0,手动模式=1 + +//PLC配置参数 +type + TPlcRec = Record + ip : string; //IP地址 + port : integer; //网络端口 +end; + +//WR配置参数 +type + TWrRec = Record + SerialPort : string; + baud : integer; + parity : char; + data_bit : integer; + stop_bit : integer; +end; + +//config参数 +type + TConfigRec = Record + Volume : double; //体积 + Tare : double; //皮重 + + Freq : double; //频率码 + Decay : double; //衰减码 + Ask : integer; //ASK选择 + + StartFreq : double; //起始频率 + StopFreq : double; //终止频率 + Step : Integer; //步长 + + delay : Integer; //开机延迟时间s + password : string; //手动模式登录口令 +end; + +//粮种信息参数 +type + TGrainRec = Record + Code : Integer; //代码 + Name : string; //名称 + Coef : array [0..4] of string; //校准系数 + Intercept : string; //截距 +end; + +//采集数据格式 +type + TDacRec = Record + Voltage : double; //电压 + Weight : double; //重量 + Temp : double; //温度 + Humid : double; //湿度 +end; + +//重量校准格式 +type + TWeighgRec = Record + //系数 + k : double; //y=kx+b + b : double; + tare : double; //去皮 + range : double; //±误差范围 + + //校准 + test1 : double; + test2 : double; + test3 : double; + std1 : double; + std2 : double; + std3 : double; +end; + +//测试样本存储结构 +type + TSampleRec = Record + flag : boolean; //自动保存标志 + info : string; //样本信息 + prefix : string; //文件名前缀 + dir : string; //存储目录 +end; + + {定义全局变量} +//------------------------------------------------------------------------------ +var + CompanyName:String; {公司名称} + FileDescription:String; {说明} + FileVersion:String; {文件版本} + InternalName:String; {内部名称} + LegalCopyright:String; {版权} + LegalTrademarks:String; {合法商标} + OriginalFilename:String; {源文件名} + ProductName:String; {产品名称} + ProductVersion:String; {产品版本} + Comments:String; {备注} + //版本信息专用数组 + glVerInfo:array[1..9] of string=('ProductName', //产品名称 + 'ProductVersion', //产品版本 + 'FileDescription', //文件说明 + 'LegalCopyright', //版权 + 'FileVersion', //文件版本 + 'CompanyName', //公司名称 (无) + 'LegalTradeMarks', //合法商标 + 'InternalName', //内部名称(无) + 'OriginalFileName');//源文件名(无) + + //版本信息 + glProductName, glProductVersion, glFileDescription, glLegalCopyright, glInternalName, + glFileVersion, glCompanyName, glLegalTrademarks, glOriginalFilename:string; + + //界面显示版本和版权 + glVersion, glCopyright, glAppPath : String; + + //从授权文件解析机器码,授权期限,注册类型,密钥,密级等信息 + sDESMachineCode,sDESDate,sDESType,sDESKey,sDESLevel:string; + //注册是否成功标志 + glRegSuccess : Boolean; + + //全局xml变量 + cfg : TConfigRec; + + //全局数据库名 + glConfig_db, glConn_db, glGrain_db, glData_db, glWeight_db, glManager_db : String; + + //全局变量 + glCalcOutput : String; //计算器返回值 + glCurrFocus : Integer; //当前输入的焦点编号 + glStartTest : Int64; //开始检测的时间--毫秒 + glAutoRun : Boolean; //全局自启动标志 + glTime1, glTime2 : Integer; //下发粮种时间,检测时间(延时) + + glMsgPos : TPoint; //鼠标当前绝对坐标 + + PlcConn : TPlcRec; //plc通讯参数 + WrConn : TWrRec; //水分仪通讯参数 + SysConfig : TConfigRec; //系统参数 + Grain : TGrainRec; //粮种参数(含校准系数) + Datas : TDacRec; //采集数据 + Wg : TWeighgRec; //重量校准参数 + + //----全局业务变量------------- + glCoef : array [0..4] of Double; + + //线程句柄 + m_TestThread, m_ManTestThread, m_VerifyThread : THandle; + m_GrainThread, m_InterceptThread, m_ResetThread : THandle; + + //选择粮种线程标志,1-手动检测;2-手动校准 + s_Grain : Integer; + + //当前选中的粮种Index + glCurrIndex : Integer; + + //设备句柄 + hPlcDev, hWrDev : Pointer; + glConn_err : Integer; //连接设备错误码 + glBtnTag, glBtnTag1 : Integer; //按钮index + glWg_k, glWg_b : double; //全局临时重量系数 + + //调试开关 + glIsDebug : Boolean; //系统调试开关 + + //数据存储 + smp : TSampleRec; //数据样本结构 + +implementation + +end. -- Gitblit v1.9.3