直播课堂
HOME
直播课堂
正文内容
plc编程数据提取 怎么把plc的数据写到excel,老周一步一步教你
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

怎么把plc的数据写到excel,老周一步一步教你

作为自动化专业人员,你可能需要使用Excel电子表格中的工厂数据进行监视,控制或测试。此数据对于需要实时数据进行决策的管理人员,研究人员和其他部门人员也可能会有所帮助。我们将向你展示如何使用Microsoft Excel和动态数据交换( DDE)和Visual Basic for Applications(VBA)的通信来实现此目标以及更多内容。

将使用哪种软件?

我们将使用Microsoft Excel 通过RSLinx ClassicStudio 5000 Logix Emulate 软件将数据写入Rockwell Automation Studio 5000

程序如何互连的总体框图如下所示。

什么是DDE?

让我们回顾一下什么是DDE?DDE是一种Windows机制,使应用程序可以相互通信。DDE通信被称为启动对话的客户端 和响应请求的服务器 之间的通讯。

要启动DDE对话,客户端需要指定以下三个项目:

Studio 5000 Logix设计器

Logix Designer示例程序

因此,让我们从上一个示例PLC程序开始。我们已经创建了一个称为RealPars_ExcelStudio 5000 Logix Designer 程序。

REAL和DINT数组

在上一篇文章中,我们打开了Controller Tags文件夹,以创建两个名为DINT_array和REAL_array的标签数组。

因此,当我们在Excel中选择“读取”和“写入”操作时,便可以在Excel中看到这些值。我们将在REAL和DINT数组中设置值。

在DINT_array和REAL_array标签旁边,选择标签旁边的+号。

一旦选择了+号,标签数组将展开以显示该数组中的所有元素。

DINT _阵列REAL_array ,他们每个人有10个元素

DINT 是整数类型值,而REAL 是浮点类型值。

现在,保存Studio 5000程序。

运行Studio 5000 Logix仿真软件

现在启动Studio 5000 Logix Emulate 软件。该仿真软件将在个人计算机上仿真虚拟的Rockwell Software PLC。

通过选择Windows“开始”菜单找到Studio 5000 Logix Emulate图标,然后键入Emulate 以从列表中查找Studio 5000 Logix Emulate软件应用程序。

设置仿真器模块

我们已经设置了仿真器,在插槽2中安装了Emulator 5570控制器 ,在插槽0和1中安装了RSLinx ,在插槽3中安装了1789-Sim 32点I / O模块

运行RSLinx Classic通讯软件

现在,让我们再次选择Windows“开始”按钮以启动RSLinx Classic通信软件。

选择Windows“开始”菜单按钮,然后键入RSLinx 以查找RSLinx Classic桌面应用程序。

从列表中选择RSLinx Classic应用程序。

RSLinx将启动。

Studio 5000 Logix Emulator的通信驱动程序需要配置。

选择“通讯” 菜单,然后选择“配置驱动程序”

在上一篇文章中,我们创建了一个名为RealPars_VBP-1 的虚拟驱动程序,它具有“运行” 状态。

现在,如果我们选择DDE / OPC 菜单,然后从下拉列表中选择“主题配置” ,则会看到我们在上一篇文章中创建的主题,称为RealParsExcel

好的,到目前为止,我们已经完成了RSLinx Classic

我们将Studio 5000 Logix Designer程序下载到虚拟PLC。

Studio 5000 Logix Designer 软件中,从“通讯” 菜单中,选择“谁是活跃用户”

将显示Who Active窗口,其中显示所有已配置的驱动程序,在本例中为Realpars_VBP-1 驱动程序。

从列表中选择Studio 5000 Logix Emulate ,然后按Go Online 按钮。

将程序下载到模拟器

要将程序下载到仿真器 ,请在“已连接到联机” 窗口中,按“下载”

将显示下载警告弹出窗口;再次选择下载以开始下载过程。

下载后,进度条将完成为100%。

现在,返回Studio 5000 Logix Designer程序。

请注意,该控制器位于“远程程序”中,这意味着该控制器未运行。

将“远程程序” 状态更改为“远程运行”

选择“远程程序” 指示器旁边的图标,然后从列表中选择“运行模式”

出现一个配置窗口,询问确认将控制器置于“远程运行”状态,然后选择“是”

现在,让我们看一下之前添加的Controller标记DINT_arrayREAL_array ,并准备对其进行可视化监视,以了解Excel的读写 操作。

现在,我们准备为Excel中的READ和WRITE Control按钮设置DDE Poke VBA (应用程序的Visual Basic)脚本。

打开 Microsoft Excel项目

现在打开我们已经创建的Microsoft Excel项目。

你可以在此处下载此Excel文件。

从工作表1开始,我们将工作表重命名为READ WRITE PLC

