2. MERLIC运行环境与依赖检查
MERLIC 的稳定性并不只取决于软件本身。大量“启动失败、相机连不上、图像卡顿、许可证异常”的现场问题,根源都在运行环境:操作系统版本不匹配、显卡驱动过旧、端口被占用、运行时组件缺失。因此,在安装或迁移 MERLIC 之前,先做一次系统化的环境与依赖核查,是维护工作中性价比最高的一步。本节围绕操作系统兼容性、硬件要求、显卡与驱动、网络与端口、运行时依赖项五个方面,给出可执行的核查方法。
一、操作系统兼容性核查
MERLIC 对操作系统有明确的版本区间要求,通常支持 Windows 10/11 的 64 位专业版或企业版,以及对应的 Windows Server 版本。核查时不要只看“Windows 10”这个名称,而要确认具体版本号与内部版本号。最直接的方法是在命令行执行:
winver
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" /C:"System Type"
输出中需要关注三点:系统类型是否为 x64、版本号是否落在 MERLIC 官方支持列表内、是否安装了最新的累积更新。示例:某现场机器显示 “OS Version: 10.0.19045”,属于 Windows 10 22H2,一般可被较新版本 MERLIC 支持;若显示 “10.0.17763” 且长期未更新,则可能低于最低要求。此外,家庭版(Home)通常不在官方支持范围内,因为缺少部分组策略与网络组件,建议更换为专业版或企业版。
二、硬件要求核查
硬件核查的核心是 CPU、内存、磁盘和显卡四项。CPU 建议为支持 AVX2 指令集的 Intel Core i5/i7 或同级 AMD 处理器;内存最低 8 GB,若同时运行多个相机或做深度学习推理,建议 16 GB 以上;磁盘需预留足够的安装空间与图像缓存空间,建议系统盘至少 20 GB 可用,图像存储盘单独规划。核查命令如下:
wmic cpu get name,numberofcores
wmic ComputerSystem get TotalPhysicalMemory
wmic logicaldisk get caption,freespace,size
内存数值以字节为单位,例如 17179869184 字节约等于 16 GB。若可用内存长期低于 20%,在连续采集时容易出现丢帧或超时。磁盘方面,除了剩余空间,还要关注是否为机械硬盘:MERLIC 的图像缓存与日志写入对随机读写较敏感,建议使用 SSD。
三、显卡与驱动核查
MERLIC 的图像显示、部分算子加速以及深度学习推理都依赖显卡。核查分两步:先确认显卡型号与显存,再确认驱动版本。可通过以下命令获取:
wmic path win32_VideoController get name,driverversion,adapterram
若使用 NVIDIA 显卡并启用 GPU 推理,还需执行 nvidia-smi,查看驱动版本与 CUDA 版本。示例:驱动显示 “536.23”,CUDA 显示 “12.2”,说明驱动较新;若驱动为 “4xx.xx” 且 CUDA 低于 11,则可能无法满足新版推理组件要求。核查时要注意:显卡驱动不是越新越好,而应与 MERLIC 版本、CUDA 运行时版本匹配。更新驱动后建议重启,并用 nvidia-smi 再次确认 GPU 被正确识别、显存无异常占用。
四、网络与端口核查
MERLIC 与相机、许可证服务器、远程客户端的通信依赖网络与端口。常见端口包括:GigE Vision 相机使用的 UDP 广播与数据端口、MERLIC 前端与后端通信端口、许可证服务端口等。核查步骤:先用 ipconfig /all 确认网卡 IP、子网掩码与网关;再用 ping 测试相机或服务器连通性;最后用 netstat -ano | findstr :端口号 检查端口是否被占用。示例:若 5000 端口被其他进程占用,MERLIC 前端可能无法启动,此时可通过任务管理器结束占用进程,或修改 MERLIC 配置改用其他端口。对于多网卡机器,要确认相机所在网段与 MERLIC 绑定网卡一致,避免路由错误导致相机枚举失败。
五、运行时依赖项核查
MERLIC 依赖若干运行时组件,常见包括 Visual C++ Redistributable、.NET Framework/.NET Runtime、相机厂商的 GenICam/GigE Vision 组件以及许可证管理组件。核查方法:在“程序和功能”中查看已安装的 VC++ 版本;用 dotnet --list-runtimes 查看 .NET 运行时;用相机厂商工具(如 MVTec GigE Vision 或对应 SDK)确认 GenICam 组件是否注册。若缺失,安装 MERLIC 时通常会自动补齐,但离线环境需提前准备安装包。建议在部署前用一张检查表逐项确认,避免现场才发现缺件。
六、核查结果判定与处置
五项核查完成后,需要给出明确判定。判定原则是:任何一项不满足最低要求,都不建议直接安装 MERLIC,而应先处置再复检。例如操作系统为家庭版,应升级到专业版;内存只有 8 GB 且需多相机运行,应扩展到 16 GB;显卡驱动过旧,应更新到与 MERLIC 版本匹配的驱动;端口被占用,应释放或改配;运行时组件缺失,应补装。处置后回到对应项重新核查,直到全部通过。
为了便于现场执行,下面给出一份可直接使用的环境核查记录表。表中“实测值”一栏由现场填写,“判定”栏填写“通过/不通过”,“处置”栏记录动作与复检结果。
| 核查项 | 核查命令/方法 | 要求(示例) | 实测值 | 判定 | 处置 |
|---|---|---|---|---|---|
| 操作系统 | winver / systeminfo | Win10 22H2 及以上,x64,专业版 | 10.0.19045 专业版 | 通过 | — |
| CPU | wmic cpu get name | 支持 AVX2,i5/i7 同级 | i7-10700 | 通过 | — |
| 内存 | wmic ComputerSystem | ≥ 16 GB | 16 GB | 通过 | — |
| 磁盘 | wmic logicaldisk | 系统盘 ≥20 GB 可用,SSD | 可用 45 GB,SSD | 通过 | — |
| 显卡驱动 | nvidia-smi | 驱动 ≥ 对应版本,CUDA 匹配 | 536.23 / CUDA 12.2 | 通过 | — |
| 网络 | ipconfig / ping | 相机网段可达 | 192.168.1.10 可达 | 通过 | — |
| 端口 | netstat -ano | 关键端口未被占用 | 5000 被占用 | 不通过 | 结束占用进程后复检通过 |
| 运行时依赖 | dotnet --list-runtimes | VC++、.NET、GenICam 齐全 | VC++ 2015-2022 已装 | 通过 | — |