THE OPENPLC PROJECT | openplcproject.comAn open source alternative to automationhttps://www.openplcproject.com/

OpenPLC是个开源的PLC,主要包括三部分

  1. PLC运行时。 用于支持PLC程序的运行。在不同的操作系统或硬件平台下是不一样的。
  2. Editor 编辑器。 用于编辑业务逻辑,类似于西门子博途的功能,当然没人家复杂啦。
  3. HMI Builder 人机接口设计。 名为SCADA BR,用于进行监控。

目前PLC运行时支持以下平台:

我们在树莓派4B平台上进行测试。

在树莓派上安装运行时

具体命令可以参见官方网站OPENPLC ON RASPBERRY PI | openplcproject.com

git clone https://github.com/thiagoralves/OpenPLC_v3.git
cd OpenPLC_v3
./install.sh rpi

树莓派的操作系统选择上,官方推荐使用Raspberry Pi OS,我试用了一下Raspberry Pi OS Lite,感觉有些问题,键盘布局不一样,所以就用的ubuntu for raspberry。

安装和运行是非常简单的。打开http://192.168.1.1:8080/ 就可以看到运行时的后台啦,当然IP需要换成实际的IP。

用户名 openplc , 密码openplc

在Hardware里面切换到Raspberry Pi。

此时会有一个编译的过程。我的系统上报了一个错误,无法找到 WiringPi.h 这个头文件,查看openplc的安装脚本,background_installer.sh,有apt install wiringpi,在安装过程中是有安装的,但在ubuntu上这个库只包含可执行程序,不包含用于开发的头文件和静态库。

在RaspberryPi OS中应该是用apt install wiringpi可以安装全部可执行程序+头文件。

解决办法就是自行编译wiringpi。

wiringpi这个库的代码位于: https://github.com/WiringPi/WiringPi/tree/final_official_2.50

wiringpi的编译和安装是比较简单的,直接./build就可以。详细可以参考以下地址

http://wiringpi.com/

编辑器

我下载的windows版的,直接下载使用就可以了。

helloworld程序参见这个页面 最下面的链接 https://www.openplcproject.com/runtime/raspberry-pi/

helloworld找开后是这个样子。

程序的作用是有一个button控制一个灯, 如果按button超过2秒,灯就会亮。

button绑定的是 %IX0.0  ,对应的是树莓派GPIO第3条腿。

lamp绑定的是%QX0.0 ,对应的是树莓派GPIO第8口。

生成.ts文件,再在树莓派的后台里上传,再点击Start PLC即可运行此程序(我这里点过了显示的是Stop)。

注意不要上传错误,如果上传错误的.st文件,可能会产生下面的问题

error: ‘LogMessage’ was not declared in this scope
LogMessage(GetFbVar(LEVEL),(char*)GetFbVar(MSG, .body),GetFbVar(MSG, .len));
^~~~~~~~~~

HMI Builder

这个模块名为ScadaBR ,是用JAVA写的网页后台。

官方提供了一个VirtualBox的虚拟机镜像,可以下载后直接使用。

也可以自行安装。

git clone https://github.com/thiagoralves/ScadaBR_Installer.gitcd ScadaBR_Installer./install_scadabr.sh

虚拟机按要求运行后,用浏览器打开http://192.168.1.100:8080/ScadaBR/

用户名admin  密码 admin

点击界面第6个图标,打开数据源。 点击右侧的编辑按钮,进入编辑

填入name,Host的IP(树莓派的IP),AddPoint,增加一个点。

点击AddPoint出现的如下所示,进行相关设置后点击磁盘标志即可保存此点。

记得点击左侧的Status,Enable这个点。否则默认是禁用状态。

在首页可以查看所添加的点的实时值。

这些值跟modscan看到的值是一致的。

ScadaBR状态图

ScadaBR还可以生成状态图,根据点的值不同而显示不同的图片。

具体的过程可以参考

在树莓派上使用openPLC

|SCADA| OpenPLC + Raspberry Pi + ScadaBR: Part 1 – Out of My Element


几个可能有用的链接:

How to find hardware configuration in OpenPLC Editor - OpenPLC Forumhttps://openplc.discussion.community/post/how-to-find-hardware-configuration-in-openplc-editor-11871121?pid=1327547514&highlight=logmessage

Control Engineering | Free PLC programming software for educationControl Engineering - With the pandemic measures and schools transitioning to remote education professors looking for ways to get students hands-on experience usinghttps://www.controleng.com/articles/free-plc-programming-software-for-education/

|SCADA| OpenPLC + Raspberry Pi + ScadaBR: Part 1 – Out of My ElementSeeing as we're all currently living through a pandemic and can't really go anywhere or do anything in our free time, I figured I'd may as well look into something I've been interested in for a while: SCADA. More specifically, getting some hands-on experience with SCADA using some free, opensource software and hardware I mostly…https://0ut0fmyelement.wordpress.com/2020/03/20/scada-openplc-raspberry-pi-scadabr-part-1/

OpenPLC试用总结相关推荐

  1. qt工程在linux系统里颜色显示错误_【飞凌嵌入式RK3399开发板试用体验】+QT开发环境搭建测试(二)...

    作者:飞扬的青春 在拿到开发板之后,已经体验了Android操作系统,接下来就是体验Linux下的开发,本次以QT的一个小案例来测试下. 首先是自己先搭建了一个Ubuntu18.04的虚拟机,使用真机 ...

  2. casperjs 安装试用

    纠结了好久,一直报错, 具体错误信息现在已经忘了,后来看了官网的prerequisite,才知道要安装特定版本或greater 的 phantomjs 和 Python.我这边主要是没装python. ...

  3. 2019智能手表推荐_智能手表一定越贵越好?试用过后这五款才真正值得推荐

    随着技术的进步,年轻人手上的普通腕表进化成了智能手表,虽说几年前智能手表产品还存在功能单一和续航太短等问题,然而,经过几年的发展迭代,智能手表技术不断革新,带给人们更好的使用体验,也有越来越多的人愿意 ...

  4. 卡巴循环30天不限次数循环试用工具

    本文需评论之后方可查看! @echo off @title 卡巴循环30天不限次数循环试用工具 @echo off echo 卡巴循环30天不限次数循环试用工具 echo. echo ======== ...

  5. 从试用到使用:计算机视觉产业新一轮发展的起步年

    参加 2018 AI开发者大会,请点击官网报名 CSDN 出品的<2018-2019 中国人工智能产业路线图>V2.0 版即将重磅面世! V1.0 版发布以来,我们有幸得到了诸多读者朋友及 ...

  6. 代码审查规范(试用版)

    目录 1.背景 2.目标 3.流程 4.指定代码审查规范 4.1.命名风格 4.2.常量定义 4.3.代码风格 4.4.注释风格 4.5.控制语句 5.执行代码审查规范 6.开展PR Bash活动 1 ...

  7. Proovread安装与试用

    proovread安装与试用 2018.12.04 19:52:21字数 204阅读 118 [TOC] 安装环境 Ubuntu18.10 Perl 5.10.1 or later Log::Log4 ...

  8. html阅读开放试用阶段,泰克为不同行业提供100种应用功能免费试用

    泰克在3月中旬开始推出的[泰克芯高度,视界大不同]系列线上活动,其中特别针对工程师推出几十种软件包的30天免费试用,每个软件可以单独开通.针对电源设计.汽车电子.无线信号.高速信号等多个行业,泰克开放 ...

  9. 福利 | 放送AI华人库试用名额!专项代码找到领域专家

    文末有福利哦~ 如今,人工智能领域发展如火如荼,国家也高度重视人工智能的发展,自然基金委成立了人工智能的专项代码F06,我们做了一个很有意思的尝试,首先通过在相关领域发表的论文找到2000位左右华人专 ...

最新文章

  1. 用指针查找数组中温度值为32的天数
  2. WCF 第四章 绑定 msmqIntegrationBinding
  3. linux i2c 读写函数,Linux下读写芯片的I2C寄存器
  4. 车牌识别系统,并语音读出识别结果,MATLAB仿真
  5. write up:杂项 又一张图片,还单纯吗 --图片提取
  6. 由防重复点击引发的幂等性问题思考
  7. jsp Request获取url信息的各种方法比较
  8. Cookie 的规范介绍
  9. SET/JFace ProgressIndicator的使用以及来回滚动进度条实际使用示例
  10. c++接口调用外部类_Java基础:Java语法糖4之内部类
  11. 10. 单例模式(singleton pattern)
  12. 如何与亦敌亦友的 null 说拜拜?大神原来是这么做的!
  13. 总时差与自由时差的计算
  14. PQ分区魔术师图解教程
  15. 做事的态度与工作态度
  16. MCAL知识点(六):GTM驱动配置详解
  17. 关于XML解析的常用方式
  18. word/论文版本管理方案
  19. 页面刷新数据丢失解决方案
  20. 数据分析可视化之模型介绍

热门文章

  1. 通过《iOS人机交互指南》的变化看iOS7的设计理念
  2. SAP GUI 770 windows 免费下载
  3. Cocos2d-x数据模块教程04:plist文件操作
  4. python线程池wait_python线程池 ThreadPoolExecutor 的用法示例
  5. 在VScode里面添加Python解释器
  6. ssl证书失败的原因有哪些
  7. Android面试题整理-2
  8. YDOOK :Golang 各大操作系统 完全卸载删除 golang 的方法教程
  9. python 调用cplex-学术版
  10. 输血一受血规则的4输入1输出数据选择器电路