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

Вопросы по step7


Автор темы
lordvako
здесь недавно
здесь недавно
Сообщения: 50
Зарегистрирован: 16 фев 2014, 09:12
Имя: Сальников Василий Леонидович
Благодарил (а): 5 раз

Вопросы по step7

Сообщение lordvako » 27 дек 2016, 09:02

Добрый день,асутчики)

Подскажите,пожалуйста, как реализовать такую вещь нa step 7:
Мне нужно записывать информацию на каждый выход движка(просто чилсо или слово,неважно) и передавть эту информацию на след выход движка... с помощью каких блоков это реализовать:? плк 300.

Может глупый вопрос-но буду признателен,если поможете)С наступающим всех)

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

CHANt
эксперт
эксперт
Сообщения: 1278
Зарегистрирован: 25 июл 2008, 09:25
Имя: Гринев Эдуард Владимирович
Откуда: Оренбург
Благодарил (а): 13 раз
Поблагодарили: 49 раз
Контактная информация:

Вопросы по step7

Сообщение CHANt » 27 дек 2016, 09:49

Фотки что ли сделайте ))) А то не понятно что надо ))) "Движок" бензинового снегоуборщика?
А за "асутчика" и в бровь, и в глаз, и еще куда нить ногой :ges_down: Корректней, плиз, корректней в обращениях. Всегда есть слова - друзья, коллеги, товарищи и т.п.
--------------------------------------------------------------------------------------------
"Почти все начальники - дилетанты." © цитата из поста hell_boy )))


Автор темы
lordvako
здесь недавно
здесь недавно
Сообщения: 50
Зарегистрирован: 16 фев 2014, 09:12
Имя: Сальников Василий Леонидович
Благодарил (а): 5 раз

Вопросы по step7

Сообщение lordvako » 27 дек 2016, 10:23

Ну я прошу прощения,если что не так сказал,КОЛЛЕГИ))))
больше так не буду)

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

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

megavolt86
специалист
специалист
Сообщения: 683
Зарегистрирован: 14 ноя 2013, 19:35
Имя: Анатолий Сергеевич
Откуда: Башкортостан
Благодарил (а): 4 раза
Поблагодарили: 8 раз

Вопросы по step7

Сообщение megavolt86 » 27 дек 2016, 11:26

А как транспортер узнаёт та ли эта коробочка или нет? Обратная связь есть?
И зачем движку знать какая коробка на нем сейчас едет?
:ext_secret:


Автор темы
lordvako
здесь недавно
здесь недавно
Сообщения: 50
Зарегистрирован: 16 фев 2014, 09:12
Имя: Сальников Василий Леонидович
Благодарил (а): 5 раз

Вопросы по step7

Сообщение lordvako » 27 дек 2016, 11:59

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

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

CHANt
эксперт
эксперт
Сообщения: 1278
Зарегистрирован: 25 июл 2008, 09:25
Имя: Гринев Эдуард Владимирович
Откуда: Оренбург
Благодарил (а): 13 раз
Поблагодарили: 49 раз
Контактная информация:

Вопросы по step7

Сообщение CHANt » 27 дек 2016, 12:03

Ну да, знать должен оператор - что по конвейеру едет груз))) Все таки тяжело понятно, что уже есть и чего необходимо добиться.
Коллега! С ресурса http://curswincc.narod.ru/ скачайте курс PRO1 для Step7, там итог курса обучения - это построение конвейера. Может так понятней будет.
--------------------------------------------------------------------------------------------
"Почти все начальники - дилетанты." © цитата из поста hell_boy )))

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

megavolt86
специалист
специалист
Сообщения: 683
Зарегистрирован: 14 ноя 2013, 19:35
Имя: Анатолий Сергеевич
Откуда: Башкортостан
Благодарил (а): 4 раза
Поблагодарили: 8 раз

Вопросы по step7

Сообщение megavolt86 » 27 дек 2016, 14:03

lordvako писал(а):Источник цитаты другая система,которая будет давать на мой плк информацию

А не проще сравнивать информацию о коробочке на входе в ваш плк и в зависимости от полученного результата запускать нужные конвейеры...как только коробочка дойдет до остановленного конвейера или до датчика крайгего положения, то она остановится и никуда дальше не поедет (считай накаталась) :crazy0to:
А если хотите помощи то описывайте систему подробнее...так сказать составьте техзадание.
А уже имея тз можно создать нужную вам систему.
:ext_secret:


Автор темы
lordvako
здесь недавно
здесь недавно
Сообщения: 50
Зарегистрирован: 16 фев 2014, 09:12
Имя: Сальников Василий Леонидович
Благодарил (а): 5 раз

Вопросы по step7

Сообщение lordvako » 27 дек 2016, 14:44

Отличная идея! так дейсвтительно проще...но у меня еще будет панель оператора и в моей системе очень много таких цепных транспортеров! порядка 50 штук! и мне необходимо чтобы оператор всегда мог на панели увидеть какая коробочка стоит на определнном транспортере)1ая,2ая,3ая или 4ая!)

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

