|
SMLogix Вопросы о работе в среде SMLogix и о FBD-программировании |
|
Опции темы | Поиск в этой теме |
01.03.2017, 17:38 | #31 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
На fbd для контроллера 2010, вероятнее всего, не хватит скорости реакции, чтобы адекватно читать показания энкодера и оперативно срабатывать на датчики, либо система будет работать медленнее покрасочного манипулятора. В случае с 2010 такое можно на си провернуть "играючи" в плане производительности и запаса скорости. Но вот с кодом там придётся "попотеть".
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 17:41 | #32 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
Особенно сравнение с манипулятором, скорости работы которого мы тупо не знаем. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 17:44 | #33 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Исхожу из состава системы, в которой предусматривается энкодер и какой-то сервопривод для движения датчиков. Соглашусь с тем, что на 2010 сделать можно и на фбд, но только при условии некоторого специального "обвеса" дополнительной электроникой...
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 17:46 | #34 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
Я уже вижу проблемы планирования, а ведь задача ещё и решаться-то не началась. "Дано" бы выяснить толком. Надеюсь, вы понимаете, насколько далеко мы с вами вышли за рамки технической поддержки? __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 17:47 | #35 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
А вот я пока ничего страшного не вижу.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
01.03.2017, 17:48 | #36 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
Программист манипулятора сказал, что "дайте мне координаты точек, и остальное робот сделает сам". Исходим из того, что шаг будет равен расстоянию между датчиками. Я тоже сначала состряпал матрицу на полторы тысячи блоков, но потом решил просто ловить фронты на датчиках (входах) - получилось в 10 раз меньше, и без ограничений (в теории) по длине сканирования. Осталось привязать точки к детали, разделить детали по горизонтали (если их несколько), и придумать, как всё это добро сохранять до наступления часа Х. |
|
01.03.2017, 17:53 | #37 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
Нужны координаты и сигналы на включение/выключение распылителя - это если робот по линейной схеме. Либо блоки координат объектов, если робот умный и умеет трассировать карту, самостоятельно выстраивая трассы. Поэтому, простите меня, но я пока не вижу, чем бы я мог вам помочь на ваших вводных данных. Вам известна только одна из координат. Вторую как не измеряйте, всё равно она будет неизвестной и вы не сможете сообщить её роботу. Как хранить - данное решение тоже должно быть основано на суточной нагрузке конвейера. Вам она неизвестна, поэтому вероятность принятия ошибочного решения выше, чем правильного. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 17:54 | #38 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Вы переживаете о программном решении задачи, но я бы, на вашем месте, переживал о механической составляющей. Уж обсчитать датчики - это пустяки, по сравнению с тем, что нужно рассчитать скорость работы системы и толково подобрать оборудование, если оно ещё не подобрано. Сам алгоритм измерения продумать. Ну и всё в этом роде.
На мой взгляд, на данном этапе достаточно знать, что на контроллере можно сделать(не важно как) а чего нельзя. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 18:08 | #39 | ||
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
Цитата:
Поддержка, скорее, Моральная. Пока только одни вопросы и назидания. |
||
01.03.2017, 18:13 | #40 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
Лучше потратить это время не на ложные надежды, а на совершенствование техзадания. Это реально полезная работа хотя бы для вас. Она-то точно вам пригодится при любом раскладе. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 18:18 | #41 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
Система координат будет синхронизирована с системой робота (в этом тоже уверил программист робота) Какое значение имеет суточная нагрузка, если известен цикл в 12 поддонов? Единственный момент - это начало и завершение работы. Но это другой вопрос. Сейчас мне нужно "научиться" распознавать детали и сохранять информацию. Ну и процесс наладки никто не отменял. Само собой, что это не "сел, и поехал". Всему своё время. |
|
01.03.2017, 18:21 | #42 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 18:24 | #43 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Ресурс энергонезависимой памяти - вот что важно. Вы же не хотите каждый месяц ставить новый контроллер?
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 18:27 | #44 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
|
|
01.03.2017, 18:31 | #45 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Вам знакомо понятие о времени цикла (тике) системы в контроллерах smh2010(и не только в них)?
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 18:33 | #46 |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Так я об этом ещё в самом начале спрашивал: как всё это реализовать, не убив память контроллера? В процессе, пришёл к выводу, что нужно использовать Pixel с модулем памяти FRAM. Отсюда и главный вопрос: возможно это ТЕХНИЧЕСКИ реализовать на ваших контроллерах?
|
01.03.2017, 18:43 | #47 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Память контроллера здесь ни причём. Например, сигнал с энкодера с частотой 1кГц вы не сможете измерить контроллером "просто так". Либо код на си, либо специальные модули, но быстродействие всё равно ограничено.
Рассчитывайте, что время цикла системы 100мс. Будет быстрее - хорошо. Пример: датчики движутся, наезжают на деталь и срабатывают. Один тик контроллера только что завершился, начинается другой и фиксирует срабатывание датчиков. Управляющий сигнал на выходе контроллера будет выдан только в следующем тике (если иголок нет), это значит, что время реакции будет не просто большим, но ещё и разным. И это при условии, что вы знаете скорость движения каретки и её не надо измерять постоянно по показаниям энкодера, который, как мы помним, не получится подключить напрямую к контроллеру. Я согласен с Арсением в том, что нет ничего невозможного, но я не могу ответить на ваш вопрос, так как вы по прежнему не даёте данные, что будет двигать датчики и какой сигнал будет с энкодера и прочих исполнительных механизмов/датчиков. Память - она нужна только для хранения ЭНЕРГОНЕЗАВИСИМЫХ данных. В вашем случае - можно сохранять данные о последних 12 поддонах в конце каждого измерения. На случай, если сбой питания произойдёт - чтобы не возвращать конвейер на 12 шагов назад. (в зависимости от массы деталей - это может занять целый день). Здесь уже нужно знать поток. Если конвейер делает поддон за 10 секунд - это одно, если за 5 минут - совсем другое. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 18:46 | #48 |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Честно: не знаю.
Вся линия находится в другом городе, за тридевять земель. Информации минимум, что знал - рассказал. Программист робота - в Москве. Приедет на следующей неделе для "мозгового штурма". Каждый день пытает меня вопросом "Как успехи?" Успехи более, чем скромны, но Надежда умирает последней. Уже пришлось купить Pixel, так как никакого эмулятора у SMLogix нет. С памятью пока не экспериментирую. Вместо датчиков - набор микропереключателей, роль энкодера выполняет кнопка "Esc" - вот такая "компиляция", а Вы говорите "исходных данных мало". |
01.03.2017, 18:58 | #49 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
Про скорость потока могу только догадываться, но одно знаю точно: робот красит не очень быстро. А координаты точек ему нужны именно для того, чтобы отдельно прокрашивать торцы деталей. То есть, каждую деталь он ещё дополнительно будет обходить по периметру. Если учесть, что размер поддона примерно 5х1м, то за это время можно хоть три раза просканировать поддон. |
|
01.03.2017, 19:06 | #50 |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
К вопросу о памяти: где же тогда хранить данные? Вероятно, у меня неправильное представление о принципе работы памяти, но я не понимаю, куда "складывать" информацию о четырёх точках десяти деталей двенадцати поддонов.
|
01.03.2017, 19:14 | #51 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
В eeprom, для этого специальные блоки есть. Только записывать данные туда надо разумно.
__________________ В сегнетиксе не работаю с самого начала 2019 года. |
01.03.2017, 19:24 | #52 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
Т.к. вы не знаете количества деталей на поддоне, вам придётся хранить весь массив данных о поддоне, итого 12 массивов. На этапе запроса разбирать эти данные и отдавать роботу. Было бы известно заранее - вы бы сразу разбивали массив на детали и хранили только данные о деталях. Был бы известен режим работы конвейера, можно было бы подобрать правильный контроллер. Была бы известна степень равномерности работы конвейера, можно было бы вообще обойтись без использования энергонезависимой памяти. Циклические алгоритмы постоянного шага на ФБД создаются "как два пальца об асфальт". И так очень и очень много таких "было бы". Если вам совсем невтерпёж зря потратить своё время, то предлагаю вам следующее решение: асинхронный автомат с выдачей синхроимпульсов механизму перемещения каретки. На схеме два датчика, но вроде понятно, как расширить до 10 и более. Шагов на полный скан может быть до 255. На выходе получаете массив данных о поддоне. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 19:26 | #53 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Вообще пока не вижу смысла что-либо писать в ЕЕПРОМ.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
01.03.2017, 19:27 | #54 |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Спасибо. У меня уже есть один SMH с убитой памятью, поэтому испытываю некоторый страх (по неграмотности своей) к этим блокам. Вот и уповаю на внешнюю память. Полагаете, в модуле FRAM нет необходимости?
|
01.03.2017, 19:28 | #55 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Есть и SMH2010 с этой памятью. Пиксель в вашем случае не лучший выбор. Память на SMH2010 можно заменить, кстати, так что контроллер ещё не труп))
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
01.03.2017, 19:37 | #56 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
Преогромнейшее Мерси! Всё-таки есть на свете Справедливость! Наконец-то свершился переход Количества в Качество! И насчёт Добра и Зла тоже всё верно! С пристрастием изучу Вашу посылочку! И ещё раз выражаю Искреннюю Признательность за участие и потраченное время. Ничего не проходит зря. |
|
01.03.2017, 19:39 | #57 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
Массив координат можно получить, заменив булевые линии задержки на целочисленные и загружая в них данные со второго счётчика по условию входного датчика. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 19:43 | #58 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Массив датчиков
Цитата:
И ещё, оказалось, что SMH не понимает блок PRCD, которым я идентифицирую сработавшие датчики. |
|
01.03.2017, 19:48 | #59 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Массив датчиков
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
01.03.2017, 20:00 | #60 | |
Senior Member
Регистрация: Sep 2012
Сообщения: 171
Благодарил(а): 4 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Цитата:
Вот чего удалось добиться на данный момент: я ловлю фронты на входах, сравниваю с состоянием соседних входов (слева и справа), и определяю точку (левая верхняя, правая верхняя, и т.д.) Привязываю к номеру строки (Y) порядковый номер датчика(X), и получаю координаты точки в формате YYYXX. Рассовываю по четырём блокам памяти (по количеству углов). На этом пока всё. Ещё нужно будет определять наличие второй (третьей) детали в каждой строке, и проделывать с ней такую же процедуру. Затем, дифференцировать детали и к каждой привязывать свои координаты. Потом всё это куда-то складывать на хранение. С ними тоже дело имел, но на мой взгляд - уж больно они красивы для такой грязной работы) Пикселевского экрана вполне достаточно. Он у меня уже и точки рисует (правда, мелко очень) На сегодня вынужден откланяться - рабочий день закончился) Смею надеяться на дальнейшее "сотрудничество") Доброго Вечера. Последний раз редактировалось Arsie, 02.03.2017 в 11:47 |
|