Изменение программы в FX3G-24M |
Здравствуйте, гость ( Вход | Регистрация )
Изменение программы в FX3G-24M |
19.02.2016 - 12:40
Сообщение
#1
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
Ранее не занимался программированием контроллеров, только в ВУЗе вскользь (но когда это уже было). А сегодня возникла такая задача. На производстве есть линия по изготовлению пластиковых уголков. В которой используется контроллер FX3G-24M с панелью управления. Сейчас необходимая длинна уголка в мм настраивается с панели оператора. А возникла необходимость отрезать уголок по цветовой метке. Т.е. необходимо перепрограммировать контроллер, чтобы он мог работать как по меткам, так и без них. Если я правильно понимаю, необходимо извлечь текущую программу из ПЛК, внести изменения и залить обратно. Насколько все это трудоемко? Возможно ли в короткие сроки самостоятельно изучить этот вопрос? Оптимально было бы конечно, привлечь специалиста, но его еще надо найти. Буду благодарен любым советам.
|
|
|
19.02.2016 - 14:38
Сообщение
#2
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
Ранее не занимался программированием контроллеров, только в ВУЗе вскользь (но когда это уже было). А сегодня возникла такая задача. На производстве есть линия по изготовлению пластиковых уголков. В которой используется контроллер FX3G-24M с панелью управления. Сейчас необходимая длинна уголка в мм настраивается с панели оператора. А возникла необходимость отрезать уголок по цветовой метке. Т.е. необходимо перепрограммировать контроллер, чтобы он мог работать как по меткам, так и без них. Если я правильно понимаю, необходимо извлечь текущую программу из ПЛК, внести изменения и залить обратно. Насколько все это трудоемко? Возможно ли в короткие сроки самостоятельно изучить этот вопрос? Оптимально было бы конечно, привлечь специалиста, но его еще надо найти. Буду благодарен любым советам. Цитата Если я правильно понимаю, необходимо извлечь текущую программу из ПЛК, внести изменения и залить обратно. Да, примерно так. Добавить еще одно условие и возможность их переключения (выбора режима). Либо по длине (мм), либо по "метке". В связи с этим возникнут доп. вопросы: как осуществлять выбор режима (каким-то тумблером или с панели)? Если с панели, то необходимо вносить изменения (дополнения) и в нее. И что подразумевается под "отрезанием по метке"? Как я понимаю - некий датчик фиксирует некую метку, останавливает продольное движение уголка и он отрезается? -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
20.02.2016 - 11:06
Сообщение
#3
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
Ранее не занимался программированием контроллеров, только в ВУЗе вскользь (но когда это уже было). А сегодня возникла такая задача. На производстве есть линия по изготовлению пластиковых уголков. В которой используется контроллер FX3G-24M с панелью управления. Сейчас необходимая длинна уголка в мм настраивается с панели оператора. А возникла необходимость отрезать уголок по цветовой метке. Т.е. необходимо перепрограммировать контроллер, чтобы он мог работать как по меткам, так и без них. Если я правильно понимаю, необходимо извлечь текущую программу из ПЛК, внести изменения и залить обратно. Насколько все это трудоемко? Возможно ли в короткие сроки самостоятельно изучить этот вопрос? Оптимально было бы конечно, привлечь специалиста, но его еще надо найти. Буду благодарен любым советам. Цитата Если я правильно понимаю, необходимо извлечь текущую программу из ПЛК, внести изменения и залить обратно. Да, примерно так. Добавить еще одно условие и возможность их переключения (выбора режима). Либо по длине (мм), либо по "метке". В связи с этим возникнут доп. вопросы: как осуществлять выбор режима (каким-то тумблером или с панели)? Если с панели, то необходимо вносить изменения (дополнения) и в нее. И что подразумевается под "отрезанием по метке"? Как я понимаю - некий датчик фиксирует некую метку, останавливает продольное движение уголка и он отрезается? Да, переключение режимов можно реализовать простым тумблером. Да, принцип действия примерно такой. По датчику происходит отрезание и ряд других операций (запайка шва, тиснение) |
|
|
20.02.2016 - 14:10
Сообщение
#4
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
Да, переключение режимов можно реализовать простым тумблером. Да, принцип действия примерно такой. По датчику происходит отрезание и ряд других операций (запайка шва, тиснение) Понятно. Стало быть алгоритм действий для вас примерно таков: скачиваете и изучаете программу. Добавляете два входа (для тумблера и для датчика "меток"). В программу добавляются необходимые последовательности и действия. Отсекаются возможные блокировки (например, если не введена длина, то он не поедет) и пр... В любом случае, сперва внимательно изучается существующая прога, которая в ПЛК. А там уже будет видно куда что прикрутить в ней. -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
24.02.2016 - 08:12
Сообщение
#5
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
Да, переключение режимов можно реализовать простым тумблером. Да, принцип действия примерно такой. По датчику происходит отрезание и ряд других операций (запайка шва, тиснение) Понятно. Стало быть алгоритм действий для вас примерно таков: скачиваете и изучаете программу. Добавляете два входа (для тумблера и для датчика "меток"). В программу добавляются необходимые последовательности и действия. Отсекаются возможные блокировки (например, если не введена длина, то он не поедет) и пр... В любом случае, сперва внимательно изучается существующая прога, которая в ПЛК. А там уже будет видно куда что прикрутить в ней. У меня, получается, две подзадачи. Сначала извлечь программу, если есть защита, то еще и снять ее. Потом уже попытаться разобраться в существующей программе. Насколько это реально, не имея опыта программирования контроллеров? |
|
|
24.02.2016 - 10:54
Сообщение
#6
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
У меня, получается, две подзадачи. Сначала извлечь программу, если есть защита, то еще и снять ее. Потом уже попытаться разобраться в существующей программе. Насколько это реально, не имея опыта программирования контроллеров? Хм... Да как вам сказать то. Насколько реально управлять самолетом, не имея навыков пилота? Здесь примерно так же. Желательно понимать что делаешь. -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
24.02.2016 - 11:06
Сообщение
#7
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
Для начала все же попробуйте слить программу из контроллера. В зависимости от того, какими средствами вы это сделаете (софтом) и где будете ее просматривать, она будет представлена в том или ином виде: на языке инструкций MELSEC, либо же в виде LD (лестничной диаграммы). В обоих случаях, так как это скомпилированная программа, никаких значимых и поясняющих надписей вида "Lenght_mm", "Run_Proc" там не будет, а будут лишь маркеры и регистры со своими, присвоенными им в ходе первичного написания программы номерами (адресами). Тем не менее, логика работы и их взаимосвязи весьма четко отслеживаются (опытным глазом).
-------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
24.02.2016 - 13:56
Сообщение
#8
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
Для начала все же попробуйте слить программу из контроллера. В зависимости от того, какими средствами вы это сделаете (софтом) и где будете ее просматривать, она будет представлена в том или ином виде: на языке инструкций MELSEC, либо же в виде LD (лестничной диаграммы). В обоих случаях, так как это скомпилированная программа, никаких значимых и поясняющих надписей вида "Lenght_mm", "Run_Proc" там не будет, а будут лишь маркеры и регистры со своими, присвоенными им в ходе первичного написания программы номерами (адресами). Тем не менее, логика работы и их взаимосвязи весьма четко отслеживаются (опытным глазом). программу сегодня слили, защиты не было. Честно говоря, думал будет не такая объемная( Программа GX Developer. К сожалению не могу прикрепить файл. Чтобы посмотрели, возможно в этом разобраться не имея схемы оборудования. Или придется потрошить всю проводку, куда какие входы-выходы идут? |
|
|
24.02.2016 - 18:55
Сообщение
#9
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
программу сегодня слили, защиты не было. Попадаются и такие. Честно говоря, думал будет не такая объемная Думая так, из чего исходили? То что вы видите, еще не значит что она прям "объемная". Функциональная - наверное лучше подобранное слово . Программа GX Developer. К сожалению не могу прикрепить файл. Чтобы посмотрели, возможно в этом разобраться не имея схемы оборудования. Или придется потрошить всю проводку, куда какие входы-выходы идут? Потрошить проводку пока не стоит. Сохраните скачанную прогу как проект, упакуйте весь проект в архив и прикрепляйте. Сообщение отредактировал ivgtrk - 24.02.2016 - 18:59 -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
25.02.2016 - 06:47
Сообщение
#10
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
"Неудачная загрузка. Вам запрещено загружать такой тип файлов"
|
|
|
26.02.2016 - 06:19
Сообщение
#11
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
"Неудачная загрузка. Вам запрещено загружать такой тип файлов" Странно. Ну как вариант - залить куда-нить на файловый хостинг, а ссылку сюда. -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
26.02.2016 - 10:20
Сообщение
#12
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
Сохранил на яндекс.диск https://yadi.sk/d/qIS2mUTMpXKqT. В общем обратился в контору по автоматизации, чтобы они перепрограммировали наш ПЛК. В общем говорят, что проще заново написать программу, чем разбираться и переделать существующую, и срок 3-4 недели. Я понимаю, что им это проще и выгоднее, но для нас не лучший вариант. Неужели все настолько плохо. За это время можно самому, наверное, изучить программу от и до.
|
|
|
26.02.2016 - 11:43
Сообщение
#13
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
Сохранил на яндекс.диск https://yadi.sk/d/qIS2mUTMpXKqT. В общем обратился в контору по автоматизации, чтобы они перепрограммировали наш ПЛК. В общем говорят, что проще заново написать программу, чем разбираться и переделать существующую, и срок 3-4 недели. Я понимаю, что им это проще и выгоднее, но для нас не лучший вариант. Неужели все настолько плохо. За это время можно самому, наверное, изучить программу от и до. Совершенно верно - именно выгоднее. Они просто продадут вам заново то, что у вас уже есть, ну и добавят туда чего вам не достает. Вообще, конечно проще написать программу с чистого листа, так как она будет более понятна тому кто ее пишет. Разбираться в дебрях чужой проги - несомненно кропотливое занятие, особенно если программа большая. С другой стороны - если требуются незначительные изменения, то зачем приобретать "новый продукт"? Можно и попытаться разобраться в существующей... Файл скачал, позже ознакомлюсь. Надо еще девелопер обычный поставить, я использую GX IEC. -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
28.02.2016 - 11:17
Сообщение
#14
|
|
Гигант мысли Группа: Пользователи Сообщений: 459 Регистрация: 5.02.2014 Пользователь №: 10203 |
Поверхностный анализ:
- программа явно перенасыщена излишними переменными (маркерами и регистрами), без которых можно обойтись; - тот, кто ее писал, явно недопонимает механизма работы таймеров, в связи с чем использовал совершенно ненужные инструкции их сброса; - все присутствующие в программе таймеры (13), за исключением тех (5), уставка времени которым задана константой - не имеют явной инициализации в теле программы. Значит в панели должны быть предусмотрены соотв. поля ввода этих времен, в случае необходимости их изменений. - ну и масса ненужных рекурсий, повторение (явно ошибочно) одних и тех же частей и пр. По выходу Y0 работает или шаговый двигатель или какой другой серво-механизм на движение; по Y2 осуществляется его реверс. Что висит на выходе Y1? Инструкция инкрементного движения (DDRVI) вызывается два раза и с разными значениями, видимо в зависимости от какого-то режима... И еще один раз - движение назад, видимо вызывающаяся нажатием некоторой кнопки. Справа от главного модуля ПЛК (FX3G) прилеплены два специальных модуля - что это за модули? Входы X4 и X5 моментально прекращают движение привода - скорее всего некие концевые выключатели. Что они ограничивают? (если это, предположительно, движение уголка)? По входам X1 и X3 работают прерывания, в ходе выполнения которых воздействуют на выход Y5. Что там висит? (предположительно некий эл.механический стопор или что-то подобное) -------------------- Никому никогда ничего не объясняйте — каждый всё равно поймёт так, как ему выгодно.
|
|
|
29.02.2016 - 16:40
Сообщение
#15
|
|
Читатель Группа: Пользователи Сообщений: 11 Регистрация: 19.02.2016 Пользователь №: 10635 |
Поверхностный анализ: - программа явно перенасыщена излишними переменными (маркерами и регистрами), без которых можно обойтись; - тот, кто ее писал, явно недопонимает механизма работы таймеров, в связи с чем использовал совершенно ненужные инструкции их сброса; - все присутствующие в программе таймеры (13), за исключением тех (5), уставка времени которым задана константой - не имеют явной инициализации в теле программы. Значит в панели должны быть предусмотрены соотв. поля ввода этих времен, в случае необходимости их изменений. - ну и масса ненужных рекурсий, повторение (явно ошибочно) одних и тех же частей и пр. По выходу Y0 работает или шаговый двигатель или какой другой серво-механизм на движение; по Y2 осуществляется его реверс. Что висит на выходе Y1? Инструкция инкрементного движения (DDRVI) вызывается два раза и с разными значениями, видимо в зависимости от какого-то режима... И еще один раз - движение назад, видимо вызывающаяся нажатием некоторой кнопки. Справа от главного модуля ПЛК (FX3G) прилеплены два специальных модуля - что это за модули? Входы X4 и X5 моментально прекращают движение привода - скорее всего некие концевые выключатели. Что они ограничивают? (если это, предположительно, движение уголка)? По входам X1 и X3 работают прерывания, в ходе выполнения которых воздействуют на выход Y5. Что там висит? (предположительно некий эл.механический стопор или что-то подобное) Спасибо большое, что не пожалели своего времени на анализ и развернутый ответ. Справа от ПЛК доп модуль FX2N-2DA. Насколько я помню на панели оператора есть кнопка ручного прогона, т.е. пока держишь кнопку привод протягивает. А по остальным выходам нужно смотреть. Я что подумал, не проще ли будет взять чистый контроллер и запрограммировать его только для работы по меткам. Программа должна попроще получится? Если программировать с нуля, то в чем и на чем лучше писать программу? И еще вопрос, где в программе посмотреть в каких моментах идет работа с панелью ввода данных? |
|
|
Текстовая версия | Сейчас: 29.04.2024 - 21:49 |