我们将DE 列命名为READ ,将GH 列命名为WRITE, 以标识将在何处显示数据。

DE列将是READ Real和Integer数据,GH列将是WRITE Real和Integer数据。

请记住,我们的PLC变量数组已分配了10个元素(DINT_array [0]至[9]和REAL_array [0]至[9])。

在WRITE REAL CLX值G列中,我们输入了要写入PLC的浮点值,在WRITE INTEGER CLX值H列中,输入了要写入PLC的整数值。

VBA脚本

在接下来的几个步骤中,我们将使用VBA开发模式并使用VBA脚本执行写入操作。

为了将命令按钮对象放置在Excel工作表上,我们将进入开发人员模式。

创建表单控件按钮对象

为此,选择“开发人员” 选项卡,然后选择“设计模式” 按钮,这将使你可以将控制对象放置在图纸上。

这些控制对象实质上使我们 能够创建HMI(或人机界面)。

接下来,让我们选择“插入” 按钮。

此按钮为我的Excel工作表提供了各种控件。

从菜单中按“插入”按钮将显示“表单控件”下拉菜单。从此下拉菜单选择中,选择“表单控件-按钮” 对象。

选择命令按钮后,在GH 列下的数据下方绘制一个矩形。

将出现“分配宏” 窗口,选择“新建”按钮以创建一个新按钮。

现在,将出现新按钮。让我们给按钮起一个新的名字。

右键点击按钮,然后选择编辑文本 。然后输入WRITE CLX ARRAYS 作为新名称。

完成后,将显示Write CLX Arrays 按钮,并输入新名称。

Visual Basics for Applications(VBA)窗口

好的,这就是乐趣的开始。

右键单击WRITE CLX Arrays 按钮,将在命令按钮周围显示把手。

在Excel Developer 菜单区域中,选择“查看代码” 项。

将出现“ Visual Basics for Applications” 窗口。

VBA RSLinx连接

为了简化本文,我们将编写将执行大部分VBA RSLinx连接的VBA代码,并将操作写入PLC,并部分解释VBA代码。

在“模块” 文件夹下,双击“模块1” ,然后编写RSLinx“打开并连接” 代码。

DDE戳写命令脚本

接下来,我们将在WRITE CLX ARRAYS按钮事件区域中编写DDE Poke Write Command脚本。

此WRITE CLX Button事件的脚本是CLICK,它执行到RSLinx的连接以及通过RSLinx DDE与PLC的通信,最后,当单击按钮时,DDE Poke功能用于执行实际的写命令。

脚本rslinx = OpenRSlinx() 将使用DDE打开与RSLINX的连接。

FOR / NEXT 循环 通过每个使用FOR NEXT指令,并且如果存在一个错误显示错误消息框中的Excel单元的脚本将循环。

两条DDEPoke rslinx 指令将获取数据并将数据写入PLC。

第一个将在G列的3 + i行中获取REAL数据,并将浮点数据写入PLC。 在此循环中,I = 0到9,数字7代表G列。

第二个将在H列的3 + i行中获取INTEGER数据,并将整数数据写入PLC。 在此循环中,i = 0到9,数字8代表H列。

指令 DDETerminate rslinx 将终止RSLINX连接

让我们测试“写入CLX阵列”按钮。

通过PLC在线,我们可以在Studio Logix Designer控制器标签窗口中将所有值都设置为零。

现在,返回到Excel Write Command按钮。

然后,左键单击命令按钮。该操作将在按钮后面运行脚本,并将值写入PLC。

现在,让我们返回Studio 5000 PLC程序。

现在,DINT和REAL数组标记中提供了G列和H列中的Excel值。几乎像魔术。

VBA可以非常强大并且可以执行许多操作。

DDE请求命令脚本

我们执行了与“写入CLX数组”命令按钮相同的操作,以创建“读取CLX数组”命令按钮。

右键单击READ CLX ARRAY命令按钮后,从“开发人员”选项卡中选择视图代码。

在READ命令按钮事件下编写代码。

与DDE Poke命令类似,我们将使用DDE Request方法从RSLinx DDE主题读取数据。

返回到Excel电子表格。

左键单击READ CLX ARRAY按钮。该脚本将执行并从PLC控制器变量中读取值。

如何实现通过电脑PC从PLC中读取数据

plc远程控制,其实是通过通信方式来完成,通信方式有很多种,比如常见的RS232、RS485、以太网等等。都有共同点,都是上位机发出指令,下位机执行指令。比如,电机的启停,就可以通过通信方式完成。现在的PLC都支持通信,只是接受到启或停信号,就对继电器开或断,从而实现了电机的启和停。

如何实现PC从PLC中读取数据 问:我想实现PC从PLC中读取试验得到的数据,请问高手们如何才能实现呀?答:只要根据通信协议用VB(VC、组态软件)等软件编写计算机段的监控程序,实时将PLC的数据读入电脑并存在数据库中就可以。PLC的程序不用考虑通信,只要编写电脑的程序就可。问:通过modbus接入读取plc数据,怎么把数据显示在手机端? 答:在现场增加一个modbus转mqtt的网关,以mqtt方式建立设备连接,PLC协议转换网关。 用户可以通过这个嵌入式网关硬件将各种品牌的PLC直接连接到MQTT服务器。 我们将此嵌入式硬件称为MQTT网关。 用户不再需要单独的做PLC协议的转换解析,大大降低了成本和应用难度。

mqtt网关采用Linux操作系统,采用嵌入式硬件设计,实现PLC数据的采集,首先,采用嵌入式硬件设计,支持以太网接口、RS485接口、RS232接口、4G模块;其次,在Linux系统中,根据西门子PLC、三菱PLC、欧姆龙PLC等品牌的PLC协议进行解析,确保系统可以正常与各种PLC进行通信;可以把数据传输到云平台,实现数据在手机端APP显示。

HINET工业智能网关是一个集成多种互联网通讯技术,面向工业领域的设备通讯终端产品。支持4G、WIFI、以太网等多种互联网接入方式。1、 实现工业现场设备远程控制;2、 实现设备固件远程升级,程序上下载,可灵活接入各种设备管理平台;3、 实现工业现场触摸屏远程控制和组态画面远程映射;4、 可同时与多台PLC或触摸屏远程通讯;5、实现西门子、三菱、欧姆龙、施耐德、台达、汇川、和利时、松下、永宏、海为和 MODBUS 系列等PLC等主流协议硬件解析;6、 实现PLC远程监控,PLC远程编程,PLC远程调试,PLC远程上下载,PLC远程控制,PLC数据采集,PLC远程通讯;

思普云工业互联网平台

思普工业云平台核心目标是实现工业设备物联网,为企业/个人提供标准化、基础版的工业物联网系统,依托华辰智通十多年的工业设备联网以及信息化经验引导传统制造业、工控企业进入工业物联网阶段。

相关问答

plc程序怎么导出方法?

答:plc程序导出的方法1、在编程软件STEP7V5.5中打开想要导出的块,可以是FB、FC、DB等。例如:用户需要导出FC1,则双击FC1,打开此功能。2、在打开的FC1界面...

施耐德plc里如何提取整数和小数?

在施耐德PLC中,你可以使用内置的数学函数来提取整数和小数部分。以下是一些可能的方法:整数部分提取:你可以使用“INT”函数来提取一个数值的整数部分。例如,...

丰炜plc解密方法?

1.目前没有明确的丰炜PLC解密方法。2.这是因为PLC(可编程逻辑控制器)的解密是一项技术难题,涉及到硬件和软件的复杂结构,以及丰炜PLC厂家的保密措施。解密...

plc编程西门子plc编程,如何计算电机设备的运行时间,赋给一个中间变量?

为了计算终端设备的运行时间,您可以读出CPU的当前数据和时间值并计算两次时间的差值。描述图1所示为计算终端设备运行时间的实例。为此,STEP7(TIAPor...

plc与电脑串口通信怎样设置?

要将PLC与电脑通过串口通信,您需要完成以下步骤:1.确定PLC的串口号和波特率。这些信息通常可以在PLC的手册或设置菜单中找到。2.在电脑上安装串口驱...要...

plc索引的使用和理解?

PLC索引是用于识别和管理PLC程序中数据和地址的一种技术。索引可以在编程中用于访问和操作数组、表格和其他由连续数据组成的数据结构。使用索引可以简化编程...

三菱FX2N系列PLC中的程序是否能提取到电脑里?

打开三菱PLC编程软件——点击工程菜单-——创建新工程——选择PLC系列——FXCPU——FX2N(C)——确定——电脑与PLC通讯电缆连接好——点击在线菜单——传输设...

plclong如何转换浮点数?

在PLC编程中,如果需要将一个长整型数(Long)转换为浮点数(Float),可以使用相应的转换函数。不同的PLC编程语言和平台可能具有不同的函数名称和语法,以下是...

用多个s7-200plc组成网络,假如一个plc的站地址是2,然后这个plc里的获取通信口地址指?

用S7软件扫描可以搜索到在这一网络上的所有地址,同一个PLC不同的通讯口也有不同的地址。用S7软件扫描可以搜索到在这一网络上的所有地址,同一个PLC不同的通讯...

如何获取PLC操作手册?

先确定你要下载什么品牌的PLC资料,先到百度搜索里百度一下,例如,欧姆龙PLC操作手册,直接百度。如果找不到,到欧姆龙官网去下载。还是找不到,可以直接打开欧...先...

 模拟电视  周英男 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部