0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用梯形逻辑构建无线PLC与实现应用

电子设计 来源:郭婷 作者:电子设计 2019-01-18 08:02 次阅读

虽然工业 IoT 正在快速发展,但传统可编程逻辑控制器 (PLC) 提供的定制灵活性和连接性,却无法满足工业工程师的需求。然而,构建定制解决方案可能成本昂贵,而且非常耗时,同时在基于微控制器实现真正嵌入式解决方案方面,几乎没有工业工程师拥有相关的操作经验。

本文对 PLC进行了简要介绍,然后说明了开发人员如何创建自己的无线 PLC,从而能够使用梯形逻辑来实现应用。

可编程逻辑控制器 (PLC) 简介

PLC 是一种耐用的计算机,用于在工业应用中实现特定流程的自动化。要实现自动化的流程非常广泛,从制造工厂的装配线到物联网建筑照明控制系统,以及中间涉及到的所有流程。

典型 PLC 架构包括(图 1):

带有内部 RAMROM 的中央处理单元

数字和模拟输入

数字和模拟输出

工业级电源

用于执行所需特性的逻辑应用程序

如何使用梯形逻辑构建无线PLC与实现应用

图 1:典型 PLC 架构包括一系列模拟和数字输入,这些输入按照逻辑应用程序处理和执行,然后驱动其用于模拟和数字输出的特性。(图片来源:Unitronics)

虽然市场上有很多传统 PLC 可供选择,但开发人员可能还是希望定制 PLC 特性,或者定制构建他们自己的器件。目前,多种不同的方式可用于实现此目的;但是,传统嵌入式系统工程师可以采用其中一种非常有趣的简单方式,也就是使用 STM32 开放式开发环境 (ODE)。

构建无线 PLC

要构建自己的无线 PLC,开发人员需要三个主要硬件组件:

CPU

输入/输出信号调节

Wi-Fi 模块

开发人员可以从头重新设计所有这些组件,或者也可以利用现有的生态系统。STMicroelectronics 推出了 STM32 开发人员工具包,包括所有这些组件,从而简化了 PLC 创建过程,另外还提供了用于开发梯形逻辑应用程序的基本软件。

现在,我们将探讨这些主要组件,以及让它们在工业环境中运行必须达到的条件。

我们要探讨的第一个组件是 CPU,本例中的 CPU 为 STM32F401RE,来自 STMicroelectronics。STM32F401RE 是一款 32 位 Arm® Cortex®-M4 处理器,并具有以下特点:工作频率 84 MHz、应用代码闪存空间 512 MB、RAM 96 KB。Nucleo-401RE 评估板上提供了 STM32F401RE,还包括用于连接其他硬件的 Arduino 针座,以及用于为嵌入式软件编程的 ST-Link。所有 PLC 代码将在 Nucleo-401RE 上执行。

图 2:Nucleo-401RE 开发板构成了 PLC 控制器的基础,它包含 512 MB 的应用代码空间,以及用于存储数据的 96 KB RAM。(图片来源:STMicroelectronics)

构建 PLC 所必需的第二个组件是用于输入和输出的信号调节板。开发人员可以从两种信号调节板中进行选择,或者如果应用需要,也可以组合使用。

第一个是 X-Nucleo-PLC01A1 工业 I/O 扩展板(图 3)。X-Nucleo-PLC01A1 包含通过 CLT01-38SQ7 高速数字输入限流器的八个经过调节的输入。CLT01-38SQ7 可限制输入引脚能够消耗的电流,从而为 PLC 提供数字输入保护。另外,还有采用 VNI8200XP 单片式 8 通道驱动器进行调节的八个工业输出。这种驱动器具有极低供电电流、集成 SPI 接口和高能效 100 mA 微功耗降压型开关。VNI8200XP 提供八个片载固态继电器,每个继电器能够驱动高达 0.7 安培的电流。X-Nucleo-PLC01A1 还包括 LED 指示灯,以便从直观地查看每个输入和输出的状态,以及三个报警灯用于指示超温和其他板故障。X-Nucleo-PLC01A1 通过 SPI 通信链路与 Nucleo-401RE 进行通信。

图 3:X-Nucleo-PLC01A1 是一款工业级扩展板,可提供具有八个数字输入和八个数字输出的 PLC 应用。(图片来源:STMicroelectronics)

PLC 可能还需要能够控制高电流和模拟信号。X-Nucleo-PLC01A1 专为数字信号设计。为了控制其他信号,开发人员可以使用 X-Nucleo-OUT01A1(图 4)。X-Nucleo-OUT01A1 包含 STMicroelectronics 的 ISO8200BQ 电位隔离八通道高压智能电源固态继电器。在将这些输出与 PLC01A1 进行比较时,一个很大差异是该扩展板能够在 10.5 至 33 伏特的电压范围内工作,实现模拟信号和数字信号之间的电位隔离。此外,该扩展板上还有几个 LED 指示灯,可用于指示是否发生了通信故障或热保护事件。

图 4:X-Nucleo-OUT01A1 是一款工业级扩展板,可提供具有八个继电器输出的 PLC 应用,其中这些输出能够处理高达 0.7 安培的电流。(图片来源:STMicroelectronics)

最后一个组件是无线芯片,可用于提供无线编程机制,或用于创建物联网连接的 PLC。开发人员可以使用 X-Nucleo-IDW01M1,它是一款符合 802.11 b/g/n 标准的 Wi-Fi 扩展模块,同样来自 STMicroelectronics(图 5)。X-Nucleo-IDW01M1 经过 FCC、IC 和 CE 认证,带有集成天线,因而可随时直接用于生产系统。

图 5:X-Nucleo-IDW01M1 是一款工业级 Wi-Fi 模块,能够集成到 PLC 中以提供无线连接。(图片来源:STMicroelectronics)

借助上述所有三个组件,开发人员可以按照图 6 所示的顺序组装硬件 PLC。虽然也可以按照相反顺序组装开发板,这不会造成损坏,但将需要一些额外调试。万一需要将任何定制硬件添加到 PLC(例如 RS-485 芯片),开发人员可以使用 Arduino 原型开发扩展板,例如 Proto Shield(来自 Olimex)或 Adafruit Proto Shield。

如何使用梯形逻辑构建无线PLC与实现应用

图 6:组装 STMicroelectronics 开发板以构建功能 PLC 的顺序。(图片来源:Beningo Embedded Group)

设置 PLC 软件

我们需要使用多个软件来设置 PLC。其中包括:

PLC 嵌入式软件

嵌入式编译器

梯形逻辑应用程序

PLC 嵌入式软件 FP_IND_PLCWIFI1 由 STMicroelectronics 开发,可从 STM 网站下载。它包含让 STM32F401RE 投入运行所需的全部代码,还包含多种预设配置,具体取决于需要哪些硬件堆栈。该嵌入式软件附带了已针对 STM System Workbench、IAR Workbench 和 Keil MDK 设置的三个项目,并且可从 http://www.st.com/en/embedded-software/fp-ind-plcwifi1.html 下载(图 7)。开发人员可以使用其中任何一种设置,以便在 PLC 上编译和部署嵌入式软件。

如何使用梯形逻辑构建无线PLC与实现应用

图 7:运行 PLC 必需的嵌入式 PLC 应用程序包(图片来源:Beningo Embedded Group)

下载嵌入式应用程序之后,可将其导入所需的编译器 IDE 并进行编译。开发人员应该确保代码编译没有问题。然后,可通过与 PC 的标准 USB 连接,将编译的应用程序下载到 PLC。

最后,STMicro 还创建了简单的 PLC 应用程序,可用于创建梯形逻辑应用程序。该应用程序适用于 iOSAndroid。通过在移动设备的应用商店中搜索“ST PLC App”,可将该应用程序下载到移动设备上。

简单的应用程序示例

一旦 PLC 的嵌入式软件运行之后,开发人员便可以专注于使用 ST PLC 应用程序开发他们的应用代码。应用代码将使用梯形逻辑来开发。开发人员可以启动应用程序,并基于他们选择要包括在硬件堆栈中的开发板来创建新项目(图 8)。

如何使用梯形逻辑构建无线PLC与实现应用

图 8:通过使用 ST PLC 应用程序,开发人员可以创建新项目(左图红色突出显示),选择项目名称(右图橙色),然后配置将要使用的硬件(右图绿色)。(图片来源:Beningo Embedded Group)

配置项目之后,开发人员即可为应用程序创建梯级。第一个项目不妨简单地测试是否能够读取输入,以及基于该输入能否设置输出。开发人员可以通过如下方法来创建此测试:单击“Add rung”(添加梯级),然后实现在应用程序中必需的逻辑。一旦完成此操作之后,开发人员应该会创建一个类似图 9 左侧所示的梯级。

如何使用梯形逻辑构建无线PLC与实现应用

图 9:通过使用 ST PLC 应用程序,开发人员可以实现自己的逻辑,以便根据他们的需求来控制设备(左)。一旦创建应用程序之后,便可通过单击发送应用程序按钮(右),将其无线推送至 PLC。(图片来源:Beningo Embedded Group)

保存梯级之后,开发人员将返回到主项目屏幕。在该屏幕上,他们可以在应用程序中编辑梯级或创建更多梯级。如果准备部署应用程序,请单击图 9 右侧所示的无线传输按钮,这样可进行连接并传输 PLC 应用程序。请注意,开发人员必须将移动设备连接到 PLC 接入点,并配置端口和 IP 地址,这样才能成功传输应用程序。

构建无线 PLC 的技巧和诀窍

在创建自己的定制无线 PLC 时,开发人员可以遵循一些技巧和诀窍。其中包括:

如果无线开发板不工作,请确认开发板在堆栈上的方向正确。(即按正确的方向放置)

通过为 SSID 添加安全密钥,提升系统安全性。

将默认无线特性更改为站模式,并仅在更新过程中切换到接入点,从而更新 PLC。

考虑添加工业通信协议,例如 RS-485 和 Modbus。

快速构建 PLC 的最佳方式是将它视为一个有趣的问题,然后尝试使用 PLC 解决该问题。

使用 IAR Embedded Workbench for Arm 来编译 PLC 嵌入式软件。该工具链在 30 天内代码不受限。

结论

构建定制 PLC 不一定就那么困难。如本文所示,STMicroelectronics 提供的生态系统让开发人员能够开发基本 PLC 软件,并且极其快速地运行该软件。然后,开发人员还能够轻松地修改和定制该应用程序,以满足各种应用的需求和应对各种挑战。

虽然主要目标是使用梯形逻辑来创建最终应用代码,但如果开发人员拥有丰富的经验和知识,他们可以轻松地对嵌入式软件进行调整,构建更加强大和灵活的混合系统。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15191

    浏览量

    171084
  • plc
    plc
    +关注

    关注

    4972

    文章

    12231

    浏览量

    454767
  • 计算机
    +关注

    关注

    19

    文章

    6642

    浏览量

    84464
  • 可编程逻辑
    +关注

    关注

    7

    文章

    511

    浏览量

    43901
