Table Of Contents

JSON Definitions

Version:
    Last Modified: September 6, 2017

    Table 1. JSON Object Parameters
    Term Required? Type Notes
    version Yes Numeric Must be 1
    module_type Yes String Must be 9350
    program_info Yes String Specifies information and settings specific to the program
    Table 2. Program Info Object Parameters
    Term Required? Type Notes
    build_number Yes Numeric Increments when you first edit a User Program that has successfully compiled
    guid Yes GUID string Formatted with hyphens and braces
    auto_start Yes Boolean string Specifies if the program should begin automatically when the module powers on
    led_flash_rate Yes Time string Specifies the rate UserLED0 blinks when set to Flash, must be between 50 ms and 12.8 s, inclusive, and be a multiple of 50 ms
    fault_latch_time Yes Time string
    Table 3. Module Type Object Parameters
    Module_type Term Required? Type Number of Elements Definition
    9350 digital_inputs Yes Array 8 Digital input objects
    digital_outputs Yes Array 8 Digital output objects
    variables Yes Array 24 Variable objects
    state_machines Yes Array 0 to 8 (inclusive) State tree node objects
    Table 4. Digital Input Object Parameters
    Term Required? Type Notes
    alias_name Yes Identifier string
    config_type Yes String Must be one of: reserved, unused, basic, test_pulse, dual, or dual_and_test_pulse
    discrepancy_time Required if config_type is dual or dual_and_test_pulse Time string
    complementary Required if config_type is dual or dual_and_test_pulse Boolean string
    owner Required if config_type is reserved Identifier string
    test_pulse_width Required if config_type is test_pulse or dual_and_test_pulse Time string
    test_pulse_period Required if config_type is test_pulse or dual_and_test_pulse Time string
    true_value Required if config_type is basic, test_pulse, dual, or dual_and_test_pulse String Must be high or low
    debounce_ filter_time Required if config_type is basic, test_pulse, dual, or dual_and_test_pulse Time string
    load Required if config_type is test_pulse, dual_and_test_pulse Time string Must have a value of 40 us, 1 ms, 10 ms, or 100 ms (or equivalent).
    fail_safe_on_ over_current Required if config_type is test_pulse or dual_and_test_pulse Boolean string
    fail_safe_on_ discrepancy Required if config_type is dual or dual_and_test_pulse Boolean string
    fail_safe_on_ test_pulse Required if config_type is test_pulse or dual_and_test_pulse Boolean string
    overcurrent_ recovery_time Required if failsafe_on_over_current is false Time string
    Table 5. Digital Output Object Parameters
    Term Required? Type Notes
    alias_name Yes Identifier string
    config_type Yes String Must be reserved, unused, basic, test_pulse_internal, test_pulse_external, external_readback, dual, or dual_and_test_ pulse_internal, dual_and_test_ pulse_external
    owner Required if config_type is reserved Identifier string
    test_pulse_width Required if config_type is test_pulse_internal, test_pulse_external, dual_and_test_ pulse_internal, or dual_and_test_ pulse_external Time string
    test_pulse_period Required if config_type is test_pulse_internal, test_pulse_external, dual_and_test_ pulse_internal, or dual_and_test_ pulse_external Time string
    readback_delay Required if config_type is external_readback Time string
    load Required if config_type is basic, test_pulse_internal, test_pulse_external, dual, dual_and_test_ pulse_internal, dual_and_test_ pulse_external, or external_readback Time string Must have a value of 40 us, 1 ms, 10 ms, or 100 ms (or equivalent).
    flash_rate Required if config_type is basic, test_pulse_internal, test_pulse_external, dual, dual_and_test_ pulse_internal, dual_and_test_ pulse_external, or external_readback Time string Must have a value that is a multiple of 50 ms, between 50 ms and 12.8 s, inclusive.
    debounce_ filter_time Required if config_type is basic, test_pulse_external, external_readback, or dual_and_test_ pulse_external Time string
    fail_safe_on_ over_current Required if config_type is basic, test_pulse_internal, test_pulse_external, dual, dual_and_test_ pulse_internal, dual_and_test_ pulse_external, or external_readback Boolean string
    fail_safe_on_ open_circuit Required if config_type is basic, test_pulse_internal, test_pulse_external, dual, dual_and_test_ pulse_internal, dual_and_test_ pulse_external, or external_readback Boolean string
    fail_safe_on_ discrepancy Required if config_type is dual, dual_and_test_ pulse_internal, or dual_and_test_ pulse_external Boolean string
    fail_safe_on_ test_pulse Required if config_type is test_pulse_internal, test_pulse_external, dual_and_test_ pulse_internal, or dual_and_test_ pulse_external Boolean string
    fail_safe_on_ readback Required if config_type is basic, external_readback, dual Boolean string
    overcurrent_ recover Required if failsafe_on_ over_current is false Time string
    Table 6. Variable Object Parameters
    Term Required? Type Notes
    alias_name Yes Identifier string
    config_type Yes String Must be internal or unused
    Table 7. State Machine Object Parameters
    Term Required? Type Notes
    name Yes String
    actions Yes, but may be empty Array Action objects
    transitions Yes, but may be empty Array Transition objects
    substates Yes, but may be empty Array State tree node objects
    initial_state Optional Identifier string
    Table 8. Action Object Parameters
    Term Required? Type Notes
    signal Yes Identifier string
    value Yes Output drive string
    Table 9. Transition Object Parameters
    Term Required? Type Notes
    expression Yes Expression string
    next_state Yes Path string

    Recently Viewed Topics