<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ESP8266 &#8211; IoT-devices, LLC &#8211; Electronics manufacturer for IoT</title>
	<atom:link href="https://iot-devices.com.ua/tag/esp8266/feed/" rel="self" type="application/rss+xml" />
	<link>https://iot-devices.com.ua</link>
	<description>Від модулів до складних пристроїв</description>
	<lastBuildDate>Fri, 03 Oct 2025 11:07:18 +0000</lastBuildDate>
	<language>uk</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.4</generator>

<image>
	<url>https://iot-devices.com.ua/wp-content/uploads/2020/05/iot-devices_logo_inversed_kromka_512x512_82ce62_white-100x100.jpg</url>
	<title>ESP8266 &#8211; IoT-devices, LLC &#8211; Electronics manufacturer for IoT</title>
	<link>https://iot-devices.com.ua</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Крос-контролерний зовнішній компонент GGreg20_V3 для ESPHome</title>
		<link>https://iot-devices.com.ua/ggreg20_v3-external-component-for-esphome/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Fri, 03 Oct 2025 10:34:40 +0000</pubDate>
				<category><![CDATA[Новини]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[ESP32]]></category>
		<category><![CDATA[esp32-s3]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<category><![CDATA[Pico W]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[technical-note]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=4145</guid>

					<description><![CDATA[3.10.2025, Київ — Компанія IoT-devices LLC з радістю повідомляє про реліз нового зовнішнього компонента ggreg20_v3 для платформи розумного будинку ESPHome. Цей компонент значно спрощує інтеграцію сенсорів радіаційного моніторингу на базі лічильника Гейгера GGreg20_V3 у будь-яку систему, що працює під управлінням ESPHome. Просте впровадження моніторингу радіації Компонент ggreg20_v3 призначений для ентузіастів розумного будинку, а також для [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">3.10.2025, Київ — Компанія IoT-devices LLC з радістю повідомляє про реліз нового зовнішнього компонента ggreg20_v3 для платформи розумного будинку ESPHome. Цей компонент значно спрощує інтеграцію сенсорів радіаційного моніторингу на базі лічильника Гейгера GGreg20_V3 у будь-яку систему, що працює під управлінням ESPHome.</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce198be&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce198be" class="wp-block-image size-full wp-lightbox-container"><img fetchpriority="high" decoding="async" width="915" height="717" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3-external_component_2025-10-03.jpg" alt="" class="wp-image-4151" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3-external_component_2025-10-03.jpg 915w, https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3-external_component_2025-10-03-300x235.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3-external_component_2025-10-03-768x602.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3-external_component_2025-10-03-454x356.jpg 454w" sizes="(max-width: 915px) 100vw, 915px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<h2 class="wp-block-heading">Просте впровадження моніторингу радіації</h2>



<p class="wp-block-paragraph">Компонент ggreg20_v3 призначений для ентузіастів розумного будинку, а також для розробників, які прагнуть додати функцію моніторингу іонізуючого випромінювання до своїх пристроїв.</p>



<p class="wp-block-paragraph">Він надає повний набір даних, необхідних для повноцінного контролю, включаючи:</p>



<ul class="wp-block-list">
<li>Потужність (μSv/h)</li>



<li>Еквівалентна поглинута доза (μSv/h)</li>



<li>Сукупна доза (μSv)</li>



<li>Кількість імпульсів за хвилину (CPM) за період часу виміру</li>



<li>Миттєве значення кількості імпульсів (pulse count)</li>



<li>Статус системи (попередження про небезпеку, нормальний рівень або помилки сенсора)</li>
</ul>



<p class="wp-block-paragraph">Цей компонент самостійно виконує всі розрахунки, включаючи корекцію часу нечутливості трубки, надаючи всі необхідні дані для автоматизації у Home Assistant.</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce19c9a&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce19c9a" class="wp-block-image size-full wp-lightbox-container"><img decoding="async" width="984" height="317" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3_component-dashboard_2025-10-03.jpg" alt="" class="wp-image-4154" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3_component-dashboard_2025-10-03.jpg 984w, https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3_component-dashboard_2025-10-03-300x97.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3_component-dashboard_2025-10-03-768x247.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/10/ggreg20_v3_component-dashboard_2025-10-03-454x146.jpg 454w" sizes="(max-width: 984px) 100vw, 984px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<h2 class="wp-block-heading">Ключова перевага: Крос-контролерна сумісність</h2>



<p class="wp-block-paragraph">Головна цінність розробки компоненту полягає в забезпеченні універсальності. Компонент ggreg20_v3 є крос-контролерним і підтримує будь-який мікроконтролер, сумісний з ESPHome (включно з ESP32, ESP8266, Raspberry Pi Pico W та іншими).</p>



<p class="wp-block-paragraph">Це усуває необхідність писати індивідуальний код для різних платформ, дозволяючи користувачам швидко інтегрувати моніторинг радіації, незалежно від того, який контролер вони використовують для своїх проєктів.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">&#8220;Ми створили компонент ggreg20_v3 з думкою про спільноту ESPHome. Наша мета — зробити моніторинг навколишнього середовища максимально доступним і надійним, надаючи єдине, гнучке рішення, яке працює відразу на всіх підтримуваних контролерах,&#8221; — прокоментували новину у IoT-devices LLC.</p>
</blockquote>



<h2 class="wp-block-heading">Як почати використовувати</h2>



<p class="wp-block-paragraph">Компонент ggreg20_v3 доступний як зовнішній компонент Git.</p>



<p class="wp-block-paragraph">Для встановлення: Додайте наш репозиторій до конфігурації ESPHome і скористайтеся нашою детальною документацією.</p>



<ul class="wp-block-list">
<li>GitHub Репозиторій: [<a href="https://github.com/iotdevicesdev/esphome_external_components" target="_blank" rel="noreferrer noopener">https://github.com/iotdevicesdev/esphome_external_components</a>]</li>



<li>Документація: Перегляньте README.md для повної інструкції з встановлення та налаштування.</li>
</ul>



<p class="wp-block-paragraph">IoT-devices LLC запрошує спільноту до тестування, надання зворотного зв&#8217;язку та внесків у розвиток компонента.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Тестування споживання енергії лічильником Гейгера GGreg20_V3</title>
		<link>https://iot-devices.com.ua/ggreg20_v3-geiger-counter-energy-consumption-testing/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Wed, 26 Feb 2025 18:24:19 +0000</pubDate>
				<category><![CDATA[Тестування]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<category><![CDATA[technical-note]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=3806</guid>

					<description><![CDATA[Наша компанія провела ретельне тестування споживання електроенергії модулем лічильника Гейгера GGreg20_V3, призначеним для використання в DIY-проектах. Метою дослідження було визначити реальне енергоспоживання модуля при різних напругах живлення: 3.3В, 3.7В, 5.0В.]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Наша компанія провела ретельне тестування споживання електроенергії модулем лічильника Гейгера GGreg20_V3, призначеним для використання в DIY-проектах. Метою дослідження було визначити реальне енергоспоживання модуля при різних напругах живлення: 3.3В, 3.7В, 5.0В.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="683" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/GGreg20_V3_EnergyConsumption_whiteBkg-1024x683.jpg" alt="GGreg20_V3 Energy Consumption Testing" class="wp-image-3807" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/GGreg20_V3_EnergyConsumption_whiteBkg-1024x683.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2025/02/GGreg20_V3_EnergyConsumption_whiteBkg-300x200.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/02/GGreg20_V3_EnergyConsumption_whiteBkg-768x512.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/02/GGreg20_V3_EnergyConsumption_whiteBkg-454x303.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2025/02/GGreg20_V3_EnergyConsumption_whiteBkg.jpg 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h1 class="wp-block-heading">Методологія тестування</h1>



<p class="wp-block-paragraph">Для проведення вимірювань ми розробили спеціальний тестовий стенд на базі платформи Home Assistant. Центральним елементом системи був контролер Raspberry Pi Pico W з прошивкою ESPHome, який керував роботою модуля GGreg20_V3. Для точного вимірювання споживаної енергії ми використовували сенсор INA219, підключений до контролера NodeMCU / ESP8266 також з прошивкою ESPHome. У якості джерела живлення GGreg20_V3 ми застосували лабораторний блок живлення, який і задавав точний рівень напруги під час тестування.&nbsp;</p>



<p class="wp-block-paragraph">Оскільки модуль GGreg20_V3 підтримує широкий діапазон напруг живлення, щонайменше від 3.0 і аж до 5.5В, для того, щоб показати наскільки відрізняється результат тесту, ми взяли три найпоширеніших рівня напруги живлення: 3.3В, 3.7В, 5.0В. Такі напруги дають уявлення про те, яке буде споживання модуля під час живлення від:</p>



<ul class="wp-block-list">
<li>іншого контролера чи джерела з напругою 3.3В;</li>



<li>літієвої акумуляторної батареї з напругою 3.7В;</li>



<li>іншого контролера чи джерела з напругою 5В.</li>
</ul>



<p class="wp-block-paragraph">Важливо зазначити, що сенсор INA219 вимірював лише енергоспоживання модуля GGreg20_V3, тоді як контролери живилися окремо. Це дозволило отримати максимально точні дані.</p>



<p class="wp-block-paragraph">Також відмітимо, що рівень напруги живлення з плином часу у межах 60 хвилинного тесту не змінювався. Тому не слід сподіватися, що ми виконали повну емуляцію, наприклад літієвої батареї, що розряджається під навантаженням і відповідно втрачає напругу з 4.2В до 2.5В на протязі тесту. І хоча, це був би дійсно корисний і цікавий дослід, ми вирішили настільки сильно не заморочуватися з цим.</p>



<h1 class="wp-block-heading">Тестовий стенд</h1>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1b2bf&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1b2bf" class="wp-block-image size-large wp-lightbox-container"><img loading="lazy" decoding="async" width="1024" height="584" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143-1024x584.jpg" alt="GGreg20_v3 energy consumption test lab structure 2025-02-25" class="wp-image-3809" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143-1024x584.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143-300x171.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143-768x438.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143-1536x876.jpg 1536w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143-454x259.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_energy_consumption_tes_lab_structure_2025-02-25_141143.jpg 1547w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<figure class="wp-block-table"><table><thead><tr><th><strong>Компонент</strong></th><th><strong>Призначення</strong></th><th><strong>Живлення</strong></th><th><strong>Прошивка / інтерфейс</strong></th></tr></thead><tbody><tr><td>GGreg20_V3</td><td>Об’єкт дослідження споживання енергії;<br>Вимірювання рівня радіації</td><td>через INA219 від лабораторного блоку живлення</td><td>&#8211; / GPIO вихід, Active-Low</td></tr><tr><td>Raspberry Pi Pico W</td><td>Отримання даних з модуля GGreg20_V3 і передача на сервер Home Assistant</td><td>USB</td><td>ESPHome з конфігурацією для GGreg20_V3 в якості сенсора / безпровідне з’єднання WiFi</td></tr><tr><td>INA219</td><td>Вимірювання струму споживання модулем GGreg20_V3</td><td>від лабораторного блоку живлення</td><td>&#8211; / I2C</td></tr><tr><td>NodeMCU ESP8266<br>(або ESP12_OLED)</td><td>Керування модулем INA219, отримання даних вимірювання та передача на сервер Home Assistant</td><td>USB</td><td>ESPHome з конфігурацією для INA919 в якості сенсора / безпровідне з’єднання WiFi</td></tr><tr><td>Лабораторний блок живлення</td><td>Живити встановленою напругою модулі сенсорів INA219,<br>GGreg20_V3</td><td>мережа 220В</td><td>DC вихід 3.3В, 3.7В, 5.0В</td></tr><tr><td>Home Assistant сервер</td><td>Забезпечення передачі даних між пристроями через WiFi;<br>Збір, обробка та візуалізація даних вимірювання</td><td>мережа 220В</td><td>безпровідне з’єднання WiFi</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Програмне забезпечення на боці вимірювального сенсора спожитої електричної енергії на базі ESP8266 + INA219 з прошивкою ESPHome:</p>



<pre class="EnlighterJSRAW" data-enlighter-language="yaml" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">sensor:
  - platform: ina219
    address: 0x40
    shunt_resistance: 0.1 ohm

    current:
      name: "INA219 Current"
      accuracy_decimals: 5
      id: current_value

    power:
      name: "INA219 Power"
      accuracy_decimals: 5
      id: power_value

    bus_voltage:
      name: "INA219 Bus Voltage"
      accuracy_decimals: 5

    shunt_voltage:
      name: "INA219 Shunt Voltage"
      accuracy_decimals: 5

    max_voltage: 32.0V
    max_current: 3.2A
    update_interval: 1min

  - platform: integration
    name: "Total Energy Consumed"
    id: total_energy
    sensor: power_value
    time_unit: min
    accuracy_decimals: 5
    unit_of_measurement: "Wh"
    filters:
      - multiply: 0.0166666666666667

  - platform: integration
    name: "Total Current Consumed"
    id: total_current
    sensor: current_value
    time_unit: min
    accuracy_decimals: 5
    unit_of_measurement: "Ah"
    filters:
      - multiply: 0.0166666666666667
</pre>



<p class="wp-block-paragraph">Цей фрагмент YAML-конфігу забезпечує всі необхідні дані для запланованого нами тестування модуля сенсора радіації GGreg20_V3 з точки зору споживання енергії під час роботи у нормальних умовах фонового випромінювання.</p>



<h1 class="wp-block-heading">Процес вимірювання</h1>



<p class="wp-block-paragraph">Вимірювання споживання енергії проводилися щохвилини, з накопиченням даних за попередні періоди. Тестування тривало протягом години, що дозволило отримати значення реального споживання модуля GGreg20_V3 за 60 хвилин для кожної з трьох напруг живлення.</p>



<p class="wp-block-paragraph">Платформа Home Assistant використовувалася для збору та фіксації даних з сенсорів. Вона також надала інструменти для створення наочних графіків споживання електроенергії.</p>



<h1 class="wp-block-heading">Результати та висновки</h1>



<p class="wp-block-paragraph">Завдяки проведеному тестуванню ми отримали детальні дані про споживання електроенергії модулем GGreg20_V3 при різних напругах живлення. Отримані результати дозволяють користувачам оптимізувати енергоспоживання своїх DIY-проектів з використанням цього модуля.</p>



<h2 class="wp-block-heading">Живлення напругою 3.3В</h2>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1b756&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1b756" class="wp-block-image size-full wp-lightbox-container"><img loading="lazy" decoding="async" width="499" height="565" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_2023-08-29.jpg" alt="ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_2023-08-29" class="wp-image-3822" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_2023-08-29.jpg 499w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_2023-08-29-265x300.jpg 265w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_2023-08-29-454x514.jpg 454w" sizes="(max-width: 499px) 100vw, 499px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1b9d4&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1b9d4" class="wp-block-image size-large wp-lightbox-container"><img loading="lazy" decoding="async" width="1024" height="639" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29-1024x639.jpg" alt="ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29" class="wp-image-3820" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29-1024x639.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29-300x187.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29-768x479.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29-454x283.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3V3_energy_consumption_test_1hour_with_buzzer_graph_2023-08-29.jpg 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<h2 class="wp-block-heading">Живлення напругою 3.7В</h2>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1bcb7&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1bcb7" class="wp-block-image size-full wp-lightbox-container"><img loading="lazy" decoding="async" width="499" height="565" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_2023-08-30.jpg" alt="ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_2023-08-30" class="wp-image-3818" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_2023-08-30.jpg 499w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_2023-08-30-265x300.jpg 265w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_2023-08-30-454x514.jpg 454w" sizes="(max-width: 499px) 100vw, 499px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1bf39&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1bf39" class="wp-block-image size-large wp-lightbox-container"><img loading="lazy" decoding="async" width="1024" height="638" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30-1024x638.jpg" alt="ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30" class="wp-image-3816" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30-1024x638.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30-300x187.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30-768x479.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30-454x283.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_3_7V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-30.jpg 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<h2 class="wp-block-heading">Живлення напругою 5.0В</h2>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1c20a&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1c20a" class="wp-block-image size-full wp-lightbox-container"><img loading="lazy" decoding="async" width="499" height="565" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_2023-08-31.jpg" alt="ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_2023-08-31" class="wp-image-3814" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_2023-08-31.jpg 499w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_2023-08-31-265x300.jpg 265w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_2023-08-31-454x514.jpg 454w" sizes="(max-width: 499px) 100vw, 499px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1c4af&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1c4af" class="wp-block-image size-large wp-lightbox-container"><img loading="lazy" decoding="async" width="1024" height="641" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31-1024x641.jpg" alt="ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31" class="wp-image-3824" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31-1024x641.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31-300x188.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31-768x481.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31-454x284.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2025/02/ggreg20_v3_at_5V_energy_consumption_test_1hour_with_buzzer_graph_2023-08-31.jpg 1499w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<h2 class="wp-block-heading">Узагальнені результати</h2>



<p class="wp-block-paragraph">Тестування споживання енергії модулем GGreg20_V3 проводилося протягом 60 хвилин при різних напругах за нормальних умов. Цикл оновлення вимірів INA219: 1 хвилина</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th></th><th>5 В</th><th>3.7 В</th><th>3.3 В</th></tr></thead><tbody><tr><td>Вих. напруга живлення лабораторного БЖ, В</td><td>5,11</td><td>3,83</td><td>3,45</td></tr><tr><td>Напруга живлення GGreg20_V3 (на сенсорі INA219), В</td><td>5,01</td><td>3,7</td><td>3,32</td></tr><tr><td>Споживання енергії протягом тесту (блимає LED, пікає базер), А*год</td><td>0,03523</td><td>0,05174</td><td>0,05741</td></tr><tr><td>Миттєвий струм у стані спокою, А</td><td>0,0343</td><td>0,04880</td><td>0,05664</td></tr><tr><td>Пікові сплески миттєвого струму (індикатори, тривалість 10 мсек), А</td><td>0,051</td><td>0,064</td><td>0,093</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Дата проведення: 27.08. &#8211; 31.08.2023</p>



<p class="wp-block-paragraph">Під час тестування відхилень у вимірах рівня радіації не спостерігалося</p>



<p class="wp-block-paragraph">Тестування проводилося з налаштуваннями модуля GGreg20_V3 за замовчуванням. Базер включений. Діод захисту Шотткі &#8211; встановлений. Синій індикатор живлення світиться постійно. Напруга живлення залишалася незмінною на протязі всього циклу тестування.</p>



<h2 class="wp-block-heading">Додаток. Теоретичний графік розряду батарей</h2>



<p class="wp-block-paragraph">Ми також вирішили показати наочно теоретичний графік розряду при трьох різних напругах під час живлення модуля GGreg20_V3 від акумуляторних батарей різної хімії та ємності.</p>



<p class="wp-block-paragraph">За основу для розрахунків ми взяли характеристики батарей, що є в інтернет:</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>Рівень напруги батареї</th><th>Збірка батареї</th><th>Приклад акумуляторної батареї</th></tr></thead><tbody><tr><td>3.2В</td><td>1 х</td><td>Soshine 18650 1800 mAh LiFePO4 3,2В</td></tr><tr><td>3.7В</td><td>1 х</td><td>Sony 18650 VTC6 3.7V 3120 mAh (30А)</td></tr><tr><td>4.8В</td><td>4 х послідовно</td><td>Videx NiMH AA HR6 1.2V 2100 mAh</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Але звертаємо ще раз увагу, що цей графік є теоретичним припущенням і не враховує розряду реальних батарей під навантаженням у часі та зміни рівня напруги і струму споживання протягом розряду.</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce1c955&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce1c955" class="wp-block-image size-large wp-lightbox-container"><img loading="lazy" decoding="async" width="1024" height="599" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2025/02/Estimated-battery-lifetime-under-normal-background-conditions-20-40-CPM-with-alarming-1024x599.png" alt="Estimated battery lifetime under normal background conditions (20-40 CPM) with alarming" class="wp-image-3832" srcset="https://iot-devices.com.ua/wp-content/uploads/2025/02/Estimated-battery-lifetime-under-normal-background-conditions-20-40-CPM-with-alarming-1024x599.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2025/02/Estimated-battery-lifetime-under-normal-background-conditions-20-40-CPM-with-alarming-300x176.png 300w, https://iot-devices.com.ua/wp-content/uploads/2025/02/Estimated-battery-lifetime-under-normal-background-conditions-20-40-CPM-with-alarming-768x449.png 768w, https://iot-devices.com.ua/wp-content/uploads/2025/02/Estimated-battery-lifetime-under-normal-background-conditions-20-40-CPM-with-alarming-454x266.png 454w, https://iot-devices.com.ua/wp-content/uploads/2025/02/Estimated-battery-lifetime-under-normal-background-conditions-20-40-CPM-with-alarming.png 1104w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<h1 class="wp-block-heading">Про GGreg20_V3</h1>



<p class="wp-block-paragraph">Модуль лічильника Гейгера GGreg20_V3 виробництва ТОВ “ІОТ-ДЕВАЙСЕС” (aka IoT-devices, LLC) є флагманським продуктом компанії, що знайшов своїх користувачів у більш ніж 30 країнах світу.&nbsp;</p>



<p class="wp-block-paragraph">По всьому світові радіоаматори застосовують GGreg20_V3 &#8211; створюють власні DIY проекти, навчаються та ставлять експерименти, пов’язані з вимірюванням радіації.&nbsp;</p>



<p class="wp-block-paragraph">Розробляючи цей продукт і удосконалюючи його з 2020 року, ми намагалися зробити модуль компактним, готовим до використання, сумісним з якомога більшою кількістю DIY платформ і систем, невибагливим щодо живлення, простим з точки зору програмування та гармонізованим за робочими характеристиками з різноманітними трубками Гейгера.&nbsp;</p>



<p class="wp-block-paragraph">А ще ми розробили низку прикладів та виклали їх на GitHub для різноманітних апаратних та програмних платформ як от Arduino UNO, ESP32, ESP8266, Raspberry Pi Pico W, NodeMCU, ESPHome, Tasmota, MicroPython, Home Assistant.</p>



<p class="wp-block-paragraph">І ми, у IoT-devices сподіваємося, що наші Клієнти отримують чудовий користувацький досвід та справжнє задоволення, впроваджуючи цей модуль у свої проекти.</p>



<p class="wp-block-paragraph">А також ми дякуємо кожному, що підтримали та обрали цей розроблений і виготовлений в Україні продукт. Ми це дуже цінуємо!</p>



<h1 class="wp-block-heading">Ключові слова</h1>



<p class="wp-block-paragraph">Лічильник Гейгера&nbsp;</p>



<p class="wp-block-paragraph">GGreg20_V3</p>



<p class="wp-block-paragraph">Тестування споживання електроенергії</p>



<p class="wp-block-paragraph">DIY-проекти</p>



<p class="wp-block-paragraph">Home Assistant</p>



<p class="wp-block-paragraph">Raspberry Pi Pico W</p>



<p class="wp-block-paragraph">ESPHome</p>



<p class="wp-block-paragraph">INA219</p>



<p class="wp-block-paragraph">NodeMCU</p>



<p class="wp-block-paragraph">ESP8266</p>



<p class="wp-block-paragraph">I2C</p>



<p class="wp-block-paragraph">WiFi</p>



<p class="wp-block-paragraph">YAML</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Термометр LM75: підключення  до ESP12.OLED_V1 у ESPHome</title>
		<link>https://iot-devices.com.ua/lm75-thermometer-connection-to-esp12-oled_v1-in-esphome/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Sun, 07 Jan 2024 11:21:20 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Тестування]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<category><![CDATA[I2CHUB_V1]]></category>
		<category><![CDATA[LM75]]></category>
		<category><![CDATA[yaml]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=3223</guid>

					<description><![CDATA[Всі хто займається DIY IoT проектами знайомі з сенсором температури LM75. Термометр LM75 &#8211; це дешевий і зручний сенсор, який має достатню точність та діапазон вимірювання.&#160; Та найголовніша його перевага у тому, що він працює через I2C шину.&#160; Чому ці термометри є недооціненими Хтось може зауважити, що LM75 це не найкращий сенсор за своїми технологічними [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Всі хто займається DIY IoT проектами знайомі з сенсором температури LM75. Термометр LM75 &#8211; це дешевий і зручний сенсор, який має достатню точність та діапазон вимірювання.&nbsp;</p>



<p class="wp-block-paragraph">Та найголовніша його перевага у тому, що він працює через I2C шину.&nbsp;</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/2IO_QsYCPegb15n4XkZZsZDiHSr8LHAXmo0eJKCdHTLIiyRERwwLw8AZLHsOyJnZ_85ciPBnnY23iEOM8HTMqSwMHFZrgcqfWqxqIV2IVVB4kx3fCC8g7F9LLwW0iX_haE7DYUq38NYbpO8Er0IQdGw" alt=""/></figure>



<h1 class="wp-block-heading">Чому ці термометри є недооціненими</h1>



<p class="wp-block-paragraph">Хтось може зауважити, що LM75 це не найкращий сенсор за своїми технологічними особливостями і виконанням у вигляді мікросхеми. І дійсно, є багато інших типів сенсорів температури, такі як <a href="https://esphome.io/components/sensor/dallas.html?highlight=wire#dallas-temperature-sensor" target="_blank" rel="noopener">1-Wire Dallas&nbsp; DS18b20</a>. Ці сенсори мають одно-провідне підключення та багато інших конструктивних переваг, таких як вологозахищені металізовані корпуси у вигляді капсули, тощо. На шину 1-Wire можливо підключити багато термометрів на одному дроті, 1Wire підтримує контроль помилок та ідентифікацію пристроїв, тощо, тощо.</p>



<p class="wp-block-paragraph">Але у шини 1-Wire є один і найголовніший недолік &#8211; для цієї шини не випускають інших пристроїв, крім термометрів. Точніше не так, їх випускають, але це настільки не популярний сегмент, що їх неможливо купити.</p>



<p class="wp-block-paragraph">Коли нам потрібно побудувати пристрій середньої складності, як-от метеостанція, одразу декілька різноманітних сенсорів та інших периферійних пристроїв необхідно підключати до головного контролера (перелік, наприклад):</p>



<ul class="wp-block-list"><li>Сенсор BME680 / BME280 I2C / SPI;</li><li>Сенсор DS18b20 1-Wire;</li><li>Дисплей SPI / I2C;</li><li>Сенсор блискавки AS3935 SPI / I2C;</li><li>Сенсор освітленості MAX44009 I2C;</li><li>Сенсор температури та вологості HDC1080 I2C;</li><li>Сенсор CCS811 I2C;</li><li>Сенсор SCD4X I2C;</li></ul>



<p class="wp-block-paragraph">І навіть в ситуації з потужним ESP32 (не кажучи про ESP8266 та подібні контролери, як-от Arduino чи RPI Pico W), ми будемо вимушені вирішувати задачу оптимізації кількості інтерфейсів та протоколів. Адже обробка кількох різних протоколів рано чи пізно вплине на нашу розробку і буде вимагати спрощення не лише на боці апаратного забезпечення (бюджет вільних портів вводу-виводу), а і програмної реалізації драйверів для різних протоколів та інтерфейсів, які мають крутитися паралельно в головному циклі контролера.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><em><strong>Примітка.</strong> Про SPI ми не пишемо тут, адже це спеціалізований протокол з абсолютно іншим призначенням та сильними сторонами, які стосуються хіба що виключних ситуацій, коли йдеться про сенсори.</em></p></blockquote>



<p class="wp-block-paragraph">Тому, на нашу думку варто одразу обирати рішення, які буде можливо легко розширювати та експлуатувати в майбутньому. 1-Wire- та SPI- пристрої мало придатні до таких вимог і через це ми радимо їх не розглядати крім випадків, коли це дійсно необхідно (як у випадку з SPI: дисплеями високої роздільної здатності, чи вимірюванням величин з швидкостями наближеними до реального часу).</p>



<p class="wp-block-paragraph">Варто спробувати будувати оптимальне програмно-апаратне рішення &#8211; робимо крок у бік шини I2C. Тобто, оскільки у нас на головному контролері буде дисплей SSD1306 з I2C, кейпад <a href="https://iot-devices.com.ua/product-uk/i2cui4v1-user-interface-i2c-module-with-5keys-keypad-rgb-led-buzzer/">I2CUI4_V1</a> з I2C &#8211; навіщо нам ставити сенсори температури з якимось іншим інтерфейсом? &#8211; Так і вирішили, буде лише один інтерфейс: шина I2C. Всі з’єднання будуть через поділювач / хаб <a href="https://iot-devices.com.ua/product-uk/i2chub-v1-module-i2c-bus-interfaces-splitter/">I2CHUB_V1</a>, який підтримує підключення до контролера 5 пристроїв одночасно.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><em><strong>Примітка.</strong> Нагадаємо, що I2C &#8211;&nbsp; чудова шина &#8211; дозволяє не лише підключати безліч пристроїв одночасно, а також надає можливості з ідентифікації пристроїв на шині, контролю помилкових даних та можливість гарячої заміни (підключення і відключення пристроїв користувачем на ходу).</em></p></blockquote>



<h1 class="wp-block-heading">Вбудовані у ESPHome драйвери</h1>



<p class="wp-block-paragraph">Втім, коли ми робимо пошук на сайті ESPHome, то виявляється, що сенсор LM75, який ми зібралися використати у проекті в якості термометрів, не підтримується &#8211; вбудованого драйвера немає.</p>



<p class="wp-block-paragraph">Починаємо проводити власне невелике розслідування щодо наявних драйверів у ESPHome для сенсорів температури подібних до LM75 (0.89 USD на Mouser). І виявляємо, що є два інші термометри, для яких вже написано вбудований драйвер у ESPHome:</p>



<ul class="wp-block-list"><li><a href="https://esphome.io/components/sensor/mcp9808" target="_blank" rel="noopener">MCP9808</a> (1.39 USD на Mouser)</li><li><a href="https://esphome.io/components/sensor/tmp1075" target="_blank" rel="noopener">TMP1075</a> (0.74 USD на Mouser)</li></ul>



<p class="wp-block-paragraph">Обидва сенсори нас би влаштували технічно. Вони є в наявності на Mouser та інших подібних майданчиках. Але ми не змогли знайти готові модулі з цими мікросхемами за ціною, яка була б наближено до ціни на модулі з LM75.&nbsp;</p>



<p class="wp-block-paragraph">Ми подумали, що це нас не влаштовує, як не влаштувало б і більшість наших читачів. З огляду на подібність цих чіпів, ніхто не воліє переплачувати за модуль термометра 5-10 разів, якщо у кожному магазині можна купити модуль на базі LM75.</p>



<p class="wp-block-paragraph">Цікаво, що сенсор TMP1075 є сумісним зі специфікацією LM75 (про це чітко вказано у даташит), яка дефакто є галузевим стандартом. Відтак, ми зробили висновок, що можемо спробувати підключити наш LM75-термометр з драйверами для TM1075, які є вбудованими у ESPHome.</p>



<p class="wp-block-paragraph">Але, на жаль, у нас не вийшло зробити таке підключення, навіть зважаючи на те, що адресація на шині, внутрішні регістри є тотожними у згаданих сенсорів. Єдине що їх відрізняє, так це те, що у TMP1075 також є спеціальний регістр ідентифікації, якого не має сенсор LM75. Але навіть спроби внести зміни у перевірку типу сенсора на рівні CPP-коду цього драйвера не дали нам змоги його застосувати з чипом LM75.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><em><strong>Примітка.</strong> Чесно кажучи, нам досі не зрозуміло, чому розробники та контрибутори ESPHome, досі не зробили вбудованого драйвера для LM75. Нам би не довелося писати цю публікацію і проводити купу часу за дивними експериментами.</em></p></blockquote>



<p class="wp-block-paragraph">Тому ми повернулися у вихідну точку і зробили так, як потрібно було зробити з самого початку.&nbsp;</p>



<h1 class="wp-block-heading">Підключення драйвера ззовні</h1>



<p class="wp-block-paragraph">Як ви мабуть знаєте, в ESPHome є щонайменше два механізми підключення власних драйверів пристроїв ззовні: <a href="https://esphome.io/components/sensor/custom.html" target="_blank" rel="noopener">Custom Component</a> та <a href="https://esphome.io/components/external_components" target="_blank" rel="noopener">External Component</a>. </p>



<p class="wp-block-paragraph">Custom component наразі вважається застарілим варіантом інтеграції і не рекомендується документацією ESPHome до використання.&nbsp;</p>



<p class="wp-block-paragraph">Натомість, документація радить використовувати інший, альтернативний спосіб, який на наш погляд, є наразі єдиним, найпростішим та найкращим для виконання інтеграції драйверів власноруч &#8211; External Component.&nbsp;</p>



<p class="wp-block-paragraph">Відмінність External Component полягає у тому, що користувач ESPHome не прописує вручну інтерфейси для потоків даних з сенсора через манівці, а застосовує цілком регламентовані механізми, які до речі застосовуються також всіма іншими компонентами ESPHome:</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/fhNnFHCjYoYeeW3YgVORrZe0q2lyXcUaa4xA8T0t9_3djudr-Oh-DGAgBgDhDNXycpoDgDG9s8-TOZv4eebVcJ_4TYSi3_V_7k1PN8ohzUPVyY3GptHfUwkf9InA6ttQ86HDp9OkrFDhmrSe6FOTOlc" alt=""/></figure>



<p class="wp-block-paragraph">Отже, щоб підключити External Component, спочатку потрібно правильно описати його обвязку. Ми не будемо тут занурюватися у деталі програмування та конфігурацій, адже ми знайшли на GitHub вже готовий компонент для LM75.</p>



<p class="wp-block-paragraph">Щоб додати сенсори LM75, у YAML-конфіг пристрою в ESPHome, потрібно додати лише кілька рядків:</p>



<ul class="wp-block-list"><li>підключити зовнішній компонент (External Component):</li></ul>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/GiggLaW8SoWJlEFXlWf7k0F6WK3AhbYfrN4R9S5W1FnR0UnApOTweIlfQ8pNje9f1YZFrwnXBVIoWiidj9D1r-9eVaScu6LnZc6xZvGNTWcdagqLFWJJDIXOGLf37IgnxLXaHlJa5sfalcPoYj0NQ_g" alt=""/></figure>



<ul class="wp-block-list"><li>додати сутності сенсорів LM75</li></ul>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/l7JbCPB76qDdLuZWnWDmjvXdPfJS0COrbhYlSTKwOD-kiEt7DxrkwiUMFcYOvfVGLgImvW9zC7h8X3J3ViYwVggYGbuqlPpwfuLTE8TPDJHVq1E67OW8PRd__e0lSMbPyPUV6RVn8_zN4vaUVps700A" alt=""/></figure>



<p class="wp-block-paragraph">Для зручності ми форкнули репозиторій esphome-lm75, який надано <a href="https://github.com/btomala" target="_blank" rel="noopener">https://github.com/btomala</a> на GitHub у свій акаунт <a href="https://github.com/iotdevicesdev/esphome-lm75" target="_blank" rel="noopener">https://github.com/iotdevicesdev/esphome-lm75</a></p>



<p class="wp-block-paragraph">Приклад, як виглядає підключення драйверів LM75 для контролера ESP12.OLED_V1 виробництва IoT-devices, LLC у ESPHome:</p>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group=""># YAML Config Example
esphome:
  name: esp12oled-lm75
  friendly_name: esp12oled-lm75
  comment: "Configuration example of two LM75 for ESP12.OLED_V1 with ESPHome firmware"
  project:
    name: "iot-devices.esp12oled-lm75"
    version: "1.0.0"


external_components:
  - source: github://iotdevicesdev/esphome-lm75
    components: [ lm75 ]


esp8266:
  board: nodemcuv2


logger:


api:
  encryption:
    key: "8tDDLc3S5dnSjADItGR5+7KxoUBhUIqeOiJZIXy"


ota:
  password: "c15e9a44e1408352d945b8cd35b79"


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password


  ap:
    ssid: "Test-Node Fallback Hotspot"
    password: "rtF1XxDZ9"


captive_portal:


i2c:
  sda: 4
  scl: 5
  id: i2c_bus


sensor:
  - platform: lm75
    id: temperature
    name: "LM75 temperature"
    update_interval: 30s
    address: 0x48


  - platform: lm75
    id: temperature2
    name: "LM75 temperature2"
    update_interval: 30s
    address: 0x49
# END YAML Config Example
</pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><em><strong>Примітка.</strong> Цей код також є на нашому GitHub: <a href="https://github.com/iotdevicesdev/ESP12.OLED_V1-LM75-ESPHome" target="_blank" rel="noopener">github.com/iotdevicesdev/ESP12.OLED_V1-LM75-ESPHome</a> </em></p></blockquote>



<h1 class="wp-block-heading">Склад проекту</h1>



<p class="wp-block-paragraph">1 x Модуль <a href="https://iot-devices.com.ua/en/product/esp12oled-universal-esp8266-mcuboard-oled-en/">ESP12.OLED_V1</a> з прошивкою ESPHome 2023.12.5;</p>



<p class="wp-block-paragraph">1 x Модуль <a href="https://iot-devices.com.ua/en/product/i2chub-v1-module-i2c-bus-interfaces-splitter/">I2CHUB_V1</a>;</p>



<p class="wp-block-paragraph">1 x Модуль LM75 (no brand);</p>



<p class="wp-block-paragraph">1 x Модуль CJMCU-75.</p>



<h1 class="wp-block-heading">Результати проекту</h1>



<p class="wp-block-paragraph">Головне, що ми хотіли вам розповісти у цьому тексті:</p>



<ol class="wp-block-list"><li>Ми підключили LM75 через механізм External Component настільки легко і просто, що самі не повірили у успіх після складних експериментів з драйвером для TMP1075.</li><li>Конфігурації підтягуються напряму з GitHub, або можуть лінкуватися з локального сховища на вашому ESPHome / HomeAssistant диску. Підключений таким чином External Component автоматично включається у прошивку під час її компіляції.</li><li>Ми перевірили, що з цим компонентом не виникає проблем з адресацією кількох сенсорів LM75 одночасно.</li><li>Все настільки ж просто, як підключити у ESPHome сенсор для якого є вбудований драйвер на кшталт BME280. Простота застосування готового компоненту через метод External Component не йде ні в яке порівняння з застосуванням застарілого методу Custom Component, який ми колись робили для інших своїх задач із сенсором ультрафіолету VEML6070.&nbsp;&nbsp;</li></ol>



<p class="wp-block-paragraph">Як можна бачити на наступних скріншотах, наш проект успішно виконано:</p>



<ul class="wp-block-list"><li>LM75 підключено до контролера ESP12.OLED_V1 з прошивкою ESPHome;</li><li>Два сенсори LM75 одночасно працюють з головним контролером. Там де працює два сенсори, може працювати і вісім (за потреби, LM75 має три піни конфігурації I2C адреси, що дозволяє одночасно працювати з вісьмома сенсорами на кожній шині I2C);</li><li>Дані з сенсорів потрапляють у Home Assistant та виводяться на Dashboard;</li><li>Далі значення сенсорів можуть або автономно виводитися на дисплей контролера ESP12.OLED_V1 засобами прошивки ESPHome, та/або можуть застосовуватися у сценаріях автоматизації Home Assistant.</li></ul>



<h2 class="wp-block-heading">Значення сенсорів LM75 на Dashboard сервера Home Assistant:</h2>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/acaO4mGBATm3R6jzes0mGzzjmRyzUxaL-6iyqv6N8WU7OFE9OMSp491EVcjqcoUL2GHRmAxIZWZJD9XeAB4dOspKdLGxDZWCB3UIDyG3vkJV7-xwE7sH3eahGRzSWIz3SupGSo_-pjFTKhunHcEo9EI" alt=""/></figure>



<h2 class="wp-block-heading">Графіки з Logbook сервера Home Assistant:</h2>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/ptCieHiX5fvP03Sls1EwV4lyliuggL_4NYJglhDjCkdg91jMyGi3wF-6hKYWzKgxDSWx8MRz1lAyHZNT9OI7g0krtebesXDgHHKJJUjNtEahWW_jL2xIx7jqzUDsyAudWB-GPFNB6tc6LTBZlw1dKKU" alt=""/></figure>



<h2 class="wp-block-heading">Значення сенсорів LM75 у меню Developer Tools сервера Home Assistant:</h2>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/D6khohe5sku1MkzapvAicnvyQcwPRACHO-GXe5PQARDyUtOy0FIlymy-ood33FKdA-Amjys9B9mMLQ8hot69UCZd6449YPOR1PjAHGc6ICtuCZt51_j-XG7l9hJSPqvOvQ9b_0GwdtUWBTTEqpms8vQ" alt=""/></figure>



<h2 class="wp-block-heading">Скріншоти консолі ESPHome:</h2>



<ul class="wp-block-list"><li>Пристрої знайдено під час сканування шини I2C (дисплей і два термометри)</li></ul>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/NJerrlBsGoKpzLNQ5Pbv-erEZkMrZNETE3dMAzkqdfoCPEukPqyjZ8Qb9c7Kpx4pNYH1HSO9vxPxJJkdm5mp-aGXt1DtQK4-MZklgLQOiRsd83zjYum4m9UeYDY4IcFsnflwP-mbxyCiokCRWt0bbVI" alt=""/></figure>



<ul class="wp-block-list"><li>Драйвери для сенсорів LM75 ініціалізовано</li></ul>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/Y7ulzeeq0M9KBePJRl0vvtU-EVObTNn3n-RDIPB-lsAx9rVp_xdmsYoW5_bpZKXzwm08S5ZVoeTRvkq7NZiFMph-ojmhF2yqRL0wJe4d5-wZwFr8yaTsQp0LINUNUIZBo_niNpuNh_BNlyaAY6-ybKU" alt=""/></figure>



<ul class="wp-block-list"><li>Дані з сенсорів отримує ESPHome та передає у Home Assistant</li></ul>



<figure class="wp-block-image"><img decoding="async" src="https://lh7-us.googleusercontent.com/pySE4l9JF_jNWySJ03bDw-1hr8PlL6w6rLtDvjQY6HAwzeB0JFCVAF_7vR5Ypxn7K6Ccm4zrnKLoQqJmCiKCKPPzzfuQFCAB9ouBUG_m2V_R4u7-QxvvxcnrxD9CnVZvCGSb4RvcW2_K9EpbD3tFrw8" alt=""/></figure>



<p class="wp-block-paragraph">Це наразі все, що ми запланували розповісти за цією темою.</p>



<p class="wp-block-paragraph">Дякуємо за увагу!</p>



<p class="wp-block-paragraph">Бажаємо успіхів!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Емулятор лічильника Гейгера GGreg20_V3 засобами ESP8266 Частина 3: Тестування та висновок</title>
		<link>https://iot-devices.com.ua/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part3-ua/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Fri, 31 Mar 2023 12:58:07 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Новини]]></category>
		<category><![CDATA[Тестування]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[emulator]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Espressif]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[tindie]]></category>
		<category><![CDATA[unit test]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2842</guid>

					<description><![CDATA[Тестування емулятора Після того, як ми зібрали емулятор лічильника Гейгера і запрограмували ESP8266, ми можемо протестувати його, щоб переконатися, що він працює правильно. Склавши фізичну схему і розробивши та завантаживши / компілювавши Lua-код у контролери, запускаємо емулятор лічильника Гейгера та головний контролер, щоб перевірити як працює наш тестовий стенд. Як можна бачити, підключення емулятора дуже [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading"><a></a> Тестування емулятора</h2>



<p class="wp-block-paragraph">Після того, як ми зібрали емулятор лічильника Гейгера і запрограмували ESP8266, ми можемо протестувати його, щоб переконатися, що він працює правильно.</p>



<p class="wp-block-paragraph">Склавши фізичну схему і розробивши та завантаживши / компілювавши Lua-код у контролери, запускаємо емулятор лічильника Гейгера та головний контролер, щоб перевірити як працює наш тестовий стенд.</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-scaled.jpg"><img loading="lazy" decoding="async" width="1024" height="768" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-1024x768.jpg" alt="" class="wp-image-2588" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-1024x768.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-300x225.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-768x576.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-1536x1152.jpg 1536w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-2048x1536.jpg 2048w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-454x341.jpg 454w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Рис. Тестовий стенд емулятора GGreg20_V3 на базі ESP12.OLED (MCU_B) підключений до NodeMCU dev.board (MCU_A, поза меж фото)</figcaption></figure>



<p class="wp-block-paragraph">Як можна бачити, підключення емулятора дуже просте: кабель живлення micro USB та сигнальні дроти імпульсного виходу, а також за бажанням можна підключити debug-консоль через UART.</p>



<p class="wp-block-paragraph">На наступних скріншотах наводимо діагностичні дані і їх вимірювання. Також наводимо приклад розподілу подій на виході емулятора, який ми побудували, щоб можна було візуально показати, як працює генератор випадкових чисел контролера ESP8266 за запропонованою нами реалізацією через таймери.</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323.jpg"><img loading="lazy" decoding="async" width="1024" height="631" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-1024x631.jpg" alt="" class="wp-image-2590" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-1024x631.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-300x185.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-768x473.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-454x280.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323.jpg 1421w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Рис. Тестовий стенд емулятора GGreg20_V3 на базі ESP12.OLED (MCU_B) підключений до NodeMCU dev.board (MCU_A, поза меж фото)</figcaption></figure>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323.jpg"><img loading="lazy" decoding="async" width="1024" height="397" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-1024x397.jpg" alt="" class="wp-image-2592" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-1024x397.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-300x116.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-768x298.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-1536x595.jpg 1536w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-454x176.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323.jpg 1610w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Рис. Графічний розподіл 175 подій на виході емулятора в межах однієї хвилини</figcaption></figure>



<p class="wp-block-paragraph">Як ми можемо бачити, події, що генерує на виході емулятор, є хаотичними, тобто мають характер, де при побіжному вивченні не проглядається певний графічний патерн.</p>



<p class="wp-block-paragraph">Ось ще один графік тестового набору з 175 подій на хвилину, але трохи в іншому форматі. Зверніть увагу на горизонтальну вісь. Значення початкових порядкових номерів подій у циклі розташоване на цьому графіку випадковим чином, саме так, як вони відбувалися у реальності на виході емулятора:</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07.jpg"><img loading="lazy" decoding="async" width="1024" height="476" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-1024x476.jpg" alt="" class="wp-image-2594" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-1024x476.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-300x139.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-768x357.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-454x211.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07.jpg 1529w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Рис. Графічне зображення випадкових 175 подій на виході емулятора (ліва вісь) та вільної пам’яті (права вісь) контролера ESP8266 під час виконання 60-секундного циклу</figcaption></figure>



<p class="wp-block-paragraph">Звісно, перевірка справжньої випадковості подій не є метою даної публікації і виходить далеко за її межі. Ми просто спираємося на тезу, що ESP8266 має апаратний генератор справжніх випадкових чисел.</p>



<h2 class="wp-block-heading"><a></a>Відомі обмеження</h2>



<p class="wp-block-paragraph">Серед обмежень даного методу створення емулятора лічильника Гейгера, які наразі нам відомі, є кількість пам’яті контролера ESP8266, у якій ми створюємо в циклі необхідну кількість одноразових таймерів з випадковим часом спрацювання. Кожен таймер по суті є функцією, яка займає певну оперативну пам’ять.</p>



<p class="wp-block-paragraph">Таймери, що спрацювали одразу ж вивільняють пам’ять. Виконання розробленого нами коду нагадує пружину, що у циклі раз на хвилину різко стискається і поволі розтискається в межах наявної пам’яті контролера.</p>



<p class="wp-block-paragraph">Таким чином, максимальна можлива кількість подій, що генерується обраним нами методом створення випадкових подій на виході емулятора, напряму залежить від кількості вільної оперативної пам’яті та швидкодії контролера.</p>



<p class="wp-block-paragraph">Експериментально нами було встановлено, що ESP8266 з прошивкою NodeMCU та мовою Lua здатен впевнено генерувати близько 260 подій на хвилину. Це більш ніж достатня кількість імпульсів на хвилину для проекту емулятора та рівнів радіації які він начебто реєструє.</p>



<p class="wp-block-paragraph">Це наразі все, що ми запланували розповісти. Тепер ви знаєте нашу версію того, як можна самостійно зробити емулятор лічильника Гейгера, а також для чого і кому може бути корисним такий пристрій. Втім, якщо ви бажаєте придбати готовий до застосування емулятор, це можливо зробити на нашому сайті, або на Tindie.</p>



<p class="wp-block-paragraph">Сайт IoT-devices.com.ua:&nbsp;<a href="https://iot-devices.com.ua/product-uk/gcemu20_v1-geiger-counter-emulator/">GCcemu20_V1</a></p>



<p class="wp-block-paragraph">tindie.com:&nbsp;<a href="https://www.tindie.com/products/iotdev/gcemu20_v1-geiger-counter-emulator/" target="_blank" rel="noreferrer noopener">GCcemu20_V1</a></p>



<p class="wp-block-paragraph">Загалом, створення емулятора лічильника Гейгера може бути цікавим і пізнавальним проектом. Він дозволяє імітувати показання лічильника Гейгера без використання радіоактивних джерел. Ми сподіваємося, що цей посібник був корисним, і заохочуємо вас експериментувати з різними компонентами та методами програмування для подальшої кастомізації емулятора.</p>



<p class="wp-block-paragraph">Початок статті:</p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1-ua/">Емулятор лічильника Гейгера GGreg20_V3 засобами ESP8266: Частина 1. Вступ та загальний огляд</a></p>



<p class="wp-block-paragraph"><a href="http://Емулятор лічильника Гейгера GGreg20_V3 засобами ESP8266">Емулятор лічильника Гейгера GGreg20_V3 засобами ESP8266: Частина 2 Створення емулятора</a></p>



<p class="wp-block-paragraph">Бажаємо успіхів!</p>



<p class="wp-block-paragraph">Команда IoT-devices LLC</p>



<p class="wp-block-paragraph">&nbsp;</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Емулятор лічильника Гейгера GGreg20_V3 засобами ESP8266: Частина 2 Створення емулятора</title>
		<link>https://iot-devices.com.ua/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part2-ua/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Wed, 29 Mar 2023 11:50:27 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Новини]]></category>
		<category><![CDATA[Тестування]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[emulator]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Espressif]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[tindie]]></category>
		<category><![CDATA[unit test]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2813</guid>

					<description><![CDATA[Емулятор лічильника Гейгера: що нам знадобиться Для побудови емулятора лічильника Гейгера нам знадобляться наступні деталі та матеріали: ESP8266 #1 як основний (MCU_A, модуль NodeMCU); ESP8266 #2 як емулятор GGreg20_V3 (MCU_B, модуль ESP12.OLED); Дроти для перемичок; USB кабель для програмування та живлення. Далі нам потрібно буде запрограмувати основний контролер MCU_A та код скрипту емуляції програмного забезпечення [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading" id="block-786c35cc-31be-43f0-a658-40945e2c73d7">Емулятор лічильника Гейгера: що нам знадобиться</h2>



<p class="wp-block-paragraph">Для побудови емулятора лічильника Гейгера нам знадобляться наступні деталі та матеріали:</p>



<ul class="wp-block-list"><li>ESP8266 #1 як основний (MCU_A, модуль NodeMCU);</li><li>ESP8266 #2 як емулятор GGreg20_V3 (MCU_B, модуль ESP12.OLED);</li><li>Дроти для перемичок;</li><li>USB кабель для програмування та живлення.</li></ul>



<p class="wp-block-paragraph">Далі нам потрібно буде запрограмувати основний контролер MCU_A та код скрипту емуляції програмного забезпечення GGreg20_V3 для MCU_B.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка 3</strong>. Ми будемо наводити приклади у цій публікації на модулях власного виробництва <a href="https://iot-devices.com.ua/product-uk/esp12oled-universal-esp8266-mcuboard-oled/">ESP12.OLED</a>. Втім, якщо у вас немає модуля ESP12.OLED, ви також можете застосувати плату розробника на базі ESP8266, наприклад NodeMCU, і самостійно розробити програмне забезпечення керуючись прикладами, що наведено у тексті. Якщо ж ви бажаєте одразу користуватися готовим пристроєм, будь-ласка, дочитайте цю статтю до кінця, адже далі ми даємо посилання на наш готовий до використання модуль емулятора, який можливо придбати.</p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка 4.</strong> У цій, як і у інших наших публікаціях ми будемо наводити приклади простою та потужною скриптовою мовою програмування Lua, що доступна у популярній програмній прошивці NodeMCU.</p></blockquote>



<h2 class="wp-block-heading" id="block-fa9009c2-5b8c-41b0-bb8a-10108721c789">Бюджет необхідних нам входів/виходів</h2>



<p class="wp-block-paragraph" id="block-72e01d54-951b-4117-8327-b53872654d3a">На головному контролері макету нам необхідно визначити порти вводу/виводу, які будуть обслуговувати задачу реєстрації вхідних імпульсів від модуля емулятора лічильника Гейгера.</p>



<p class="wp-block-paragraph" id="block-dc43f265-c4cd-4a94-8940-0af029bf502d">На модулі емулятора лічильника Гейгера нам необхідно буде вже трохи більше портів. Тут необхідно задіяти порти вводу/виводу: для емуляції вихідних імпульсів, для RGB світлодіода та для кнопки перемикання режиму роботи емулятора.</p>



<figure class="wp-block-table"><table><tbody><tr><td><br>﻿</td><td>Роль MCU_A (Головний)</td><td>Роль MCU_B (Емулятор)</td></tr><tr><td>1 х GPIO лічильника вхідних імпульсів</td><td>NodeMCU</td><td>&#8211;</td></tr><tr><td>1 х GPIO емуляції вихідних імпульсів GGreg20_V3</td><td>&#8211;</td><td>ESP12.OLED</td></tr><tr><td>3 х GPIO RGB світлодіода індикації вихідних імпульсів GGreg20_V3</td><td>&#8211;</td><td>ESP12.OLED</td></tr><tr><td>1х GPIO кнопки перемикання режимів роботи емулятора</td><td>&#8211;</td><td>ESP12.OLED</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Схема підключення</p>



<p class="wp-block-paragraph" id="block-c6b2cc85-b3fb-4407-a53a-677106212716">Щоб взаємодія головного контролера з емулятором модуля GGreg20_V3 виглядала реалістично, пропонуємо скористатися вбудованими властивостями певних портів вводу/виводу плати ESP12.OLED і обрати на контролері емулятора MCU_B наступні GPIO:</p>



<ul class="wp-block-list" id="block-f010198d-685b-4fee-b4d6-3e1d8f38aeb3"><li>для емуляції імпульсного виходу GGreg20_V3 рекомендуємо використовувати GPIO4 / D2 (GPIO D-index в Lua);</li><li>для перемикання режимів роботи емулятора ми можемо використати вбудовану на платі ESP12.OLED кнопку Flash &#8211; GPIO0 / D3;</li><li>вбудований RGB-світлодіод на модулі ESP12.OLED займає GPIO14 / D5; GPIO12 / D6; GPIO13 / D7.</li></ul>



<p class="wp-block-paragraph" id="block-2527070a-42a1-48e0-983b-6cfc16e216fc">На модулі головного контролера MCU_A, пропонуємо обрати наступний порт для лічильника вхідних імпульсів:</p>



<ul class="wp-block-list" id="block-c8feffc1-6e34-42d2-b70e-3b3631fb85fb"><li>GPIO14 / D5.</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка 5</strong>. У якості довідкового матеріалу за нумерацією портів рекомендуємо наступні матеріали: </p><p>Стандарт планування та застосування пінів, розроблений alterstrategy.lab: <a href="https://alterstrategy.com/recommended-pin-use-standard/" target="_blank" rel="noopener">ttps://alterstrategy.com/recommended-pin-use-standard/</a> </p><p>Документація на прошивку NodeMCU: <a href="https://nodemcu.readthedocs.io/en/latest/modules/gpio/" target="_blank" rel="noopener">https://nodemcu.readthedocs.io/en/latest/modules/gpio/</a> </p><p>Документація на модуль ESP12.OLED на сайті: <a href="https://iot-devices.com.ua/en/product/esp12oled-universal-esp8266-mcuboard-oled-en/">https://iot-devices.com.ua/en/product/esp12oled-universal-esp8266-mcuboard-oled-en/</a> </p><p>та на Tindie: <a href="https://www.tindie.com/products/iotdev/esp12oled-universal-esp8266096oled-mcu-board/" target="_blank" rel="noopener">https://www.tindie.com/products/iotdev/esp12oled-universal-esp8266096oled-mcu-board/</a></p></blockquote>



<p class="wp-block-paragraph" id="block-0017d8d7-e663-4e4b-8d4e-d20072cdf305">Оновимо таблицю з урахуванням конкретних портів вводу/виводу, які ми обрали:</p>



<figure class="wp-block-table"><table><tbody><tr><td><br>﻿</td><td>Роль MCU_A</td><td>Роль MCU_B</td></tr><tr><td>1 х GPIO лічильника вхідних імпульсів</td><td>NodeMCU GPIO14/ D5</td><td>&#8211;</td></tr><tr><td>1 х GPIO емуляції вихідних імпульсів GGreg20_V3</td><td>&#8211;</td><td>ESP12.OLED GPIO4 / D2</td></tr><tr><td>3 х GPIO RGB світлодіода індикації вихідних імпульсів GGreg20_V3</td><td>&#8211;</td><td>ESP12.OLED GPIO14 / D5 GPIO12 / D6 GPIO13 / D7</td></tr><tr><td>1х GPIO кнопки перемикання режимів роботи емулятора</td><td>&#8211;</td><td>ESP12.OLED GPIO0 / D3</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">﻿</p>



<figure class="wp-block-image size-full" id="block-3e816c74-b488-4f9c-af8a-46e7b768c80c"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram.jpg"><img loading="lazy" decoding="async" width="960" height="540" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram.jpg" alt="" class="wp-image-2586" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram.jpg 960w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-300x169.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-768x432.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-800x450.jpg 800w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-454x255.jpg 454w" sizes="(max-width: 960px) 100vw, 960px" /></a><figcaption>Рис. Підключення модулів з використанням двох апаратних контролерів ESP8266. У ролі MCU_B &#8211; модуль ESP12.OLED. У ролі MCU_A &#8211; модуль NodeMCU</figcaption></figure>



<h2 class="wp-block-heading" id="block-cb422977-8184-4a88-9c04-66d8e4c95e9d"><br>Режими роботи емулятора</h2>



<p class="wp-block-paragraph" id="block-4228e826-79a4-4376-aad4-045e96815dc7">Для того, щоб наш емулятор лічильника Гейгера GGreg20_V3 міг імітувати роботу в умовах різного рівня радіації пропонуємо реалізувати можливість перемикати діапазон потужності випромінювання, який начебто вимірюється пристроєм і подається на імпульсний вихід.</p>



<p class="wp-block-paragraph" id="block-4e0350bb-494c-480f-b831-a6e3d0c4b3ce">Натискаючи кнопку Flash (D3), користувач може поперемінно перемикати режими, щоб вибрати необхідний.</p>



<p class="wp-block-paragraph" id="block-8566cf3a-6d34-494a-a1c4-9783454ba6ad">Для зручності користування емулятором RGB-світлодіод модуля ESP12.OLED блимає різними кольорами, які легко розрізняються людським оком. За кожним режимом роботи емулятора закріплено свій колір. Тож коли емулятор видає на імпульсний вихід сигнал про вдаване “спрацювання”, світлодіод також буде блимати кольором поточного режиму роботи.</p>



<h2 class="wp-block-heading" id="block-63c378b0-b723-4c14-a913-697192337a31">Діапазони рівня радіації</h2>



<p class="wp-block-paragraph" id="block-d791023e-f3f0-4cb0-a8d6-56b4f2d848c6">Пропонуємо реалізувати емуляцію наступних діапазонів радіаційного випромінювання оточуючого середовища, яке буде імітувати MCU_B:</p>



<p class="wp-block-paragraph" id="block-b19d8848-2821-488d-9731-af30f8d6a932">Режим 0. Немає імпульсів (імітація помилки сенсора);</p>



<p class="wp-block-paragraph" id="block-b78e9cf4-f0ce-4bb5-a037-2e465dbc7279">Режим 1. Природне фонове випромінювання: 0.1 &#8211; 0.2 мкЗв/год;</p>



<p class="wp-block-paragraph" id="block-fcdb4d5e-1a51-47d4-b7eb-656d53f9f600">Режим 2. Припустимий рівень: 0.2 &#8211; 0.3 мкЗв/год;</p>



<p class="wp-block-paragraph" id="block-2b79a053-b8bb-4548-ad17-d8f31bb58219">Режим 3. Підвищений рівень: 0.3 &#8211; 0.6 мкЗв/год;</p>



<p class="wp-block-paragraph" id="block-555eda96-59ee-425b-b6bb-29b4d1775ecf">Режим 4. Небезпечний рівень: 0.6 мкЗв/год &#8211; 1.5 мкЗв/год.</p>



<p class="wp-block-paragraph" id="block-636beefb-1875-4800-b434-371a282b0432">За замовчуванням модуль буде стартувати після подачі живлення з “Режиму 1”. Цей режим ми обрали як початковий лише через те, що це зручно, коли подавши живлення ми одразу отримуємо імпульси на рівні фонового випромінювання.</p>



<p class="wp-block-paragraph" id="block-e688333a-52ff-469c-b8f4-9f9559f976a6">Реальний модуль GGreg20_V3 оснащено трубкою Гейгера радянського виробництва СБМ-20. Ця трубка має наступний коефіцієнт перерахунку імпульсів на хвилину у мікрозіверти на годину:</p>



<p class="has-text-align-center wp-block-paragraph" id="block-57d145ae-f971-436c-9dc2-ea5b1f3946aa">мкЗв на годину = CPM * 0.0057</p>



<p class="wp-block-paragraph" id="block-5f2d88d1-fa2a-4c1c-b998-6c2d35b5188d">Виконаємо обернену операцію, щоб розрахувати для діапазонів радіації відповідну вилку кількості імпульсів на годину, які мав би генерувати емулятор, працюючи у певному режимі:</p>



<p class="has-text-align-center wp-block-paragraph" id="block-1a1a2729-0148-4991-a7c5-b8d7190e5969">CPM = мкЗв на годину / 0.0057</p>



<p class="wp-block-paragraph" id="block-939c0593-7e19-41fe-940b-0d34f5a5af24">Робимо приблизний розрахунок таким чином, щоб утворити діапазони потужності, що не перетинаються за значенням:</p>



<p class="wp-block-paragraph" id="block-a0935c72-ddee-4500-92dd-caa443833e00">Режим 0. 0 CPM;</p>



<p class="wp-block-paragraph" id="block-bfbf37c0-e77a-40bb-a524-aecffb2f5ffc">Режим 1. від 18 CPM до 35 CPM;</p>



<p class="wp-block-paragraph" id="block-9b5a7549-1217-4a21-862e-6123d5f1fcc0">Режим 2. від 36 CPM до 52 CPM;</p>



<p class="wp-block-paragraph" id="block-a28b6f7b-2535-426d-97c5-289e31330abe">Режим 3. від 53 CPM до 105 CPM;</p>



<p class="wp-block-paragraph" id="block-4d52fbd2-bff2-4f66-b1a7-44a17677efb3">Режим 4. від 106 CPM до 264 CPM.</p>



<p class="wp-block-paragraph" id="block-0761ad79-1104-4eb4-8586-2b413119bad9">Співвіднесення кольору спалахів RGB-світлодіода певному режиму роботи є наступним:</p>



<figure class="wp-block-table"><table><tbody><tr><td><strong>Режим роботи</strong></td><td><strong>Колір спалахів</strong></td><td><strong>R</strong></td><td><strong>G</strong></td><td><strong>B</strong></td></tr><tr><td>Режим 0</td><td>немає спалахів black</td><td>0</td><td>0</td><td>0</td></tr><tr><td>Режим 1</td><td>cyan</td><td>0</td><td>1</td><td>1</td></tr><tr><td>Режим 2</td><td>green</td><td>0</td><td>1</td><td>0</td></tr><tr><td>Режим 3</td><td>red</td><td>1</td><td>0</td><td>0</td></tr><tr><td>Режим 4</td><td>magenta</td><td>1</td><td>0</td><td>1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Тепер нам лишається написати відповідний програмний Lua-код для ролі MCU_A та для ролі MCU_B.</p>



<h2 class="wp-block-heading" id="block-f6fa38ba-c4f6-4484-9e32-cb4c380574d4"><strong>Приклад</strong>. Код лічильника Гейгера для головного контролера (роль MCU_A)</h2>



<p class="wp-block-paragraph" id="block-923bc983-837f-4384-9148-96385e6b3e3b">Ми візьмемо цей код з GitHub за наступною адресою:</p>



<p class="wp-block-paragraph"><a href="https://github.com/iotdevicesdev/ggreg20-v3-nodemcu-lua-example" target="_blank" rel="noopener">https://github.com/iotdevicesdev/ggreg20-v3-nodemcu-lua-example</a></p>



<p class="wp-block-paragraph" id="block-0979654a-2651-4027-abcd-2ff33ce599d4">Код з GitHub повністю готовий до застосування. Щоб запускати код з GitHub, треба його скачати з інтернет і завантажити у контролер, наприклад у модуль NodeMCU, як у нашому випадку. Також необхідно написати ще один Lua-скрипт і його теж завантажити у контролер:</p>



<pre class="wp-block-code"><code>-- filename: mcu_a.lua
-- MCU_A Lua code example
-- Copyright 2022 IoT-devices LLC, Kyiv, Ukraine
dofile('ggreg20_v3_nodemcu_firmware_lua_example.lua')
init(5, 1, 60000)

function snsrUpd()
ma5_rad_lvl, cpm, minutes = read()
print(ma5_rad_lvl, cpm, minutes)
end

snsrUpd_tmr = tmr.create()
snsrUpd_tmr:register(60000, tmr.ALARM_AUTO, function() snsrUpd() end)
snsrUpd_tmr:start()</code></pre>



<h2 class="wp-block-heading" id="block-245d7efc-1d20-42e3-b2d1-14d29e6b7cb1"><strong>Приклад</strong>. Код для емулятора модуля GGreg20_V3 (роль MCU_B)</h2>



<p class="wp-block-paragraph" id="block-6f398d6f-0323-4900-81bf-fb082b4bb006">Документація на мову Lua нам підказує, що у швидкісних задачах необхідно робити перепризначення глобальних ідентифікаторів на локальні, що додає швидкості виконання у десятки разів. Тому ми це зробимо у такий спосіб:</p>



<pre class="wp-block-code"><code>local gpio = gpio
local mode = gpio.mode
local trig = gpio.trig
local write = gpio.write
local read = gpio.read
local INT = gpio.INT
local OUTPUT = gpio.OUTPUT
local FLOAT = gpio.FLOAT
local HIGH = gpio.HIGH
local LOW = gpio.LOW
local PULLUP = gpio.PULLUP
local print = print

local tmr = tmr
local create = tmr.create
local now = tmr.now
local delay = tmr.delay
local alarm = tmr.alarm
local ALARM_SINGLE = tmr.ALARM_SINGLE
local ALARM_SEMI = tmr.ALARM_SEMI
local ALARM_AUTO = tmr.ALARM_AUTO
local register = tmr.register
local start = tmr.start
local stop = tmr.stop

local node = node
local heap = node.heap
local random = node.random</code></pre>



<p class="wp-block-paragraph" id="block-02068264-0668-452a-a175-d7f2197ecf05">Також нам необхідно налаштувати GPIO, які у нас будуть відповідати за свої функції (див. вище):</p>



<pre class="wp-block-code"><code>mode(3,INT,FLOAT)
mode(4,OUTPUT, PULLUP)
write(4, HIGH)</code></pre>



<p class="wp-block-paragraph" id="block-67fa4fe3-dab6-44c3-b317-89d685a65809">Щоб генерувати імпульси, які імітують вихідний інтерфейс GGreg20_V3, нам потрібно випадковим чином запускати ось таку функцію:</p>



<pre class="wp-block-code"><code>local function pulseOut()
	write(4, LOW)
	delay(10)
	write(4, HIGH)
end</code></pre>



<p class="wp-block-paragraph" id="block-76bde581-ad02-443e-9b0e-1b0b5a802151">Але щоб у повній мірі забезпечити емуляцію лічильника Гейгера, нам недостатньо просто запустити <code>pulseOut()</code> визначену кількість разів на хвилину. Насправді все складніше, і нам необхідно таким чином запускати <code>pulseOut()</code>, щоб виконувалася справжня випадковість виникнення імпульсів на виході ESP8266.</p>



<p class="wp-block-paragraph" id="block-45dc16f8-88b4-48cc-b315-92da5ffdc8af">Зважаючи на широкі можливості платформи, можна було б запропонувати навіть декілька способів реалізації цієї функціональності, але ми обмежимося лише одним з них &#8211; тим, що на наш погляд максимально відтворює випадковість імпульсів реального модуля лічильника Гейгера.</p>



<p class="wp-block-paragraph" id="block-0b0c2c3e-e7e7-4aaf-a30c-395557aa8674">Для цього нам знадобиться скористатися генератором випадкових чисел, який відповідно до документації на прошивку NodeMCU здатен генерувати справжні випадкові числа. У прошивці для цього ми маємо готовий метод <code>node.random().</code></p>



<p class="wp-block-paragraph" id="block-c0c54a29-d8c5-4824-896e-cc3ce2eae785">Щоб хаотично розподілити обрану кількість імпульсів в межах однієї хвилини скористаємося таймерами, які можливо створювати у теоретично необмеженій кількості:</p>



<pre class="wp-block-code"><code>create():alarm(timer timeout, timer type, callback function)</code></pre>



<p class="wp-block-paragraph" id="block-a4766066-59e9-40ea-9b6e-8cfbb48c83e8">Єдиним обмеженням є кількість вільної оперативної пам’яті контролера. Експериментально ми встановили, що у такий спосіб без проблем можливо створювати близько 260 імпульсів на хвилину, що вкладається у наші вимоги до максимального рівня віртуальної радіації, яку може відтворити наш емулятор.</p>



<p class="wp-block-paragraph" id="block-cc004032-5661-4186-9c8c-e28b279f3726">Тож функція, яка у циклі створює випадкові таймаути запуску <code>pulseOut(),</code> має наступний вигляд:</p>



<pre class="wp-block-code"><code>local t_start = 0
local count = 0
local function randGen(pulses)
	for i = 1, pulses do -- pulses
			create():alarm(random(60000), ALARM_SINGLE, 
				function()
						print(heap(), count, i, (now() - t_start)/1000000)
						pulseOut()
				end
			)
	end
end</code></pre>



<p class="wp-block-paragraph" id="block-2b32df03-eab1-4d84-b60f-00e71a4c3ead">Працюючи у парі, розроблені нами функції <code>randGen(<em>pulses</em>)</code> та <code>pulseOut()</code> створюють необхідну нам кількість абсолютно випадкових імпульсів на виході ESP8266 тривалістю 10 мікросекунд кожен в межах однієї хвилини.</p>



<p class="wp-block-paragraph" id="block-70e9c748-19dd-4028-bbb7-5fe1f0280797">Кількість імпульсів на хвилину задаємо за допомогою параметра <em><code>pulses</code></em>.</p>



<p class="wp-block-paragraph" id="block-4a90ceb2-c169-4711-9d49-5b43bb34435e">Для того, щоб емулятор працював у різних режимах потужності удаваної радіації необхідно забезпечити випадкове значення кількості імпульсів <code><em>pulses</em>,</code> що потрапляє як завдання на вхід функції <code>randGen().</code> Це можна зробити наступним чином:</p>



<pre class="wp-block-code"><code>radMode = 1
rand_tmr = create()
rand_tmr:register(1000, ALARM_AUTO, 
	function()
		if radMode == 0 and running == 0 then 
			print(heap(), 'Mode0:Snsr Err emu')
			return 0
		end
		local num = 0
		if radMode == 1 then 
			num = random(math.ceil(18),math.ceil(35))
		elseif radMode == 2 then
			num = random(math.ceil(36),math.ceil(52))
		elseif radMode == 3 then
			num = random(math.ceil(53),math.ceil(105))
		elseif radMode == 4 then
			num = random(math.ceil(106),math.ceil(264))
		end
		if num ~= 0 then print('count:',count + 1,'mode:',radMode, 'num:',num); randGen(num) end
	end
)

rand_tmr:start()</code></pre>



<p class="wp-block-paragraph" id="block-e5b05b89-d43b-4a2d-8e18-2bffffe503be">Задаючи значення глобальної змінної <em><code>radMode</code></em>, користувач може задавати один з п’яти режимів потужності іонізуючого випромінювання, яке відтворює на виході емулятор.</p>



<p class="wp-block-paragraph" id="block-601d0a86-27e4-4066-a9a4-61d3770b1b94">Останнє, що нам необхідно передбачити у емуляторі, це перемикання режиму потужності радіації за допомогою вбудованої кнопки Flash / GPIO0 / D3:</p>



<pre class="wp-block-code"><code>trig(3, 'down', 
	function(lvl, ts, cnt)
		if radMode &lt; 4 then radMode = radMode + 1 else radMode = 0 end
		print ('New radMode:', radMode)
	end
)</code></pre>



<h3 class="wp-block-heading" id="block-1b688a62-cea2-48b8-811d-2e5cde4c87b1">Повний програмний код емулятора</h3>



<p class="wp-block-paragraph" id="block-be1e5721-a28c-4eb4-9552-eb301bf23577">Готового прикладу для цієї ролі контролера у нас немає, як було у випадку з головним контролером. Тож напишемо необхідний код з нуля. Ось мінімально необхідний код, який здатен виконувати емуляцію імпульсів лічильника Гейгера.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка 6.</strong> Наведений у даному розділі код є лише прикладом. Ви можете самостійно завантажити і налагодити роботу даного прикладу у власному емуляторі лічильника Гейгера, або придбати готовий до використання апаратний модуль з прошивкою та повнофункціональним програмним забезпеченням у нашому магазині чи на Tindie за наступними посиланнями:</p><p>Сайт: <a href="https://iot-devices.com.ua/product-uk/gcemu20_v1-geiger-counter-emulator/">GCcemu20_V1</a></p><p>Tindie: <a href="https://www.tindie.com/products/iotdev/gcemu20_v1-geiger-counter-emulator/" target="_blank" rel="noopener">GCcemu20_V1</a></p></blockquote>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Увага!</strong> Код з лістингу прикладу має свої обмеження і суттєво відрізняється від того коду, який ми розробили для комерційного використання та продаємо у складі продукту емулятора на нашому сайті та інших комерційних майданчиках.</p></blockquote>



<pre class="wp-block-code"><code>-- filename: mcu_b.lua
-- MCU_B Lua code example
-- Copyright 2022 IoT-devices LLC, Kyiv, Ukraine
local t_start = 0
local count = 0
radMode = 0

local gpio = gpio
local mode = gpio.mode
local trig = gpio.trig
local write = gpio.write
local read = gpio.read
local INT = gpio.INT
local OUTPUT = gpio.OUTPUT
local FLOAT = gpio.FLOAT
local HIGH = gpio.HIGH
local LOW = gpio.LOW
local PULLUP = gpio.PULLUP
local print = print

local tmr = tmr
local create = tmr.create
local now = tmr.now
local delay = tmr.delay
local alarm = tmr.alarm
local ALARM_SINGLE = tmr.ALARM_SINGLE
local ALARM_SEMI = tmr.ALARM_SEMI
local ALARM_AUTO = tmr.ALARM_AUTO
local register = tmr.register
local start = tmr.start
local stop = tmr.stop

local node = node
local heap = node.heap
local random = node.random

mode(3,INT,FLOAT)
mode(4,OUTPUT, PULLUP)
write(4, HIGH)

local function pulseOut()
	write(4, LOW)
	delay(10)
	write(4, HIGH)
end

local function randGen(pulses)
	for i = 1, pulses do -- pulses
			create():alarm(random(60000), ALARM_SINGLE, 
				function()
						print(heap(), count, i, (now() - t_start)/1000000)
						pulseOut()
				end
			)
	end
end

rand_tmr = create()
rand_tmr:register(1000, ALARM_AUTO, 
	function()
		if radMode == 0 and running == 0 then 
			print(heap(), 'Mode0:Snsr Err emu')
			return 0
		end
		local num = 0
		if radMode == 1 then 
			num = random(math.ceil(18),math.ceil(35))
		elseif radMode == 2 then
			num = random(math.ceil(36),math.ceil(52))
		elseif radMode == 3 then
			num = random(math.ceil(53),math.ceil(105))
		elseif radMode == 4 then
			num = random(math.ceil(106),math.ceil(264))
		end
		if num ~= 0 then print('count:',count + 1,'mode:',radMode, 'num:',num); randGen(num) end
	end
)

rand_tmr:start()

trig(3, 'down', 
	function(lvl, ts, cnt)
		if radMode &lt; 4 then radMode = radMode + 1 else radMode = 0 end
		print ('New radMode:', radMode)
	end
)</code></pre>



<p class="wp-block-paragraph">Початок статті:  <a href="https://iot-devices.com.ua/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1-ua/">Емулятор модуля лічильника Гейгера GGreg20_V3 засобами ESP8266: Частина 1. Вступ та загальний огляд </a></p>



<p class="wp-block-paragraph">Завершення статті за кілька днів у наступній публікації:<br>Емулятор модуля лічильника Гейгера GGreg20_V3 засобами ESP8266: Частина 3. Тестування та висновок</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Емулятор лічильника Гейгера GGreg20_V3 засобами ESP8266</title>
		<link>https://iot-devices.com.ua/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1-ua/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Mon, 27 Mar 2023 18:55:25 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Новини]]></category>
		<category><![CDATA[Тестування]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[emulator]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Espressif]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[tindie]]></category>
		<category><![CDATA[unit test]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2793</guid>

					<description><![CDATA[Ласкаво просимо до нашого посібника зі створення програмно-апаратного емулятора лічильника Гейгера GGreg20_V3 на базі ESP8266. Цей емулятор може бути корисним для тестування та налаштування лічильників Гейгера або у навчальних цілях. Давайте почнемо! Оновлено: Під час написання цієї статті, ми подумали і вирішили зробити окремий комерційний продукт &#8211; емулятор лічильника Гейгера GCemu20_V1. Частина 1: Вступ та [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Ласкаво просимо до нашого посібника зі створення програмно-апаратного емулятора лічильника Гейгера <a href="https://iot-devices.com.ua/product-uk/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_V3</a> на базі ESP8266. Цей емулятор може бути корисним для тестування та налаштування лічильників Гейгера або у навчальних цілях. Давайте почнемо!</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Оновлено:</strong> Під час написання цієї статті, ми подумали і вирішили зробити окремий комерційний продукт &#8211; емулятор лічильника Гейгера <a href="https://iot-devices.com.ua/product-uk/gcemu20_v1-geiger-counter-emulator/">GCemu20_V1</a>.</p></blockquote>



<h2 class="wp-block-heading">Частина 1: Вступ та загальний огляд</h2>



<p class="wp-block-paragraph">Загально відомо, що модуль Espressif ESP8266 має дуже якісний генератор випадкових чисел. Офіційні деталі щодо фактичної реалізації даного генератора нам знайти не вдалося, тож пропонуємо на цю тему подивитися матеріал, який було опубліковано радіоаматором і збережено в мережі інтернет:</p>



<p class="wp-block-paragraph"><a href="https://web.archive.org/web/20170321162556/http://esp8266-re.foogod.com/wiki/Random_Number_Generator" target="_blank" rel="noopener">https://web.archive.org/web/20170321162556/http://esp8266-re.foogod.com/wiki/Random_Number_Generator</a></p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Увага</strong>. У тексті застосовується два різних поняття, які мають однакову назву. Так історично склалося, що на ринку існує апаратний модуль NodeMCU, а також програмна прошивка NodeMCU. </p><p>Прошивка NodeMCU &#8211; це компільована мікропрограма з відкритим вихідним кодом, яка може записуватися на апаратні модулі з контролером ESP8266 компанії Espressif. Одним з величезної кількості продуктів на базі контролера ESP8266, є апаратний модуль NodeMCU. </p><p>Тож програмну прошивку NodeMCU можливо записати на апаратний модуль NodeMCU. У тексті цієї статті ми намагаємося, де це можливо, вказувати, що саме мається на увазі поруч з назвою NodeMCU: модуль чи прошивка.</p></blockquote>



<h2 class="wp-block-heading"><a></a>Для чого потрібен емулятор лічильника Гейгера</h2>



<p class="wp-block-paragraph">Перш ніж розпочати побудову емулятора лічильника Гейгера, необхідно розглянути для чого ж і кому може бути потрібен такий програмно-апаратний комплекс.</p>



<p class="wp-block-paragraph">Головна ідея будь-якого емулятора в галузі DIY-електроніки полягає у тому, щоб під час розробки IoT-пристроїв або проведення експериментів чи навчання, замість реального модуля тимчасово на певних етапах використовувати віртуальний компонент-замінник, який дозволяє відтворювати роботу та характеристики реального пристрою з високою точністю. Емулятор має спростити та прискорити розробку, а також додати зручності на початкових етапах запланованого проекту чи виконання модульних тестів.</p>



<p class="wp-block-paragraph">Ось кілька думок, що розлого пояснюють мотиви, якими ми керувалися, коли задумали розробити емулятор модуля лічильника Гейгера GGreg20_V3.</p>



<h3 class="wp-block-heading">1. Немає високої напруги</h3>



<p class="wp-block-paragraph">Емулятор GGreg20_V3, на відміну від справжнього модуля, не має високої напруги на платі, тому його дуже зручно використовувати під час розробки на столі і не боятися випадкового ураження струмом.</p>



<p class="wp-block-paragraph">В той же час, з точки зору електричного інтерфейсу вихідних імпульсів, емулятор є повністю аналогічним модулем сенсора радіації, що генерує випадкові імпульси такої ж форми та тривалості, як і справжній GGreg20_V3.</p>



<h3 class="wp-block-heading">2. Спрощений навчальний процес</h3>



<p class="wp-block-paragraph">Емулятор лічильника Гейгера добре лягає у набір для навчальних закладів. Викладач може поступово поглиблювати практичні заняття з студентами.</p>



<p class="wp-block-paragraph">Спочатку всі роботи у класі можуть проводитися на безпечних і дешевих емуляторах лічильника Гейгера, а вже потім на реальних модулях з трубками Гейгера та високою напругою на боці трубки. Як у військових: ознайомлення та тренування спочатку проводиться на холостих, а вже з досвідом на бойових боєприпасах.</p>



<p class="wp-block-paragraph">Емулятор повністю відтворює результати роботи справжнього модуля GGreg20_V3, тому немає проблеми недостатньої кількості реальних модулів у класі і кожен учень зможе самостійно працювати зі своїм модулем і повністю пройти процес навчання без поділу на групи чи черги, як це зазвичай буває, коли ресурси навчальних приладів та стендів у лабораторії обмежені.</p>



<h3 class="wp-block-heading">3. Нижча вартість</h3>



<p class="wp-block-paragraph">Емулятор має нижчу вартість, ніж справжній модуль GGreg20_V3, тому його не так шкода застосовувати, у першу чергу, для налагодження та узгодження схеми або програмного забезпечення системи, що проектується чи вивчається.</p>



<p class="wp-block-paragraph">Роботи з налагодження стенду чи проекту з таким емулятором можуть виконуватися без залучення відповідно кваліфікованого персоналу.</p>



<p class="wp-block-paragraph">Якщо емулятором користуються студенти, то викладач може не здійснювати особливого нагляду за роботою з приладами, як це буде необхідно робити з реальним модулем лічильника Гейгера.</p>



<p class="wp-block-paragraph">Емулятор, маючи низьку вартість, може закуповуватися у великих кількостях і видаватися студентам на весь час навчання, а не лише на час роботи у лабораторії навчального закладу.</p>



<h3 class="wp-block-heading">4. Справжнє джерело радіації не потрібне</h3>



<p class="wp-block-paragraph">Коли ми працюємо зі справжнім GGreg20_V3, нам потрібно мати справжнє джерело радіації, щоб відтворити різні ситуації, які необхідно передбачити у програмному забезпеченні системи вимірювання, що проектується або тестується. Щоб придбати тестове джерело радіації, радіоаматору потрібно заздалегідь вирішити низку завдань:</p>



<ul class="wp-block-list"><li>визначитися за фізико-хімічними параметрами, яке саме джерело потрібне;</li><li>знайти постачальника та придбати тестове джерело;</li><li>для деяких країн вимагається попередити митні служби і отримати дозвіл на ввіз через кордон;</li><li>тестове джерело може бути лише певної потужності;</li><li>потрібно правильно зберігати та утилізовувати такі інструменти, як радіоактивне джерело;</li><li>вартість справжнього джерела радіації та системи зберігання перевищує в рази вартість лічильника Гейгера.</li></ul>



<p class="wp-block-paragraph">З емулятором жодної з цих проблем не буде. Прилад вміє імітувати 5 різних режимів потужності іонізуючого випромінювання. Емулятор лічильника Гейгера створює вихідні імпульси аналогічні імпульсам справжнього модуля GGreg20_V3 у діапазоні від 0 до 1.5 мкЗв/год (якщо брати за аналогічний еталон трубку СБМ-20). На виході генеруються хаотичні (із застосуванням генератора справжніх випадкових чисел ESP8266) імпульси однакової амплітуди з тривалістю повного періоду імпульсу 10 мікросекунд кожен.</p>



<h3 class="wp-block-heading">5. Ресурс емулятора не виснажується</h3>



<p class="wp-block-paragraph">Трубка СБМ-20, яку встановлено у GGreg20_V3, має відносно великий, але все ж таки обмежений ресурс частинок, які вона може детектувати за своє життя.</p>



<p class="wp-block-paragraph">Заявлений у документації ресурс трубки СБМ-20 складає не менше 2*10<sup>10</sup> імпульсів.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка 1</strong>. За фонового випромінювання 0.15 мкЗв/год з коефіцієнтом 0.0057 трубка СБМ-20 детектувати близько 27 імпульсів на хвилину.</p></blockquote>



<p class="wp-block-paragraph">Таким чином, за нормальних умов ресурсу трубки вистачить на 2*10<sup>10</sup> / (27 * 60 * 24) = 20 000 000 000 / (26 * 60 * 24) = 514403 днів. І здавалося б, що це цілком достатній потенційний строк експлуатації однієї трубки.</p>



<p class="wp-block-paragraph">Зовсім інша картина спостерігається, коли йдеться про експлуатацію трубки з тестовим джерелом радіації.</p>



<p class="wp-block-paragraph">Наведемо приклад:</p>



<p class="wp-block-paragraph">На своєму сайті компанія Images Scientific Instruments наводить перелік дозволених до ввозу граничних рівнів радіоактивного випромінювання для тестових джерел:</p>



<p class="wp-block-paragraph"><a href="https://www.imagesco.com/geiger/radioactive-sources-int.html" target="_blank" rel="noopener">https://www.imagesco.com/geiger/radioactive-sources-int.html</a></p>



<p class="wp-block-paragraph">Візьмемо два джерела з наведеного за посиланням переліку:</p>



<ol class="wp-block-list"><li>Co-60 1.00 uCi, 37000 Bq;</li><li>Cs-137 0.25 uCi, 9250 Bq;</li></ol>



<p class="wp-block-paragraph">Якщо припустити, що під впливом такого тестового джерела половина частинок від радіоактивних розпадів потрапляють у трубку Гейгера СБМ-20, то ресурс такої трубки складе:</p>



<ol class="wp-block-list"><li>20 000 000 000 / (37000 / 2 * 60 * 60 * 24) = 12 днів (для Co-60);</li><li>20 000 000 000 / (9250 / 2 * 60 * 60 * 24) = 50 днів (для Cs-137).</li></ol>



<p class="wp-block-paragraph">Як можемо бачити, якщо ми хочемо ставити експерименти (чи тестувати свої пристрої, у складі яких є лічильник Гейгера) на реальній трубці, то ми виснажуємо її наявний ресурс реальним джерелом радіації досить швидко.</p>



<p class="wp-block-paragraph">З емулятором такої проблеми немає. Застосовувати спочатку емулятор замість трубки економічно доцільно.</p>



<h3 class="wp-block-heading"> 6. Дані налагодження в UART</h3>



<p class="wp-block-paragraph">Емулятор модуля GGreg20_V3 у процесі своєї роботи виводить у порт UART-консолі оперативні дані своєї роботи (імпульси, час, кількість, цикли і т.п.), які за необхідності може реєструвати і обробляти студент, розробник чи радіоаматор щоб навчатися, або порівнювати з вимірами своєї системи, яка тестується чи розробляється.</p>



<p class="wp-block-paragraph">Такої вбудованої можливості у справжнього модуля GGreg20_V3 та аналогічних модулів інших виробників немає і не може бути.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка 2</strong>. Для підключення до UART-консолі, модуль <a href="https://iot-devices.com.ua/product-uk/esp12-oled-komplekt-2-kontroler-iot-bez-displeya-na-osnovi-esp8266-12f/">ESP12.OLED</a>, на якому базується емулятор GGreg20_V3, має на друкованій платі окремо виведені лінії інтерфейсу UART (отвори з кроком 2.54 мм під пайку). Для підключення емулятора до комп’ютера користувачеві додатково потрібно мати власний перетворювач USB-UART. Далі у тексті буде наведено схему підключення.</p></blockquote>



<p class="wp-block-paragraph">Продовження статті у наступних публікаціях:<br><a href="https://iot-devices.com.ua/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part2-ua/">Емулятор модуля лічильника Гейгера GGreg20_V3 засобами ESP8266 Частина 2 Створення емулятора</a><br>Емулятор модуля лічильника Гейгера GGreg20_V3 засобами ESP8266 Частина 3: Тестування та висновок</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Емулятор лічильника Гейгера з імпульсним виходом GCemu20_V1</title>
		<link>https://iot-devices.com.ua/gcemu20_v1-geiger-counter-emulator-with-pulse-output/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Thu, 23 Mar 2023 19:56:30 +0000</pubDate>
				<category><![CDATA[Новини]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2763</guid>

					<description><![CDATA[Київ, Україна &#8211; Компанія IoT-devices, провідний постачальник інноваційних рішень у сфері Інтернету речей, рада повідомити про запуск свого новітнього продукту &#8211; емулятор лічильника Гейгера з імпульсним виходом GCemu20_V1. Ключовою особливістю цього пристрою є його здатність імітувати рівні радіації за допомогою вбудованого генератора справжніх випадкових чисел. Крім того, пристрій пропонує п&#8217;ять різних режимів потужності випромінювання, які [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Київ, Україна &#8211; Компанія IoT-devices, провідний постачальник інноваційних рішень у сфері Інтернету речей, рада повідомити про запуск свого новітнього продукту &#8211; емулятор лічильника Гейгера з імпульсним виходом GCemu20_V1. Ключовою особливістю цього пристрою є його здатність імітувати рівні радіації за допомогою вбудованого генератора справжніх випадкових чисел. Крім того, пристрій пропонує п&#8217;ять різних режимів потужності випромінювання, які можна імітувати, а також можливість імітувати помилку датчика в одному з його режимів. GCemu20_V1 &#8211; це продукт, призначений для радіоаматорів і професіоналів, студентів і любителів &#8220;зроби сам&#8221;.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release.png"><img loading="lazy" decoding="async" width="1024" height="683" src="https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release-1024x683.png" alt="" class="wp-image-2765" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release-1024x683.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release-300x200.png 300w, https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release-768x512.png 768w, https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release-454x303.png 454w, https://iot-devices.com.ua/wp-content/uploads/2023/03/gcemu20_v1_eng_press-release.png 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<p class="wp-block-paragraph">GCemu20_V1 &#8211; це компактний пристрій, який імітує датчики радіації у порівнянні з реальними датчиками радіації з лічильником Гейгера. Його розширені функції роблять його ідеальним для різних застосувань під час тестування систем виявлення радіації.</p>



<p class="wp-block-paragraph">Емулятор лічильника Гейгера з імпульсним виходом GCemu20_V1 &#8211; це не тільки чудовий інструмент для радіоаматорів та ентузіастів &#8220;зроби сам&#8221;, але й ідеальний пристрій для тих, хто займається розробкою, налаштуванням, тестуванням і вивченням детекторів радіації.</p>



<p class="wp-block-paragraph">Емулятор лічильника Гейгера з імпульсним виходом GCemu20_V1 є ідеальним вибором для тих, кому потрібно імітувати рівні радіації в своїх проектах, або для любителів, зацікавлених в експериментах з виявленням радіації.</p>



<p class="wp-block-paragraph">&#8220;Ми раді представити наш останній продукт, емулятор лічильника Гейгера GCemu20_V1, на ринку B2C&#8221;, &#8211; сказав представник компанії. &#8220;Цей пристрій розроблений спеціально для радіоаматорів та ентузіастів &#8220;зроби сам&#8221;, яким потрібно імітувати рівні радіації в своїх проектах, і ми впевнені, що він задовольнить їхні унікальні потреби&#8221;.</p>



<p class="wp-block-paragraph">Емулятор лічильника Гейгера з імпульсним виходом GCemu20_V1 вже доступний для придбання:</p>



<p class="wp-block-paragraph"></p>



<figure class="wp-block-table is-style-stripes"><table><tbody><tr><td>Tindie:</td><td><a href="https://www.tindie.com/products/iotdev/gcemu20_v1-geiger-counter-emulator/" target="_blank" rel="noopener">GCemu20_V1</a></td></tr><tr><td>iot-devices.com.ua:</td><td><a href="https://iot-devices.com.ua/product-uk/gcemu20_v1-geiger-counter-emulator/">GCemu20_V1</a></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Для отримання додаткової інформації, будь ласка, відвідайте сайт IoT-devices, LLC.</p>



<h3 class="wp-block-heading">Про компанію IoT-devices, LLC</h3>



<p class="wp-block-paragraph">IoT-devices, LLC &#8211; провідний постачальник інноваційних рішень у сфері Інтернету речей. Компанія базується в Києві, Україна, і пропонує широкий спектр продуктів, покликаних допомогти своїм клієнтам покращити знання про Інтернет речей та досвід у сфері &#8220;зроби сам&#8221; і досягти поставлених цілей.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>У нашій Київській лабораторії зараз розробляється нова серія продуктів IoT для кінцевих користувачів</title>
		<link>https://iot-devices.com.ua/new-enduser-iot-product-series-are-now-developed-in-our-kyivlab/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Sun, 18 Dec 2022 17:39:29 +0000</pubDate>
				<category><![CDATA[Новини]]></category>
		<category><![CDATA[ESP32]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2531</guid>

					<description><![CDATA[Поки що не розкриваємо нової лінійки наших пристроїв, але вже демонструємо як розробляється код прошивки. Наразі для задоволення цікавості лише можемо сказати, що це будуть програмно-апаратні IoT пристрої, які мають наступні властивості: подвійного призначення: стокова і кастомна прошивка можлива; без жорсткого прив&#8217;язування до IoT-devices LLC, як виробника; проста конфігурація і швидкий старт користування; підключення опціональних [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Поки що не розкриваємо нової лінійки наших пристроїв, але вже демонструємо як розробляється код прошивки.</p>



<p class="wp-block-paragraph">Наразі для задоволення цікавості лише можемо сказати, що це будуть програмно-апаратні IoT пристрої, які мають наступні властивості:</p>



<ul class="wp-block-list"><li>подвійного призначення: стокова і кастомна прошивка можлива;</li><li>без жорсткого прив&#8217;язування до IoT-devices LLC, як виробника;</li><li>проста конфігурація і швидкий старт користування;</li><li>підключення опціональних сенсорів на кшталт Plug &amp; Play;</li><li>ретрансляція даних вузлами на кшталт meshed networks;</li><li>connectionless and serverless архітектура;</li><li>сумісність компонентів з ESPHome;</li><li>та відтак, підтримка у Home Assistant.</li></ul>



<p class="wp-block-paragraph">На скріншоті вирішуємо задачу підключення до контролера ESP8266 різних сенсорів.&nbsp;А точніше задачу компактного і змістовного кодування даних вимірів у пакети про сенсори так, &nbsp;щоб вони були корисні для мобільного додатку, який їх буде обробляти на смартфоні і достатньо читабельні для користувача, якщо у нього немає бажання користуватися додатком.</p>



<figure class="wp-block-image size-full"><a href="https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-25_124527.jpg"><img loading="lazy" decoding="async" width="569" height="988" src="https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-25_124527.jpg" alt="" class="wp-image-2536" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-25_124527.jpg 569w, https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-25_124527-173x300.jpg 173w, https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-25_124527-454x788.jpg 454w" sizes="(max-width: 569px) 100vw, 569px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-27.jpg"><img loading="lazy" decoding="async" width="483" height="776" src="https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-27.jpg" alt="" class="wp-image-2539" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-27.jpg 483w, https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-27-187x300.jpg 187w, https://iot-devices.com.ua/wp-content/uploads/2022/12/iot-devices-llc-humanreadable_sensordata_2022-10-27-454x729.jpg 454w" sizes="(max-width: 483px) 100vw, 483px" /></a></figure>



<p class="wp-block-paragraph"><br>Ну і головне, нові пристрої будуть подвійного призначення. Користувач може ввімкнути щойно придбаний пристрій з готовою прошивкою і одразу користуватися його функціями без жодних складних процедур конфігурації та підключення. Або зможе розробити свою прошивку, адже всередині пристроїв будуть всім відомі ESP8266.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Про наш модуль GGreg20_v3 пишуть у Twitter</title>
		<link>https://iot-devices.com.ua/ggreg20_v3-twitter/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Sun, 06 Nov 2022 20:10:55 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Новини]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<category><![CDATA[Twitter]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2477</guid>

					<description><![CDATA[Наші клієнти розповіли про особливості використання модуля GGreg20_v3. Ми вдячні за високу оцінку:]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Наші клієнти розповіли про особливості використання модуля <a href="https://iot-devices.com.ua/product-uk/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_v3</a>. Ми вдячні за високу оцінку:</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
https://twitter.com/sboger/status/1588745017497358336?s=20&#038;t=q6ngn3ruRvlof3YbRPChCg
</div></figure>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6a84ecce2b6a6&quot;}" data-wp-interactive="core/image" data-wp-key="6a84ecce2b6a6" class="wp-block-image size-full wp-lightbox-container"><img loading="lazy" decoding="async" width="952" height="911" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2022/11/twitter_sboger_GGreg20_V3_HA-ESPHome.png" alt="" class="wp-image-4312" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/11/twitter_sboger_GGreg20_V3_HA-ESPHome.png 952w, https://iot-devices.com.ua/wp-content/uploads/2022/11/twitter_sboger_GGreg20_V3_HA-ESPHome-300x287.png 300w, https://iot-devices.com.ua/wp-content/uploads/2022/11/twitter_sboger_GGreg20_V3_HA-ESPHome-768x735.png 768w, https://iot-devices.com.ua/wp-content/uploads/2022/11/twitter_sboger_GGreg20_V3_HA-ESPHome-454x434.png 454w" sizes="(max-width: 952px) 100vw, 952px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Підключення сенсора радіації GGreg20_V3 до сервера Home Assistant через інтеграцію ESP Home &#8211;  частина 3</title>
		<link>https://iot-devices.com.ua/pidklyuchennya-sensora-radiacziyi-ggreg20_v3-do-servera-home-assistant-cherez-integracziyu-esp-home-3/</link>
		
		<dc:creator><![CDATA[iot-guru]]></dc:creator>
		<pubDate>Sat, 17 Sep 2022 05:39:21 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[application-note]]></category>
		<category><![CDATA[ESP32]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=1087</guid>

					<description><![CDATA[Пропонуємо до вашої уваги останню, третю частину опису процедури підключення детектора (сенсора) GGreg20 у поєднанні з головним контролером ESP8266 чи ESP32 до сервера Home Assistant через плагін ESP Home. Другу частину опису дивіться за посиланням: Підключення сенсора радіації GGreg20_V3 до сервера Home Assistant через інтеграцію ESP Home &#8211; частина 2 Примітка. Дана публікація підходить для [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Пропонуємо до вашої уваги останню, <strong>третю частину опису</strong> процедури підключення детектора (сенсора) GGreg20 у поєднанні з головним контролером ESP8266 чи ESP32 до сервера Home Assistant через плагін ESP Home.</p>



<p class="wp-block-paragraph"><strong>Другу частину опису</strong> дивіться за посиланням: <strong><a href="https://iot-devices.com.ua/pidklyuchennya-sensora-radiacziyi-ggreg20_v3-do-servera-home-assistant-cherez-integracziyu-esp-home-2/" class="rank-math-link">Підключення сенсора радіації GGreg20_V3 до сервера Home Assistant через інтеграцію ESP Home &#8211; частина 2</a></strong></p>



<p class="wp-block-paragraph"> </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Примітка</strong>. Дана публікація підходить для всіх версій детектора іонізуючої радіації виробництва IoT-devices: GGreg20_V1, GGreg20_V2, GGreg20_V3.&nbsp;<br>Оскільки вся лінійка даних детекторів орієнтована на трубку СБМ-20, усі версії пристроїв мають однаковий алгоритм та коефіцієнти розрахунку рівня потужності та дози іонізуючого випромінювання.<br>На точність вимірювання впливають лише індивідуальні властивості встановленої в кожен конкретний детектор GGreg20_V3 трубки СБМ-20. У технічних характеристиках виробника трубок вказано граничний діапазон точності вимірювань у&nbsp;<a rel="noreferrer noopener" href="https://zapadpribor.com/sbm20/" target="_blank">20%</a>. На практиці це означає, що два однакові пристрої GGreg20, але з різними трубками СБМ-20, можуть давати результати (не білше ніж) із зазначеним відхиленням за кількістю імпульсів.</p></blockquote>



<h2 class="wp-block-heading">Кроки з підключення GGreg20 до Home Assistant – продовження.</h2>



<h5 class="wp-block-heading">Крок 8. Перевірити журнал нового контролера ESP8266 з підключеним Ggreg20<br>Крок 9. Перевірити, чи утворилися нові сутності на боці сервера<br>Крок 10. Додати на Дашборд віджети сенсора радіації Ggreg20<br>Крок 11. Додати скрипт автоматизації Push-нотифікації у додаток Home Assistant про перетин порогів</h5>



<h3 class="wp-block-heading">Сутності та показники пристрою на сервері</h3>



<h4 class="wp-block-heading"><strong>Крок 8</strong>. Перевірити журнал нового контролера ESP8266 з підключеним GGreg20</h4>



<p class="wp-block-paragraph">Наводимо приклад консолі діючого пристрою з GGreg20 та yaml-налаштуваннями аналогічними тим, що ми розробили вище.</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13.png"><img loading="lazy" decoding="async" width="1024" height="661" src="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13-1024x661.png" alt="" class="wp-image-1097" srcset="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13-1024x661.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13-454x293.png 454w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13-300x194.png 300w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13-768x496.png 768w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-13.png 1393w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>



<p class="wp-block-paragraph">Рис. Вивід у консоль журналу (Logs) пристрою через інтерфейс ESP Home</p>



<h4 class="wp-block-heading"><strong>Крок 9</strong>. Перевірити, чи утворилися нові сутності на боці сервера</h4>



<p class="wp-block-paragraph">Щоб перевірити, чи утворилися відповідні сутності GGreg20 в плагіні ESP Home і чи бачить їх сервер Home Assistant, є два шляхи:</p>



<ul class="wp-block-list"><li>перейти в меню Інструменти для розробників на бічній панелі інтерфейсу Home Assistant та пошукати відповідні дані так, як показано на Рис.</li></ul>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15.png"><img loading="lazy" decoding="async" width="1024" height="778" src="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15-1024x778.png" alt="" class="wp-image-1100" srcset="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15-1024x778.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15-454x345.png 454w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15-300x228.png 300w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15-768x584.png 768w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-15.png 1104w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>



<p class="wp-block-paragraph">Рис. Пошук потрібних сутностей через меню Інструменти для розробників</p>



<ul class="wp-block-list"><li>або перейти у меню Конфігурація -&gt; Інтеграція та пошукати як показано на на наступних рисунках</li></ul>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17.png"><img loading="lazy" decoding="async" width="1024" height="514" src="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17-1024x514.png" alt="" class="wp-image-1102" srcset="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17-1024x514.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17-454x228.png 454w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17-300x151.png 300w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17-768x385.png 768w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17-1536x771.png 1536w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-17.png 1670w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>



<p class="wp-block-paragraph">Рис. Пошук потрібних сутностей через меню Конфігурація -&gt; Інтеграція</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18.png"><img loading="lazy" decoding="async" width="1024" height="475" src="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18-1024x475.png" alt="" class="wp-image-1104" srcset="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18-1024x475.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18-454x211.png 454w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18-300x139.png 300w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18-768x356.png 768w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18-1536x712.png 1536w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-18.png 1673w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>



<p class="wp-block-paragraph">Рис. Пошук потрібних сутностей через меню Конфігурація -&gt; Інтеграція : Пристрої / Сутності</p>



<h3 class="wp-block-heading">Візуалізація та Автоматизація</h3>



<h4 class="wp-block-heading"><strong>Крок 10</strong>. Додати на Дашборд віджети сенсора радіації GGreg20</h4>



<p class="wp-block-paragraph">Наводимо приклад демонстраційної вкладки з діючого сервера для двох пристроїв GGreg20_V1 та GGreg20_V3 розташованих у різних площинах координат. Для кожного з пристроїв застосовується такий самий yaml-файл, як ми створили вище.</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14.png"><img loading="lazy" decoding="async" width="1024" height="547" src="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14-1024x547.png" alt="" class="wp-image-1098" srcset="https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14-1024x547.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14-454x243.png 454w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14-300x160.png 300w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14-768x410.png 768w, https://iot-devices.com.ua/wp-content/uploads/2021/07/image-14.png 1415w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>



<p class="wp-block-paragraph">Рис. Дашборд демонструє віджети з даними про рівень радіації з двох сенсорів GGreg20_V1 і GGreg20_V3 що розташовано за різними вісями координат.</p>



<h4 class="wp-block-heading"><strong>Крок 11</strong>. Додати скрипт автоматизації Push-нотифікації у додаток Home Assistant про перетин порогів</h4>



<p class="wp-block-paragraph">Після того, як ми пересвідчилися, що новий пристрій працює і надсилає надійні дані, можливо перейти до головної задачі &#8211; Автоматизацій. Цей потужний інструмент доступний адміністраторові через меню Конфігурація -&gt; Автоматизації.</p>



<p class="wp-block-paragraph">Оскільки сутності, зі значенням потужності та дози іонізуючої радіації, створені нами засобами ESP Home, доступні наскрізно для всіх компонентів та функцій Home Assistant, адміністратор може створювати будь-які події, функції, сценарії з їх застосуванням.</p>



<p class="wp-block-paragraph">Наприклад, можливо створити автоматизоване сповіщення, про перевищення нормального порогу потужності іонізуючого випромінювання з повідомленням на смартфон. І так далі.</p>



<p class="wp-block-paragraph">Але, ці теми далеко виходять за межі даної публікації і ми не маємо змоги їх тут розглянути.</p>



<h2 class="wp-block-heading">Висновки</h2>



<p class="wp-block-paragraph">У <strong><a href="https://iot-devices.com.ua/pidklyuchennya-sensora-radiacziyi-ggreg20_v3-do-servera-home-assistant-cherez-integracziyu-esp-home/" class="rank-math-link">першій</a></strong> та <strong><a href="https://iot-devices.com.ua/pidklyuchennya-sensora-radiacziyi-ggreg20_v3-do-servera-home-assistant-cherez-integracziyu-esp-home-2/" class="rank-math-link">другій</a></strong> частинах ми розглянули кроки</p>



<p class="wp-block-paragraph">Сервер<br>Крок 1. Встановити (або запустити) сервер Home Assistant<br><br>Плагін ESP Home для Home Assistant<br>Крок 2. Підключити розширення ESP Home для сервера Home Assistant через меню Supervisor -&gt; Add-on Store<br><br>YAML-конфіг нового пристрою ESP з GGreg<br>Крок 3. Скачати готовий приклад пакетного yaml-файлу конфігурації пристрою GGreg20_V3 для ESP8266 з нашого сайту<br>Крок 4. Створити (на базі прикладу) у ESP Home відповідний yaml-файл конфігурації<br><br>Апаратне підключення GGreg20_V3 і контролера<br>Крок 5. Обрати пін GPIO на контролері, який буде реєструвати імпульси від Ggreg20<br>Крок 6. Підключити до контролера ESP8266 детектор радіації GGreg20_V3 через роз’єм Out до обраного GPIO контролера<br><br>Прошивка пристрою ESP з GGreg<br>Крок 7. Побудувати і записати прошивку для контролера</p>



<p class="wp-block-paragraph">Далі ми виконали наступні кроки з підключення GGreg20 до Home Assistant:</p>



<h5 class="wp-block-heading">Крок 8. Перевірити журнал нового контролера ESP8266 з підключеним Ggreg20<br>Крок 9. Перевірити, чи утворилися нові сутності на боці сервера<br>Крок 10. Додати на Дашборд віджети сенсора радіації Ggreg20<br>Крок 11. Додати скрипт автоматизації Push-нотифікації у додаток Home Assistant про перетин порогів</h5>



<p class="wp-block-paragraph">Ми докладно розглянули найпростіший шлях підключення детектора GGreg20 з контролером ESP8266 до сервера Home Assistant з плагіном ESP Home.</p>



<p class="wp-block-paragraph">І пересвідчилися, що це зовсім не складно, адже всю роботу за нас виконує:</p>



<ul class="wp-block-list"><li>Детектор GGreg20_V3 &#8211; одразу ж реєструє імпульси і передає їх на ESP8266;</li><li>Плагін ESP Home &#8211; надає інтерфейс з побудови прошивок і програмування ESP8266;</li><li>Готовий yaml-файл звільняє нас від самостійного написання директив для сенсора GGreg20;</li><li>Сервер Home Assistant надає нам можливість зручно підключати, адмініструвати та отримувати інформацію з будь-яких наших пристроїв.</li></ul>



<p class="wp-block-paragraph">На цьому все. Бажаємо успіхів!</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
