• Автор
    Тема
  • #75349
    no_img
    Владислав
    Участник

    Здравствуйте!

    Вот уже как полгода не могу сдать в эксплуатацию разрывную машину, сделанную на скаде Zet Lab. Постоянно какие-то но…

    На данный момент остановился на следующем вопросе. Разрывная машина испытывает образцы резины. Сразу после разрыва образца должен остановиться процесс испытания. Для этого я ввел сравнение текущего значения силы, прибавив к нему условное 0.5, и максимального. При условии превышения максимального значения текущего на 0.5 выходит сигнал об остановке измерения. Однако, периодически происходит ложное срабатывание остановки испытания (возможно значение 0.5 — мало). В то же время, на разрывной машине установлен экстензометр с двумя энкодерами, задачей которого является измерение относительного удлинения образца. Так вот, проблема в том, что пока программа даст команду на остановку испытания, экстензометр может успеть ложно выдать значения энкодеров уже после разрыва образца.

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

    Одним словом, подскажите, как можно наиболее быстрее остановить процесс испытания? Может надо сравнивать значения массивов — текущего и предыдущего? С синтаксисом Vizual Basic я не знаком.

    С уважением, Владислав!

  • Автор
    Ответы
  • #75350
    no_img
    Елена Зимина
    Хранитель

    Здравствуйте, Владислав

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

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

    С уважением, отдел технической поддержки ООО «ЭТМС»

    #75351
    no_img
    Владислав
    Участник

    Здравствуйте!
    Задача заключается в фиксировании значения перемещения в момент разрыва образца. На данный момент я сделал через массив и его максимум запоминание максимального значения перемещения, тем самым устранив отрицательную ошибку при перемещении в обратную сторону после разрыва. Для устранения положительной ошибки ввел отключение испытания при достижении силы нуля. Однако, пробные испытания показали, что положительная ошибка перемещения при определенных условиях довольно существенна. Т.е. за время от точки разрыва до нуля силы проходит достаточно большое время, способствующее ошибке.
    Поэтому, возвращаюсь к Вашему решению привязки перемещения к индексу массива силы при разрыве. Теоретически, как решить данный вопрос на Паскале я понимаю, но практически как связаться с массивом, как вытащить индекс максимума силы, как его привязать к соответствующему индексу перемещения и, наконец, вывести из VBScript — не знаю.

    С уважением, Владислав.

    #75352
    no_img
    Елена Зимина
    Хранитель

    Здравствуйте, Владислав

    Рассмотрим самый простой пример. Для этого на вход программируемого компонента подключим два вольтметра и один управляющий сигнал c разными значениями поля helpString.
    Допустим это будет «Измерение 1», «Измерение 2» и «Управление». Тогда в обработчике Sub NeighborCall(pType, helpString, param) программируемого компонента, по вызову функции с параметром helpString равным «Измерение 1» и «Измерение 2» будем добавлять значения в заранее выделенные массивы. А по вызову функции с параметром helpString равным «Управление», обрабатывать накопленные значения.

    Пример такой работы прикреплен к письму в качестве ZETView скада-проекта (Тест.zvx).

    P.s. Более подробно узнать о синтаксисе языка Visual Basic и доступных функциях можно по ссылке: https://msdn.microsoft.com/en-us/library/aa227640(v=vs.60).aspx.

    С уважением, отдел технической поддержки ООО «ЭТМС»

Для ответа в этой теме необходимо авторизоваться.

Авторизация
*
*

Потеряли пароль?

Политика конфиденциальности персональных данных

Регистрация
*
*
*

Политика конфиденциальности персональных данных

Генерация пароля