Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

Помогите пожалуйста с LD

PLC, прочие контроллеры, промышленные компьютеры, операторские панели

Автор темы
staff67
новенький
новенький
Сообщения: 2
Зарегистрирован: 16 май 2014, 11:18
Ф.И.О.: Гаджимагомедов Артём Казимагомедович

Помогите пожалуйста с LD

Сообщение staff67 » 19 май 2014, 18:50

Доброго времени суток

Меня совсем с другой работы в силу определённых причин перевели в АСУТП
Знания имею самые начальные. Возникла необходимость научиться разбираться в программах ПЛК. Для обучения базе дали плк allen bredlay micro 810 я пробую писать и исполнять на нем простенькие программки. Работаю в среде connected component workbench

Ну и собственно вопрос:

Нужно, чтобы допустим, лампочка подключенная к выходу контроллера О0 включалась с кнопки на входе i0 работала и выключалась с этой же кнопки каким инструментом это можно реализовать. Прошу сильно не пинать, я только начал разбираться :)

Ну и за ранее :thankyou: за любую помощь

Аватара пользователя

doza
частый гость
частый гость
Сообщения: 470
Зарегистрирован: 05 ноя 2012, 06:38
Ф.И.О.: Дозморов Владимир Владимирович
Благодарил (а): 1 раз

Re: Помогите пожалуйста с LD

Сообщение doza » 20 май 2014, 00:15

Как-то так.
56.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Чебурашку видишь???? я тоже не вижу, а он есть.


Автор темы
staff67
новенький
новенький
Сообщения: 2
Зарегистрирован: 16 май 2014, 11:18
Ф.И.О.: Гаджимагомедов Артём Казимагомедович

Re: Помогите пожалуйста с LD

Сообщение staff67 » 20 май 2014, 06:13

Спасибо большое за ответ!


agent_serg
здесь недавно
здесь недавно
Сообщения: 63
Зарегистрирован: 12 мар 2014, 15:43
Ф.И.О.: Сергей

Re: Помогите пожалуйста с LD

Сообщение agent_serg » 05 июн 2014, 11:57

staff67 писал(а):Нужно, чтобы допустим, лампочка подключенная к выходу контроллера О0 включалась с кнопки на входе i0 работала и выключалась с этой же кнопки каким инструментом это можно реализовать.

Мой кусочек выглядит практически также, как и представленный предыдущим участником. Смысл тот же, только в LD:

Image1.jpg
X11 - NO кнопка.
М109 - результат.
М1090 - временный триггер, устанавливающийся в единицу при нажатой кнопке.

M91 и X0 можете исключить перемкнув их.

P.S. В логических цепочках программы я никогда не использую непосредственно выходы. Оперирую с маркерами. А в отдельном блоке или цепи программы маркеры передают своё состояние выходам.
Правило: формировать выход только в одном-единственном месте программы. Тогда можно избежать некоторых проблем. Облегчается поиск ошибок в логике. Легко изменить физический адрес выхода на другой.
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Fillipych
здесь недавно
здесь недавно
Сообщения: 3
Зарегистрирован: 07 июн 2014, 07:31
Ф.И.О.: Филлипов

Re: Помогите пожалуйста с LD

Сообщение Fillipych » 07 июн 2014, 07:42

на LD удобно работать с циклами и косвенной адресаций (массивами) или это проблемно ?

Код: Выделить всё

//  принять входные переменные: размер массива maxindex, index2, указатели на массивы
// заполнить массивы
void fill_test( int maxindex, int index2, int* destin1, int * destin2, int * source )
{

int buf

for (i=0; i<=maxindex ; i++)
 {   
     destin1[i]=i;
        if (i <= index2) buf = i^2;
        else buf= source[i];
     destin2[i]=buf;
  }
return ();
}


Фрагменты кода обязательно следует постить с использованием тэга CODE - прим.администратора


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Помогите пожалуйста с LD

Сообщение Ryzhij » 07 июн 2014, 12:50

Fillipych писал(а):на LD удобно работать с циклами и косвенной адресаций (массивами) или это проблемно ?
По опыту работы в LD с Delta, с Allen-Bradley скажу - с этим проблем не возникало.
По-жизни кто к чему привык, тот на том языке и пишет - меньше ошибок в результате.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 07 июн 2014, 14:06

Ryzhij писал(а):
Fillipych писал(а):на LD удобно работать с циклами и косвенной адресаций (массивами) или это проблемно ?
По опыту работы в LD с Delta, с Allen-Bradley скажу - с этим проблем не возникало.
По-жизни кто к чему привык, тот на том языке и пишет - меньше ошибок в результате.

В LD такие прграммы изобилуют передачей управления по меткам, в том числе вверх.
Сравните две аналогичные процедуры - какая их них лучше структурирована и легче читается ?

первая:
1.jpg


то же самое на LD:
_LD01.jpg
_LD02.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 07 июн 2014, 15:53

Хотел конвертировать из ST в LD на Delta ISPSoft, но не нашел преобразования. В каком меню оно спрятано ?

ST Delta..gif
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 07 июн 2014, 15:58

Такая конвертация скорее всего невозможна в автоматическом режиме. Самому придется, ручками и головой. Возможна лишь конвертация LD <-> FBD <-> IL в силу единой структуры языков.


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 07 июн 2014, 16:10

Михайло писал(а):Такая конвертация скорее всего невозможна в автоматическом режиме. Самому придется, ручками и головой. Возможна лишь конвертация LD <-> FBD <-> IL в силу единой структуры языков.


... может быть не включен кросскомпилятор в меню. Из высшего языка всегда можно преобразовать в самый низший (ассемблер), а в некоторых случаях и в промежуточные (ST-->LD, ST-IL, ST->FBD ...) Структура языков не противоречит.
Из языка низкого уровня преобразование в высший не гарантируется тк сложно анализировать команды и заменять на конструкции высокого уровня.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 07 июн 2014, 18:42

Не могу утверждать про Дельту конкретно, но чисто теоретически такая конвертация невозможна в любом направлении для любого кода, только для совместимого кода.


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 07 июн 2014, 21:46

Михайло писал(а):Не могу утверждать про Дельту конкретно, но чисто теоретически такая конвертация невозможна в любом направлении для любого кода, только для совместимого кода.


Производителю ПЛК невыгодно культивировать несовместимые коды и языки , неудобно ему быть унтерофицерской вдовой.
Коды (псевдокоды) совместимы, программу можно сложить из модулей на любых доступных языках обычно до 2-4 шт. Конвертация вниз возможна (в Дельте не нашел), в верх очень сложна или невозможна.
Conv.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Помогите пожалуйста с LD

Сообщение Ryzhij » 08 июн 2014, 06:24

Mein potatos писал(а):Производителю ПЛК невыгодно культивировать несовместимые коды и языки , неудобно ему быть унтерофицерской вдовой.
Коды (псевдокоды) совместимы, программу можно сложить из модулей на любых доступных языках обычно до 2-4 шт. Конвертация вниз возможна (в Дельте не нашел), в верх очень сложна или невозможна.
Конвертацией с языка на язык в Вашем понимании ни один производитель всерьёз не заморачивается. Зачем?
Продвинутые просто дают возможность включать в программу POU написанные на разных языках. С передачей управления проблем нет.
Если писать программу используя структурный подход, то на любом языке, и на LD тоже ;), получится вполне читабельный результат.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 08 июн 2014, 09:54

Ryzhij писал(а):Конвертацией с языка на язык в Вашем понимании ни один производитель всерьёз не заморачивается. Зачем?
Продвинутые просто дают возможность включать в программу POU написанные на разных языках. С передачей управления проблем нет.
Если писать программу используя структурный подход, то на любом языке, и на LD тоже ;), получится вполне читабельный результат.


Конвертация не в моем понимании, это стандартное понятие для известных систем как CoDeSys (например Twincat от Beckhoff тоже CoDeSys ).
Что можно структурировать в языке низкого уровня ?
Посмотрите IL-эквивалент простейшей ST-программы. На IL она малочитаемая и длинная, а структуру не видно.
Стравните
- длина программы на ST 10 строк, из них последние 4 формальные маркеры окончания операторов.
- на IL то же самое занимает 47 строк

программа на LD по количеству строк компактнее IL, но на 1 экран не помещается


IL1.jpg
ST1.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 08 июн 2014, 13:41

Mein potatos
Хватит уже циклы в автоматизации, хватит! :D
Мы готовы привести кучу примеров кода, который в ST, мягко говоря, будет выглядеть провально. При чем эти коды более типичны для автоматизации.

Сложно повторить одну и ту же операцию 99 раз? Код будет выглядеть вообще замечательно! Вообще циклы не имеют никакого смысла, кроме случаев динамических циклов. Но в автоматизации таким не следует заниматься...


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 08 июн 2014, 20:19

Михайло писал(а):Mein potatos
Мы готовы привести кучу примеров кода, который в ST, мягко говоря, будет выглядеть провально. При чем эти коды более типичны для автоматизации.

Если готовы - приведите пример, в котором ST будет выглядеть провально по сравнению с LD или IL.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 09 июн 2014, 03:55

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


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 09 июн 2014, 06:59

Михайло писал(а):небольшой кусочек типичного кода, который я нашел в просторах интернета


В чем провальность ST перед LD ?


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 09 июн 2014, 11:34

Михайло, так что с провальностью ST ?

ST:
CADENSE ST.jpg


LD:
CADENSE LD.jpg


IL:
CADENSE IL.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 09 июн 2014, 14:57

Mein potatos писал(а):В чем провальность ST перед LD ?

Попробуйте за 1 секунду, сказать, почему при нажатии на физическую кнопку ON_LE не включается MOT_LE. :ext_secret: На языке ST это никогда не получится...
А если будет схема, мягко говоря, посложнее...


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 09 июн 2014, 17:52

Михайло писал(а):
Mein potatos писал(а):В чем провальность ST перед LD ?

Попробуйте за 1 секунду, сказать, почему при нажатии на физическую кнопку ON_LE не включается MOT_LE. :ext_secret: На языке ST это никогда не получится...
А если будет схема, мягко говоря, посложнее...


В этой простой задаче ST проигрывает в наглядности...

1. Нормально включается, долой фантазии.
2. А если будет схема посложнее, то для LD станет трудночитаемой . Для сложных задачи нужно использовать ST, а удел LD - мелочь типа этой упрощенной задачки.
В общем случае такая задача переключения направления движения (MOT_LE - движение влево , MOT_RI движение вправо) должна предусматривать паузу между переключениями направления. Не важно - это двигатель, линейный привод, автомобильный светофор или пассажирский поток, все равно нужна пауза.
В этом случае LD моментально потеряет наглядность.


Вы еще писали в прошлых постах про провальность ST перед IL. Посмотрим это на приведенном вами примере ?


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 09 июн 2014, 18:14

Не хочу с вами спорить, ибо у меня все задачки ГОРАЗДО сложнее, чем я привел примерчик. Тренировка восприятия языка LD излечивает все. Выдержки времени - это вообще чудо языка LD.
Про язык IL я ничего не говорил, этот язык по своему смысловому насыщению очень близок к другим логическим языкам LD и FBD, но текстовость лишает его всех прелестей наглядности. Очень подходит для новичков, которые не всегда четко понимают тонкости графических элементов языка LD.
Также могу показать недостатки языка FBD по сравнению с LD.
Язык ST, конечно, имеет право на жизнь, но очень неспецифичен для автоматизации. Все эти циклы for... Это для обработки каких таких матриц и табличных значений?


Ryzhij
почётный участник форума
почётный участник форума
Сообщения: 2568
Зарегистрирован: 07 окт 2011, 08:12
Ф.И.О.: Гаско Вячеслав Эриевич
Откуда: Рязань, Россия
Благодарил (а): 43 раза
Поблагодарили: 71 раз

Re: Помогите пожалуйста с LD

Сообщение Ryzhij » 09 июн 2014, 18:20

Похоже, что уважаемый Mein potatos ещё ни разу не участвовал в ПНР.
Ему про наглядность и удобства эксплуатации, а он про работоспособность...

Про заявленный "удел LD", так это даже не холивар, а просто некомпетентность и отсутствие опыта.
"Про провальность ST перед IL" даже рассуждать глупо - бессмысленно сравнивать язык высокого уровня с низкоуровневым.

Если кто подзабыл, напоминаю, языки программирования не исключают, а дополняют друг-друга.
Поэтому-то хорошие проекты содержат POU на разных языках. Ибо обсчитывать удобнее часто на одном, а реализовывать результаты расчётов на другом, управлять процессом "в целом" - на третьем.
Вы же не спорите о том, что нужнее - автобус или грузовик.
---------------------------------------------------
«У человека в душе дыра размером с Бога, и каждый заполняет её как может». Жан-Поль Сартр


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2229
Зарегистрирован: 10 ноя 2009, 04:58
Ф.И.О.: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 23 раза
Контактная информация:

Re: Помогите пожалуйста с LD

Сообщение Михайло » 10 июн 2014, 04:00

Ryzhij писал(а):Если кто подзабыл, напоминаю, языки программирования не исключают, а дополняют друг-друга.

... но при этом LD - самый первый из равных. :D


Mein potatos
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 04 июн 2014, 11:42
Ф.И.О.: Никитин Эдуард

Re: Помогите пожалуйста с LD

Сообщение Mein potatos » 10 июн 2014, 09:29

Ryzhij писал(а):Похоже, что уважаемый Mein potatos ещё ни разу не участвовал в ПНР.
Ему про наглядность и удобства эксплуатации, а он про работоспособность...

Про заявленный "удел LD", так это даже не холивар, а просто некомпетентность и отсутствие опыта.
"Про провальность ST перед IL" даже рассуждать глупо - бессмысленно сравнивать язык высокого уровня с низкоуровневым.

Если кто подзабыл, напоминаю, языки программирования не исключают, а дополняют друг-друга.
Поэтому-то хорошие проекты содержат POU на разных языках. Ибо обсчитывать удобнее часто на одном, а реализовывать результаты расчётов на другом, управлять процессом "в целом" - на третьем.
Вы же не спорите о том, что нужнее - автобус или грузовик.

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


Вернуться в «Средний уровень автоматизации»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей