首页 > 其他分享 >[4DIAC] 应用开发界面详细介绍——【1.System Explorer】

[4DIAC] 应用开发界面详细介绍——【1.System Explorer】

时间:2024-06-07 21:04:30浏览次数:12  
标签:4DIAC Explorer System 视图 开发 模块 IDE 设备

以下内容均为个人经验,欢迎交流。

——旅客


一、概要


        4DIAC IDE是在大名鼎鼎的 Eclipse IDE 上扩展而来的,在4DIAC官网也提供了相应的IDE源码,可以尝试自己加入一些个人元素,例如更换背景、增加用户登录、增加外链按钮等等,这对于开发自己的控制系统或是OEM成自己的编程平台很有帮助,当你尝试解决一些4DIAC IDE的一些BUG(真的有点多),可以前往论坛寻求帮助。

        对于首次编译自己的IDE,建议从汉化开始,对于一些技术名词,可以在评论区评论,我将会免费提供帮助。


对于4DIAC IDE编程平台,作者也有很多未曾涉及的地方,但我会尽量全面、详细地进行介绍。

——旅客


二、工作区的介绍


        以下是根据个人经验定义的开发界面区域,可以根据个人习惯进行自定义:


图2-1 4DIAC开发界面


        【窗口菜单栏】:这里提供了关于IDE大部分功能的按钮。

        【快捷工具栏】:这里提供了工程保存、撤回、模块对齐等功能。

        【项目工程树】:这里以树形结构展示了项目的应用、设备、模块库等。

        【应用缩略图】:这里可以快速移动视图。

        【应用开发区】:这里是最关键的区域,这里编写逻辑程序、编辑自定义模块等。

        【参数调试区】:这里可以填写、配置数据,查看模块属性,查看输出信息。

        【工具调用区】:可以快速拖动模块到工程。

这里是作者个人对开发界面的分类,不是标准的定义。


三、系统视图——System Explorer

        名词解释:【项目】/【系统】/【方案(应用)】/【硬件配置】/【模块库】

        系统视图内展示已创建的【项目】,每个【项目】内包含了一个【模块库】和若干【系统】,而每个系统包含了一个【硬件配置】和若干【方案】:

        这是对系统视图中各个层级、各个对象的统一定义,方便之后的理解。

        相比于IEC61131标准(这里以CODESYS为对比对象),IEC61499标准(4DIAC)更侧重于分布式控制,CODESYS表现为一个PLC设备一套程序,而4DIAC表现为多个PLC设备一套程序。

四*、控制系统项目开发的惯用流程

        同样地,我的另一个身份是PLC自动控制工程师,开发过多个工厂系统,针对开发流程有如下经验,以简单的电梯系统为例:


工艺流程梳理——>设备选型——>设备组态——>程序编写——>测试&调试——>部署运行


        ①工艺流程梳理:主要是为了了解控制需求、统计输入/输出点位、梳理控制逻辑、做好控制保护,例如了解电梯层数&部数、特殊层要求、电梯重量报警、呼叫层冲突等。

        ②设备选型:考虑到电梯设备的安全性要求,应选用安全型的、具备冗余功能的、适合工作环境的、稳定性强的PLC,另外,诸如质量传感器、红外传感器等等的硬件也应进行周密的考虑。

        ③设备组态:当设备完成选型后,方可进行组态,配置设备间的通信等等。

        ④程序编写:进行控制逻辑程序的编写,做好预防突发事件发生的程序。

        ⑤测试&调试:进行系统的测试和调试,并尽量模拟真实运行环境、模拟处理突发事件等。

        ⑥部署运行:经过测试&调试后的程序方可部署运行。

以上便是传统的控制系统开发流程,同样地,在4DIAC上开发控制系统也有相同的流程,在下一章我将介绍如何在4DIAC设备间组态。

五、小结

        本文主要介绍了4DIAC应用开发界面的主要结构和系统视图(System Explorer)的一些层级概念。

标签:4DIAC,Explorer,System,视图,开发,模块,IDE,设备
From: https://blog.csdn.net/R_George/article/details/139527147

