Показано с 1 по 10 из 10

Тема: ПР200 переменные VAR_EXTERNAL и VAR_GLOBAL

  1. #1

    По умолчанию ПР200 переменные VAR_EXTERNAL и VAR_GLOBAL

    подскажите пожалуйста
    можно ли в проекте объявить глобальные переменные,
    чтобы их использовать в разных функциональных блоках на языке ST?
    (есть зарезервированные слова VAR_EXTERNAL и VAR_GLOBAL)

    хотя наверное нет, иначе может получится коллизия записи
    одной переменной в разных блоках...

    в программе функ блока есть повторяющийся код, который инициализирует переменные
    как сделать правильно, чтобы в одном месте было (например подпрограммы)
    Последний раз редактировалось Васильев; 18.03.2024 в 14:36.

  2. #2

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    подскажите пожалуйста
    можно ли в проекте объявить глобальные переменные,
    чтобы их использовать в разных функциональных блоках на языке ST?
    (есть зарезервированные слова VAR_EXTERNAL и VAR_GLOBAL)

    хотя наверное нет, иначе может получится коллизия записи
    одной переменной в разных блоках...

    в программе функ блока есть повторяющийся код, который инициализирует переменные
    как сделать правильно, чтобы в одном месте было (например подпрограммы)
    Написать функцию (или ФБ), которая реализует повторяющийся код и использовать её в этом функциональном блоке

  3. #3

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    в программе функ блока есть повторяющийся код, который инициализирует переменные
    как сделать правильно, чтобы в одном месте было (например подпрограммы)
    Простой пример, пишите код таймера, например TON и используете его в ФБ, хоть 10 раз, используя разные экземпляры TON1,TON2,TON3, ...TON10 : TON ;
    Тоже самое, с любым другим ФБ.
    Последний раз редактировалось kondor3000; 18.03.2024 в 15:07.

  4. #4

    По умолчанию

    поясните пожалуйста
    у меня есть функц блок, с кучей выходов
    в определенные моменты все выходы принимают значение инициализации
    и потом один из них устанавл в нужное положение
    как это реализовать на примере функц блока?
    Изображения Изображения
    • Тип файла: png 10.PNG (32.4 Кб, Просмотров: 24)

  5. #5

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    поясните пожалуйста
    у меня есть функц блок, с кучей выходов
    в определенные моменты все выходы принимают значение инициализации
    и потом один из них устанавл в нужное положение
    как это реализовать на примере функц блока?
    Можно поподробней, особенно про "...один из них устанавл в нужное положение..."

    Вообще - зачем инициализировать выходы блока? Ими блок управляет в соответствии со своей логикой; можно инициализировать логику блока, чтобы она установилась в какое-то исходное состояние

  6. #6

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    поясните пожалуйста
    у меня есть функц блок, с кучей выходов
    в определенные моменты все выходы принимают значение инициализации
    и потом один из них устанавл в нужное положение
    как это реализовать на примере функц блока?
    Не совсем понятно, что вы имеете ввиду, посмотрите мой ФБ инициализации на ST, второй проект.
    В примере инициализация, каждый раз при включении, если нужна однократная инициализация, то можно убрать :=false
    Init : bool; // Переменная инициализации

    https://owen.ru/forum/showthread.php...676#post431676
    Последний раз редактировалось kondor3000; 18.03.2024 в 17:47.

  7. #7

    По умолчанию

    в принципе всё работает...итак
    в проекте на индикатор выводятся сообщения в строке 0 или 1 в зависимости от событий
    когда сообщение надо вывести записываю в переменную сообщения (координата Y) число 0 (вывод в 1 строку) или 1 (вывод во второю строку)
    в другие сообщения записываю их первоначальное сообщение положение в дисплее и получается если перелистывать вниз мы все сообщения увидим

    так получается удобно сформировать список активных аварий например
    или перелистывать переменные в строке 1



    (все происходит на одном экране, т.к. не нашел как прочитать текущий номер экрана)
    Последний раз редактировалось Васильев; 18.03.2024 в 17:58.

  8. #8

    По умолчанию

    зарезервированные слова VAR_EXTERNAL и VAR_GLOBAL
    есть у кого пример или описание

  9. #9

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    зарезервированные слова VAR_EXTERNAL и VAR_GLOBAL
    есть у кого пример или описание
    Зарезервированы, не значит работающие. Это на будущее задел. Пока глобальных переменных в Лоджике нет.
    ST в ОЛ появился не так давно и надеюсь будут допиливать потихоньку.
    Год назад мы сидели с одними функциями, сейчас уже есть ФБ, встроенные таймеры , триггеры и переменные Времени и Даты.
    Последний раз редактировалось kondor3000; 18.03.2024 в 18:12.

  10. #10

    По умолчанию

    спасибо большое

Похожие темы

  1. Энергонезависимые переменные на ПР200
    от Ivanvn в разделе Среда программирования OWEN Logic
    Ответов: 6
    Последнее сообщение: 20.02.2024, 09:52
  2. Сетевые переменные ПР200.
    от Newcomer в разделе Программируемые реле
    Ответов: 26
    Последнее сообщение: 22.12.2022, 15:30
  3. ПР200 сетевые переменные
    от Alexandr21 в разделе Эксплуатация
    Ответов: 9
    Последнее сообщение: 15.12.2022, 07:44
  4. сетевые переменные ПР200
    от pwm100558 в разделе Программируемые реле
    Ответов: 57
    Последнее сообщение: 17.12.2017, 22:06
  5. О переменных VAR_GLOBAL
    от Алексей Александрович в разделе ПЛК1хх
    Ответов: 13
    Последнее сообщение: 22.08.2012, 13:36

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •