Страница 6 из 17 ПерваяПервая ... 4567816 ... ПоследняяПоследняя
Показано с 51 по 60 из 164

Тема: Тренироваться на кошечках

  1. #51
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию

    Нет. Я не против описать словами, но как приложение к таблице. Ибо получается много текста, запутаетесь. Ща, добъю таблицу, потом к ней пояснение.

  2. #52
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

    1.Правильно ли я понял ,что днище открывается при условии уровень 0 в "1" и нажата педаль разрешения загрузки и есть пуск? .
    2.у вас цикл засыпки-высыпки одиночный (дозирования),тоесть нужно каждый раз нажимать кнопку пуск или автоматический ,с перезапуском ?
    3.нужно ли контролировать работу компараторов на предмет не существующей комбинации 10?
    Последний раз редактировалось rovki; 31.07.2014 в 23:34.
    электронщик до мозга костей и не только

  3. #53
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию

    ОК, давайте и так (хотя я все же опишу и в полном виде)
    Цитата Сообщение от rovki Посмотреть сообщение
    1.Правильно ли я понял ,что днище открывается при условии уровень 0 в "1" и нажата педаль разрешения загрузки и есть пуск?
    Если перед этим было Уровнь1 И НЕ Уровень0
    И про ПУСК... Ну, да, был пуск. Но, понимаете, нельзя сказать, что в любой момент времени, когда "уровень 0 в "1" и нажата педаль разрешения загрузки и есть пуск" - открывать днище. До этого должны выполниться несколько шагов (грубо говоря, поймать сработку всех трех уровней), иначе днище откроется, например, в самом начале цикла дозирования, когда и Уровень0 есть, и разрешение разгрузки (это может быть вообще статический сигнал-перемычка), и ПУСК был...
    В нужное время (фазу, мать ее..) нужно проверять "уровень 0 в "1" и нажата педаль разрешения загрузки и есть пуск"

    Цитата Сообщение от rovki Посмотреть сообщение
    2.у вас цикл засыпки-высыпки одиночный (дозирования),тоесть нужно каждый раз нажимать кнопку пуск или автоматический ,с перезапуском ?
    Если на входе 1 стоит "1", то по окончанию цикла нужно начать новый

    Цитата Сообщение от rovki Посмотреть сообщение
    3.нужно ли контролировать работу компараторов на предмет не существующей комбинации 10?
    Не обязательно. А вот несуществующая комбинация х10, т.е. Уровень2 - не важно, Уровень1 = 1, а (более низкий) Уровень0 = 0 - это как раз сигнал, по которому следует перестать беспокоиться о днище (выключить TOF) и начать следить за комбинацией "уровень 0 в "1" и нажата педаль разрешения загрузки"

    Как-то так.

  4. #54
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

    тогда в какой последовательности у вас меняются уровни 0,1,2 в зависимости от засыпки .?
    по 3 уровням есть 8 состояний ,вы используете только 3 ,остальные состояния могут быть использованы для диагностики компараторов ,но это после сделаем.
    Правильно ли я понял ,что цикл заканчивается закрытием днища после дозирования?И если стоп ,то остановка ,а если пуск ,то новый цикл дозирования ?

    Пора баяньки ,завтра вечером продолжим ....
    Последний раз редактировалось rovki; 01.08.2014 в 00:07.
    электронщик до мозга костей и не только

  5. #55
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию

    Цитата Сообщение от rovki Посмотреть сообщение
    тогда в какой последовательности у вас меняются уровни 0,1,2 в зависимости от засыпки .?
    000 старт
    001 началась подача
    011 сработала уставка1, переход с ГРУБО на ТОЧНО
    111 сработала уставка2, выключить подачу, ждать сообщения о фиксации дозы ("спецкод")
    x10 "спецкод" - тензоАЦП говорит, что зафиксирован вес, можно идти дальше. Значение старшего бита МОЖЕТ быть любым
    xх1 тензоАЦП увидел, что пошла разгрузка, вернул младший бит в нормальный режим
    001 разгрузка продолжается
    000 ковш пуст. Подождать не менее TUNLDMIN (ну, полсекунды) и закрыть ковш. Дождавшись сигнала о том, что он закрыт, подождать еще (типа, 2 сек) - и тогда уж вверх

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

    Цитата Сообщение от rovki Посмотреть сообщение
    Правильно ли я понял ,что цикл заканчивается закрытием днища после дозирования?И если стоп ,то остановка ,а если пуск ,то новый цикл дозирования ?
    Почти. Если иметь в виду, что "закрытие днища" - это не только снятие сигнала на его открытие, но и получение подтверждения от датчика днища

    Цитата Сообщение от rovki Посмотреть сообщение
    Пора баяньки ,завтра вечером продолжим ....
    О! А я только разгулялся

  6. #56
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию

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

    Итак, прилагаю картинку (которая, как нас учили, заменяте тысячу слов). А к ней еще тысячу слов - комментарий.
    А кто не любит ПДФ - так повторю комментарий прямо здесь. Вот он:
    Описание временнОй диаграммы работы. Это простой нормальный цикл без аварий и дополнительных задержек на ожидание разрешения разгрузки и ожидания днища.

    Верхний график — вес продукта в грузоприемном ковше.
    Графики Out0...Out2 — это дискретные выходы тензоАЦП, они же заходят в виде входов Di2...Di4 (_bLev0..._bLev2) на входы нашего ПР110.
    Графики Подача и Unload — это выходы ПР110.
    Первый из графиков условно показывает, что подача продукта идет (в режиме ГРУБО, потом ТОЧНО, что определяется комбинацией выходов Do1 bFast_ и Do2 bSlow_).
    Второй график показывает состояние выхода Do3 bUnld_
    В нормальном цикле остальные входы не интересны:
    Di1 _bSSInput всегда “1”, то есть разрешает зацикливать дозирование,
    Di5 _bUnldEn всегда “1”, то есть разгрузка разрешена сразу по готовности дозы,
    Di6 _bBtmClsd с небольшой задержкой повторяет инвертированный сигнал Do3 bUnld_.

    Итак, при наличии Di1 _bSSInput начинаем дозирование. Проверяем состояние днища, видим, что там все чики-пики (Di6 _bBtmClsd = 1) и включаем подачу (момент времени t1).
    При поступлении сигнала о достижении уставки1 переключаем подау на ТОЧНО.
    При достижении уставки2 выключаем подачу.
    В это время (после t3) все 3 входа Di2...Di4 (_bLev0..._bLev2) в состоянии “1”, ибо уставка2 — наибольшая из всех трех. ТензоАЦП начинает ловить стабильность, а наша задача — поймать “спецкод” в виде: уставка1 есть, а уставка0 упала в ноль. С учетом реальных значений этих двух уставок это нонсенс. Но именно он и нужен, чтобы перейти к разгрузке.
    Итак, в момент t4 наш ПР110 получает “спецкодом” по голове и у него отваливается днище
    Нет-нет, это была шутка. На самом деле в момент t4 возникает искомый “спецкод” (на рисунке обозначен как sig1), а ПР110 еще проверит разрешение разгрузки (вход Di5 _bUnldEn). И только по его “1” наш ПР110 включает выход открытия днища. Отобразил на рисунке это как некий сигнал sig2, чтобы вы смотрели, куда надо.
    Уменьшение веса (sig3) ловит бдительный тензоАЦП и сразу понимает — его “спецкод” получен и разгадан! Ясен пень, он тут же возвращает свой выход Out0 (наш вход Di2 _bLev0) в нормальное для этой фазы состояние “1” (sig4 на рисунке). Это есть обязательный сигнал для ПР110, чтобы понять одну важную вещь: вход Di2 _bLev0 вообще-то может и подниматься. Замечу, что до этого нам было как-то по барабану, может ли этот вход переходить в “1”. Так что стоим, открыв днище, ждем “1” на втором входе.
    Ну, а получив “1”, тут же начинаем ждать там же, но уже “0” (это произойдет в момент времени t6) . Ибо это показывает, что ковш разгрузился. Ну, на всякий случай ограничиваем сами себе, что меньше, чем какое-то минимальное время, мы сигнал разгрузки не обрезаем, даже если уже увидели, что Di2 _bLev0 = 0. И в момент t7 сигнал открытия днища снимаем.
    Вот и все. На новом цикле обязательно проверим состояние днища до того, как включить подачу.

    Аварийная ситуация связана с недержанием днища: если во время подачи ГРУБО, ТОЧНО или при попытке АЦП зафиксировать вес мы вдруг увидим, что днище точно съехало (мы проверяем это блоком TOF с полусекундной задержкой после окончательного пропадания сигнала на входе Di6 _bBtmClsd), то бросаем все и идем на начало цикла, в точку проверки днища. Сразу при этом сбросив все выходы управления подачей, естесственно. А там еще моментик: если в этом состоянии мы проторчим более 5 сек, то вообще взбесимся: включим выход Do4 bAlarm_ и уйдем в начало программы, где стоим, лампочкой светим и ждем закрытого днища. Когда дождемся, то проверим разрешение работы Di1 _bSSInput (при устранение аварии с днищем оператор мог и выключить тубмлер РАБОТА) и уж потом начнем новый цикл.
    timechart.png
    Вложения Вложения

  7. #57
    Пользователь Аватар для maximov2009
    Регистрация
    11.09.2012
    Адрес
    Барнаул Алтайский край
    Сообщений
    2,458

    По умолчанию

    Добрый день.
    Прям пока спал такая дискуссия развернулась, аж с утра читать устал. И всё с мертвой точки сдвинутся не можем.
    Задачка то выеденного яйца не стоит. То что Вы привели на картинке один в один в инструкции на наш весовой дозатор. Так что не надо уж так сильно гордится своим детищем, принцип работы у ВСЕХ одинаков. А то так себя расхваливаете, аж временами неудобно себя чувствуешь. Прям такой уж гениальный изобретатель к нам обращается и нас учит как правильно жить. Ваше описание устаешь читать и забывается смысл. Опять Вы на свои операторы слазите и вроде как шутками разбавляете.
    Наверное предпоследнюю попытку сделаю достучаться.
    В приложении 2 описания - техзадания. Сразу говорю тоже не идеал, но что удавалось в конечном счёте добиться, и вот такую табличку с работой выходов и условиями перехода на следующий шаг и надо. В первой (лесоруб) переход осуществляется от срабатывания соответствующих датчиков по переднему или заднему фронту. Они подцеплены к соответствующим входам. Во втором переход осуществляется по достижении определённой температуры и выдержки по времени. Вот это есть то что называется внутренние условия или внутренние операторы.
    Ну а если уж и дальше гордыня не позволит перейти на другой режим общения, лично я умываю руки. Не так уж к сожалению много свободного времени.
    Проекты по этим техзаданиям выкладывал ранее на форуме, можете посмотреть, лесоруб в разделе ПР110, коптильни в разделе ПР114.
    С уважением ко всем.
    Вложения Вложения
    Последний раз редактировалось maximov2009; 01.08.2014 в 06:33. Причина: добавить
    Лучшее - враг хорошего "Le mieux est I\'ennemi du bien" (вроде как Вольтеровское)

  8. #58
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

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

  9. #59
    Пользователь Аватар для drvlas
    Регистрация
    30.09.2010
    Адрес
    Киев
    Сообщений
    700

    По умолчанию

    Цитата Сообщение от maximov2009 Посмотреть сообщение
    Прям пока спал такая дискуссия развернулась, аж с утра читать устал. И всё с мертвой точки сдвинутся не можем.
    Сначала дискуссия, потом вы с коллегой rovki меня убедили, что нужно попробовать изложить задачу иначе. И я пробовал, разве нет? Делал табличку, схожую на приведенные Вами, но rovki начал задавать вопросы - как не ответить? Попутно возникла идея описать словами.
    На вкус и цвет... Вам не понравилось то, что я до сих пор предлагаю, но ведь видно, что другим это может показаться сносным описанием. Но Вы как будто обиделись.
    Цитата Сообщение от maximov2009 Посмотреть сообщение
    Задачка то выеденного яйца не стоит. То что Вы привели на картинке один в один в инструкции на наш весовой дозатор. Так что не надо уж так сильно гордится своим детищем, принцип работы у ВСЕХ одинаков.
    Не совсем один в один, но Вы не дочитали (признаю, стиль мой тяжелый, многословный, да). Но главное ведь не то. Выбросьте мой фокус со "спецкодом", выбросьте слежение за днищем и отработку аварии - останется совершенно банальная циклограмма. Но реализуйте хотя бы ее! В конце концов, если все так схоже на ваш дозатор - ну так и реализуйте его именно! Мне-то что - я посмотрю Ваш шаблон, пойму, как делать проги на ПР и доделаю свои нюансы. Понимаете? Не гениальному изобретателю (уж не знаю, с какого Вы такой-то вывод делаете, но Бог с ним, с выводом), а просто пацану с улицы - покажите реализацию "ВСЕХ" или хоть одного стандартного простого дозатора на ПР110. Для этого и мое ТЗ, с которым я никак не могу угодить Вам, не нужно. Верно?

    Цитата Сообщение от maximov2009 Посмотреть сообщение
    Ваше описание устаешь читать и забывается смысл. Опять Вы на свои операторы слазите и вроде как шутками разбавляете.
    Знаю свой грешок. Но лучше шутками, чем матюками, а то у вас тут мониторят, по голове могут надавать

    Цитата Сообщение от maximov2009 Посмотреть сообщение
    Ну а если уж и дальше гордыня не позволит перейти на другой режим общения, лично я умываю руки
    Не надо умывать. Если Вас не убедил мой нынешний постинг и Вы не хотите сделать программу кагбэ вообще без ТЗ (стандартный "свой" дозатор с "моими номерами входов-выходов) - ну, отвлекитесь, не следите пол-дня. Я же продолжаю составлять табличку. Изучу Ваши примеры ТЗ. Я стараюсь. Мне интересно не готовое решение (иначе ждал бы rovki, да и делов-то), а варианты подходов. Вот потому и прошу не сердиться, а продолжить конструктивно. Ок?

  10. #60
    Пользователь Аватар для maximov2009
    Регистрация
    11.09.2012
    Адрес
    Барнаул Алтайский край
    Сообщений
    2,458

    По умолчанию

    Цитата Сообщение от drvlas Посмотреть сообщение
    а продолжить конструктивно. Ок?
    Хорошо. Дозатор не мой, лично я никогда дозаторы не конструировал, я сказал что у меня стоит на работе. Марка дозатора написана выше. Мы просто обслуживаем и настраиваем, поэтому я знаю принцип его работы, может мне и будет легче понять Вашу задачу. Но ещё раз напомню, что мне просто нужна таблица, как в примерах и всё. (Последнюю колонку для ППЗУ не надо). Потому что в нашем дозаторе весовая балка непосредственно подцеплена к контроллеру у Вас же сигналы берутся с выхода Вашего компаратора на ПР.
    И Вы уж извините, но на работе завал, лето, отпуска, работаю за троих, поэтому вникать в словесное описание просто нет времени, а помочь человеку всегда хочется, мне в своё время также помогали разбираться. Поэтому отдельная благодарность ВСЕМ кто мне помогал начинать.
    Лучшее - враг хорошего "Le mieux est I\'ennemi du bien" (вроде как Вольтеровское)

Страница 6 из 17 ПерваяПервая ... 4567816 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 4
    Последнее сообщение: 03.03.2017, 08:25
  2. Файловый менеджер на Delphi на основе утилиты plc_io
    от kandiral в разделе Помощь Разработчикам
    Ответов: 18
    Последнее сообщение: 09.12.2016, 14:52
  3. Ответов: 6
    Последнее сообщение: 11.05.2011, 17:19
  4. Ответов: 7
    Последнее сообщение: 26.01.2011, 07:58
  5. Ответов: 2
    Последнее сообщение: 05.09.2010, 17:27

Ваши права

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