相关文章

  • Unity DOTS技术(十一) SystemBase详解
    文章目录一.什么是SystemBase二.SystemBase的生命周期三.继承实现四.操控的依据五.组件筛选的限制六.组件监听七.共享组件筛选八.存储筛选结果九.过滤标识组件十.线程操作十一.线程名称修改十二.Burst编译器开关一.什么是SystemBase在之前的分享中我们用到的系统父......
  • JetBrians的clion在运行代码时无法进行system("cls")清屏命令
    终极任务:找到小扳手在代码运行的基础下找到这个小扳手如果是新UI界面的话,在运行的基础下点这三个点这里是修改运行配置的地方下拉找到"在外部控制台中运行"的选项勾选上,就可以在后面的运行调用电脑自带的控制台了......
  • SystemC & TLM-2.0 - Using OVM within SystemC for Verification
    OVM-MLSystemVerilogisthenativelanguageforintheend.howeverCaitlin'shavedonatedOVM-MLtotheonlyowncommunitywhereMLstandsformixedlanguage.youcanwrapasourcecodeofOVM-MLfromthe0vmworldbottlewebsitewhereit'......
  • SystemC & TLM-2.0 - TLM-2.0 Protocol Checker for SytemC
    InteroperabilityLayer&BaseProtocolthebaseprotocolisthekeyelementintheinteroperabilitylayerinTLMtonaughtwhichalsoconsistsofthecoreinterfacesstandardsocketsandthegenericpayloadsothebaseprotocolthat'sbeingcheck......
  • 【Microelectronic Systems】期末速通
    PART1嵌入式系统概述与玩转mbed1嵌入式系统,微控制器,与ARM1.1什么是嵌入式系统?微处理器不仅仅存在于通用计算机中,也可以安置在一些不需要计算的设备内部,比如洗衣机,摄像机。微处理器常常可以控制这些产品。因为这类产品的微处理器镶嵌在内部,所以称这类产品为嵌入式系统。......
  • Systemd 配置服务管理
    原创转载:https://blog.csdn.net/qq_41084756/article/details/1302005231:Systemd案例systemd是Linux系统中现代化的初始化系统,可以使用systemctl命令实现管理启动、关闭、自启动等服务。在systemd中,可以通过创建一个service文件,把要执行的命令放在其中,然后将其添加到sy......
  • 如何在 Linux 中使用 systemd 安排定期任务?
    systemd是一个系统和服务管理器,它是现代Linux系统中重要的组件之一,主要负责系统的启动和管理。systemd取代了传统的SysVinit和Upstart,成为了大多数Linux发行版的默认init系统。它通过引入并行化启动、依赖关系管理和更强大的功能,提升了系统的启动速度和管理能力......
  • mysql阶段01 DBA介绍, 数据库介绍, mysql介绍, mysql二进制安装, mysql源码安装, syst
    数据库管理员DBA一、DBA的工作1.初级:mysql安装、搭建2.中级:数据库管理员DBA1)用户管理1.用户的权限2.用户可以操作的库3.用户的来源主机4.用户的密码grantshow,createonzh.*tozh@'172.16.1.%'identifiedby'123';2)数据管理1.数据备份2.数据恢复3.SQL......
  • .netCore System.Drawing.Common 发布,在CentOS 运行报错,生成图片流时。会因为不支持在
    报错:System.PlatformNotSupportedException:System.Drawing.Commonisnotsupportedonnon-Windowsplatforms.Seehttps://aka.ms/systemdrawingnonwindowsformoreinformation. >System.PlatformNotSupportedException:System.Drawing.Commonisnotsupported......
  • Zabbix server 6: systemctl stop zabbix-server 卡住不动
    1、Zabbixserver6:systemctlstopzabbix-server卡住不动[root@CNT-ZBX6-PB01~]#systemctlrestartzabbix-server.service^C[root@CNT-ZBX6-PB01~]#killall-9zabbix_server[root@CNT-ZBX6-PB01~]#systemctlrestartzabbix-server.service———————————......