Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 52

Тема: Програмные компоненты

  1. #11
    Пользователь
    Регистрация
    28.08.2008
    Адрес
    23..93..123
    Сообщений
    1,656

    По умолчанию

    Тута товарищи забыли напомнить , что программа не только имя имеет , но и работает со СВОИми переменными или глобальными и вызывается откуда угодно.
    Подпрограмма использует переменные программы или глобальные и вызывается из СВОЕЙ программы .
    Поэтому самый простой способ структурирования , особенно на ЛД - создание подпрограмм(представляет собой код , выполняющий какую-либо задачу (любую)).

    А для того чтобы понять надо пробовать разные способы и стили и читать руководство по программированию КДС , ЛД в КДС немного "круче" , чем в других системах.
    Последний раз редактировалось Sergey666; 11.08.2013 в 22:04.

  2. #12
    Пользователь
    Регистрация
    19.11.2011
    Адрес
    г. Белгород
    Сообщений
    357

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    То есть так?
    PLC_PRG(PRG)
    povorot (PRG)
    hod naz (PRG)
    zajim (PRG)
    hod vpered (PRG)
    и так далее?
    Tо есть PLC_PRG(PRG) это часть программы, остальные (PRG) остальная часть?.
    Попробуйте сделать так, как Вам Amko рекомендует. Тогда у Вас получится PLC_PRG - основная программа, из которой будете вызывать все остальные программы (подпрограммы).

  3. #13
    Пользователь
    Регистрация
    11.07.2012
    Адрес
    г. МИНСК
    Сообщений
    519

    По умолчанию

    Что бы все понять создал пример. Запускаю на симуляторе,включаю вход с1, реагирует только PLC_PRG.Может поправите на примере, как обратится к другим PRG.
    Вложения Вложения
    • Тип файла: rar prg.rar (5.8 Кб, Просмотров: 166)

  4. #14
    Пользователь
    Регистрация
    19.11.2011
    Адрес
    г. Белгород
    Сообщений
    357

    По умолчанию

    Выкладываю пример. Вызывать программы лучше на языке ST. Это просто. Я написал коментарии в примере. На всякий случай там есть вызов на LD в функциональном блоке main, но я на LD не работаю.
    Вложения Вложения
    • Тип файла: pro prg1.pro (20.0 Кб, Просмотров: 199)

  5. #15
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    С. Макконнелл, Совершенный код

  6. #16
    Пользователь
    Регистрация
    05.11.2011
    Адрес
    Томск
    Сообщений
    192

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    Что бы все понять создал пример. Запускаю на симуляторе,включаю вход с1, реагирует только PLC_PRG.Может поправите на примере, как обратится к другим PRG.
    В вашем примере PLC_PRG будет иметь следующий вид:
    Нажмите на изображение для увеличения. 

Название:	123.jpg 
Просмотров:	478 
Размер:	32.6 Кб 
ID:	9562
    Как я выше писал: в PLC_PRG производится вызов всех остальных программ. Логика работы установки разбита на отдельные программы.

  7. #17
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    Что бы все понять создал пример. Запускаю на симуляторе,включаю вход с1, реагирует только PLC_PRG.Может поправите на примере, как обратится к другим PRG.
    неплохо бы еще воспользоваться меню КДС: Проект->Контроль->Неиспользуемые переменные чтоб убрать ненужный мусор

  8. #18
    Пользователь
    Регистрация
    11.07.2012
    Адрес
    г. МИНСК
    Сообщений
    519

    По умолчанию

    Ура! Вроде все получилось. Все работает. Только вот компилятор говорит- Предупреждение 1503:POU не имеет выходов. Результату присвоено значение TRUE. Так и должно быть? Теперь буду учиться создавать FB.

  9. #19
    Пользователь
    Регистрация
    19.11.2011
    Адрес
    г. Белгород
    Сообщений
    357

    По умолчанию

    Цитата Сообщение от zendo057 Посмотреть сообщение
    Ура! Вроде все получилось. Все работает. Только вот компилятор говорит- Предупреждение 1503:POU не имеет выходов. Результату присвоено значение TRUE. Так и должно быть? Теперь буду учиться создавать FB.
    Наверное в вашем ФБ есть входы и нет выходов. Если так и было задумано, то нормально. Но обычно ФБ выполняет какую-то отдельую задачу. И для этого ему нужды входные параметры. После выполнения он должен выдать результат, вызвавшей его программе, для этого нужны выходные параметры. Если нет выходных параметров, то очевидно, что ФБ использует глобальные переменные, которые доступты везде. Старайтесь не использовать глобальные переменные, только в крайнем случае, если это оправдано. Это избавит вас от ошибок, которые трудно будет найти.

  10. #20
    Пользователь
    Регистрация
    28.08.2008
    Адрес
    23..93..123
    Сообщений
    1,656

    По умолчанию

    Цитата Сообщение от amn Посмотреть сообщение
    Наверное в вашем ФБ есть входы и нет выходов. Если так и было задумано, то нормально. Но обычно ФБ выполняет какую-то отдельую задачу. И для этого ему нужды входные параметры. После выполнения он должен выдать результат, вызвавшей его программе, для этого нужны выходные параметры. Если нет выходных параметров, то очевидно, что ФБ использует глобальные переменные, которые доступты везде. Старайтесь не использовать глобальные переменные, только в крайнем случае, если это оправдано. Это избавит вас от ошибок, которые трудно будет найти.
    А , чё это ?????????
    Если нет выходных параметров то очевидно головотяпство , но на выполнение программы это не влияет .
    Причем здесь глобальные переменные ???? В чем они виноваты???? Если вы претендуете на роль учителя и благодетеля своими примерами - корректно выражайтесь. Человеку , не желающему разбиратся , "глобальная переменная" ни о чем не говорит.
    Например в моих проектах 90% переменных глобальные и все работает .

    Мож книгу написать . Так её читать не будут или начнут и бросят , ведь может быть на форуме найдется добрячёк , который весь код напишет.

Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 3
    Последнее сообщение: 30.09.2010, 22:30
  2. не могу найти компоненты;v2.3
    от ГоршенинВладимир в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 21.12.2009, 10:21

Ваши права

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