Sfera-perm.ru

Сфера Пермь
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Запуск счетчика по импульсу

Запуск счетчика по импульсу

Всем привет. Нашёл на сайте
http://samodelkyn.ucoz.ru/index/0-78
данную статью. Перед началом конструирования, хотел бы проконсультироваться, собирал ли кто такое устройство? Сильные ли помехи идут в сеть? Результаты эксплуатации. И стоит ли его собирать?
Устройство предназначено для питания бытовых потребителей переменным током. Номинальное напряжение 220 В, мощность потребления 1 кВт. Применение других элементов позволяет использовать устройство для питания более мощных потребителей.

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

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

Основными элементами являются силовой выпрямитель Br1, конденсатор C1 и транзисторный ключ T1. Конденсатор С1 включен последовательно в цепь питания выпрямителя Br1, поэтому в моменты времени, когда Br1 нагружен на открытый транзистор Т1, заряжается до мгновенной величины сетевого напряжения, соответствующей данному моменту времени.
Заряд производится импульсами с частотой 2 кГц. Напряжение на С1, а также на подключенной параллельно ему нагрузке по форме близко к синусоидальному с действующим значением 220 В. Для ограничения импульсного тока через транзистор Т1 во время заряда конденсатора, служит резистор R6, включенный последовательно с ключевым каскадом
На логических элементах DD1, DD2 собран задающий генератор. Он формирует импульсы частотой 2 кГц амплитудой 5В. Частота сигнала на выходе генератора и скважность импульсов определяются параметрами времязадающих цепей С2-R7 и C3-R8. Эти параметры могут подбираться при настройке для обеспечения наибольшей погрешности учета электроэнергии. На транзисторах Т2 и Т3 построен формирователь импульсов, предназначенный для управления мощным ключевым транзистором Т1. Формирователь рассчитан таким образом, чтобы Т1 в открытом состоянии входил в режим насыщения и за счет этого на нем рассеивалась меньшая мощность. Естественно, Т1 также должен полностью закрываться.
Трансформатор Tr1, выпрямитель Br2 и следующие за ними элементы представляют собой источник питания низковольтной части схемы. Этот источник обеспечивает питанием 36В формирователь импульсов и 5В для питания микросхемы генератора.

Микросхема: DD1, DD2 — К155ЛА3. Диоды: Br1 – Д232А; Br2 — Д242Б; D1 – Д226Б. Стабилитрон: D2 – КС156А. Транзисторы: Т1 – КТ848А, Т2 – КТ815В, Т3 – КТ315. Т1 и Т2 устанавливаются на радиаторе площадью не менее 150 см2 . Транзисторы устанавливаются на изолирующих прокладках. Конденсаторы электролитические: С1- 10 мкФ Ч 400В; С4 — 1000 мкФ Ч 50В; С5 — 1000 мкФ Ч 16В; Конденсаторы высокочастотные: С2, С3 – 0.1 мкФ. Резисторы: R1, R2 – 27 кОм; R3 – 56 Ом; R4 – 3 кОм; R5 -22 кОм; R6 – 10 Ом; R7, R8 – 1.5 кОм; R9 – 560 Ом. Резисторы R3, R6 – проволочные мощностью не менее 10 Вт, R9 — типа МЛТ-2, остальные резисторы – МЛТ-0.25. Трансформатор Tr1 – любой маломощный 220/36 В.

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

Вначале проверяют отдельно от схемы низковольтный блок питания. Он должен обеспечивать ток не менее 2 А на выходе 36 В, а также 5 В для питания маломощного генератора.
Затем налаживают генератор, отключив силовую часть схемы от электросети. Генератор должен формировать импульсы амплитудой 5 В и частотой около 2 кГц. Скважность импульсов приблизительно 1/1. При необходимости для этого подбирают конденсаторы С2, С3 или резисторы R7, R8.
Формирователь импульсов на транзисторах Т2 и Т3, если правильно собран, обычно наладки не требует. Но желательно убедиться, что он способен обеспечить импульсный ток базы транзистора Т1 на уровне 1.5 – 2 А. Если такое значение тока не обеспечить, транзистор Т1 не будет в открытом состоянии входить в режим насыщения и сгорит за несколько секунд. Для проверки этого режима можно при отключенной силовой части схемы и отключенной базе транзистора Т1, вместо резистора R1 включить шунт сопротивлением в несколько Ом. Импульсное напряжение на шунте при включенном генераторе регистрируют осциллографом и пересчитывают на значение тока. При необходимости подбирают сопротивления резисторов R2, R3 и R4.
Следующей стадией является проверка силовой части. Для этого восстанавливают все соединения в схеме. Конденсатор С1 временно отключают, а в качестве нагрузки используют потребитель малой мощности, например лампу накаливания мощностью до 100 Вт. При включении устройства в электрическую сеть действующее значение напряжения на нагрузке должно быть на уровне 100 – 130 В. Осциллограммы напряжения на нагрузке и на резисторе R6 должны показать, что питание её производится импульсами с частотой, задаваемой генератором. На нагрузке серия импульсов будет модулирована синусоидой сетевого напряжения, а на резисторе R6 – пульсирующим выпрямленным напряжением.
Если всё исправно, подключают конденсатор С1, только вначале емкость его принимают в несколько раз меньше номинальной (например 0.1 мкФ). Действующее напряжение на нагрузке заметно возрастает и при последующем увеличении емкости С1 достигает 220 В. При этом очень важно внимательно следить за температурой транзистора Т1. Если возникает повышенный нагрев при использовании маломощной нагрузки, это свидетельствует о том, что Т1 либо не входит в режим насыщения в открытом состоянии, либо полностью не закрывается. В этом случае следует вернуться к настройке формирователя импульсов. Эксперименты показывают, что при питании нагрузки мощностью 100 Вт без конденсатора С1, транзистор Т1 в течение длительного времени не нагревается даже без радиатора.
В заключении подключается номинальная нагрузка и подбирается емкость С1 такая, чтобы обеспечить питание нагрузки напряжением 220 В. Емкость С1 следует подбирать осторожно, начиная с малых значений, так как увеличение емкости резко увеличивает импульсный ток через транзистор Т1. Об амплитуде импульсов тока через Т1 можно судить, подключив осциллограф параллельно резистору R6. Импульсный ток должен быть не более допустимого для выбранного транзистора (20 А для КТ848А). В случае необходимости его ограничивают, увеличивая сопротивление R6, но лучше остановиться на меньшем значении емкости С1.
При указанных деталях устройство рассчитано на нагрузку 1 кВт. Применяя другие элементы силового выпрямителя и транзисторный ключ соответствующей мощности, можно питать и более мощные потребители. Обращаем Ваше внимание на то, что при отключенной нагрузке устройство потребляет из сети довольно большую мощность, которая учитывается счетчиком. Поэтому рекомендуется всегда нагружать устройство номинальной нагрузкой, а также отключать при снятии нагрузки.

Читайте так же:
Как поставить счетчик гвс

Здесь был вложен файл: 49697688.gif (24.0 Кб), но к сожалению был утерян. Если он у Вас есть, свяжитесь с администрацией для его восстановления. Спасибо.

Знакомство с Altera Max II: генератор, счётчик, светодиод.

Продолжаю рассказывать о программировании ПЛИС Altera Max II. В этот раз речь о том, как сделать аналог заводской прошивки — простой мигалки светодиодом на отладочной плате с чипом EPM240T100C5N. В конце статьи прикреплён архив с описанным проектом.

Итак, на моей плате один светодиод, который висит на 77-й ноге. План таков: запускаем внутренний генератор на 5,56 МГц, импульсы делим счётчиком и подаём на светодиод. Для новичка это легко сказать, но где искать и как настраивать компоненты по Квартусу — не всегда очевидно.

Генератор

В правой панели, где IP Catalog, в Library открываем Basic Functions, а в них — I/O. Там будет MAX II/MAX V oscillator. Двойной щелчок запустит процесс, где сначала нужно будет указать, под каким именем сохранить будущий результат (oscillator вполне подойдёт), а затем появится мастер, в котором по умолчанию частота уже будет 5,56, останется только протыкать мастера до конца, а затем ответить, что полученный результат нужно включить в проект (можно выбрать галочку, чтоб всё, что делается из IP Catalog’а, автоматически добавлялось, хотя с этим лучше не торопиться). Теперь наш гена появится в перечне Symbol Tool, когда будем рисовать диаграмму.

Счётчик

Также достаётся из каталога: Basic Functions — Arithmetic — LPM_COUNTER. Также по двойному щелчку в мастере нужно будет указать:

  • разрядность счётчика;
  • модуль делителя;
  • дополнительный вывод.

Частота генератора — 5560000, значит разрядность нужно брать такую, чтобы число, на которое мы хотим разделить, поместилось в разряды. Например, разрядности 23 будет достаточно, если на выходе захочется получить 1 или 2 Гц (делить нужно на 5560000 или 2780000). Получим 2 23 =8388608, что даже с запасом (2 22 =4194304, а этого для получения 1 Гц мало).

Модуль — это делитель. Сделаем, чтобы на выходе было 2 Гц (тогда светодиод будет полсекунды гореть и полсекунды молчать, получится один импульс в секунду длительностью полсекунды): разделим на 2780000.

Ещё нужен дополнительный выход. Дело в том, что сам результат деления нас мало интересует, важно, чтобы где-то на выходе счётчика появилась логическая единица, когда количество входных импульсов достигнет нужной нам величины. Такой выход — признак переполнения счётчика — Carry-out. Включим его.

Читайте так же:
После магнита счетчик крутится рывками

Схема

Теперь осталось набросать схему, назначить входу-выходу конкретные контакты и откомпилировать проект.

Да, в этом месте меня ждала неудача. Светодиод молчал. Причина тому проста: на выходе счётчика единица появляется при достижении заданного значения, но при следующем же импульсе переходит в ноль. Получаем один импульс в полсекунды и шириной меньше микросекунды, т. е. скважностью, равной частоте. А нужно, чтобы светодиод успел погореть! Здесь на помощь пришёл счётный триггер: на вход T подана единица, а на счётный — выход из счётчика. Импульс по переполнению опрокидывает триггер до следующего импульса.

Находится триггер среди прочих символов в разделе primitives — storage и называется tff (T-flip-flop).

Проект целиком прилагаю в архиве. Можно открыть и заглянуть в Assignment Editor: там заданы не только ассоциации ножек, но также указано, что вход подтянут через слабый резистор к питанию (поэтому генератор по умолчанию включен; подав ноль на 99-ю ногу, его можно остановить), а выходной настроен на нагрузку 16 мА.

Интересно, что прошивка занимает всего 35 логических логических элементов ПЛИСины, и в запасе остаются ещё 205.

Запуск счетчика по импульсу

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


Рис. 1.9 Формирователь широкого импульса с использованием триггера Шмитта

Как правило, применяют один из двух методов формирования импульса:

аналоговый или цифровой. Наиболее простым является аналоговый — используется процесс перезаряда конденсатора. Пример такой схемы показан на рис. 1.9. Для правильной работы данного одновибратора необходимо, чтобы дли тельность входного запускающего импульса была достаточно большой, чтобы конденсатор успел полностью разрядиться. После окончания запускающего импульса конденсатор заряжается через резистор до величины напряжения питания. При этом, как только напряжение достигнет U пор — элемент D2.1 переключится. В этом случае длительность выходного импульса (t и ) зависит от номиналов установленных емкости и резистора во времязадающей цепи. Упрощенная формула позволяет ориентировочно рассчитать длительность импульса:

где Е — напряжение питания схемы;
U пор — уровень используемого порога, рис. 1.10, для переключения элемента.

С учетом разброса значений напряжения порога переключения (U пор ) длительность импульса может принимать значения от t мин =0,4RC до t мax =1,11RC. Обычно в одновибраторах используются ЛЭ из одного корпуса (кристалла). В этом случае разброс Unop оказывается незначительным и можно принять t и =0,69RC. Это соотношение используется для определения длительности импульса в большинстве схем, рис. 1.11. 1.18. Эпюры напряжения поясняют процессы формирования выходного импульса. Схемы, показанные на одном рисунке, являются аналогичными по логике работы и имеют ту же самую диаграм му напряжений в контрольных точках.

В отличие от простейшего варианта (рис 1.9) схемы, приведенные на рис. 1.11. 1.14 не чувствительны к длительности входного импульса, из-за чего

Рис. 1.10. Области допустимых уровней сигнала на входе МОП микросхем

Рис. 1.11. Одновибратор с одной времязадающей цепью


Рис. 1.12. Одновибратор на основе RS-триггера

Рис. 1.13. Одновибратор по фронту входного сигнала


Рис. 1.14. Одновибратор

наиболее широко применяются в аппаратуре. Схемам, рис. 1.9, 1.15. 1.17, присуще свойство перезапуска, т. е. если во время формирования выходного импульса появляется очередной запускающий, то отсчет длительности формируемого импульса начнется заново от момента окончания последнего запускающего.

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

Чтобы выходное сопротивление ЛЭ не сказывалось на точности расчета, а также не перегружался выход, резистор R1 должен быть номиналом не менее 10. 20 кОм. Чтобы пренебречь при расчетах емкостью монтажа, минимальная
емкость С1 может быть 200. 600 пФ. Для получения высокой температурной стабильности временного интервала номинал R1 должен быть 5 мкФ. Использование электролитических конденсаторов увеличивает нестабильность временного интервала.

Для уменьшения влияния разброса значений Unop на длительность формируемого импульса можно воспользоваться схемами с двумя времязадающими цепями (рис. 1. 18). Если постоянные времени обеих времязадающих цепей


Рис. 1. 15. Формирователи импульса после окончания действия
запускающего сигнала

одинаковы, то при максимальном разбросе значений Unop от 0, 33Uпит до 0,69Uпит изменение длительности формируемого импульса не превышает 9%.
Выполнение одновибраторов на RS-триггере, рис. 1. 19 и 1. 20, дает возможность иметь два раздельных входа запуска (по переднему фронту импульса), а также сразу получать на выходах прямой импульс и импульс с инверсией. Еще одним преимуществом одновибраторов на RS-триггерах является возможность осуществлять запуск от медленно меняющегося входного напряжения.

Читайте так же:
Наклейки для счетчиков меркурий

Рис 1.16 Формирователи импульсов

Рис 1.17 Формирователи импульсов

Длительность подаваемых на вход S запускающих импульсов должна быть меньше формируемого (режим, когда на входах S и R одновременно присутствует лог. «1», является запрещенным). На входе С длительность запускающего импульса может быть любой. Диод VD1 ускоряет разряд конденсатора через выход триггера и позволяет увеличить частоту запускающих импульсов (его применение уменьшает время восстановления схемы). Длительность формируемых им пульсов составляет приблизительно t и =0,69R1C1. Минимальное значение

Рис. 1.18 Одновибраторы с двумя времязадающими цепями


Рис. 1.19. Ждущие мультивибраторы:

а) на D-триггере; б) на JK-триггере,
в) с повышенной стабильностью при изменении питания

сопротивления R1 ограничено максимально допустимым выходным током триггера Его можно менять в пределах 20 кОм. 10 МОм, при этом длительность импульса будет меняться в 500 раз. Одновременное изменение значений R1 и С1 позволяет регулировать длительности импульсов в пределах четырех порядков.

Рис 1 20. Ждущие мультивибраторы с увеличенной крутизной выходных
импульсов- а) на D-триггере; б) на JK-триггере


Рис 121. Ждущий мультивибратор с повышенной стабильностью

Схема на рис. 1.19в обеспечивает более стабильные импульсы при изменении питающего напряжения (аналогичную схему можно собрать и на JK-триггерах).

Для увеличения крутизны спадов выходных импульсов применяют схемы показанные на рис. 1.20, но в них конденсаторы С1 должны быть неполярными.
При этом длительность генерируемого импульса при тех же значениях RC-цепи, что и в схемах на рис. 1.18, получается примерно в 2 раза больше.

Лучшую стабильность при изменении напряжения питания по сравнению с представленными на рис. 1.19 вариантами обеспечивает схема одновибратора на двух триггерах, рис 1. 21. Кроме того, в этом случае подключение нагрузки не влияет на длительность генерируемых импульсов. Схема состоит из двух одновибраторов, имеющих общий вход запуска, но вырабатывающих на независимых выходах импульсы разной длительности. Импульсы на выходе 5 почти не будут зависеть от напряжения питания

Рис. 1. 22 Схемы формирователей задержанного импульса .

Ждущий универсальный одновибратор можно выполнить на специально предназначенной для этих целей микросхеме (рис 1. 22а). В одном корпусе 564АГ1 (1561АГ1) имеется два одновибратора, обладающих, в зависимости от комбинации управляющих сигналов на входе, свойством обычного запуска по переднему (вход S1) или заднему фронту (S2), а также при необходимости может перезапускаться. Вход R является приоритетным по отношению к осталь ным входам и устанавливает значение сигнала Q=0 (если вход R не используется, то подключается к + U пит ).

Длительность формируемого сигнала (t и , Q=1) задается соответствующей внешней RC-цепью: t и =0,5RC для С>0,01 мкФ. Более точно определить позволяет приводимая в справочнике [Л8] диаграмма.

Рис. 1. 23 Ждущий мультивибратор на триггере с возможностью перезапуска .


Рис. 1. 24 Ждущий мультивибратор с возможностью перезапуска .

Если требуется иметь перезапуск одновибратора на триггере, в случае прихода очередного входного импульса во время формирования интервала, то схема на рис. 1. 23 позволяет увеличить длительность выходного импульса за
счет начала отсчета с момента окончания запускающего сигнала. Аналогичная схема приведена на рис. 1. 24. Когда на входе действует лог. «0», конденсатор заряжен до величины напряжения питания (лог. «1»). При поступлении запускающего импульса с длительностью, достаточной для разряда конденсатора, триггер перебросится и генерирует импульс. Длительность этого импульса, после окончания действия входного сигнала, определяется необходимым временем для заряда конденсатора до уровня лог. «1».

Схема (рис. 1.25), в отличии от вышеприведенной, позволяет получить более крутые фронты у сигнала на выходах триггера Второе преимущество этой схемы заключается в том, что по окончании вырабатываемого импульса конденсатор быстро разряжается через диод от уровня U пор вместо дозаряда до уровня питания (Е) Из-за этого следующий запускающий импульс может быть значительно короче, при сохранении нулевого времени восстановления

Рис. 1.25 Ждущий мультивибратор с повышенной крутизной фронта
выходных импульсов .

Второй метод получения импульса нужной длительности связан с использованием счетчиков — цифровых одновибраторов Их применяют, когда временной интервал должен быть очень большим или предъявляют высокие требования к стабильности формируемого интервала В этом случае минимальная получаемая длительность ограничена только быстродействием используемых элементов, а максимальная длительность может быть любой (в отличие от схем, использующих RC-цепи).

Принцип работы цифрового одновибратора основан на включении триггера входным сигналом и отключении через временной интервал, определяемый коэффициентом пересчета счетчика. Использование в одновибраторе счетчи-
ков с переключаемым коэффициентом деления, рис. 1.26, позволяет получить импульс любой длительности. Микросхема 564ИЕ 15 состоит из пяти вычитающих счетчиков, модули пересчета которых программируются параллельной загрузкой данных в двоичном коде. На загрузку чисел в счетчики требуется три такта, поэтому можно устанавливать коэффициент деления N>3 [Л2].

Читайте так же:
Как установит счетчик посещения блога

