Как зациклить программу на сименс

Как я могу заставить программу бесконечно повторять запрос на ввод нового набора чисел?

developer 5 Ноя 2019 в 13:22

3 ответа

Лучший ответ

Вот самый простой способ сделать то, что вы хотите (есть другие способы). По сути, вам просто нужно «обернуть» код, который вы хотите повторить в цикле, где условие «теста» для цикла будет всегда иметь значение true .

Обратите внимание на комментарии с «///», которые я дал:

#include //using namespace std; /// Search this site for «Why using namespace std is bad» using std::cout;/// Just declare usage of those feature you ACTUALLY use. using std::cin; using std::endl; int main() < int a, b; while (true) < /// The test condition will always be «TRUE» so the loop will never end! cout > a >> b; if (a < b) cout b) cout >

Не стесняйтесь просить дальнейших разъяснений и / или объяснений.

Adrian Mole 5 Ноя 2019 в 10:32

Зависит от того, что именно вы хотите, чтобы ваша программа делала. Если вы хотите, чтобы он «запретил доступ». Например, допустим, что вы хотите, чтобы число K> 3 всегда продолжалось. Все, что вам нужно сделать, это использовать цикл do-while:

Sinumerik 828D фрезеровка.


do < cout > K; if ( K > while(K

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

Adrian Mole 5 Ноя 2019 в 11:55

Предположим, что ваша программа должна найти Факториал числа, и вы хотите, чтобы он зациклился так, чтобы он запрашивал новое значение у пользователя

int main() < int n; while (true) < int factorial = 1; cin >> n; if (n==0) < cout else < for (int i=n;i>0;i—) < factorial = factorial*i; >cout > return 0; >

Читайте также:
Обучение общая характеристика содержание и программа обучения

Источник: question-it.com

Тема: повторение функции Fbd

Olk_74 вне форума

По умолчаниюповторение функции Fbd

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

30.10.2010, 10:41 #2

lara197a вне форума

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

По умолчанию

по фронту окончания выполнения действия взведите таймер.
по фронту выключения таймера запустите выполнение.

01.11.2010, 09:59 #3

Olk_74 вне форума

Siemens LOGO! — ввод программы «вручную» с передней панели модуля

Пользователь Регистрация 13.10.2010 Сообщений 25

По умолчанию

в этом то и проблема . я новичок и конечно же многого не знаю . но таймер я ставил, на входе выход функции (истина) на выходе имя функции Gt (больше) а он мне пишет «вы вызываете в St экземпляр, имеющий одинаковое с функцией имя. будет вызвана функция. используйте разные имена. » . так я этого и хочу . а как еще можно привязать на таймер вызов функции ??

01.11.2010, 10:04 #4

Малышев Олег вне форума

Пользователь Регистрация 15.12.2006 Сообщений 1,677

По умолчанию

Надо объявить экземпляр таймера например:
ton1:TON;

и использовать именно ton1 в программе.

Часто задаваемые вопросы по кодесис
1) Почему программа не работает — Следует выполнить «Онлайн ->Старт»
2) Где скачать CoDeSys, таргеты, прошивки, библиотеки — http://www.owen.ru/catalog/codesys_v3/opisanie

01.11.2010, 12:26 #5

Olk_74 вне форума

Пользователь Регистрация 13.10.2010 Сообщений 25

По умолчанию

хорошо, спасибо буду пробовать . а St если я не ошибаюсь это отдельный язык ?? или Fbd и St неразлучны ?? мне с моими «желаниями» «порекомендовали» осваивать St .

01.11.2010, 12:33 #6

Olk_74 вне форума

Пользователь Регистрация 13.10.2010 Сообщений 25

По умолчанию

у меня каждый таймер имеет свое имя, я так понимаю он ругается на выход таймера с именем Gt (!) т.к функция сравнения имеет такое имя (gt) . и следом выдает 4268 «необходимо выражение» я так понимаю он таки требует на выходе хоть что нить кроме злополучного Gt .

01.11.2010, 12:35 #7

Читайте также:
Coreldraw это бесплатная программа

Olk_74 вне форума

Пользователь Регистрация 13.10.2010 Сообщений 25

По умолчанию

но у меня весь смысл состоит в том что бы таки запустить функцию например через 30 мин после завершения оной . получается мне в Fbd этого не добиться ??

01.11.2010, 12:38 #8

swerder вне форума

Пользователь Регистрация 24.09.2010 Сообщений 475

По умолчанию

если не ошибаюсь, на фбд любая функция выполняется постоянно. соответственно ваше сравнение будет постоянно сравниваться. вам нужно лишь будет в необходимый момент времени «запомнить» этот результат сравнения.

Источник: owen.ru

Как зациклить управляющую программу на станке с ЧПУ?

Если пользователям необходимо зациклить часть команд в УП и/или изменить значения одного из параметров обработки, то используют конструкцию цикла с переменной:

Цикл – это разновидность управляющей конструкции в программировании, которая повторяет набор команд.

Переменная – это ячейка с именем и значением для хранения данных.

Синтаксис написания циклов может отличаться от одной ЧПУ системы к другой, но принцип действия чаще всего одинаковый. В качестве примера использования цикла возьмем один из известных нам вариантов синтаксиса:

Приведем пример конструкции цикла:

Как можно увидеть из примера, конструкция цикла состоящая из 8 строк заменяет около 40 команд линейной интерполяции. Несмотря на это использование циклов и переменных на практике встречается нечасто. Например, в PUMOTIX в качестве альтернативы можно использовать макросы на языке LUA.

Приведем пример использования цикла. Эту УП можно сохранить в текстовый файл и открыть в PUMOTIX .

Источник: dzen.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru