跳到主要内容

硬件与安装

本页汇总 DarraRT 交付到现场、第一次上电到稳定运行这段"部署期"最常遇到的硬件、系统、驱动、签名类问题。与编程、IDE 使用无关, 聚焦采购、装机、调优、自检


工控机选型

最低与推荐配置

项目最低推荐说明
CPUIntel i5-10400 (10 代)Intel i7-11700 (11 代)必须 Intel 10 代或更新, 支持 TSC-Deadline 定时器
核心数6 核8 核及以上至少预留 1 核给 DarraRT 实时隔离
内存16 GB DDR432 GB DDR4 ECCECC 内存显著降低偶发位翻转风险
硬盘256 GB SATA SSD512 GB NVMe SSDNVMe 对日志/Historian 写入帮助巨大
网卡Intel i210 双口Intel i350-T4 四口详见下节
电源工业级宽压 (9-36V) 或双 220V 冗余在线式 UPS 1kVA现场电网抖动非常常见

不推荐的选择

选择问题
AMD CPU实时驱动未针对 AMD 平台验证, BIOS 节能项差异大
Intel 9 代及更早TSC 抖动大, C-State 控制粒度粗
Celeron / 低功耗 N 系列单核性能不足, 1ms 周期难保证
家用主板C-State / Turbo 选项常被精简, 无法关闭
Realtek 板载网卡见下节"网卡要求"

网卡要求

必须使用 Intel 芯片组

EtherCAT 帧收发由 DarraRT_Eth.sys 直接通过 NDIS 底层抢占网卡, 对网卡的实时性与驱动配合度要求极高。

芯片组支持度典型型号
Intel i210推荐Intel EXPI9301CT, i210-T1
Intel i219推荐板载 LM/V 系列
Intel i350推荐i350-T2, i350-T4 (四口)
Intel X540 / X550支持10G 高端场景
Realtek 8111/8125不支持见下文
博通 BCM57xx未验证不建议

Realtek 网卡为什么不行

  1. 中断实时性差: Realtek 驱动的中断合并 (Interrupt Moderation) 不可关闭, 最小粒度为数百微秒, 无法满足 1ms 周期下 <20μs 的抖动要求。
  2. 驱动不开源: 官方驱动未暴露 NDIS miniport 底层接口, DarraRT_Eth.sys 无法在协议层下直接占用网卡。
  3. PHY 自协商不稳定: 断线重连后 Link 恢复时间长达 3-5 秒, 环网冗余切换要求 <100μs, 相差两个数量级。
  4. DC 时戳误差大: 收包时戳精度仅毫秒级, 无法作为 EtherCAT DC 参考时钟源。
现场采购提醒

如果工控机出厂只板载 Realtek 网卡, 必须另加装一块 Intel i210 PCIe 独立网卡作为 EtherCAT 口 (LAN2), Realtek 可保留做管理口 (LAN1)。

双网卡规划

网卡用途IP 配置
LAN1 (板载或任意)管理、HMI、OPC UA、MQTT静态 IP, 如 192.168.0.10/24
LAN2 (Intel 独立)EtherCAT 总线不配 IP, 仅绑定 DarraRT_Eth 协议

操作系统安装

系统版本

版本支持度说明
Windows 10 LTSC 2021推荐无商店、无应用商店更新, 最干净
Windows 11 LTSC 2024支持需关闭遥测与 Widget
Windows 10/11 专业版可用必须手工关闭 Windows Update 与自动重启
Windows 10/11 家庭版不支持组策略缺失, 无法禁用自动更新
Windows 10/11 工作站版不推荐附带的虚拟化/RDMA 组件与核心隔离冲突
Server 2019/2022需单独评估授权按另一条产品线处理

