dxscada
Configuration
General Status
Ecava IGX SCADA Server
Example
Drivers1
mdobusopcuaprofinet
snmp hotlink
高铁列车到站检测
本文档使用 MrDoc 发布
-
+
首页
Configuration
D-IOT stands for Distributed/Decoupled IoT, which also further abbreviated to DX drivers are SCADA IO drivers that can run independently within one machine or several machines across different platforms, for various protocols. As such it's very convenient to scale up, or relocate your SCADA server to the cloud when needed. D-IOT代表分布式/解耦物联网,也称为DX驱动程序,是SCADA IO驱动程序,可以在不同平台的一台机器或几台机器内独立运行,适用于各种协议。因此,在需要时扩展或将SCADA服务器迁移到云端非常方便。 DX compliant drivers can also run in embedded environments, as such you may request any driver to be shipped together with the Ecava D-IOT 9000 series edge device as well. DX兼容的驱动程序也可以在嵌入式环境中运行,因此您也可以要求任何驱动程序与Ecava D-IOT 9000系列边缘设备一起发货。 Configuration DX drivers can be configured with one json file and the tabulated section can be extended into multiple CSV files. And they can be edited using any pure text editor, code editor, json editor and the CSV file can be edited using any spreadsheet conveniently. Although different drivers may have different designs, their basic configurations are very similar and simple. 配置 DX驱动程序可以配置一个json文件,表格部分可以扩展为多个CSV文件。它们可以使用任何纯文本编辑器、代码编辑器、json编辑器进行编辑,CSV文件可以使用任何电子表格方便地进行编辑。尽管不同的驱动器可能有不同的设计,但它们的基本配置非常相似和简单。 { "servers": [{"url":"127.0.0.1:1883"}], "project": "DEM0", "id": "opc1", "desc": "Channel/Gateway/Group 1", "update": [ "1000" ], "task": [ { "id": "ua1", "desc": "OPC UA Device 1", "url": "opc.tcp://localhost:49321", "username": "", "password": "", "secureConnection": false, "subscription": true, "trigger": 1000, "maxPoll": 1000, "data": [ { "$csv": "dxopcuacli.csv" } ] } ] } A typical JSON configuration file for OPC UA Cli OPC UA Cli的典型JSON配置文件 IDs are used throughout the configuration and they play as the parent section in the naming convention for every child item. ID在整个配置中使用,它们在每个子项的命名约定中充当父部分。 server The first section of the configuration file allows you to specify the IP address and its port of the SCADA server, and you will also need to specify the ID and project name. Note that the module shall still start and continue to run even if the server cannot be found or being configured wrongly. 服务器 配置文件的第一部分允许您指定SCADA服务器的IP地址及其端口,您还需要指定ID和项目名称。请注意,即使找不到服务器或配置错误,模块仍应启动并继续运行。 task "task" is a list of sections for module related configuration. Every section shall have its ID which is usually different, but it can be the same if redundancy is desired. This section shall consist of IP address and connection information if the module is meant to interact with external systems like devices or database systems. This section will usually consist of a timer parameter that specifies how often the task should be executed. 任务 “任务”是模块相关配置的部分列表。每个部分应具有其ID,该ID通常不同,但如果需要冗余,则可以相同。如果模块旨在与设备或数据库系统等外部系统交互,则本节应包括IP地址和连接信息。此部分通常包含一个计时器参数,用于指定任务的执行频率。 Note: It's meaningless if you configure a redundant ID with the same device's IP address for the same data address within one project. 注: 如果在一个项目中为相同的数据地址配置具有相同设备IP地址的冗余ID,则毫无意义。 maxPoll Any valid number that is larger than zero will limit the maximum number of unique tags for concurrent polling or updates from the external resource for one particular task. During initialization, when the total unique tags under the task exceed the entered limit, a group of tags will be selected for update based on top to bottom priority, of optimum logic for a particular protocol if there's any. After initialization, if any queries are made from the front-end module or any other modules, then the newly requested unique tags will be in higher priority based on FIFO basis. Older tags that no longer get updated will be logged on the console in verbose mode. 任何大于零的有效数字都将限制一个特定任务的并发轮询或来自外部资源的更新的唯一标签的最大数量。在初始化过程中,当任务下的唯一标签总数超过输入的限制时,将根据特定协议的最佳逻辑(如果有的话)的自上而下的优先级选择一组标签进行更新。 初始化后,如果从前端模块或任何其他模块进行任何查询,则新请求的唯一标签将基于FIFO具有更高的优先级。不再更新的旧标签将以详细模式记录在控制台上。 trigger "trigger" is a parameter to store an array of triggers that will be used to trigger a configuration section. There are 3 types of trigger available to be configured. 1. Trigger based on a fixed time interval 2. Trigger based on event timer with cron syntax. 3. Trigger based on tag a. trigger based on any changes to the tag value b. trigger based on the updates on the timestamp For setting up a trigger with a fixed time interval, the time interval specified is required to be in the milliseconds. For example, “1000” for triggering every 1 second. A cron syntax simply consists of 6 sections that are separated with space, in the order of "sec min hr day mon dow". You may enter any number within the range for the specific section, or asterisk (*) when the section is irrelevant or should be ignored. For example, an hourly trigger at minute 0, shall be written as "0 0 * * * *", and every sunday 9 am shall be written as "0 0 9 * * 7". As for the options of trigger based on any changes to the tag value and updates on the timestamp, a valid tag name is required to be specified in the format of ${tag name}, where tag name represents the tag that will be monitored and act as a trigger. For triggers based on any changes to the tag value, the format will be ${tag name} +- and ${tag name} will be the format for trigger based on the updates on the timestamp even if the value is unchanged. 触发 “trigger”是一个参数,用于存储将用于触发配置节的触发器数组。有3种类型的触发器可供配置。 1.基于固定时间间隔的触发 2.基于cron语法的事件计时器触发。 3.基于标签触发 a.根据标签值的任何变化触发 b.根据时间戳的更新触发 要设置具有固定时间间隔的触发器,指定的时间间隔必须以毫秒为单位。例如,“1000”表示每1秒触发一次。 cron语法由6个部分组成,用空格隔开,顺序为“秒-分钟-小时-天-蒙-多”。您可以在特定部分的范围内输入任何数字,或者在该部分不相关或应被忽略时输入星号(*)。例如,在第0分钟的每小时触发器应写为“0 0****”,每个星期天上午9点应写为”0 0 9**7”。 对于基于标签值的任何更改和时间戳更新的触发选项,需要以${tag-name}的格式指定有效的标签名称,其中标签名称表示将被监视并充当触发器的标签。对于基于对标记值的任何更改的触发器,格式将是${tag-name}+-,即使值不变,${tagname}也将是基于时间戳更新的触发器格式。 Grouped Trigger Every common trigger item in one array will have its own asynchronous thread that works independently and separately. If you need to group a few tasks to be triggered in controlled order, or work within a single connection to the targeted network, then you can add a label after the interval trigger with a dot separator. For instance, you can group a few tasks (that originally trigger with a 1000) by entering "1000.grpA", whereby you can use any 26 English characters plus underscore as the string without space for any group. Note that the same group must be triggered by the same interval timer, different timers will be grouped separately. For instance, "1500.abc" and "2000.abc" will not be grouped together despite having the same label. This grouped trigger is useful when the connected devices or gateways can only support limited connections, or when you want to perform a daisy chain polling mechanism for a group of devices, so that they will be polled in controlled sequence rather than all at once. 分组触发器 一个数组中的每个常见触发器项都有自己的异步线程,该线程独立工作。如果您需要按受控顺序对要触发的几个任务进行分组,或者在目标网络的单个连接内工作,那么您可以在间隔触发器后添加一个带点分隔符的标签。 例如,您可以通过输入“1000.grpA”对一些任务(最初以1000触发)进行分组,这样您就可以使用任何26个英文字符加下划线作为字符串,而不会为任何组留出空格。请注意,同一组必须由相同的间隔定时器触发,不同的定时器将单独分组。例如,尽管“1500.abc”和“2000.abc”具有相同的标签,但它们不会组合在一起。 当连接的设备或网关只能支持有限的连接时,或者当您想对一组设备执行菊花链轮询机制时,此分组触发器非常有用,这样它们将按受控顺序进行轮询,而不是一次全部轮询。 update "Update" is the master control for data update sequence to achieve optimum performance according to the network architecture or the entire setup. A typical use of "update" parameter is to achieve store and forward whereby you can control when to update the module's data. For example, you may accumulate the data and update the data on an hourly or even daily basis instead of on the real-time basis that needs to send out data frequently. For another example, if you have a huge range of data to be updated on milliseconds basis, it may not be optimum for data consumers like the historian to process them immediately. So it's better to accumulate the data into bigger intervals like every second or every 5 seconds before updating. There won't be any data being sent when there's no new data available. 更新 “更新”是数据更新序列的主控制,根据网络架构或整个设置实现最佳性能。“update”参数的典型用途是实现存储和转发,从而可以控制何时更新模块的数据。例如,您可以每小时甚至每天积累数据并更新数据,而不是需要频繁发送数据的实时数据。再举一个例子,如果你有大量数据需要以毫秒为单位进行更新,那么对于像历史记录这样的数据消费者来说,立即处理它们可能不是最佳选择。因此,在更新之前,最好将数据累积到更大的间隔中,比如每秒或每5秒。 当没有新数据可用时,将不会发送任何数据。 data Although the "data" section is nested under the config, it's probably the most heavily edited section of all. This section usually consists of long list entries in tabulated format, and that's why you can link it in one or multiple external CSV files. For convenience sake, some modules like OPC UA client or REST API will generate all tags found in its associated server for speeding up the tag editing works, under the name of moduleID.configID.all.csv. 数据 尽管“data”部分嵌套在配置下,但它可能是所有部分中编辑最频繁的部分。此部分通常由表格格式的长列表条目组成,这就是为什么您可以将其链接到一个或多个外部CSV文件中。 为了方便起见,一些模块,如OPC UA客户端或REST API,将以模块ID.configID.all.csv的名称生成在其关联服务器中找到的所有标签,以加快标签编辑工作。 Note: The basic supported data types are boolean, int8, uint8, int16, uint16, int32, uint32, real32, int64, uint64, real64, and string. Protocol-specific data type can be added for the corresponding DX module. 注: 支持的基本数据类型有boolean、int8、uint8、int16、uint16、int32、uint32、real32、int64、uint64、real64和string。可以为相应的DX模块添加特定于协议的数据类型。 Important: The CSV file must be placed within the same folder as the json configuration file. 重要提示: CSV文件必须放置在与json配置文件相同的文件夹中。 Tips: The same CSV file can be linked multiple times in a few configurations under different IDs. Caution: You may omit the IDs as part of the tagname by setting the ID in module or task section as zero (0), but this will allow the possibility of tagname collision in the network due to careless mistakes, especially when a single CSV file is being linked more than one time. 提示: 同一CSV文件可以在不同ID下的几种配置中多次链接。 注意: 您可以通过将模块或任务部分中的ID设置为零(0)来省略标记名中的ID,但这将允许由于粗心的错误而在网络中发生标记名冲突的可能性,特别是当一个CSV文件被链接多次时。
智能制造CEO
2024年12月19日 09:07
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码