Первые цифровые оптические ультрафиолетовые датчики от silicon labs

Уф объективы, ультрафиолетовые объективы, уф оптика, уф оптические системы

Ультрафиолетовые объективы (УФ-объективы) — оптические системы, работающие в коротковолновой области оптического спектра, в основном это  диапазон 200-400 нм.

            УФ оптика  в последнее время получает все большее распространение в технике, что связано с особенностями излучения объектов и продвижением оптического приборостроения в область гиперспектральных и многоканальных систем.

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

    Расчет и разработка  УФ объективов имеют свою специфику.

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

     УФ объективы, разработка которых выполнена нашими специалистами, находят свое применение   в УФ-камерах для обнаружения коронных разрядов на элементах ЛЭП, что позволяет обнаружить «пробой» и вовремя предотвратить аварию.

    Ультрафиолетовая оптика и ультрафиолетовые объективы на заказ, производимые нашей компанией,   работают в обзорных камерах УФ-диапазона в прицельно-обзорных станциях наземной техники.

По техническому заданию заказчика наша компания также выпускает  оптические узлы для лазерной техники (газовые лазеры, работающие в УФ диапазоне).

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

Это УФ объективы, работающие в глубоком ультрафиолете в диапазоне 200-280 нм и  двухспектральные УФ объективы с  высокой разрешающей способностью и ахроматизованные на широкий спектральный  диапазон от 250 до 650 нм.

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

Источник: https://www.opto-lab.ru/ru/produktsiya-i-uslugi/uf-ob-ektivy/

SiLabs Sensor Puck: два датчика — пять параметров

27 мая 2015 в 13:48 (МСК) | сохранено28 мая 2015 в 15:42 (МСК)<\p> Электроника для начинающих, Разработка для интернета вещейЭтот обзор появился благодаря статьям (раз, два) от abrakada об устройстве пульсометра с Bluetooth. Плата Sensor Puck от Silicon Labs пришла мне на ум ещё при прочтении названия первой статьи.

Причина проста: Sensor Puck — это готовый демонстрационный набор, который, среди прочего, имеет те же функции пульсометра и Bluetooth-приемопередатчика. Когда в конце второй публикации был упомянут датчик Si114x, который как раз установлен на Sensor Puck, уже нельзя было сдержаться и не сделать обзор платы Sensor Puck и датчиков на его борту.

Сразу оговорюсь: плата, описанная ниже – не альтернатива серьезным медицинским или околомедицинским устройствам. Это даже не полноценный отладочный набор, скорее готовый прототип пульсометра (или, например, карманной метеостанции), который полезно «поковырять» для уменьшения количества велосипедов в собственном проекте.

Итак, миниатюрная плата Sensor Puck появилась на волне популяризации портативных устройств вроде фитнес-браслетов, умных часов, да и вообще Internet Of Things. Плата работает в паре с мобильным приложением.

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

  • температура окружающего воздуха, °C / F
  • относительная влажность окружающего воздуха, %
  • освещенность, lux
  • УФ-индекс (UV index)
  • если к контактной площадке приложен палец, частота сердцебиения, BPM

Мобильное приложение доступно для смартфонов и планшетов Apple c iOS 7 или выше, а также для Android-девайсов с версией ОС 4.3 и выше. Устройство, естественно, должно поддерживать Bluetooth 4.0. Приложение ищется по запросу “Silicon Labs Sensor Puck”, файл .apk доступен и по прямой ссылке.
В версии приложения для iOS доступно только главное окно приложения со значениями измеряемых показателей и пара вспомогательных функций, например, для работы с несколькими платами одновременно. В Android-версии доступен дополнительный biometric screen – экран с кардиограммой псевдокардиограммой. Точности и стабильности работы пульсометра не хватит для серьезных задач (или я неправильно палец прикладываю?), хотя для игрушек вроде Nikon-овской камеры для собак должно отлично подойти.На плате расположены датчик температуры и относительной влажности Si7021 и оптический датчик Si1147. Оба поддерживают интерфейс I2C, средствами которого и «общаются» с микроконтроллером. Для обмена информацией со смартфоном используется модуль Bluetooth Low Energy, он взаимодействует с контроллером через интерфейс LEUART (Low Energy UART). Приемопередатчик расположен на оборотной стороне платы, там же установлен разъем для батарейки CR2032. Описанная система управляется малопотребляющим микроконтроллером EFM32G210. Для управления питанием служит повышающий DC/DC преобразователь TS3310.Функциональность мобильного приложения сводится к поддержанию канала связи с платой / платами Sensor Puck и отображению результатов измерений. Как говорилось выше, Sensor Puck правильнее назвать демо-платой, а не отладочным комплектом. Чтобы получить готовую-модную-портативную систему достаточно получить комплект в руки, включить питание платы и запустить приложение на телефоне или планшете. Но чтобы использовать SiLabs Sensor Puck для разработки, придется заиметь дополнительный отладчик, т.к. на плате а) отсутствует интегрированный J-link или что-то подобное, б) выведен только «сокращенный» 9-выводный отладочный интерфейс.

Сам SiLabs предлагает использовать связку [Плата Sensor Puck] [Адаптер J-Link 9-pin Cortex-M для перехода на 20-выводный разъем] [Любая отладочная плата для EFM32 starter kit в качестве отладчика (во все киты встроены J-Link и 20-выводный отладочный разъем)]. В качестве программного обеспечения предлагается Simplicity IDE, которая входит в состав программной платформы Simplicity Studio. Она бесплатная и имеет разные специальные плюшки для малопотребляющих EFM32, например вот эту.

Однако подойдут и другие программаторы-отладчики с поддержкой интерфейса SWD. В порядке эксперимента, наряду с первым вариантом, был опробован программатор-отладчик I-jet в паре со средой IAR. Полёт нормальный.

Использование «сторонних» средств разработки облегчается тем, что все проекты для МК EFM32, включая оригинальный проект для Sensor Puck, портированы производителем на IAR / keil / Atollic / Rowley – кому что больше нравится. Теперь, собственно, о датчиках.

Оптические датчики Si11xx — это интегральные микросхемы размером 2 x 2 мм (!), предназначенные для выполнения одной или нескольких функций из следующего списка:

  • детектирование приближения;
  • детектирование движений объекта (жестов руки или пальца) по одной оси, в 2D или в 3D.
  • детектирование уровня освещенности;
  • детектирование уровня ультрафиолета с автоматическим расчетом УФ-индекса;

компоненты, входящие в состав микросхемы Si1147 ограничены пунктирной линией

Все датчики поддерживают интерфейс I2C для обмена данными с другими узлами системы.

Посмотреть на протокол и управляющие регистры можно в разделе Programming Guide документации, на реализацию взаимодействия с хостом (микроконтроллером) — в исходниках Sensor Puck или другого демо-проекта.

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

Активные датчики, в отличие от пассивных, используют не излучение объекта, а измеряют характеристики отраженного от объекта излучения. Такая конфигурация подходит для детектирования объектов несложной формы на расстоянии до 50 см от датчика. Для более сложных задач, например, для детектирования жестов, используются дополнительные светодиоды.

На различных микросхемах Si114x доступно от 1 до 3 драйверов светодиодов. Количество и расположение дополнительных светодиодов относительно микросхемы датчика выбираются в зависимости от характеристик объекта, требуемой дальности измерений и др. Так, с использованием трех «внешних» светодиодов, можно реализовать детектирование движения, например, руки, в трех осях.

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

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

Отклик фотодиодов в зависимости от длины волны
УФ-индекс, который вычисляется на некоторых датчиках линейки Si114x — это коэффициент, выражающий интенсивность влияния солнца на человека. Он линейно зависит от интенсивности солнечного света, достигающего земли. УФ-индекс является стандартом ВОЗ и используется для определения степени опасности солнечного излучения.

Таблица УФ-индекс – уровень воздействия

Уровень солнечного воздействия Значение УФ-индекса
низкий 2 и менее
средний (требуется защита) 3-5
высокий (требуется защита) 6-7
очень высокий (требуется повышенная защита) 8-10
экстремальный (требуется повышенная защита) 11 и более

Если вернуться к задачам пульсометрии, то нужно сказать что возможностей датчика хватит и для работы на просвет, и для работы на отражение. Очевидно на Sensor Puck используется принцип отражения с использованием встроенного инфракрасного светодиода, поэтому вменяемые результаты получаются только при измерении частоты сердцебиения (BPM, beats per minute). По хорошему, с использованием инфракрасного, зеленого и желтого светодиодов можно снимать кардиограмму с приемлемым качеством.В биометрических приложениях на оптических датчиках Si114x используются и другие свойства кожи и крови. Например, насыщенность крови кислородом можно измерить благодаря разнице в поглощении красного и инфракрасного света кровью, насыщенной и ненасыщенной кислородом. Оксигенированный гемоглобин больше абсорбирует инфракрасный свет, деоксигенированный гемоглобин больше абсорбирует красный свет — для получения разницы между понадобится две пары светодиод-фотодиод.
Для измерения температуры и влажности в различных областях техники используются компоненты самой разной природы, история измерительных приборов — дело довольно увлекательное. Цифровые (полупроводниковые) датчики температуры / температуры и относительной влажности используются в приложениях, не предполагающих экстремальных температур и условий использования, и не требующих повышенной точности измерений. Если говорить коротко, для приложений типа умных часов и браслетов миниатюрные и недорогие ($4-5 в розницу) цифровые датчики подходят лучше термисторов, термопар и т.п. Датчик Si7021, также как оптический Si1147, вполне оправдывает название Интегральная микросхема. В составе кристалла два датчика (имеются в виду первичные преобразователи), АЦП, управляющая логика, энергонезависимая память, содержащая калибровочные значения, и I2C интерфейс.Типовая погрешность при измерении относительной влажности составляет ±2%, при измерении температуры — ±0.3 °С, максимальные значения погрешностей чуть выше: ±3% RH и ±0.4 °С. Заводская калибровка и интерфейс I2C решают проблемы с управлением и настройкой датчика. Но главная сложность в использовании подобных компонентов — защита от внешних воздействий при эксплуатации и от высоких температур при пайке. Эта сложность связана с природой датчика: для измерения уровня влажности используется полимерная пленка между двух диэлектриков. При увеличении количества водяного пара в воздухе (а значит на диэлектрике) изменяется её диэлектрическая проницаемость (Er). Изменение Er в диапазоне от 3.0 до 4.0 пропорционально изменению относительной влажности от 0 до 100%. Чтобы влажность воздуха соответствовала влажности на чувствительной пленке корпус микросхемы фактически содержит отверстие. Эта «уязвимость» может быть частично исправлена установкой защитной пленки (Si70219 поставляется как раз с предустановленным защитным фильтром). Роль фильтра выполняет мембрана, пропускающая водяной пар, но защищающая от загрязнения и других воздействий. В документации также упоминается защита от конденсата на поверхности датчика — некий on-chip heater. Пайку микросхем Si70xx производитель рекомендует производить с использованием печи конвекционного оплавления с использованием бессмывного флюса — тут защитный фильтр помочь не сможет. Окончательно отвлекаясь от пульсометрии и платы Sensor Puck, добавлю несколько слов о том, почему температура и влажность измеряются совместно. Во-первых, удобно, когда на плате один компонент вместо двух 🙂 Но главное — прямая зависимость относительной влажности от температуры. Напомню, относительная влажность — это процентное содержание водяных паров в воздухе, причем 0% — отсутствие этого пара, а 100% — полное насыщение. Точка насыщения, она же точка росы и точка конденсации не является постоянной величиной, изменяясь от температуры, а также от давления и состава воздуха. Взаимозависимость температуры и влажности требует их измерения в одной точке и использования схем температурной компенсации. Нестабильность точки росы влечет типовую погрешность измерений, которая упоминалась выше. Поскольку ощущение температуры человеком, свойства материалов, например, дерева или продуктов питания, зависят от пары температура-влажность, в приложениях связанных с климат-контролем чаще всего и требуется одновременное измерение обоих параметров. Если вы грезите разработкой устройств для умного дома, носимых девайсов, и вообще любых штуковин на базе датчиков, имеет смысл дважды проверить какие интегральные решения существуют на современном рынке. Если к устройству не предъявляется нестандартных требований вроде работы в -70 °С, под водой, над открытым огнем, если не требуется точность измерения до десятых градуса или что-то подобное, то велика вероятность, что ваша схема уже упакована в корпус площадью 4 мм⊃2; и стоит пять баксов.

Всем спасибо за внимание и удачи!

Источник статей: Хабр.

Время указано в том часовом поясе, который установлен на Вашем устройстве.

Версия сайта: 0.8.
Об ошибках, предложениях, пожалуйста, сообщайте через Telegram пользователю @leenr, по e-mail i@leenr.ru или с помощью других способов связаться.

Источник: https://sohabr.net/habr/post/258839/

Первые цифровые оптические ультрафиолетовые датчики от Silicon Labs

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

Компания Silicon Labs впервые объединила все вышеуказанные функциональные блоки в один чип размером 2 мм x 2 мм, который помогает снизить размер разрабатываемой конструкции и уменьшить стоимость материалов.

Семейство ультрафиолетовых датчиков включает следующие устройства:

  • Si1132 UV – индексный датчик определения внешней освещенности со стандартным интерфейсом I2C для чтения показаний индексных значений ультрафиолетового излечения
  • Si1145/46/47 – датчик приближения ультрафиолетового и инфракрасного/внешнего освещения с одним, двумя или тремя светодиодными драйверами с 15 выбираемыми уровнями управления для распознавания жестов.

Совместно с акселерометрами, датчики Si1132 и Si114x позволяют разработчикам внедрить отслеживание перехода в дежурный режим для носимых устройств.

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

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

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

Надежная архитектура распознавания обеспечивает определение уровня света до 128 килолюкс.

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

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

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

Оценочный комплект UVIrSlider2EK UV/IR является улучшенной платформой разработки для оптических датчиков компании Silicon Labs.

Комплект имеет микроконтроллер C8051F800 с ультранизким энергопотреблением, и позволяет подключить датчик Si1146 с двумя инфракрасными светодиодами, обеспечивая индексное измерение ультрафиолетового излучения, улучшенное бесконтактное 2D/2-осевое распознавание жестов и определение приближения объекта.

Цена и доступность

Опытные образцы и производственные партии ультрафиолетовых датчиков Si1132 и Si114x UV компании Silicon Labs доступны в 10-выводном корпусе QFN размером 2 мм x 2 мм. Цена датчика Si1132 составляет $1.10, датчика Si114x $1.32 в партиях от 10 000 штук соответственно. Цена оценочного комплекта UVIrSlider2EK составляет $50 (USD MSRP).

Источник новости

Источник: http://el-mir.blogspot.com/2014/02/silicon-labs.html

Демонстрационный набор для изучения датчиков от Silicon LaboratoriesВсе новости

SENSOR-PUCK – демонстрационный набор для изучения возможностей датчиков и микроконтроллера от Silicon Laboratories.

Благодаря наличию на плате Bluetooth модуля все данные, поступающие от датчиков, можно отображать на мобильных телефонах и планшетных компьютерах с операционными системами Android и iOS, поддерживающих технологию BLE (Bluetooth Low Energy), на которые заранее установлено приложение Silicon Labs Sensor Puck.

Плата включает в себя оптический датчик Si1147-M01, датчик влажности и температуры Si7021, микроконтроллер с ультранизким энергопотреблением EFM32G210 “Gecko” и беспроводной Bluetooth модуль. При использовании режима широковещательной передачи можно собирать данные с нескольких модулей одновременно.

Модуль поддерживает два режима работы: экологический режим и биометрический режим.