В таблице 1.2 приведены максимально возможные коэффициенты деления в зависимости от значения М. При значениях М=0 счет запрещен. Сигнал на входе S управляет режимом периодического (0) и однократного (1) счета. Двоичный код для разных значений модуля М берется из таблицы 1.3 (# — запрет счета, х — любое состояние, лог. «О» или «1»). Общий коэффициент деления микросхемы определяется по формуле

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

Рис. 1. 26 Цифровой одновибратор на программируемом счетчике.

Разработка универсального счетчика импульсов

  • Новости 1С-Битрикс
  • Полезные статьи

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

Оптические датчики и их особенности

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

Рисунок 1. Типы датчиков (И — источник, П — приемник, О — объект).

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

Первый прототип датчика

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

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

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

Второй прототип датчика

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

Второй прототип работал лучше предыдущего — увеличилось расстояние срабатывания и снизились требования к отражающим характеристикам меток. Однако все еще имеется ряд проблем. Во-первых, на низкой скорости движения объектов был замечен пропуск импульсов. Это связано с тем, что схема плавающего порога успевала подстроиться под изменения. Во-вторых, при глянцевой поверхности объекта счетчик давал много ложных срабатываний, так как не хватало гистерезиса. Но поднимать гистерезис бесконечно нельзя, система просто перестанет реагировать на обычные метки. И в-третьих, что самое печальное, в некоторых случаях счетчик ловил пульсацию бюджетного освещения в производственных помещениях.

Третий прототип датчика

В результате проведенных опытов стало понятно, что нельзя обойтись без дополнительной настройки системы, которую можно осуществить только с помощью микроконтроллера. Также для исключения влияния помех от фонового освещения решили добавить модуляцию опорного сигнала и преобразование Фурье на приемнике. Корпус уже был разработан и изготовлен на предыдущих этапах, и нам хотелось вписаться в его габариты. Так выбор пал на практически единственный вариант — STM32G030J6M6 Cortex — M0+ c ADC 2.5Msps в корпусе SOIC-8. Отличное решение для непрерывной обработки данных от АЦП. Общение с микроконтроллером осуществляется по шине I2C.

Читайте так же:
Счетчик mail ru код счетчика

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

В микроконтроллере реализованы генерация сигнала ШИМ, обработка оцифрованных данных и общение по I2C. За генерацию ШИМ отвечает таймер, синхронизированный с АЦП. Данные передаются в память по DMA и обрабатываются по половинам — пока заполняется первая половина буфера, вторая анализируется. Сам алгоритм обработки данных получится следующий:

Рисунок 5. Алгоритм обработки данных

Микрокомпьютер

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

возможность запускать программу на Python 3,

место для пары сетевых библиотек,

интерфейсы Ethernet и Wi-Fi для связи с сервером,

питание по micro USB или PoE,

производительность — не критично,

время включения — не более 2 минут,

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

Сначала мы использовали Orange Pi zero, однако, учитывая их немалые габариты и невозможность нормально сделать PoE, решено было поискать другие варианты. Так взгляд пал на одноплатный компьютер VoCore, характеристики которого полностью подходили под задачу. Изучив предложения на китайском рынке, был найден очень похожий вариант выпускаемый массово — процессор RT5350, 32Mb RAM, 8/16Mb Flash.

Рисунок 6. Одноплатный компьютер VoCore.

Он немного больше, чем оригинальный VoCore, зато под модулем остается место для размещения компонентов, а также у модуля есть удобный разъем для подключения к основной плате. Схематика незначительно отличается от оригинального VoCore, так что конфигурацию от VoCore можно легко адаптировать под китайского товарища.

Конструктив

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

Рисунок 8. Поворотная часть корпуса.

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

Рисунок 9. Основная часть корпуса.

Так как партии пока относительно небольшие корпус изготавливается методом SLS печати.

Итак, в итоге у нас получилась следующая архитектура устройства:

вычислительный модуль (одноплатный компьютер),

основная плата, на которой расположены разъемы Ethernet, USB, I2C, светодиоды и кнопка,

плата питания (устройство может питаться как от microUSB так и от PoE).

Подсчет срабатываний

Теперь пара слов о том, как реализован подсчет срабатываний датчика. Независимо от типа датчика, алгоритм подсчета импульсов остается одинаковым. Выход датчика подключается к GPIO процессора. Количество импульсов подсчитывалось через GPIO interrupt. Для этого требуется настроить GPIO на вход и включить прерывания. Об этом хорошо написано, например, тут. Число срабатываний можно посмотреть командой cat /proc/interrupts | grep gpiolib. Если же требуется реагировать на каждое событие или записывать время его срабатывания, то уже придется написать простую программу. Данный подход хорошо себя зарекомендовал и является необходимым и достаточным источником данных для подобного класса датчиков. В случае датчика с микроконтроллером, нужно перед началом работы загрузить необходимые параметры по I2C.

Заключение

Итак, что мы имеем на выходе? Компактное устройство для подсчета импульсов с оптическим датчиком и готовой реализацией отправки данных на сервер по Ethernet или WiFi. Была реализована передача данных по MQTT. Адаптивная архитектура также позволяет легко подключать практически любой другой датчик по I2C или SPI через переходник. На данный момент имеются такие варианты счетчиков: лазерный с аналоговой обработкой сигналов, лазерный с цифровой обработкой сигналов, а также индукционный счетчик для подключения внешнего промышленного индукционного датчика. Разработанный корпус позволил осуществлять поворот оптического модуля, а также его замену на другой тип датчика. В ближайших планах хотим подключить тепловизионный датчик для мониторинга нагруженных узлов в производстве.

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector