基于.net core3.1的工业控制系统(二)基于.net core3.1的工业控制系统框架说明PRISM框架全局画面介绍PLC通讯数据库支持类型下一章节介绍主画面的布局以及功能基于.net core3.1的工业控制系统框架说明PRISM框架本项...

基于.net core3.1的工业控制系统(二)
- 基于.net core3.1的工业控制系统框架说明
- PRISM框架
- 全局画面介绍
- PLC通讯
- 数据库支持类型
- 下一章节介绍主画面的布局以及功能
基于.net core3.1的工业控制系统框架说明
PRISM框架
本项目采用的是prism7.2的框架,后期升级到8.0的版本需要更新单独的behaviors文件:
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
//替换为
xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
全局画面介绍
1.下面主要分为左中右布局,
2.最左边一栏是属于隐藏区域,进行左右滑动,来切换主菜单;
3.中间放置每个页面来进行画面切换;
4.右边显示主要的操作按钮,以及曲线趋势等参数;
5.曲线使用的库主要是LiveCharts曲线库;
PLC通讯
1.大多数PLC控制器的协议;
2.codesys通讯能使用共内存通讯的方式等协议;
3.mqtt协议;
下面介绍其中一款plc通讯链接方式:
//连接三菱5u的mc二进制通讯协议
melsec_net = new MelsecMcNet(ConfigurationManager.ConnectionStrings["ip_plc"].ConnectionString, Convert.ToInt32(ConfigurationManager.ConnectionStrings["port_plc"].ConnectionString));
melsec_net.ConnectClose();
melsec_net.ConnectTimeOut = Convert.ToInt32(ConfigurationManager.ConnectionStrings["timeout_plc"].ConnectionString);// 网络连接的超时时间
connect = melsec_net.ConnectServer();
数据库支持类型
1.此处使用ORM连接到3类数据库存储数据记录,可以供选择
//通过app.config配置数据库文件
try
{
/*fsql = new FreeSql.FreeSqlBuilder()
.UseConnectionString(FreeSql.DataType.SqlServer, ConfigurationManager.ConnectionStrings["sqlconnect"].ConnectionString)
.UseAutoSyncStructure(true) //自动同步实体结构到数据库
.Build(); //请务必定义成 Singleton 单例模式*/
if (ConfigurationManager.ConnectionStrings["selectsql"].ConnectionString.ToLower() == "sqlserver")
{
fsql = new FreeSql.FreeSqlBuilder()
.UseConnectionString(FreeSql.DataType.SqlServer, ConfigurationManager.ConnectionStrings["sqlserver"].ConnectionString)
.UseAutoSyncStructure(true) //自动同步实体结构到数据库
.Build(); //请务必定义成 Singleton 单例模式
}
else if (ConfigurationManager.ConnectionStrings["selectsql"].ConnectionString.ToLower() == "mysql")
{
fsql = new FreeSql.FreeSqlBuilder()
.UseConnectionString(FreeSql.DataType.MySql, ConfigurationManager.ConnectionStrings["mysql"].ConnectionString)
.UseAutoSyncStructure(true) //自动同步实体结构到数据库
.Build(); //请务必定义成 Singleton 单例模式
}
else if (ConfigurationManager.ConnectionStrings["selectsql"].ConnectionString.ToLower() == "postgresql")
{
fsql = new FreeSql.FreeSqlBuilder()
.UseConnectionString(FreeSql.DataType.PostgreSQL, ConfigurationManager.ConnectionStrings["postgresql"].ConnectionString)
.UseAutoSyncStructure(true) //自动同步实体结构到数据库
.Build(); //请务必定义成 Singleton 单例模式
}
else
{
MessageBox.Show("The configuration file config selects the database error, please check!");
}
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
throw new Exception(e.ToString());
//return;
}
下一章节介绍主画面的布局以及功能
织梦狗教程
本文标题为:基于.net core3.1的工业控制系统(二)


基础教程推荐
猜你喜欢
- C#调用摄像头实现拍照功能的示例代码 2023-03-09
- Unity shader实现高斯模糊效果 2023-01-16
- C#通过标签软件Bartender的ZPL命令打印条码 2023-05-16
- C#中的Linq to JSON操作详解 2023-06-08
- C#获取指定目录下某种格式文件集并备份到指定文件夹 2023-05-30
- c# – USING块在网站与Windows窗体中的行为不同 2023-09-20
- Unity 如何获取鼠标停留位置下的物体 2023-04-10
- C#中 Json 序列化去掉null值的方法 2022-11-18
- 实例详解C#实现http不同方法的请求 2022-12-26
- C# 解析XML和反序列化的示例 2023-04-14