收藏 人收藏

    评论

    相关推荐

    资料下载:梯形图显示到编译--软PLC实现

    梯形图显示到编译--软PLC实现PLC(Programmable Logic Controller 可编程逻辑控制器)是在工业环境下使用的
    发表于 07-02 07:12

    PLC逻辑梯形图编程的特点

    梯形图中所使用的输入、输出、内部继电器等编程元件的“常开”、“常闭”触点,其本质是PLC内部某一存储器的数据“位”状态。程序中的“常开”触点是直接使用该位的状态进行逻辑运算处理;“常闭”触点是使用该位的“
    发表于 03-23 15:04 1640次阅读

    三菱plc梯形图符号解释

    梯形图是plc最基本,也是最简单的编程语言,梯形图以其直观易懂,便于入门,吸引了广大菜鸟的狂热追捧,而梯形图之所以如此受欢迎,就是因为它把逻辑
    发表于 05-01 17:42 3.3w次阅读
    三菱<b class='flag-5'>plc</b><b class='flag-5'>梯形</b>图符号解释

    PLC梯形图的运行方式 PLC梯形图的特点

      PLC(可编程逻辑控制器)梯形图是一种常用的编程语言,用于控制工业自动化系统中的各种机器和设备。它是一种图形化编程语言,通过以梯形图的形式表示电路的
    发表于 03-15 15:13 1655次阅读

    PLC梯形图的特点 如何懂PLC梯形

      PLC梯形图(Programmable Logic Control Ladder Diagram)是一种编程语言,通常用于控制工业自动化系统中的可编程逻辑控制器(PLC)。
    发表于 03-16 14:32 4119次阅读

    PLC梯形图怎么画 有哪些操作步骤

      PLC梯形图是根据PLC程序设计的逻辑流程图画出来的。PLC程序设计的逻辑流程图是由输入、处
    发表于 03-16 16:02 9453次阅读

    PLC梯形图的时序图是什么

      在PLC梯形图中,逻辑上的输入和输出被表示为一个类似于梯形的图形。输入和输出被连接到梯形的顶部和底部,
    发表于 03-16 16:18 2451次阅读

    PLC梯形图的语句表怎么写

      PLC梯形图的语句表是指将梯形图对应的程序逻辑,转化为文字形式的表格。这个表格中会列出每个逻辑元件的名称、参数、描述以及连接的输入输出点
    发表于 03-16 17:18 4104次阅读

    PLC梯形图编程的常见技巧和注意事项

      PLC梯形图编程的主要要素包括输入、输出和逻辑元件。其中,输入和输出指的是PLC系统与物理世界之间的接口,如传感器和执行器;逻辑元件则用
    发表于 03-17 14:50 2908次阅读

    PLC梯形图编程的顺序和方法

      PLC梯形图编程是一种用于计算机控制系统中的图解语言,它采用梯形图的形式描述程序的逻辑关系,以实现实时控制和自动化控制。
    发表于 03-17 15:07 3653次阅读

    梯形逻辑PLC编程

    梯形逻辑 PLC 编程是目前我们的过程自动化的最流行且易于学习的方法。梯形逻辑或简称 LD 是在可编程
    发表于 04-18 10:33 2次下载
    <b class='flag-5'>梯形</b><b class='flag-5'>逻辑</b><b class='flag-5'>PLC</b>编程

    可编程逻辑控制器 (PLC) 中的梯形逻辑

    可编程逻辑控制器或 PLC 是用于执行控制功能的数字计算机,通常用于工业应用。在可用于对 PLC 进行编程的各种语言中,梯形逻辑是一种直接
    发表于 10-04 17:32 434次阅读
    可编程<b class='flag-5'>逻辑</b>控制器 (<b class='flag-5'>PLC</b>) 中的<b class='flag-5'>梯形</b><b class='flag-5'>逻辑</b>

    plc梯形图运行顺序是什么

    一、PLC梯形图概述 PLC梯形图是一种图形化编程语言,用于描述PLC逻辑控制过程。它采用类似
    的头像 发表于 12-14 11:05 1815次阅读

    plc梯形图编程的基本原则

    PLC(可编程逻辑控制器)是现代自动化控制领域中广泛应用的一种控制装置。PLC梯形图编程是PLC控制中最常用的编程方式之一。本文将详细介绍
    的头像 发表于 01-22 10:51 567次阅读

    plc梯形图顺序执行的原则是什么

    PLC(可编程逻辑控制器)梯形图(或称为梯形逻辑图)是用于描述和编程PLC的一种常用图形化编程语
    的头像 发表于 02-05 11:13 686次阅读