安装顺序 (必须严格按此顺序)

  1. OS 全新安装 (不要用旧镜像恢复, 避免残留驱动)
  2. 一次性装齐补丁: sconfig → Windows Update 升到当月累积补丁
  3. 关闭 Windows Update: 组策略 gpedit.msc → 计算机配置 → 管理模板 → Windows 组件 → Windows 更新 → 配置自动更新 → 已禁用
  4. 关闭快速启动: 控制面板 → 电源选项 → 选择电源按钮功能 → 更改当前不可用的设置 → 取消"启用快速启动"
  5. 电源计划改"高性能" (见下节)
  6. 加入 Windows Defender 排除: 设置 → 更新与安全 → Windows 安全中心 → 病毒和威胁防护 → 排除项, 添加:
    • C:\Program Files\DarraRT\
    • C:\ProgramData\DarraRT\
    • %AppData%\DarraPLC\
    • %AppData%\Darra\
  7. 安装 DarraRT 主程序 (从官方安装包, 勿用 U 盘携带来源不明副本)
  8. 加载三驱动: 管理员权限运行 scripts/install_drivers.bat
  9. 授权激活 (见 授权许可)
  10. 首次自检 (见本页末"首次开机自检清单")
顺序很重要

先装 DarraRT 再打补丁, 常常导致驱动签名时间戳早于系统补丁, 被新版 Defender 判为"过期驱动"而拒绝加载。


BIOS 全量调优

必改项

设置项目标值原因
C-State / CPU IdleDisabled (最深到 C0)深度节能状态唤醒延迟达 100μs+
Intel SpeedStep (EIST)Disabled动态变频破坏 TSC 恒定
Turbo BoostDisabled频率突变带来周期抖动
Hyper-ThreadingDisabled逻辑核争用 L1/L2 cache
VT-d / IOMMUEnabled与 Windows 核心隔离策略协作
Secure BootDisabled测试签名驱动加载受阻
Fast BootDisabledPOST 阶段部分设备未初始化
ERP / Deep SleepDisabledS4/S5 唤醒未恢复 NIC 配置
USB Legacy SupportDisabledLegacy 模式触发 SMI
Serial / Parallel PortDisabled (如未使用)空闲中断干扰
Intel AMT / MEDisabled (如未使用)ME 触发周期性 SMI
Watchdog Timer关闭或 >30s默认 WDT 误触发导致硬重启

不同厂商 BIOS 设置路径

厂商C-State 路径Turbo 路径
Dell OptiPlex / PrecisionPower Management → C-StatesPerformance → Intel TurboBoost
HP Z 系列 / EliteDeskAdvanced → Power Options → S3 StateAdvanced → Performance Options
研华 (Advantech)Advanced → CPU Configuration → CPU C-StatesAdvanced → CPU Configuration → Turbo Mode
研祥 (EVOC)Chipset → PCH-FW → Power ManagementAdvanced → Intel RC
超微 (Supermicro)Advanced → CPU Configuration → Advanced Power Management同上
华硕 Pro 系列Ai Tweaker → CPU Power ManagementAi Tweaker → CPU Core Ratio
提示

无法找到菜单时, 按 F9 (Load Optimized Defaults) 恢复默认, 再逐项修改, 避免 OEM 厂商把某些选项默认隐藏。


驱动签名与加载

正常加载流程 (已签名驱动)

# 管理员 PowerShell
sc.exe create DarraRT type= kernel binPath= "C:\Windows\System32\drivers\DarraRT.sys" start= auto
sc.exe create DarraRT_Eth type= kernel binPath= "C:\Windows\System32\drivers\DarraRT_Eth.sys" start= auto
sc.exe create DarraRT_PLC type= kernel binPath= "C:\Windows\System32\drivers\DarraRT_PLC.sys" start= auto

sc.exe start DarraRT
sc.exe start DarraRT_Eth
sc.exe start DarraRT_PLC

签名失败典型现象

现象排查
CreateService 成功, StartService577驱动未签名, 或签名链失效
系统事件日志 CodeIntegrity 事件 3004Secure Boot 仍开启
bcdedit 显示 testsigning No测试签名模式未开
加载成功但 DbgView 无输出驱动正常但未绑定到设备; 用 devcon 检查

开启测试签名模式 (开发/测试环境)

# 管理员 PowerShell
bcdedit /set testsigning on
bcdedit /set nointegritychecks on
shutdown /r /t 0

重启后桌面右下角会有"测试模式"水印, 此时未签名的驱动可加载。

