上位机连接PLC
上位机使用Hsl框架连接PLC
顺便讲下策略模式
话不多说,直接上代码
public interface IPlcHost
{
bool ConnectionPlc(string path);
}
public class FastPlcHost : IPlcHost
{
private SiemensS7Net client;
public FastPlcHost()
{
client = new SiemensS7Net(SiemensPLCS.S1500)
{
ConnectTimeOut = 5000,
ReceiveTimeOut = 5000
};
}
public bool ConnectionPlc(string path)
{
client.IpAddress = path;
client.SetPersistentConnection();
var result = client.ConnectServer();
if (result.IsSuccess)
{
return true;
}
return false;
}
}
public static class PlcProvider
{
public static IPlcHost Default { get; set; } = new FastPlcHost();
public static bool ConnectionPlc(this PlcData plcData)
{
return Default.ConnectionPlc(plcData.Ip);
}
}
public class PlcData
{
public string Ip { get; set; }
public PlcData()
{
Ip = "127.0.0.1";
}
}
public class Test
{
public void ShowPlc()
{
PlcData plcData = new PlcData();
var b= PlcProvider.ConnectionPlc(plcData);
if (!b) return;
}
}
上位机连接PLC的更多相关文章
- 倍福TwinCAT3上位机与PLC通信测试(ADS通信) 包含C#和C++代码
倍福TwinCAT3上位机与PLC通信测试(ADS通信) 包含C#和C++代码 本次测试需要环境: VS2013,TwinCAT3(本人版本TC31-Full-Setup.3.1.4018.16) 代 ...
- s7nodave用于上位机连接西门子PLC,开源项目epics
s7nodave 可以看作是Prodave的开源替代者,在PLC侧,不需要编程 This device support does not require any special programming ...
- c#上位机与三菱PLC(FX3U)串口通讯
项目中会经常用到上位机与PLC之间的串口通信,本文介绍一下C#如何编写上位机代码 与三菱FX3U进行通讯 1. 第一种方法是自己写代码实现,主要代码如下: //对PLC的Y7进行置1 byte[] Y ...
- 多个rs485设备怎样跟上位机通讯?
http://bbs.hcbbs.com/thread-819457-1-1.html 多个rs485设备怎样跟上位机通讯? [复制链接] |关注本帖 fdemeng 签到天数: 1228 天 ...
- C#上位机中ZedGraph控件的使用
上位机程序控制PLC模拟量通道输出周期性正弦波信号,并采集所造成改变的模拟量输入信号,并绘制数据变化曲线. 界面如图: 最后测试效果如图: 代码: using System; using System ...
- (原创)使用C#开发高性能PLC上位机监控系统服务器应用程序
PLC服务器监控系统的特点: 1·使用微软C#面向对象开发语言开发应用程序.2·使用了健壮性与性能良好的SUPER SOCKET服务器通信框架,实现自定义应用层通信协议,支持多台PC客户端访问服务器, ...
- (原创)如何搭建PLC+上位机监控系统达到成本的最小化?
以西门子PLC举例; 西门子PLC有几个型号:S7-200SMART,S7-1200,S7-300,S7-400,S7-1500,价格从低到高. 1个项目中要求的IO数量:600点的DI+DO,若干个 ...
- 上位机开发之三菱Q系列PLC通信实践
经常关注我们公众号或者公开课的学员(如果还没有关注的话,左上角点击一波关注)应该知道,我们会经常使用西门子PLC,其实对于其他品牌的PLC,我们都会讲到,包括三菱.欧姆龙.基恩士.松下及国产台达.信捷 ...
- 上位机C#通过OPCUA和西门子PLC通信
写在前面: 很多人在学习OPCUA的时候,有个非常苦恼的问题,就是没有OPCUA服务器的环境,这时候,有些人可能会想到通过类似于KepServer这样的软件来实现.那么,有没有一种方式,实现快速搭建O ...
- 【精讲版】上位机C#/.NET与西门子PLC通信
618来啦 亲们,腾讯课堂101机构打榜了,快来助力<新阁教育>,<免费赠送课程>! 1.手机QQ(微信请也来一遍)扫下方二维码↓,找到<新阁教育> 2.点击“支持 ...
随机推荐
- Linux-rsync命令用法详解
从字面意思上,rsync 可以理解为 remote sync(远程同步),但它不仅可以远程同步数据(类似于 scp 命令),还可以本地同步数据(类似于 cp 命令).不同于 cp 或 scp 的一点是 ...
- ARM中PC和LR寄存器的关系
我们常常听说的PC,LR到底是什么关系,我这次终于弄明白了.我们都知道,LR是指向PC下一次要执行的地址,但是ARM不同的工作模式,他们有不同的关系.ARM有如下几种工作模式:用户模式,FIQ模式,I ...
- 我们在SqlSugar开发框架中,用到的一些设计模式
我们在<SqlSugar开发框架>中,有时候都会根据一些需要引入一些设计模式,主要的目的是为了解决问题提供便利和代码重用等目的.而不是为用而用,我们的目的是解决问题,并在一定的场景下以水到 ...
- PL/SQL相关的数据字典
PL/SQL相关的数据字典 http://www.oracle.com/technetwork/issue-archive/2012/12-nov/o62plsql-1851968.html 有时候, ...
- DFS算法模板(2488:A Knight's Journey)
DFS算法(C++版本) 题目一: 链接:http://bailian.openjudge.cn/practice/2488/ 解析思路: 骑士找路就是基本的DFS,用递归不断找到合适的路,找不到就回 ...
- SpringBoot整合Groovy脚本,实现动态编程
Groovy简介 Groovy 是增强 Java 平台的唯一的脚本语言.它提供了类似于 Java 的语法,内置映射(Map).列表(List).方法.类.闭包(closure)以及生成器.脚本语言不会 ...
- Go语言并发编程(1):对多进程、多线程、协程和并发、并行的理解
一.进程和线程 对操作系统进程和线程以及协程的了解,可以看看我前面的文章: 对进程.线程和协程的理解以及它们的区别:https://www.cnblogs.com/jiujuan/p/16193142 ...
- Redis服务端事件处理流程分析
一.事件处理 1.1 什么是事件 Redis 为什么运行得比较快? 原因之一就是它的服务端处理程序用了事件驱动的处理方式. 那什么叫事件处理?就是把处理程序当成一个一个的事件处理.比如我前面文章:服务 ...
- 【Android逆向】破解看雪9月算法破解第二题
1. apk安装到手机,一样的界面,随便输入一样的报错 2. apk拖入到jadx重看看 public native String sha1(String str); static { System. ...
- Dockerfile和docker-compose详解
Dockerfile镜像制作 docker/podman中, 镜像是容器的基础,每次执行docker run的时候都会指定哪个基本镜像作为容器运行的基础.我们之前的docker的操作都是使用来自doc ...