народ, сталкивался кто с датчиками давления Piezus APZ для агрессивных сред (на объекте - гипохлорит натрия)? использую его для определения уровня наполнения, получаю 4-20, конвертирую в 0-6 метра. так чёт датчик стал сбоить, погрешность стала 3.5% - не бьётся с допустимой 0.25% по документации. технологически, чем это отклонение может быть вызвано? зы: сам программист и не шарю. но, по традиции - спрашивают меня)

Комментарии: 89

  1. Alexander

    Т. е. работал норм и появилась проблема?

    • Anton

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

      • Alexander

        А на импульсной линии?

        • Anton

          не понял вопрос, честно признаться)

          • Alexander

            Как датчик с процессом соединён?

            • Anton

              труба, соединённая с баком наполнения посредством перпендикулярной врезки. потом труба кинута в перпендикуляр врезке и идёт под углом 90 градусов относительно земли вверх

              • Alexander

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

                • Anton

                  тоже есть такие мысли) только проверить это пока не получится, пока не пройдут 2 недели, бак не сольют и будет вариант посмотреть показания пустой ёмкости / технологам снять датчик, посмотреть что там с ним происходит

                  • Alexander

                    он у вас без крана что ли?

                    • Anton

                      ищу документ, момент ага

                      • Alexander

                        расстрелять тех кто так сделал!

                    • Rashid

                      Как же демонтировать тогда , только ждать слива

              • Z-vladimir

                А можно схематичное изображение? Трубка камеры низкого давления в атмосфере или в верхней части бака?

  2. Rashid

    А метрологи-поверители что говорят?

  3. Z-vladimir

    0.25% по документации погрешность на определение давления или уровня?

    • Anton

      да нифига) их там нет и когда появятся - непонятно. объект уже сдан и с ним было всё ок. всю наладку успешно проходили уровня (давления)

      • Egor

        Коллеги, доброго времени суток. Стала задача если в двух словах, то реализовать движение манипулятора по заданному алгоритму. Алгоритм типа: поднимись вверх, подожди 90 секунд, сделай 2 шага вправо, опустись вниз, подожди 30 сек и тд Может кто уже делал такое и можете подказать как описать этот алгоритм. Первое что на ум пришло это IFами жестко описать, но может есть решение получше? Фото алгоритма прикрепил Пишу в тиа портале на симене

        • Yuriy

          Диаграммы sfc не пробовали? https://youtu.be/ebIbodslA0o

        • Gabrrr

          Все делают такие алгоритмы, если надо что то пошагово. До того как реализовать, то 1. есть спец языки, которые заточены эту задачу (например, GRAPH у сименса) 2. Делаешь сам на любом удобном тебе языке. Проще всего так, заводишь интовую переменную "шаг", и соответственно к её состоянию привязываешь всю логику. Типа "если шаг 1 делаем то, то", "если шаг 1 и есть такое то условие, то шаг 2". Я обычно исполнение на шаге отделяю от условий перехода, и пихаю в один большой case для наглядности. Ну и главное не забывать, что кроме нормальной работы у тебя может не случиться условия перехода, или оператор решит прервать процесс, и т.п., и эти случаи надо тоже обработать.

          • Rashid

            Как раз Graph, хорошо впишется если есть некая последовательность!!!! Ну и шагами можно, будет некая переменная отвечающая за шаг и на каждом этапе будет проверяться условие, если оно выполнилось, то присваиваете переменной следующий шаг и выполняй действия прописанные для этого шага и т.д. Здесь тоже надо предусмотреть сброс последовательности на начальный режим и управление оператором и т.д. Можно и в LAD и FBD делать алгоритм с шагами.(Встречал, нормально все работает)

            • Gabrrr

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

          • Egor

            Может можете скинуть примеры таких шаговых алгоритмов А в конце каждого шага Получается шаг+1?

            • Rashid

              Move можно использовать

            • Gabrrr

              Ну лучше не +1, а именно переход. Типа в конце шага один делаем переменную шаг равно 2 (move). С плюсом можно накосячить и где-то проскочить. К тому же не факт, что у тебя всегда надо идти к след шагу. Например, паузу можно реализовывать тем, что ты из шага 5 переходишь в шаг 50, и ждешь пока пауза закончится, потом возвращаешься в шаг 5 и продолжаешь. Или у тебя может быть мини-цикл. Типа из шага 5, если условие выполнилось, то идём в 6, а если не выполнилось, то обратно в 4.

              • Egor

                Довольно гибко да Спасибо Вам

                • Z-vladimir

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

            • Anonim

              Вот пример реализации пошагового цикла в LADe - подобие использования CASE https://youtu.be/YmCF0KaeqpY . Я сам лично использую CASE. А так SFC отлично зайдет тоже или GRAPH если у вас S7-1500

          • Rustem

            CASE оператор помогает здорово.

            • Gabrrr

              Нуу да, но case это по сути просто сгруппированный иф по 1 условию. Я говорю, я в него пихаю только сами команды (output). Технически в него можно и переходы запихивать, но кмк наглядность теряется. Я лучше пару датчиков на LAD соберу, зато потом на отладке будет глазами легче проблемы находить.

              • Egor

                Просто там тех процесс интересный Манипулятор погружает корзину с деталями в ванны разные В ваннах всякая химия типо чтобы деталь не ржавела, блестела и тд И для каждого вида деталей свой алгоритм Время нахождения в ванне И порядок ванн И таких алгоритмов(рецептов) 25 описанных уже(базовых) Многовато Там еще хочет заказчик типо возможно создания новых рецептов гибких Типо указать последовательность ванн и время нахождения в ней А манипулятор уже сам решает как ему ходить чтобы максимальное кпд было

                • Rashid

                  У меня друг, как раз такой алгоритм писал с ваннами

                • Suigintou45

                  пассивация, фосфатирование,...

              • Rustem

                А итальянские производители линий реализовали эти шаги в LAD Сименса. Мне как обслуге удобно было мониторить почему штабелер с присосками вставал на одном из шагов, т.е. что он недождался и чего ждет ))

                • Anonim

                  Тоже на Ladder есть линии пакетирования с шагами, очень удобно отслеживать из-за чего застрял процесс

                • Gabrrr

                  Параметр ванн все-таки будет задавать технолог, а вы ему должны дать возможность это сделать (условные рецепты). Я бы скорее думал в сторону, что вот у нас есть рецепт вида : операция 1 = (ванна ххх, время выдержки ххх, ещё какие то параметры ххх), операция 2 = (ванна ххх, время выдержки ххх, ещё какие то параметры ххх) и т.д. Положение ванн вы знаете, и уже динамически к ним двигаетесь, а не просто железно вправо/влево. А вот про КПД это уже более сложная настройка. Она ведь по сути появляется, когда манипулятор обрабатывает больше чем 1 деталь за раз, И вот чтобы параллелить процессы тут надо и какие то приоритеты выставлять (типа в этой ванне можно чтобы и полежало лишнюю минуту, а в этой тех процесс будет нарушен). Я не очень понял сарказм это был или нет

                  • Rustem

                    Не сарказм, а показал преимущество шаговых операций при реализации на lad мне как киповцу на производстве в плане диагностики отказов.

                    • Gabrrr

                      А ну да я про это же и писал. Мой персональный выбор это case (управление выходами) + LAD (условия перехода по шагам). Ровно из-за наглядности так и делаю.

                • Berkeman

                  Использовал элемеровский, в принципе нормально работает. Софт нужен только с dtmками под необходимый девайс Там тоже была переменная, которая хранила текущий шаг?

                  • Rustem

                    Да. Причем две. Одна текущий шаг при работе штатной, другая для аварийного режима: что сделать по шагам для возврата в исходное стартовое положения начала цикла. Аварийный был связан с шагом рабочим, на котором произошла авария/стоп процесса.

                  • Rustem

                    А у себя ещё добавил шаг 100 - аварийный грибок или что то серьезное. Процесс стопорится но при устранении причины останова - возврат на начало шага, где была авария. Это если нельзя начать сначала, а надо продолжить. А шаг 0 - инициализация и ожидание условий для начала цикла.

                    • Berkeman

                      А шаги где и как устанавливались? В конце операции текущего шага?

                      • Rustem

                        Да, в руководстве. В конце успешного шага мове номеру шага.

                        • Rustam

                          Можно через сдвиг шаги менять)

                        • Vyacheslav

                          Поделитесь, хоть кусочком. Интересно увидеть стилистику

                      • Rustem

                        Если успеха нет а таймер превысил - аларм и стоп на текущем шаге.

                        • Berkeman

                          Факт успеха по обратной связи с ИМ?

                          • Rustem

                            А ещё иногда выхода записываю в формате Ворд. Шаг такой то отдаю на модуль статус = столько то. Здесь путаницы меньше, мне показалось. Ок, скину. Не всегда. Затворы/клапаны - да. Набор какого то параметра - величина уставки/задания

                            • Egor

                              Можно мне тоже?)

                    • Vyacheslav

                      Описываете алгоритмы?

              • Anton

                Да, но с ним не ошибешся при привязке выходов для пуска оборудования. Через сет/ресет или жесткую привязку вход-выход легко накосячить, когда много ИМов. Можно сделать красиво: завести интовую переменную и условными операторами описать каждое состояние станции (рабочее, аварийное, простой и тп), в которых станция пребывает, и через кейс уже описывать все выходы. И по коду всё красиво (самому приятно смотреть) и меньше рисков ошибиться Ну или просто методами описать работу логики, если среда позволяет в ООП Разбить ИМ по функциям и ок

        • Denis

          Я бы на case of сделал

      • Alexander

        Т. е. датчик кроме первичной поверки не поверялся?

        • Anton

          проверялся, в том и дело.. ребята отработали успешно уже два месяца и всё было ок - показания были корректными

          • Z-vladimir

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

            • Anton

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

          • Rashid

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

            • Anton

              угу, будем смотреть.

              • Alexander

                самое простое, непосредственно рядом с датчиком вкрутить показометр и сравнить показания

            • Z-vladimir

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

              • Alexander

                такой?

              • Anton

                благодарю. провентилирую этот момент с наладчиками.

                • Alexander

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

                • Z-vladimir

                  Даже не перепад… на измерение уровня будет даже перепады атмосферного давления влиять. А сама емкость закрытого типа? В ней давление может отличаться от атмосферного?

                  • Anton

                    сам бак. но на последней нет врезки уровнемера там стоят компенсаторы давления, я так понимаю. внешнее и внутреннее давление они должны уравнивать, а избыток давления - сбрасывать во вне

                    • Z-vladimir

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

                      • Egor

                        А, ну можно и мув да

                      • Berkeman

                        Так по схеме же есть отбор давления газовой шапки

                        • Aero

                          Доброго всем, есть датчик уровня gauger 420, чтобы его отконфигурировать нужно подключится по usb mini, так вот при подключении он просит драйвер, AT91 , его у меня естественно нет, может у кого есть или кто-нибудь сталкивался с этим устройством? Помогите пожалуйста при возможности

                          • Yuriy

                            Ну для конфигурации наверное приложение нужно? Там и драйвер

                            • Aero

                              А где его взять то ?

                              • Yuriy

                                У продавца

                                • Aero

                                  они посылают к производителю

                                  • Yuriy

                                    Нах тогда такие продаваны

                        • Alexander

                          а насколько будет гулять давление на срабатывание этого клапана

                          • Berkeman

                            Не, на датчик, в камеру низкого давления

                        • Z-vladimir

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

                      • Anton

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

                • Alexander

                  предположу, что емкость скорее всего открытая противогололедную жижу делаете?

                  • Anton

                    упаси господь) дозирую хлор в питьевую воду, идущую на город принципиалка

      • Z-vladimir

        Это разные вещи, уровень измеряется косвенно по давлению столба жидкости.

        • Anton

          ну, как бы да, но для меня это просто 4-20, которые я масштабирую в любой удобный выходной PV)

          • Berkeman

            А погрешность резко появилась что ль? Ну тогда да, я же про меньшую амплитуду А может быть погрешность в токовой петле идет?

            • Anton

              в том и дело, что так и случилось. сам удивлён. пеняю на технологов, но они открещиваются, типа смотри код

  4. Berkeman

    Гидростат же, у него погрешность на давление. А уровень уже по плотности Плотность жидкости не могла поменяться?

    • Z-vladimir

      Вопрос к автору вопроса, почему он погрешность по уровню сравнивает с заявленой погрешностью давления

    • Alexander

      Если плотность то ещё температура должна быть

      • Berkeman

        Неужели, если указать температуру 20 С, то колебания оной будут выдавать 3.5% погрешности

        • Alexander

          при колебании t° предположим от -40до +40?

    • Anton

      могла, но проблему обнаружили на среде, которая координально поменять бы не успела

Не нашли ответ?

Вам также может быть интересно