PDA

Просмотр полной версии : просьба помочь с подключением



Alex74
06.11.2008, 21:31
У нас есть ультрозвуковой счетчик с импульсным выходом. Импульсный сигнал проявляется в виде замыкания цепи оптоэлектронным ключем.
Максимальная частота 1 КГц. Комутируемое напряжение не более 25 В постоянного тока. Ток через ключ не более 10 мА.
Как правильно подключить данный импульсный сигнал к контроллеру ПЛК-100-220-Р.

Sniper007
06.11.2008, 21:41
А какие проблемы?
Если выход n-p-n то по типовой схеме. Если p-n-p то надо переходничок сварганить

Alex74
06.11.2008, 21:44
Спасибо что откликнулись. В описании счетчика не описания выхода по структуре. Там только два контакта + и -, а в описании контроллера три

Sniper007
06.11.2008, 22:03
Стоп-Стоп...
Ультразвуковой датчик. Значит по любому должно быть три провода (как минимум, а то и четыре), два питающих и один (или два) выходы.
Или вы имеете ввиду что выходных провода два (а в сумме четыре)? + и -? Тогда догадываюсь...
Есть какое нибудь название у датчика? На шильде написано что нибудь?
Или хоть фото приложите.

Alex74
06.11.2008, 22:14
во вложенном файле схема подключения от описания счетчика

Alex74
06.11.2008, 22:17
только это счетчик, а не датчик. И у этого счетчика есть электронный блок а на нем импульсный выход, но я так понимаю его надо подпитывать напряжением 24 В через сопротивление. Но на входе в контроллер уже есть напряжение вот я и запутался как его подсоединить.

Sniper007
07.11.2008, 08:10
Во всех счетчиках внутри ставится оптрон (в механических - геркон0 который открывается на короткое время при достижении определенного значения счетчика.
Резистор R1 в данной схеме скорее всего просто ограничительный, чтобы пользователь не перегрузил выход.
Скорее всего IMP- это эммитер оптрона, IMP+ это коллектор оптрона. Поэтому для подсоединения к ПЛК100 вам нужно IMP- подсоединить к клемме 0,а IMP+ к нужному вам входу. Никаких резисторов не нужно - источник тока есть в ПЛК.

Alex74
08.11.2008, 12:22
Спасибо за помощь. А как правильно получить значения дапустим в 380 Гц на контроллер с этого импульсного выхода. Я так понял надо создать Counter 16bit в конфигураторе и прописать переменную. А как правильно их потом просуммировать.

Sniper007
08.11.2008, 14:38
Я не пойму это счетчик или расходомер? Или это счетчик а на частотный выход идет частота пропорциональная значению расхода?
Ну если это все таки расходомер, а вам нужно узнать сколько всего продукта протекло, то нужно сделать так.
Ну правильно сказали подмодуль Counter (либо можно использовать счетчик из библиотеки Codesys - 380 Гц не такая большая частота). Суммируете значенения до сигнала таймера. Значение таймера - 1 секунда можно больше, можно меньше в зависимости от того с какой скоростью меняется расход продукта в продуктопроводе.
Дальше делаем примерно так. Допустим 500 Гц это 5 литров чистого спирта в минуту, тогда 380 Гц это раход равный 3.8 литра в минуту. Нам нужно узнать сколько выпустим спирта на рынок РФ за час.
3.8 литра в минуту это 0.0633334 литра в секунду. Кладем это значение в некую переменную.
Следущее измеренное значение суммируем с этой переменной. Через 3600 суммирований получим сколько ушло спирта.
Ну вот как то так.

Я вас не сразу понял. Просто бывают счетчики которые имеют имульсный выход. Прошло допустим через него 10 литров воды или 1 КВТ он сформировал короткий импульс.

Alex74
08.11.2008, 17:26
Это расходомер у которого есть импульсный выход пропорциональный расходу. Т. е. максимальный расход равен 1000 Гц. Сложность в том, что в описании написано что Counter обновляется каждый цикл ПЛК. А цикл маленький. Нужно переменную отуда записать наверное в глобальную.

Sniper007
08.11.2008, 18:28
Ну да и что такого?
Заводите переменную, называете допустим summ_count.
Прописываете summ_count:=0, запускаете таймер, пока таймер ведет отчет каждый цикл суммируете значение на счетчике с переменную summ_count.
summ_count:=summ_count+counter;
Если таймер был равен 1 секунде то получите частоту. Что дальше я писал.
Могу написать конечно как это в Кодесус делается, но вроде все просто.

Если вас смущает, то что цикл допустим 1 мс (то есть 1000 раз в секунду), а расход может быть на уровне 100 Гц, то это ничего страшного.
Т.е. допустим расход 10%, т.е 100 Гц. А цикл выполенения 1 мс. Значит в счетчик будет поступить число 1 только каждый 10 цикл, а 9 циклов counter=0.
Просто в некоторые циклы в счетчик ничего прописано не будет, и значение summ_count не будет изменятся, но количество импульсов все равно будет подсчитано верно.

Alex74
09.11.2008, 11:38
Спасибо за помощь. В понедельник буду на объекте попробую подключиться через импульсный выход. И если можно последний вопрос. Как правильно настроить фильтр в данном случае в конфигураторе. Я так понимаю что на вход лучше поставить -1, чтобы вообще отключить фильтр.

Sniper007
10.11.2008, 08:02
Поставьте значение равное 0.0008 сек, то есть 8. Совсем отключать не стоит