Содержание

Использование YAML

Для составления конфигурации jroboplc используется формат YAML.

Внимание! В YAML отступы имеют значение. Для отступов используется пробел. TAB'ы использовать запрещено.
https://www.youtube.com/watch?v=AXLoRpKnK8U

Основные сведения о YAML

https://yaml.org/start.html

Инструменты для работы с YAML

http://yaml-online-parser.appspot.com/

Группировка

Довольно часто может потребоваться описать несколько наборов параметров с небольшими, либо отсутствующими различиями, например:

module.ser:
  - portnum:   1
    sysname:   /dev/ttyMXUSB0
    baud:      9600
    databits:  8
    parity:    0
    stopbits:  1
    timeout:   200

  - portnum:   2
    sysname:   /dev/ttyMXUSB1
    baud:      9600
    databits:  8
    parity:    0
    stopbits:  1
    timeout:   200

Как видно, отличия лишь в двух параметрах - portnum и sysname. В следующем примере мы вынесем общие параметры в отдельную группу:

group: &group
    baud:      9600
    databits:  8
    parity:    0
    stopbits:  1
    timeout:   200
    
module.ser:
  - portnum:   1
    sysname:   /dev/ttyMXUSB0
    <<:        *group

  - portnum:   2
    sysname:   /dev/ttyMXUSB1
    <<:        *group

Теперь, если потребуется изменить параметр baud сразу всем, достаточно будет изменить его в группе. В тоже время параметры можно указывать явно, чтобы перекрыть значение, установленное в группе, например:

group: &group
    baud:      9600
    databits:  8
    parity:    0
    stopbits:  1
    timeout:   200
    
module.ser:
  - portnum:   1
    sysname:   /dev/ttyMXUSB0
    <<:        *group

  - portnum:   2
    sysname:   /dev/ttyMXUSB1
    baud:      115200
    <<:        *group

Группа обязательно должна располагаться выше места ее использования.