首页 > 其他分享 >OpenPLC官方文档简单翻译(二)OpenPLC Runtime

OpenPLC官方文档简单翻译(二)OpenPLC Runtime

时间:2023-12-23 21:00:54浏览次数:27  
标签:runtime OpenPLC Modbus 地址 文档 PLC Runtime

参考网址:https://autonomylogic.com/docs/2-1-openplc-runtime-overview/

网站更新时间:2022-10-05

2.1  OpenPLC Runtime概述

OpenPLC Runtime用来运行Editor创建的PLC程序。Main runtime有一个内置的网络服务器,可以配置runtime的多个参数。但OpenPLC runtime的微型实现(直接运行在微控制器和Arduino板子上的runtime,将runtime当作PLC程序的一部分的那些),没有内置的网络服务器,所有runtime有关的配置需要在editor中完成。

Main runtime的网络服务器可以用过你的目标OP的8080端口实现。例如:如果你在一个树莓派上安装了OpenPLC的runtime,并且你的树莓派的IP地址是192.168.0.103,你可以通过你的浏览器去访问runtime:

如果出现页面错误,请确保您的电脑可以通过网络访问 Raspberry Pi。如果不知道电路板的 IP 地址,Raspberry Pi 基金会有相关的指南可以帮助你。

一旦成功访问Main runtime的网络服务器,可以看见如下登录页面:

默认用户名和密码是 openplc(登录)和 openplc(密码)。首次登录后必须做的第一件事就是更改默认用户名和密码。只需进入左侧的 "用户 "菜单,点击 OpenPLC 用户,即可更改用户信息。

保存更改后,系统会提示您再次登录。只需使用新的凭据登录即可!

 

通过硬件IO接口访问runtime

默认情况下,OpenPLC 运行时安装的是空白驱动程序。这意味着无法直接使用 OpenPLC 来控制硬件的 GPIO 引脚,必须要先为硬件启用正确的硬件驱动程序。在左侧菜单中点击 "Hardware(硬件)",然后从弹出菜单中选择相应的驱动程序。请确保为您的电路板选择了正确的驱动程序,否则 OpenPLC Runtime 将无法编译runtime core。

 

选择正确的驱动程序后,点击 "保存更改",然后等待runtime core重建。如果一切正常,最后应该会看到一条信息,提示编译成功结束。

2.2  将程序上传至OpenPLC的runtime

OpenPLC runtime有一个内置的网络服务器,可用于配置 OpenPLC 和上传新程序供其运行。OpenPLC runtime的微型实现(直接运行在微控制器和Arduino板子上的runtime,将runtime当作PLC程序的一部分的那些),没有内置网络服务器。微型runtime的所有runtime配置均可直接从 OpenPLCe editor的上传对话框中完成(参见 1.5 在微控制器板上安装 OpenPLC 运行时)。

在计算机上打开网络浏览器,在 8080 端口输入 OpenPLC 设备的 IP 地址,即可访问 OpenPLC 网络服务器。有关 OpenPLC Runtime 网络服务器的更多信息,请查阅 2.1 OpenPLC Runtime 概述。

登录网络服务器后,您将看到 OpenPLC 的dashboard,其中包含有关当前运行程序和运行日志的一些信息。

要上传新程序,请进入左侧菜单的 "Program "部分。在那里,你会看到最近上传的所有程序的列表。只要点击列表中的程序,然后在下一页确认,就可以返回到之前上传的程序。要上传新程序,请点击 "Choose File",选择 .st 文件,然后点击 "Upload Program"。

在出现的窗口中,填写一些有关程序的信息,以便下次登录时了解程序在做什么。完成后,点击 "Upload program",将新的 .st 文件加载到 OpenPLC 中。

文件上传后,您将返回dashboard,OpenPLC 状态将变为 "compiling"。有关编译过程的日志将显示在运行时日志框中。编译过程结束后,状态将变为 "running",新程序将开始运行。如果程序出错,状态将变为 "stopped",错误信息将显示在运行时日志框中。

2.3  输入,输出和内存寻址

PLC 程序通过输入和输出模块和(或)SCADA 通信协议与外部世界进行交互。在设计 PLC 程序时,可通过为变量标注 PLC 地址来决定哪些变量应连接到 I/O 和通信模块。

     OpenPLC Runtime 遵循IEC 61131-3标准对输入、输出和内存寻址。I/O 位置的寻址是通过使用特殊字符序列完成的。这些序列由百分号"%"、位置前缀、大小前缀和一个或多个自然数组成,中间用空格隔开。支持以下位置前缀:

  • I for input
  • Q for output
  • M for memory

支持以下描述数据大小的前缀:

  • X for bit (1 bit)
  • B for byte (8 bits)
  • W for word (16 bits)
  • D for double word (32 bits)
  • L for long word (64 bits)

       例如,如果要将第一个数字输入的状态读入 BOOL 变量,则必须声明变量位于 %IX0.0。如果要将 UINT 变量的内容写入第二个模拟输出,则应声明 UINT 变量位于 %QW2。

       注意:PLC 到物理 I/O 映射取决于平台。有关每个支持平台的 PLC I/O 映射的更多信息,请查阅: 2.4 物理寻址

您可能已经注意到,X的 PLC 地址有两个分层地址(即有个.)。最不重要的部分(最右侧)可解释为字节中的一个位置,必须在 0 至 7 的范围内。最有意义部分(最左边)必须不大于 1023。各部分之间用一个句点隔开。X 以外的数据大小只有一个分层地址。它们不得包含句点(.),且不得超过平台的最大内存位置地址。

       由于所述原因,以下是 OpenPLC 中 PLC 地址的无效示例:

%IX0.8 最小有效指数大于 7。

%QX0.0.1 不允许使用三部分层次结构地址。

%IB1.1 仅允许 X 数据大小的两部分层次结构。

2.4  物理寻址

OpenPLC Runtime 兼容多种不同 I/O 模块配置的硬件平台。在内部,所有 I/O 变量都与 PLC 地址相关联,详见 2.3 输入、输出和内存寻址。硬件层是负责将内部 PLC 地址变量转换为物理硬件位置的组件。OpenPLC 支持的每个平台必须有不同的硬件层。下面是从平台的硬件层文件中提取的每个平台的引脚说明:(在此忽略,详见原文)

2.5  MODBUS寻址

OpenPLC 可配置为 Modbus 从站(服务器)。Modbus 从站通常由执行测量和控制的主站控制。远程主站通过网络(Modbus/TCP)向 OpenPLC 从站发送 Modbus 帧,从而发起读写请求。适用于 Arduino 兼容板的 OpenPLC 微型runtime也支持通过串行和 USB 发送 Modbus 帧。用于 Linux 和 Windows 主机的 OpenPLC Runtime 默认在 TCP 端口 502 上运行 Modbus 服务器。该配置可在 "设置 "选项卡上更改。

       OpenPLC 支持以下 Modbus 功能代码:

  • Read discrete output coil (0x01)
  • Write discrete output coil (0x05)
  • Write multiple discrete output coils (0x0F)
  • Read discrete input contacts (0x02)
  • Read analog input registers (0x04)
  • Read analog output holding registers (0x03)
  • Write analog output holding register (0x06)
  • Write multiple analog output registers (0x10)

Modbus 地址根据分层地址值与 PLC 地址绑定,即较低的 PLC 地址映射到较低的 Modbus 地址。地址尽可能按顺序映射。下表列出了 OpenPLC Linux/Windows 运行时的 Modbus 地址空间。

       后续省略,详见原文。

2.6  Slave Devices

注意:本节仅适用于在 Windows 或 Linux 设备上运行的 OpenPLC Runtime。基于微控制器的平台(如 Arduino)无法附加从站设备

您可以在 OpenPLC Runtime 上附加 Modbus 从站设备,以扩展 I/O 点数。这对于没有任何 I/O 点的系统特别有用,例如在台式电脑或服务器上运行的 OpenPLC Runtime。OpenPLC Runtime 支持使用 Modbus/TCP(网络)或 Modbus/RTU(串行)的从站设备。此外,还支持具有无线功能、可通过 TCP/IP 传输 Modbus 数据包的设备。

在此省略,详见原文。

标签:runtime,OpenPLC,Modbus,地址,文档,PLC,Runtime
From: https://www.cnblogs.com/Daemon17/p/17923609.html

相关文章

  • OpenPLC官方文档简单翻译(三)OpenPLC Editor
    参考网址:https://autonomylogic.com/docs/3-1-openplc-editor-overview/网站更新时间:2022-10-053.1 OpenPLCEditor概略OpenPLC编辑器是一款符合IEC61131-3标准的PLC代码编辑器。它允许您创建、编译IEC61131-3程序并将其上传到OpenPLCRuntime。编辑器使用非常简......
  • OpenPLC官方文档简单翻译(一)Get Started
    参考网址:https://autonomylogic.com/docs/openplc-overview/网站更新时间:2022-10-051.1 OpenPLCOverviewOpenPLC是一个开源的基于软件的可编程逻辑控制器。OpenPLC是基于IEC61131-3标准(PLCs的基本软件架构和编程语言的标准)。(这里有个视频简单介绍OpenPLC的使用和功能。视......
  • 基于SpringBoot+Vue的文理医院预约挂号系统设计实现(源码+lw+部署文档+讲解等)
    (文章目录)前言:heartpulse:博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌:heartpulse:......
  • HTML对接PUSDN富文本编辑器 - 编辑文档
    <!DOCTYPEhtml><html> <head> <metacharset="UTF-8"> <title>yuque编辑器</title> <linkrel="stylesheet"type="text/css" href="https://gw.alipayobjects.com/render/p/yuyan_npm/@......
  • 文档生成工具:Linux下doxygen的使用
    一、概述Doxygen是一个代码文档生成工具。它从代码文件中提取注释并可生成多种文档形式。如:网页文档HTML,RTF(MS-Word),PDF等等。同时也可生成函数之间的调用和文件的依赖关系图表。二、安装平台:linuxsudoapt-getinstalldoxygensudoapt-getinstallgraphvizsudoapt-ge......
  • word文档转html富文本,富文本编辑器 转成html5代码
    用我现在最常使用的php框架fastadmin举例子,当然thinkphp或者原生php也是同样的原理,大家理解思路就好了、 环境:fastadmin,summernote编辑器【summernote的居中功能在段落里,且不会吃掉section标签,加上导入word功能之后,简直完美~】 按照国际惯例先放效果图  github上的de......
  • PHP读取word文档
    1.安装1.1composer安装phpoffice/phpwordcomposerrequirephpoffice/phpword1.2后台代码 $file=$this->request->request('file');if(!$file){$this->error(__('Parameter%scannotbeempty','file......
  • 7、手签名放在文档里面—word
    1、在纸上写名字,然后拍照2、把图片插入word里面,右键【环绕文字】—>【浮于文字上方】3、用裁剪工具,把图片裁小点4、【设置图片格式】的参数就可以了 缺点:因为还是图片,所有它会覆盖文字的这个是没设置前的图片 ......
  • 企业选择防泄密软件/文档加密软件注意事项
    防泄密软件选择的一般准则:功能和特性:选择软件时,确保它提供了您所需的核心功能,如数据加密、访问控制、监控和审计功能等。易用性:软件应该易于使用,以便员工能够轻松适应并正确使用。强大的安全性不应妨碍用户的正常工作。支持的平台和集成:确保软件能够与您公司已有......
  • [转]CryptoJS-中文文档
    原文地址:CryptoJS-中文文档-掘金原始文档:code.google.com/archive/p/c…介绍CryptoJS是一个JavaScript的加解密的工具包。它支持多种算法:MD5、SHA1、SHA2、SHA3、RIPEMD-160的哈希散列,以及进行AES、DES、Rabbit、RC4、TripleDES加解密。散列算法MD5MD5是一种广泛使......