Подсчет количества продукции
Добрый день. Возник вопрос о возможности реализации подсчета выпущенной продукции в количестве коробок. Т. е. по реализации самого подсчета вопросов особо нет, на конвеер ставится счетчик импульсов Овен СИ30(c rs-485) + датчик. В SimpLight данные получить без проблем. И видеть текущие показания счетчика тоже. Но как их лучше хранить и как с ними потом удобно работать... Чтобы можно было удобно смотреть выпущенную продукцию за час, сутки, месяц.
Ответ
День добрый.
Но как их лучше хранить и как с ними потом удобно работать... Чтобы можно было удобно смотреть выпущенную продукцию за час, сутки, месяц.
На вскидку пару вариантов: 1. Завести несколько виртуальных каналов, и скриптом раскладывать в них входное значение счетчика соответственно по дням, месяцам и т.д. 2. Хранить так как есть нараставшим итогом, а далее формировать отчет соответственно по суткам месяцам и т.д.
В принципе к 1 варианту я и пришел. Что-то вроде: По истечении каждого часа записываем текущее значение счетчика си30 в виртуальный канал, затем сбрасываем текущее значение счетчика си30. Как я понимаю, в итоге получим канал, в который каждый час будет записано значение произведенной продукции за прошедший час. Со значением за прошедшие сутки или текущие сутки тоже понятно. А вот с месяцем или произвольным промежутком не совсем понятно. Может просто через "калькулятор расхода" по виртуальному каналу (в котором каждый час идет запись) получится увидеть?
Калькулятор расхода, я думаю тут не подойдёт. Вариант на вскидку - Сохраняете значение счетчика каждый час (как Вы сделали), далее можно в скрипте читать БД по записанному каналу и считать уже за произвольный интервал.
Подскажите, а есть ли возможность из скрипта опрашивать прибор принудительно?
Просто боюсь, что если, например, даже при опросе в 1 секунду, я заберу значение из опрошенного канала и обнулю счетчик, то за эту секунду может проскочить еще 1 единица товара, которая не будет отображена при прошлом опросе, а счетчик обнулится. Если бы можно было вытаскивать в скрипте значение прямо из прибора, другое дело...
День добрый.
К сожалению из скрипта опросить напрямую устройство нет возможности.
Тогда еще вопрос, в ОВЕН СИ30, какое минимальное время опроса счетчика можно организовать, как думаете? Может есть опыт использования. 50 / 100 / 300 мс?
Можно попробовать снизить время опроса до 500 мс для начала. Или пересмотреть логику скрипта. У Вас круглосуточное производство? Я к тому что может не сбрасывать счетчик каждый час, а сбрасывать к примеру в нерабочее время в конце смены к примеру.
Думал об этом. Производство непрерывное. В сезон линия может работать и 10 дней без перерыва. Но я рассматриваю этот вариант.
Простите, что вмешиваюсь в беседу. (....Если бы можно было вытаскивать в скрипте значение прямо из прибора, другое дело...) опрашивать прибор из под скрипта или записывать с него данные для дальнейшей обработки в вирт. канал, в чем разница? Из под скрипта нельзя, но простая запись в канал это тоже самое, (только без инициирования опроса), и ничто иное как потоковое получение данных в любой момент времени, с которыми вы можете делать скриптом все, что захочется. Рассуждаю и пытаюсь для себя понять (на будушее). СИ различает импульсы 10кГц! продукция с такой частотой счета не выпускается. Почему бы не сбрасывая СИ, просто считывать с него через нужный период состояние аккумулятора и обработать математикой?
Взгляд со стороны - это всегда только плюс. То, что прибор может считать продукцию очень быстро это да, но сама SCADA не будет успевать получать данные с него с такой частотой. Т.е. когда она получит данные в канал и выполнит скрипт, в котором есть обнуление счетчика, есть вероятность, что счетчик еще увеличится, а система сбросит это значение и оно не будет учтено. Но если бы можно было опрашивать прибор прямиком из скрипта, то данные для учета перед сбросом были бы актуальными.
А так выход - сбрасывать значение счетчика при условии, что линия приостановлена или что-то вроде того.
Так понимаю, что вам не хватает разрядности счетчика, а счет ведется на единицы при высокой интенсивности выпуска. Смотрю на руководство СИ. Там есть тек знач счетчика и тек знач в физ единицах. Их можно считывать. Чем отличаются эти параметры и принцип преобразования не написано или не разглядел.Однозначно, вам надо пользоваться внутренним сбросом счетчика и его множителем. Подумаю.
Олег, просматривал сейчас вебинар ОВЕН по ПР103. Там быстрые входы до 100кГц с настройкой работы, как с энкодером, так и с подсчетом импульсов, да с автосбросом. Слов нет. Стоит 9900 против 5800 для СИ30. Но запихнуть в неё можно очень много. Просто ваша проблема в голове стала крутиться, когда речь зашла о подсчете импульсов. Тем не менее попробу разобраться и с СИ30. Успехов.
Интересная вещь этот пр103. СИ30 уже заказаны, так что буду на них собирать. Но Вам спасибо за информацию)
Сервис поддержки клиентов работает на платформе UserEcho
День добрый.
На вскидку пару вариантов: 1. Завести несколько виртуальных каналов, и скриптом раскладывать в них входное значение счетчика соответственно по дням, месяцам и т.д. 2. Хранить так как есть нараставшим итогом, а далее формировать отчет соответственно по суткам месяцам и т.д.