Страница 5 из 9 ПерваяПервая ... 34567 ... ПоследняяПоследняя
Показано с 41 по 50 из 86

Тема: Помогите разобраться...

  1. #41
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Цитата Сообщение от Yegor Посмотреть сообщение
    Ну так поставьте задачу лучше. Что вы понимаете под сохранением в данном случае?
    Мне надо, что бы QQ была равна первоначальному значению ТТ, т.е. 100.

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

    По умолчанию

    Код:
    VAR CONSTANT
    	QQ: INT := 100;
    END_VAR

  3. #43
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    это не верно, а косомсу со своим решением тоже самое, наверное неверно, по окончании когда ТТ станет равным нулю, QQ тоже будет равно нулю
    Почему???

    Вот вполне себе рабочий вариант:

    Код:
    PROGRAM PLC_PRG
    VAR
    	TT : INT := 100;
    	QQ : INT;
    	INIT_VAR : BOOL := 1;
    END_VAR
    
    IF INIT_VAR THEN
    	QQ := TT;
    	INIT_VAR := 0;
    END_IF
    
    IF  DI1 AND TT >0 THEN
    	TT := TT - 1;
    ELSIF DI1 AND  TT = 0 THEN
    	TT :=0;
     ELSE
    	TT := QQ;
    END_IF
    Но, к сожалению, это только для лабораторных работ. Проблема в том, что если переменная TT берет значения откуда-то, то при первом же цикле, еще ДО присвоения данных ТТ "снаружи", QQ становится равно ТТ, и не меняется. А при старте ТТ = 0.

    Думаю дальше...

  4. #44
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

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

  5. #45
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Прочитал про указатели, но как их использовать для моей задачи так и не понял... Люди! Дайте пример... Ну пожалуйста...

  6. #46
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    пожалуйста пример
    За фильм - "ОСКАР", однозначно!
    Осталось понять, как мне это приспособить к моему проекту..

  7. #47
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    ну раз в голову не приходят ни какие преимущества, значит еще рано осваивать указатели
    Ну-с, приступим... Набросал пример из кина, только имна изменил. Цепляю к сообщению. Как работает, вроде бы понятно.

    Код:
    PROGRAM PLC_PRG
    VAR
    	TTT : INT;
    	RRR : INT;
    	QQQ : INT;
    END_VAR
    
    TTT := 100;
    RRR := TTT;
    PT (ADR(TTT));
    QQQ := TTT;
    
    
    FUNCTION  PT:  INT
    VAR_INPUT
    	INP :POINTER TO INT;
    END_VAR
    VAR
    END_VAR
    
    INP^:= INP^ +30 ;
    Но тут одно НО. В самом начале PLC_PRG переменной ТТТ присваивается значение "100". Поэтому RRR тоже будет 100. Я же пытаюсь понять, как это сделать с динамической переменной. Т.е. в процессе она вычисляется, потом по событию она начинает меняться, и вот этот момент мне и надо зафиксировать. Чтобы при пропадании события ТТТ вернулась к запомненному значению.

    Ну, т.е. без глобального цикла будет такое:

    Код:
    TTT := WWW;
    
    IF DI1 THEN
       TTT := TTT-10; (* Если DI1 то начинаем менять *)
    ELSE 
       TTT := WWW; (* Если DI1 пропало - вернули как было *)
    END_IF
    Вложения Вложения
    • Тип файла: rar 000.rar (40.3 Кб, Просмотров: 4)

  8. #48
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Возникла еще одна проблема - начал разбираться, почему кнопки через раз работают, для чего подключил модуль статистики.
    Кино - в приложении. Я так понимаю, что идет банальный перегруз процессора.

    Выход я так понимаю в том, чтобы не использовать oscat... Это печаль...

    На всякий случай приоржил сам проект...
    Вложения Вложения

  9. #49
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    1. Используйте функцию SEL или функции выбора IF, Case....
    2. Увеличьте мин. время цикла до 2-3 мс. На производстве S-400 работают с циклом 15-17мс, временами до 30мс. Если время критично выводите скоростные задачи на сопроцессор.
    Скорее всего у вас в программе ошибки. Я в вашей программе сложных задач для сопроцессора не вижу.

  10. #50
    Пользователь
    Регистрация
    13.08.2012
    Адрес
    Питер
    Сообщений
    127

    По умолчанию

    Цитата Сообщение от lara197a Посмотреть сообщение
    1. Используйте функцию SEL или функции выбора IF, Case....
    Да у меня все на IF...

    Цитата Сообщение от lara197a Посмотреть сообщение
    2. Увеличьте мин. время цикла до 2-3 мс. На производстве S-400 работают с циклом 15-17мс, временами до 30мс. Если время критично выводите скоростные задачи на сопроцессор.
    Стесняюсь спросить, а как вывести задачи на сопроцессор???


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

Страница 5 из 9 ПерваяПервая ... 34567 ... ПоследняяПоследняя

Похожие темы

  1. помогите разобраться
    от Барон в разделе ПЛК1хх
    Ответов: 16
    Последнее сообщение: 17.11.2010, 08:30
  2. помогите разобраться
    от a_l_e_x в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 02.07.2010, 16:51
  3. Помогите разобраться...
    от xaker_tm в разделе ПЛК1хх
    Ответов: 7
    Последнее сообщение: 08.02.2010, 17:33
  4. ТРМ 12, помогите разобраться.
    от SEREG@ в разделе Эксплуатация
    Ответов: 3
    Последнее сообщение: 12.01.2009, 14:21
  5. Помогите разобраться !!
    от viking в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 21.11.2007, 14:31

Ваши права

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