生产环境禁用

生产机不得长期处于测试签名模式。正式部署必须使用 EV 代码签名证书重新签名, 关闭 testsigning 后验证加载。

EV 企业签名流程

  1. 购买 DigiCert / GlobalSign 的 EV Code Signing 证书 (硬件 USB Token)
  2. signtool sign /v /ac cross-cert.cer /n "公司名" /tr http://timestamp.digicert.com /td sha256 /fd sha256 DarraRT.sys
  3. 提交 Microsoft Hardware Program Portal 做 WHQL Attestation (约 1-3 天)
  4. 下载签好的 .cab 内提取 .sys 部署

电源与散热

电源计划

# 激活高性能计划
powercfg /setactive 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

# 硬盘永不关闭
powercfg /change disk-timeout-ac 0

# PCIe Link State 关闭 (否则 NIC 会被链路节电打盹)
powercfg -setacvalueindex scheme_current sub_pciexpress ee12f906-d277-404b-b6da-e5fa1a576df5 0
powercfg -setactive scheme_current

机柜散热与防尘

场景建议
办公环境 (<30°C)桌面 ATX 或薄型工控机即可
一般车间 (30-40°C)机柜顶部加排风扇, 滤网季度清理
高温车间 (40-55°C)无风扇工控机 + 机柜空调, CPU 降频至 65W TDP 以下
高粉尘环境IP54 机柜 + 正压送风, 严禁开盖
振动/冲击SSD (禁用机械硬盘) + 减震脚垫

UPS 供电

负载UPS 规格续航
单 PLC 主机1 kVA 在线式15-30 分钟
PLC + 交换机 + HMI2 kVA 在线式20 分钟
双机冗余2 台独立 UPS每路独立供电

推荐在线双变换 UPS, 市电-电池切换时间为 0ms, 后备式 UPS 的 4-10ms 切换足以让 EtherCAT 周期超时。


首次开机自检清单

第一次开机, 按此清单逐项确认, 全部通过才交付用户使用。

#检查项验证方法合格标准
1三驱动服务已启动sc query DarraRT DarraRT_Eth DarraRT_PLCSTATE = RUNNING
2设备节点创建成功Get-ChildItem \\.\DarraRT* 或 DbgView 看初始化日志三个设备都响应
3核心隔离生效任务管理器 → 性能 → CPU, 查看隔离核的占用始终 0%至少 1 个核闲置
4EtherCAT 网卡绑定设备管理器 → 网络适配器 → Intel NIC → 属性 → 此连接使用下列项目勾选 DarraRT_Eth Protocol
5实时周期抖动诊断面板 → 实时抖动监视<20μs (1ms 周期)
6授权激活状态IDE → 帮助 → 关于 → 许可证信息显示已激活及到期日期
7日志输出正常打开 %AppData%\DarraPLC\logs\ 看最新 log 文件有启动日志, 无 ERROR
8HMI Web 可访问浏览器打开 http://localhost:18823页面正常加载
9OPC UA 服务用 UaExpert 连 opc.tcp://localhost:4840可浏览节点
1024 小时稳态连续运行, 观察报警历史与资源曲线无未处理报警, 内存曲线平稳
自检脚本

安装目录下 scripts\first_check.ps1 会自动执行前 9 项并输出报告。第 10 项需手工留机过夜。


常见安装失败

现象原因解决
驱动 StartService 报 577签名未被信任开启 testsigning 或导入 EV 根证书
驱动加载后蓝屏双 NDIS 协议名冲突确认只有 DarraRT_Eth 绑定, 禁用旧 DarraRT 协议
授权激活报"硬件指纹不匹配"换了网卡/主板联系技术支持强制解绑
IDE 启动闪退.NET 8 运行时未装安装 dotnet-runtime-8 x64
Service 无法启动端口被占用设备端口与地址分配
HMI Web 打不开防火墙阻 18823入站规则放行 TCP 18823
离线机无法激活采用在线激活改用离线激活流程 (见授权许可)
安装程序报"需要管理员"没右键以管理员运行右键安装包 → 以管理员身份运行

相关页面