Экологический режим:

  • измеряет уровень освещения, ультрафиолетовый индекс, температуру и влажность окружающей среды;
  • режим работы по умолчанию, с наименьшим энергопотреблением;
  • измерение и передача данных производится один раз в секунду;
  • светодиод мигает зеленым цветом один раз за цикл измерения;
  • потребление тока от батареи примерно 1,5 мА; это говорит о том, что при питании от стандартной батареи CR2032 устройство будет работать примерно 5 дней.

Биометрический режим:

  • те же измерения, что и в экологическом режиме, а также дополнительно проверяется наличие объекта над Si1147-M01; если объект присутствует, начинается измерение частоты сердечных сокращений;
  • измерение частоты сердечных сокращений производится за счет отражения инфракрасного света, излучаемого ИК светодиодом, расположенного внутри Si1147-M01;
  • для измерения частоты сердечных сокращений необходимо, чтобы свет отразился от кончика пальца, поднесенного к датчику;
  • энергопотребление увеличивается до 7 мА, при этом срок службы батареи снижается до одного дня;
  • светодиод мигает красным цветом во время измерения частоты сердечных сокращений; при завершении измерения светодиод начнет мигать зеленым;
  • для уменьшения энергопотребления SENSOR-PUCK выходит из биометрического режима через 90 секунд после начала его работы.

Отличительные особенности:

  • микроконтроллер EFM32G210;
  • оптический датчик Si1147-M01;
  • датчик влажности и температуры Si7021;
  • Bluetooth модуль;
  • взаимодействие с операционными системами Androidи iOS.

Источник: https://www.einfo.ru/news/id-20599.html

Биометрия от Silicon Labs. Обзор средств разработки

Компания Silicon Labs активно продвигает сейчас решения для биометрии, связанные с биометрией — конкретно, фронтэнды для фотоплетизмографии на отражение — это линейка микросхем Si114x и конкретно Si1143/Si1144. Для этих целей предлагается ряд отладочных наборов, который и будет рассмотрен в данной статье.

Семейство микросхем Si114x и  Si1143/Si1144 для фотоплетизмографии

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

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

Всего отладочных средств для фотоплетизмографии от Silicon Labs  на сегодняшний момент четыре:

  1. Sensor Puck — плата с BLE интерфейсом, микросхемами для мониторинга окружающей среды и оптическим сенсором, в том числе позволяющим снимать фотоплетизмограмму с пальца при помощи микросхемы Si1147-M01.
  2. BIOMETRIC-EXP-EVB — плата-расширение для отладочной платы EFM32 Wonder Gecko STK (STK-3800), позволяющая мониторить окружающую среду, а также получать фотоплетизмограмму с пальца с помощью микросхемы Si1146-A10-GMR.
  3. HRM43-GGG-PS — плата, подключаемая гибким кабелем к BIOMETRIC-EXP-EVB, основанная на микросхеме Si1143-AAGX-GM без встроенного алгоритма определения сердцебиения, предназначенной для снятия фотоплетизмограммы с запястья.
  4. HRM44-GGG-PS — плата, подключаемая гибким кабелем к BIOMETRIC-EXP-EVB, основанная на микросхеме Si1144-AAGX-GM со встроенным алгоритмом определения сердцебиения, предназначенной для снятия фотоплетизмограммы с запястья.

Также одно время на Mouser был представлены отладочные наборы HRM-GGG-PS, основанные на микросхемах Si1143-A10, Si1143-M01, но сейчас их уже нет на рынке.

Sensor Puck

Данный отладочный набор позволяет снимать фотоплетизмограмму с пальца. Данные передаются на смартфон под управлением Android или iOS посредством Bluetooth Smart. На самом деле, плата работает как маячок и не требует вспаривания и ввода пин-кода.

Производитель предоставляет демонстрационное приложение и исходные коды.

BIOMETRIC-EXP-EVB

Представляет собой плату расширения, подключаемую к семейству отладочных плат EFM32 STK.

Фотоплетизмограмма снимается с пальца на отражение. Если палец не поднесен — измеряются параметры окружающей среды.

Производитель предоставляет демонстрационный проект с исходными кодами.

HRM43-GGG-PS

Основан на микросхеме Si1143-AAGX-GM без встроенного алгоритма определения сердцебиения. На рынке не доступен. Информации очень мало. Микросхема и отладочный набор предоставляются при подписании NDA и с ожидаемой партией в 50 000 микросхем.

HRM44-GGG-PS

Основан на микросхеме Si1144-AAGX-GM со встроенным алгоритмом определения сердцебиения. На рынке не доступен. Микросхема и отладочный набор предоставляются при подписании NDA и с ожидаемой партией в 50 000 микросхем.

Заключение

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

Так или иначе, на сегодняшний день нет доступных альтернатив линейке фронтендов для биометрии Texas Instruments AFE44xx.

Ссылки

Сохранить

Сохранить

Источник: http://lab409.ru/biometria_silicon_labs/

Ссылка на основную публикацию
Adblock
detector
",css:{backgroundColor:"#000",opacity:.6}},container:{block:void 0,tpl:"
"},wrap:void 0,body:void 0,errors:{tpl:"
",autoclose_delay:2e3,ajax_unsuccessful_load:"Error"},openEffect:{type:"fade",speed:400},closeEffect:{type:"fade",speed:400},beforeOpen:n.noop,afterOpen:n.noop,beforeClose:n.noop,afterClose:n.noop,afterLoading:n.noop,afterLoadingOnShow:n.noop,errorLoading:n.noop},o=0,p=n([]),h={isEventOut:function(a,b){var c=!0;return n(a).each(function(){n(b.target).get(0)==n(this).get(0)&&(c=!1),0==n(b.target).closest("HTML",n(this).get(0)).length&&(c=!1)}),c}},q={getParentEl:function(a){var b=n(a);return b.data("arcticmodal")?b:(b=n(a).closest(".arcticmodal-container").data("arcticmodalParentEl"),!!b&&b)},transition:function(a,b,c,d){switch(d=null==d?n.noop:d,c.type){case"fade":"show"==b?a.fadeIn(c.speed,d):a.fadeOut(c.speed,d);break;case"none":"show"==b?a.show():a.hide(),d();}},prepare_body:function(a,b){n(".arcticmodal-close",a.body).unbind("click.arcticmodal").bind("click.arcticmodal",function(){return b.arcticmodal("close"),!1})},init_el:function(d,a){var b=d.data("arcticmodal");if(!b){if(b=a,o++,b.modalID=o,b.overlay.block=n(b.overlay.tpl),b.overlay.block.css(b.overlay.css),b.container.block=n(b.container.tpl),b.body=n(".arcticmodal-container_i2",b.container.block),a.clone?b.body.html(d.clone(!0)):(d.before("
"),b.body.html(d)),q.prepare_body(b,d),b.closeOnOverlayClick&&b.overlay.block.add(b.container.block).click(function(a){h.isEventOut(n(">*",b.body),a)&&d.arcticmodal("close")}),b.container.block.data("arcticmodalParentEl",d),d.data("arcticmodal",b),p=n.merge(p,d),n.proxy(e.show,d)(),"html"==b.type)return d;if(null!=b.ajax.beforeSend){var c=b.ajax.beforeSend;delete b.ajax.beforeSend}if(null!=b.ajax.success){var f=b.ajax.success;delete b.ajax.success}if(null!=b.ajax.error){var g=b.ajax.error;delete b.ajax.error}var j=n.extend(!0,{url:b.url,beforeSend:function(){null==c?b.body.html("
"):c(b,d)},success:function(c){d.trigger("afterLoading"),b.afterLoading(b,d,c),null==f?b.body.html(c):f(b,d,c),q.prepare_body(b,d),d.trigger("afterLoadingOnShow"),b.afterLoadingOnShow(b,d,c)},error:function(){d.trigger("errorLoading"),b.errorLoading(b,d),null==g?(b.body.html(b.errors.tpl),n(".arcticmodal-error",b.body).html(b.errors.ajax_unsuccessful_load),n(".arcticmodal-close",b.body).click(function(){return d.arcticmodal("close"),!1}),b.errors.autoclose_delay&&setTimeout(function(){d.arcticmodal("close")},b.errors.autoclose_delay)):g(b,d)}},b.ajax);b.ajax_request=n.ajax(j),d.data("arcticmodal",b)}},init:function(b){if(b=n.extend(!0,{},a,b),!n.isFunction(this))return this.each(function(){q.init_el(n(this),n.extend(!0,{},b))});if(null==b)return void n.error("jquery.arcticmodal: Uncorrect parameters");if(""==b.type)return void n.error("jquery.arcticmodal: Don't set parameter \"type\"");switch(b.type){case"html":if(""==b.content)return void n.error("jquery.arcticmodal: Don't set parameter \"content\"");var e=b.content;return b.content="",q.init_el(n(e),b);case"ajax":return""==b.url?void n.error("jquery.arcticmodal: Don't set parameter \"url\""):q.init_el(n("
"),b);}}},e={show:function(){var a=q.getParentEl(this);if(!1===a)return void n.error("jquery.arcticmodal: Uncorrect call");var b=a.data("arcticmodal");if(b.overlay.block.hide(),b.container.block.hide(),n("BODY").append(b.overlay.block),n("BODY").append(b.container.block),b.beforeOpen(b,a),a.trigger("beforeOpen"),"hidden"!=b.wrap.css("overflow")){b.wrap.data("arcticmodalOverflow",b.wrap.css("overflow"));var c=b.wrap.outerWidth(!0);b.wrap.css("overflow","hidden");var d=b.wrap.outerWidth(!0);d!=c&&b.wrap.css("marginRight",d-c+"px")}return p.not(a).each(function(){var a=n(this).data("arcticmodal");a.overlay.block.hide()}),q.transition(b.overlay.block,"show",1*")),b.overlay.block.remove(),b.container.block.remove(),a.data("arcticmodal",null),n(".arcticmodal-container").length||(b.wrap.data("arcticmodalOverflow")&&b.wrap.css("overflow",b.wrap.data("arcticmodalOverflow")),b.wrap.css("marginRight",0))}),"ajax"==b.type&&b.ajax_request.abort(),p=p.not(a))})},setDefault:function(b){n.extend(!0,a,b)}};n(function(){a.wrap=n(document.all&&!document.querySelector?"html":"body")}),n(document).bind("keyup.arcticmodal",function(d){var a=p.last();if(a.length){var b=a.data("arcticmodal");b.closeOnEsc&&27===d.keyCode&&a.arcticmodal("close")}}),n.arcticmodal=n.fn.arcticmodal=function(a){return e[a]?e[a].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof a&&a?void n.error("jquery.arcticmodal: Method "+a+" does not exist"):q.init.apply(this,arguments)}}(jQuery)}var debugMode="undefined"!=typeof debugFlatPM&&debugFlatPM,duplicateMode="undefined"!=typeof duplicateFlatPM&&duplicateFlatPM,countMode="undefined"!=typeof countFlatPM&&countFlatPM;document["wri"+"te"]=function(a){let b=document.createElement("div");jQuery(document.currentScript).after(b),flatPM_setHTML(b,a),jQuery(b).contents().unwrap()};function flatPM_sticky(c,d,e=0){function f(){if(null==a){let b=getComputedStyle(g,""),c="";for(let a=0;a=b.top-h?b.top-h{const d=c.split("=");return d[0]===a?decodeURIComponent(d[1]):b},""),c=""==b?void 0:b;return c}function flatPM_testCookie(){let a="test_56445";try{return localStorage.setItem(a,a),localStorage.removeItem(a),!0}catch(a){return!1}}function flatPM_grep(a,b,c){return jQuery.grep(a,(a,d)=>c?d==b:0==(d+1)%b)}function flatPM_random(a,b){return Math.floor(Math.random()*(b-a+1))+a}