当前位置: 首页 > news >正文

使用三菱PLC源码进行PLC读取写入操作

  1. 安装 MX Component 。

  2. 我的安装地址在:

  3. 在这里插入图片描述

  4. 打开 utl 文件夹下的 Communication Settings Utility 执行。
    配置PLC 添加当前需要配置的PLC 注意 logical station Namber 就是程序里需要对接的逻辑站点编号
    在这里插入图片描述
    5.配置选择对应的COM操作选择对应的cpu型型号,然后测试程序是否可以联通,如果联通则可以继续进行。
    5.程序编辑。
    5.1 选择 对应的SDK
    在这里插入图片描述
    在此demo下有众多可以适用的功能。
    在这里插入图片描述
    其中已经包含了数据各种谁操作,连接关闭等操作。程序引用相关文件。 修改嵌入方式改成否,选择保存本地。
    在这里插入图片描述
    以下就是我简单写了一个操作类:

 public static  class MXCommonGet
{public static bool IsConnect;public static ActUtlType64Lib.ActUtlType64Class axActUtlType1 = new ActUtlType64Lib.ActUtlType64Class();//public   MXCommonGet()//{//    解决因为第三方控件报错,将实例化的对象添加到控件合集中//    //((ISupportInitialize)(this.axActUtlType1)).BeginInit();//    //this.Controls.Add(axActUtlType1);//    //((ISupportInitialize)(this.axActUtlType1)).EndInit();//    }public static  bool ConnectM(){axActUtlType1.ActLogicalStationNumber = 2;//填设置的逻辑站号,站号是在MXcomponent软件里设置的axActUtlType1.ActPassword = "";//密码int iReturnCode = axActUtlType1.Open();//尝试连接PLC,如果连接成功则返回值为0if (iReturnCode == 0){OPCommon.LogWrite.WriteLog("PLC连接成功!");IsConnect = true;return true;}else{OPCommon.LogWrite.WriteLog("PLC连接失败!");IsConnect = false;return false;}}/// <summary>/// 获取前节点数据/// </summary>/// <param name="PointId"></param>/// <returns></returns>public static ResultMsg GetValueInPoint(string PointId){ResultMsg msg = new ResultMsg();try{if ( IsConnect){int relust;int iReturnCode = axActUtlType1.GetDevice(PointId, out relust);if (iReturnCode == 0){msg.ReturnInt = relust;msg.Success = true;}else{msg.Success = false;}}else{ConnectM();msg.Success = true;msg.ReturnInt = 0;}}catch (Exception ex){msg.Success = false;msg.ReturnInt = 0;msg.ErrMsg = "连接出错";} return msg; }/// <summary>/// 设置当前节点数据/// </summary>/// <param name="PointId">节点编号</param>/// <param name="Result"></param>/// <returns></returns>public static ResultMsg SetValueInPoint(string PointId,int  Result){ResultMsg msg = new ResultMsg();try{if ( IsConnect){ int iReturnCode = axActUtlType1.SetDevice(PointId, Result);if (iReturnCode == 0){msg.ReturnInt = Result;msg.Success = true;}else{msg.Success = false;}}else{ConnectM();msg.Success = true;msg.ReturnInt = 0;}}catch (Exception ex){msg.Success = false;msg.ReturnInt = 0;msg.ErrMsg = $"连接出错 {ex.Message}";}return msg;}/// <summary>/// 关闭当前连接/// </summary>/// <returns></returns>public static ResultMsg   CloseThisMX(){ResultMsg msg = new ResultMsg();if (axActUtlType1 != null){int iReturnCode = axActUtlType1.Close();if (iReturnCode == 0){msg.Success = true;msg.ReturnInt = 0;}else{msg.Success = false ;msg.ReturnInt = iReturnCode;}}else{msg.Success = false;msg.ErrMsg = "数据不存在";}return msg;}
}

相关文章:

使用三菱PLC源码进行PLC读取写入操作

安装 MX Component 。 我的安装地址在&#xff1a; 打开 utl 文件夹下的 Communication Settings Utility 执行。 配置PLC 添加当前需要配置的PLC 注意 logical station Namber 就是程序里需要对接的逻辑站点编号 5.配置选择对应的COM操作选择对应的cpu型型号&#xff0c;…...

使用Nvm切换nodeJs高版本之后,使用npm install一闪而过

先说现象,最近又有几个项目接手,其中有一个使用NVM切换至高版本node后,出现如下症状; 没有任何提示,然后翻看文件目录,node_modules目录没有创建,同时在全局 npm config set prefix 设置的目录下 多了一个 pgn的快捷,指向项目目录。 使用百度或者chart-gtp,搜索到的答案…...

【Kubernetes】k8s集群安全机制

目录 一.认证 1.k8s集群内的三种认证方式 2.k8s集群内的认证说明 2.1.需要被认证的访问类型 2.2.安全性说明 2.3.证书颁发的方式 2.4.kubeconfig 2.5.Service Account 2.6.Secret 与 SA 的关系 二.鉴权 1.鉴权的方式 2.RBAC的角色与角色绑定 2.1.RBAC的角色 2.2…...

嵌入式学习---DAY24:进程--二

一、exec函数族----启动一个新程序 用fork创建子进程后执行的是和父进程相同的程序&#xff08;但有可能执行不同的代码分支&#xff09;&#xff0c; 子进程往往要调用一种exec函数以执行另一个程序。当进程调用一种exec函数时&#xff0c;该进程的 用户空间代码和数据完全被…...

Diffusion Model相关论文解析之(二)DENOISING DIFFUSION IMPLICIT MODELS

目录 1、摘要2、创新点3、主要公式4、自己的理解&#xff0c;对错不确定 1、摘要 ‌Denoising Diffusion Implicit Models (DDIM)‌是一种扩散模型的改进版本&#xff0c;旨在加速采样过程并提高采样速度。DDIM通过引入非马尔可夫扩散过程&#xff0c;相对于传统的去噪扩散概率…...

【STM32嵌入式系统设计与开发拓展】——14_定时器之输入捕获

参考哔站&#xff1a;链接: 铁头山羊 一、微控制器的高级定时与控制功能集合 1、时基单元 2、输入捕获 3、输出比较 4、从模式控制器 5、高级定时器的输出控制 二、问题集合 1、什么是定时器 定时器是一种专门负责定时功能的片上外设GPI0AFI0EXTIUSART RCC I2C) 2、定时器…...

docker swarm如何让两个副本分别跑在两台不同的主机上

虽然 docker swarm 支持自动扩容部署&#xff0c;但是为了服务的稳定性、可靠性&#xff0c;有的时候甲方巴巴会要求一定要服务分散部署在不同的服务器上。 使用默认的部署方式&#xff0c;虽然副本为 N&#xff0c;但是部署的 N 个服务可能落在同一台服务器上。 在 Docker Swa…...

GPT助手的训练流程四个主要阶段( GPT Assistant training pipeline )

GPT助手的训练流程四个主要阶段&#xff08; GPT Assistant training pipeline &#xff09; flyfish 四个阶段 预训练&#xff08;pre-training&#xff09; 监督微调&#xff08;supervised fine tuning, SFT&#xff09; 奖励建模&#xff08;reward modeling&#xff09…...

网络如何发送一个数据包

网络如何发送一个数据包 网络消息发送就是点一点屏幕。 骚瑞&#xff0c;这一点都不好笑。&#xff08;小品就是我的本质惹&#xff09; 之前我就是会被这个问题搞的不安宁。是怎么知道对方的IP地址的呢&#xff1f;怎么知道对方的MAC呢&#xff1f;世界上计算机有那么多&…...

【Harmony OS 4.0】向上滑动加载案例

// 自定义class类对象类型 class Article {public id: numberpublic title: stringpublic content: stringconstructor(id: number, title: string, content: string) {this.id idthis.title titlethis.content content} }// 子组件 Component struct ArticleComponent {Pro…...

SQL基础教程(八)SQL高级处理

※食用指南&#xff1a;文章内容为《SQL基础教程》系列学习笔记&#xff0c;该书对新手入门非常友好&#xff0c;循序渐进&#xff0c;浅显易懂&#xff0c;本人主要用来补全学习MySQL中未涉及的部分&#xff0c;便于刷题和做项目。 官方电子书&#xff1a;《SQL基础教程》第2…...

[论文笔记] Data-Juicer: A One-Stop Data Processing System for Large Language Models

https://arxiv.org/pdf/2309.02033 GitHub - modelscope/data-juicer: A one-stop data processing system to make data higher-quality, juicier, and more digestible for (multimodal) LLMs! 🍎 🍋 🌽 ➡️ ➡️🍸 🍹 🍷为大模型提供更高质量、更丰富、更易”…...

期末速成复习资料——操作系统

体型&#xff1a;选择20判断10填空10*2简答4*5计算2*10 第一章 在一个计算机系统中&#xff0c;通常都含有多种硬件和软件资源。归纳起来可将这些资源分为四类&#xff1a;处理机、存储器、I/O设备以及文件&#xff08;数据和程序&#xff09;。相应地&#xff0c;OS的主要功能…...

Android之Service与IntentService区别

目录 Service特点使用场景示例 IntentService特点使用场景示例 区别总结线程管理&#xff1a;生命周期&#xff1a;使用场景&#xff1a;自动停止&#xff1a; 总结 在Android开发中&#xff0c;Service是一个可以在后台执行长时间运行操作的组件。主要有两种类型的Service&…...

【MySQL】表的设计

系列文章目录 第一章 数据库基础 第二章 数据库基本操作 第三章数据库约束 文章目录 系列文章目录前言一、表的设计二、表的关系总结 前言 在前文中&#xff0c;我们学会了基本的CRUD操作&#xff0c;对数据库中的数据进行约束以提高数据库的准确性。接下来介绍的表的设计就是…...

NC 用两个栈实现队列

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站&#xff0c;这篇文章男女通用&#xff0c;看懂了就去分享给你的码吧。 描述 用两个栈来实…...

用后端实现一个简单的登录模块2 前端页面

该模块能做到的功能&#xff1a; 1阶&#xff1a;输入账号和密码&#xff0c;输入正确即可返回登录成功的信息&#xff0c;反之则登录失败 2阶&#xff1a;有简单的前端页面&#xff0c;有登录成功和失败的弹窗&#xff0c;还有登录成功的主页面 3阶&#xff1a;前端页面的注…...

MySQL慢查询的查找语法

一、引言 数据库查询快慢是影响项目性能的一大因素&#xff0c;对于数据库&#xff0c;我们除了要优化SQL&#xff0c;更重要的是得先找到需要优化的SQL语句。 性能优化的思路 首先需要使用慢查询功能&#xff0c;去获取所有查询时间比较长的SQL语句其次使用explain命令去查…...

SQL中的聚合方法与Pandas的对应关系

在SQL和Pandas中&#xff0c;聚合方法是用来对数据进行汇总统计的重要工具。下面是SQL中的各种聚合方法及其与Pandas中相应操作的对应关系&#xff1a; 1. COUNT SQL: COUNT(*) 返回表中的行数。COUNT(column) 返回指定列中非空值的数量。 Pandas: count() 方法用于计算非空值…...

计算机毕业设计选题推荐-计算中心高性能集群共享平台-Java/Python项目实战

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!

5月28日&#xff0c;中天合创屋面分布式光伏发电项目顺利并网发电&#xff0c;该项目位于内蒙古自治区鄂尔多斯市乌审旗&#xff0c;项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站&#xff0c;总装机容量为9.96MWp。 项目投运后&#xff0c;每年可节约标煤3670…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

MySQL中【正则表达式】用法

MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现&#xff08;两者等价&#xff09;&#xff0c;用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例&#xff1a; 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析

Linux 内存管理实战精讲&#xff1a;核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用&#xff0c;还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...