跳到主要内容

安装

这一页只解决一件事:让你确认本机可以编译和运行 Zeus 示例。

你需要准备什么​

工具用途怎么确认
.NET 8 SDK编译 Zeus 和你的应用dotnet --version 能看到 8.x.x
Git克隆源码git --version 能输出版本
Visual Studio 2022 / Rider做 WinForms 或 WPF 时更方便能创建 net8.0-windows 项目

只跑控制台示例时,不需要真实串口、不需要仪表、不需要 USB 转串口。

方式一:一条命令创建项目​

这是第一次接触 Zeus 时最推荐的方式。模板会把目标框架、包引用、虚拟通道、基础绑定或 zeus.json 都接好。

dotnet new install Zeus.Templates
dotnet new zeus-console -n ZeusCheck
cd ZeusCheck
dotnet run

你应该看到类似输出:

通道 meter 状态:Open
收到回显:PING
Zeus 环境确认完成。

其它模板:

dotnet new zeus-winforms -n MyPanel
dotnet new zeus-wpf -n MyPanel.Wpf
dotnet new zeus-modbus -n MyOven

如果你在 Zeus 源码仓库里调试模板,不要直接 dotnet new install src/Zeus.Templates/templates。模板版本和共享 zeus.json 都在打包阶段生成,请先在 code 目录执行:

dotnet pack src/Zeus.Templates/Zeus.Templates.csproj -c Release -o artifacts/template-smoke
dotnet new install artifacts/template-smoke/Zeus.Templates.0.20.1.nupkg

方式二:先跑源码示例​

如果你要调试 Zeus 本身,可以先跑仓库里的源码示例。

git clone https://github.com/Mokode-dev/Zeus.git
cd Zeus/code
dotnet test Zeus.sln
dotnet run --project samples/Zeus.Samples.Console.Headless

如果一切正常,你会看到类似输出:

通道 meter 状态:Open
收到回显:PING
宿主已停止。把复杂留给 Zeus,把简单留给用户。

这说明三个基础环节已经正常:项目能编译、宿主能启动、通道能收发。

方式三:在你的项目里装 NuGet 包​

如果你已经有自己的项目,直接安装需要的包。

控制台或服务程序:

dotnet add package Zeus.Communications

WinForms:

dotnet add package Zeus.Communications
dotnet add package Zeus.Presentation.WinForms

WPF:

dotnet add package Zeus.Communications
dotnet add package Zeus.Presentation.Wpf

协议包仍按设备类型按需安装。JSON 里写了哪种设备,也要同时安装对应协议包。

Modbus:

dotnet add package Zeus.Protocols.Modbus

三菱 MC:

dotnet add package Zeus.Protocols.Mc

Siemens S7:

dotnet add package Zeus.Protocols.S7

Omron FINS:

dotnet add package Zeus.Protocols.Fins

Omron Host Link:

dotnet add package Zeus.Protocols.HostLink

Panasonic MEWTOCOL-COM:

dotnet add package Zeus.Protocols.Mewtocol

Allen-Bradley EtherNet/IP:

dotnet add package Zeus.Protocols.EtherNetIp

DL/T 645 电能表:

dotnet add package Zeus.Protocols.Dlt645

IEC 60870-5-104:

dotnet add package Zeus.Protocols.Iec104

MQTT 3.1.1:

dotnet add package Zeus.Protocols.Mqtt

OPC UA:

dotnet add package Zeus.Protocols.OpcUa

SNMP v2c:

dotnet add package Zeus.Protocols.Snmp

各包的最新版本见 NuGet 包 上的标签。

方式四:源码项目引用​

如果你在本仓库里开发示例或调试 Zeus 本身,使用项目引用。

<ItemGroup>
<ProjectReference Include="..\..\src\Zeus.Communications\Zeus.Communications.csproj" />
<ProjectReference Include="..\..\src\Zeus.Configuration\Zeus.Configuration.csproj" />
<ProjectReference Include="..\..\src\Zeus.Presentation.WinForms\Zeus.Presentation.WinForms.csproj" />
<ProjectReference Include="..\..\src\Zeus.Protocols.Modbus\Zeus.Protocols.Modbus.csproj" />
</ItemGroup>

不要同时对同一个 Zeus 程序集使用 NuGet 包和源码项目引用,避免版本混用。

跑更多示例​

在 code 目录执行:

dotnet run --project samples/Zeus.Samples.WinForms.QuickStart
dotnet run --project samples/Zeus.Samples.Wpf.QuickStart
dotnet run --project samples/Zeus.Samples.Console.Config
dotnet run --project samples/Zeus.Samples.Console.Modbus
dotnet run --project samples/Zeus.Samples.Console.Mc
dotnet run --project samples/Zeus.Samples.Console.S7
dotnet run --project samples/Zeus.Samples.Console.Fins
dotnet run --project samples/Zeus.Samples.Console.HostLink
dotnet run --project samples/Zeus.Samples.Console.Mewtocol
dotnet run --project samples/Zeus.Samples.Console.EtherNetIp
dotnet run --project samples/Zeus.Samples.Console.Dlt645
dotnet run --project samples/Zeus.Samples.Console.Iec104
dotnet run --project samples/Zeus.Samples.Console.Mqtt
dotnet run --project samples/Zeus.Samples.Console.TcpServer

WinForms / WPF 示例会打开窗口。点击“发送”后,虚拟通道会把文本回显到界面上。 协议示例使用本机虚拟 PLC、虚拟表计、虚拟站、虚拟 Broker 或回环连接,不需要真实硬件。

常见问题​

现象最可能原因处理
dotnet 命令不存在没装 .NET SDK,或 PATH 未刷新安装 .NET 8 SDK 后重新打开终端
看到 7.x.x 或更低版本装的是旧 SDK安装 .NET 8 SDK
找不到 Zeus 包nuget.org 不可访问,或包名写错确认能打开 nuget.org,并核对包名
WinForms / WPF 包还原失败项目不是 Windows 目标框架把目标框架改成 net8.0-windows
示例能编译但串口打不开真实端口不存在或被占用先跑虚拟通道示例,再看 串口

下一步:控制台示例。