megavolt86
специалист
специалист
Сообщения: 683
Зарегистрирован: 14 ноя 2013, 19:35
Имя: Анатолий Сергеевич
Откуда: Башкортостан
Благодарил (а): 4 раза
Поблагодарили: 8 раз

Вопросы по step7

Сообщение megavolt86 » 27 дек 2016, 14:57

lordvako писал(а):Источник цитаты оператор всегда мог на панели увидеть какая коробочка стоит на определнном транспортере)1ая,2ая,3ая или 4ая!

Глонасс-метку вам в помощ!
Больно много неизвестных в данном уравнении...
:ext_secret:


alex45
здесь недавно
здесь недавно
Сообщения: 90
Зарегистрирован: 30 сен 2016, 15:22
Имя: Соловьев Алексей Леонидович
Благодарил (а): 1 раз
Поблагодарили: 8 раз

Вопросы по step7

Сообщение alex45 » 27 дек 2016, 15:26

megavolt86 писал(а):Источник цитаты Глонасс-метку вам в помощ!

Или хотя бы штрих-кодирование. Как багаж в аэропорту.

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

MuadDib
не первый раз у нас
не первый раз у нас
Сообщения: 363
Зарегистрирован: 31 июл 2010, 08:12
Имя: Журавлев Павел Евгеньевич
Поблагодарили: 3 раза

Вопросы по step7

Сообщение MuadDib » 28 дек 2016, 05:31

В первом приближении вам нужно делать что-то типа буфера, в котором хранятся коды видов коробок. Вы выделяете нужное количество байтов (например, в области меркеров). Когда корбка попадает на первый транспортер, вы записываете ее код в младший из этих байтов, а коды, что были в буфере до этого, поочередно смещаете вперед на один байт. Соответственно, когда коробка доходит до "движка" вы читаете из этого буфера самый ранний из помещенных туда кодов. Приходит следующая коробка на этот "движок" - следующий код. И т.д.

То есть блоки как таковые не нужны - вы будете использовать обычные инструкции загрузки и сохранения (L и T). Просто вам нужно подобрать структуру данных оптимальную для вашей задачи и реализовать ее. Скорее всего, тут будет удобнее работать с массивами. Можно попытаться уложить ваши коды видов коробок в биты и играться с битовыми операциями для экономии памяти. Можно попробовать реализовать кольцевой буфер, чтобы меньше было операций копирования. Но сути все это не меняет.


Автор темы
lordvako
здесь недавно
здесь недавно
Сообщения: 50
Зарегистрирован: 16 фев 2014, 09:12
Имя: Сальников Василий Леонидович
Благодарил (а): 5 раз

Вопросы по step7

Сообщение lordvako » 28 дек 2016, 09:40

Ну наконец-то мой дружище появился)))

Спасибо! вот именно так мы с моим программистом и хотим сделать! сразу понял ты меня))
просто вот этот проект с реализацией записи и массивами..для нас пока тяжелова-то...вот именно перемещения байта мне и нужно!
нет ли у тебя примерного примера? или может сам реализовавыал такое? в какой области копать хоть?

спасибо за ответ огромное!!!

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

megavolt86
специалист
специалист
Сообщения: 683
Зарегистрирован: 14 ноя 2013, 19:35
Имя: Анатолий Сергеевич
Откуда: Башкортостан
Благодарил (а): 4 раза
Поблагодарили: 8 раз

Вопросы по step7

Сообщение megavolt86 » 28 дек 2016, 10:19

lordvako писал(а):Источник цитаты именно так мы с моим программистом и хотим сделать! сразу понял ты меня

Хотите)))
А сколько коробок в один момент времени находится на установке? Чем отслеживается положение коробок, как долго дошедшие коробки находятся в ожидании следующего действия? Еще можно кучу вопросов напридумывать...
В зависимости от ответов можно уже чтото думать.
Неужели ваш программист не задал эти вопросы сразу?
:ext_secret:


Автор темы
lordvako
здесь недавно
здесь недавно
Сообщения: 50
Зарегистрирован: 16 фев 2014, 09:12
Имя: Сальников Василий Леонидович
Благодарил (а): 5 раз

Вопросы по step7

Сообщение lordvako » 28 дек 2016, 11:11

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

есть система,которая делает эту коробочку(точнее упаковывает необходимый товар в коробоку, причем каждый товар в каждую коробоку-именно поэтому мне и важно знать каой тип коробки едет!

поэтому после упаковки, эта система упаковки передавая коробку мне на первый транспортер выдаст сигнал о том,что это коробока 1,2,3 или 4! дальше допустим у меня 5 транспортеров и потом идут еще 4 транспортера для остановок коробок! на каждом транспортере концевой,по которому коробка тормозиться! соответственно возможно застой из 5и коробок!

к примеру, выехала коробока тип 3, и мне нужно чтобы информация которую дала упаковка была сохранена до предпослденго транспортера-и там он должен остановиться и ждать пока его не заберут!

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

MuadDib
не первый раз у нас
не первый раз у нас
Сообщения: 363
Зарегистрирован: 31 июл 2010, 08:12
Имя: Журавлев Павел Евгеньевич
Поблагодарили: 3 раза

Вопросы по step7

Сообщение MuadDib » 29 дек 2016, 11:35

lordvako писал(а):Источник цитаты Ну наконец-то мой дружище появился)))

Спасибо! вот именно так мы с моим программистом и хотим сделать! сразу понял ты меня))
просто вот этот проект с реализацией записи и массивами..для нас пока тяжелова-то...вот именно перемещения байта мне и нужно!
нет ли у тебя примерного примера? или может сам реализовавыал такое? в какой области копать хоть?

спасибо за ответ огромное!!!


Пожалуйста!

Как производится перемещение байтов.

У нас в одной из систем есть рольганг, на который помещаются трубы, произведенные станом. У трубы может быть дефект. В момент помещения трубы на рольганг информация о наличии/отсутствии дефекта помещается в конец буфера FIFO (First In - First Out). Когда труба доезжает до конца, информация о дефекте извлекается из начала буфера.

Для буфера там выделено несколько подряд идущих double word в одном из DB (помимо информации о дефекте там есть еще инфа, поэтому используется больше байтов).

Получается примерно так:

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


DBD200  -- FIFO datum 1 (начало буфера)
DBD204 -- FIFO datum 2
DBD208 -- FIFO datum 3
...
DBD256 -- FIFO datum 15



В том же блоке хранится переменная с количеством труб в буфере (счетчик)

Когда труба доехала до концевика, данные из DBD200 (начало) идут в обработку, а в буфере производится вот такая чехарда

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


L   DB123.DBD204
T   DB123.DBD200
L   DB123.DBD208
T   DB123.DBD204
L   DB123.DBD212
T   DB123.DBD208
...




То есть все datum копируются в младшего "соседа": из datum 2 - в datum 1, из datum 3 - в datum 2 и т.д. по всему объявленному буферу.

После этого число в переменной-счетчике уменьшается на единицу

Несколько сложнее помещать данные в буфер. Конец буфера смещается по мере пополнения. Если в буфере одна труба, то DBD200 "занято", и надо писать в DBD204. Если две трубы - писать нужно в DBD208 и т.д. Делается это через работу с указателем, указатель рассчитывается с помощью переменной-счетчика. Понятное дело, что когда записали туда очередную трубу, счетчик нужно увеличить на единицу.

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

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

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

VADR
администратор
администратор
Сообщения: 2475
Зарегистрирован: 25 июл 2008, 06:12
Имя: Диев Александр Васильевич
Благодарил (а): 26 раз
Поблагодарили: 32 раза

Вопросы по step7

Сообщение VADR » 29 дек 2016, 11:54

Можно высказать мнение сименс-чайника?
А если данные по буферу вообще не перемещать, а обращаться к ним по указателю? Выделить в меркерах место под два указателя: первый - для места, доступного для помещения нового элемента, второй - для следующего извлекаемого. Написать две функции: помещения в буфер и извлечения из него. Каждая из функций кроме записи данных в ячейку или чтения из неё увеличивает соответствующий указатель. Как только указатель выходит за пределы диапазона - он перекидывается на начало буфера. Когда указатель чтения "догоняет" указатель записи - буфер пуст, если наоборот - переполнение.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.

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

MuadDib
не первый раз у нас
не первый раз у нас
Сообщения: 363
Зарегистрирован: 31 июл 2010, 08:12
Имя: Журавлев Павел Евгеньевич
Поблагодарили: 3 раза

Вопросы по step7

Сообщение MuadDib » 29 дек 2016, 12:40

VADR писал(а):Источник цитаты Можно высказать мнение сименс-чайника?
А если данные по буферу вообще не перемещать, а обращаться к ним по указателю? Выделить в меркерах место под два указателя: первый - для места, доступного для помещения нового элемента, второй - для следующего извлекаемого. Написать две функции: помещения в буфер и извлечения из него. Каждая из функций кроме записи данных в ячейку или чтения из неё увеличивает соответствующий указатель. Как только указатель выходит за пределы диапазона - он перекидывается на начало буфера. Когда указатель чтения "догоняет" указатель записи - буфер пуст, если наоборот - переполнение.


Можно и так. Это будет кольцевой буфер, который я упоминал в своем первом сообщении в этой ветке.


PavelK
здесь недавно
здесь недавно
Сообщения: 3
Зарегистрирован: 11 янв 2017, 16:12
Имя: Кулагин Павел Викторович

Вопросы по step7

Сообщение PavelK » 11 янв 2017, 18:31

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


Вернуться в «ПЛК SIMATIC (S7-200, S7-1200, S7-300, S7-400, S7-1500, ET200)»



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

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