
ΠΠ΅Π½Π΅Ρ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π±ΡΠ·ΠΈΠΎΡ ΡΠ°Π·Π²ΠΎΡ Π½Π° ΠΌΠΈΠΊΡΠΎΠ΅Π»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊΠ°ΡΠ°, ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡΠΊΠΈΡΠ΅ ΠΊΠ°Π½Π°Π»ΠΈ, ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡΠ΅ ΠΈ Π²Π΅ΡΡΠ°ΡΠΊΠ°ΡΠ° ΠΈΠ½ΡΠ΅Π»ΠΈΠ³Π΅Π½ΡΠΈΡΠ°, ΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΡΠ΅ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΡΡΠ°Π½ΡΠ²Π° ΡΠ΅ ΠΏΠΎΠ°ΠΊΡΡΠ΅Π»Π½Π°. Π§ΠΎΠ²Π΅ΡΠΊΠΎΡΠΎ Π΄ΠΎΠΌΡΠ²Π°ΡΠ΅ ΠΏΡΠ΅ΡΡΠΏΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΎΠ΄ ΠΊΠ°ΠΌΠ΅Π½ΠΎΡΠΎ Π΄ΠΎΠ±Π° ΠΈ Π²ΠΎ Π΅ΡΠ°ΡΠ° Π½Π° ΠΠ½Π΄ΡΡΡΡΠΈΡΠΊΠ°ΡΠ° ΡΠ΅Π²ΠΎΠ»ΡΡΠΈΡΠ° 4.0 ΠΈ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠΎΡ Π½Π° Π½Π΅ΡΡΠ°ΡΠ°, ΡΡΠ°Π½Π° ΡΠ΄ΠΎΠ±Π½ΠΎ, ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ ΠΈ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎ. ΠΠ° ΠΏΠ°Π·Π°ΡΠΎΡ Π΄ΠΎΠ°ΡΠ°Π°Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡΠ° ΠΊΠΎΠΈ ΠΏΡΠ΅ΡΠ²ΠΎΡΠ°Π°Ρ ΡΡΠ°Π½ ΠΈΠ»ΠΈ ΡΠ΅Π»ΡΠΊΠ° ΠΊΡΡΠ° Π²ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΠΊΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΠΎΠ΄ ΠΊΠ°Π΄Π΅ Π±ΠΈΠ»ΠΎ Π²ΠΎ ΡΠ²Π΅ΡΠΎΡ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ ΡΠ΅Π»Π΅ΡΠΎΠ½. ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ°ΡΠ° ΡΠΎΠ²Π΅ΠΊ-ΠΌΠ°ΡΠΈΠ½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ Π½Π΅ Π±Π°ΡΠ° ΠΏΠΎΠ·Π½Π°Π²Π°ΡΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΡΠΈ - Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅ΠΏΠΎΠ·Π½Π°Π²Π°ΡΠ΅ ΠΈ ΡΠΈΠ½ΡΠ΅Π·Π° Π½Π° Π³ΠΎΠ²ΠΎΡ, Π΅Π΄Π½ΠΎ Π»ΠΈΡΠ΅ Π·Π±ΠΎΡΡΠ²Π° ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ Π½Π° ΡΠ²ΠΎΡΠΎΡ ΠΌΠ°ΡΡΠΈΠ½ ΡΠ°Π·ΠΈΠΊ.
ΠΠ΅ΠΊΠΎΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΠΊΠΎΠΈ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ ΡΠ΅ Π½Π° ΠΏΠ°Π·Π°ΡΠΎΡ ΡΠ΅ Π»ΠΎΠ³ΠΈΡΠ΅Π½ ΡΠ°Π·Π²ΠΎΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ, ΡΠΈΠΈ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΠΈ ΡΠ° ΡΡΠ°ΡΠΈΡΠ° ΠΏΠΎΡΡΠ΅Π±Π°ΡΠ° ΠΎΠ΄ ΡΠ΅ΠΎΠΏΡΠ°ΡΠ½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ»Π΅Π΄Π΅ΡΠ΅, ΡΡΠΊΡ ΠΈ Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΎΠ΄Π΄Π°Π»Π΅ΡΠ΅Π½ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΈ.
ΠΠΈ ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π°ΠΌΠ΅ ΡΠ΅ΡΠΈΡΠ° ΠΎΠ΄ ΡΡΠΈ ΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠΈ ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ°Ρ Π·Π° ΡΠΈΡΠ΅ Π³Π»Π°Π²Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ, Π»ΠΈΡΠ½ΠΎ ΡΠ°Π·Π²ΠΈΠ΅Π½ ΠΎΠ΄ Π°Π²ΡΠΎΡΠΎΡ ΠΈ ΡΡΠ°Π²Π΅Π½ Π²ΠΎ ΡΡΠ½ΠΊΡΠΈΡΠ°. ΠΡΠ²Π°ΡΠ° ΡΡΠ°ΡΠΈΡΠ° Π΅ ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½Π° Π½Π° ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π½Π°ΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ° ΠΎΠΏΡΠ΅ΠΌΠ° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π° Π²ΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ, Π²ΡΠΎΡΠ°ΡΠ° Π½Π° Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ ΠΎΠ±Π»Π°ΠΊ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠ΅ΡΠ°ΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°ΡΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΈ ΡΡΠ°ΡΠΈΠΎΠ½Π°ΡΠ½ΠΈ ΡΡΠ΅Π΄ΠΈ.
ΠΠ°ΠΌΠ΅ΡΠ½Π° Π΄ΠΎΠΌΠ°ΡΠ½Π° ΠΎΠΏΡΠ΅ΠΌΠ°
ΠΡΠ²ΠΎ, Π΄Π° ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠ°ΠΌΠ΅ Π·Π° ΡΠΎΠ° ΠΊΠ°ΠΊΠΎ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌΠ΅ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ ΠΎΠ΄ ΠΎΠ±ΠΈΡΠ΅Π½ ΡΡΠ°Π½, Π΄Π°ΡΠ° ΠΈΠ»ΠΈ ΠΊΡΡΠ°. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΠΎΡΡΠ΅Π±Π½ΠΎ Π΅ Π΄Π° ΡΠ° ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΠΎΠΏΡΠ΅ΠΌΠ° Π²ΠΎ Π΄ΠΎΠΌΠΎΡ:
- ΡΠ΅Π½Π·ΠΎΡΠΈ ΠΊΠΎΠΈ ΠΌΠ΅ΡΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΅ΠΊΠΎΠ»ΠΎΡΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ;
- Π°ΠΊΡΡΠ°ΡΠΎΡΠΈ ΠΊΠΎΠΈ Π΄Π΅Π»ΡΠ²Π°Π°Ρ Π½Π° Π½Π°Π΄Π²ΠΎΡΠ΅ΡΠ½ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΈ;
- ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ ΠΊΠΎΡ Π²ΡΡΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠΊΠΈ Π²ΠΎ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎΡΡ ΡΠΎ ΠΌΠ΅ΡΠ΅ΡΠ°ΡΠ° Π½Π° ΡΠ΅Π½Π·ΠΎΡΠΎΡ ΠΈ Π²Π³ΡΠ°Π΄Π΅Π½Π°ΡΠ° Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈ ΠΈΠ·Π΄Π°Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° Π°ΠΊΡΡΠ°ΡΠΎΡΠΈΡΠ΅.
ΠΠ° ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΠ»ΠΈΠΊΠ° Π΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½ Π΄ΠΈΡΠ°Π³ΡΠ°ΠΌ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ, Π½Π° ΠΊΠΎΡ ΠΈΠΌΠ° ΡΠ΅Π½Π·ΠΎΡΠΈ Π·Π° ΠΈΡΡΠ΅ΠΊΡΠ²Π°ΡΠ΅ Π²ΠΎΠ΄Π° (1) Π²ΠΎ Π±Π°ΡΠ°ΡΠ°, ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ° (2) ΠΈ ΠΎΡΠ²Π΅ΡΠ»ΡΠ²Π°ΡΠ΅ (3) Π²ΠΎ ΡΠΏΠ°Π»Π½Π°ΡΠ° ΡΠΎΠ±Π°, ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ ΡΡΠ΅ΠΊΠ΅Ρ (4) Π²ΠΎ ΠΊΡΡΠ½Π°ΡΠ° ΠΈ Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠ°ΠΌΠ΅ΡΠ° (5) Π²ΠΎ Ρ ΠΎΠ΄Π½ΠΈΠΊΠΎΡ.

ΠΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², ΡΠΈΡΠΎΠΊΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π±Π΅Π·ΠΆΠΈΡΠ½ΠΈ ΡΠ΅Π½Π·ΠΎΡΠΈ ΠΊΠΎΠΈ ΡΠ°Π±ΠΎΡΠ°Ρ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ RF433, Z-Wave, ZigBee, Bluetooth ΠΈ WiFi. ΠΠΈΠ²Π½ΠΈΡΠ΅ Π³Π»Π°Π²Π½ΠΈ ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈ ΡΠ΅ Π»Π΅ΡΠ½ΠΎΡΠΈΡΠ°ΡΠ° Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΠ° ΠΈ ΡΠΏΠΎΡΡΠ΅Π±Π°, ΠΊΠ°ΠΊΠΎ ΠΈ Π½ΠΈΡΠΊΠ°ΡΠ° ΡΠ΅Π½Π° ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΡΠ΅ ΡΡΡΠ΅ΠΌΠ°Ρ Π΄Π° Π³ΠΈ Π΄ΠΎΠ½Π΅ΡΠ°Ρ ΡΠ²ΠΎΠΈΡΠ΅ ΡΡΠ΅Π΄ΠΈ Π½Π° ΠΌΠ°ΡΠΎΠ²Π½ΠΈΠΎΡ ΠΏΠ°Π·Π°Ρ ΠΈ Π΄Π° Π³ΠΈ Π½Π°ΠΏΡΠ°Π²Π°Ρ Π΄ΠΎΡΡΠ°ΠΏΠ½ΠΈ Π·Π° ΠΏΡΠΎΡΠ΅ΡΠ½ΠΈΠΎΡ ΠΊΠΎΡΠΈΡΠ½ΠΈΠΊ.
Π‘Π΅Π½Π·ΠΎΡΠΈΡΠ΅ ΠΈ Π°ΠΊΡΠΈΠ²Π°ΡΠΎΡΠΈΡΠ΅, ΠΏΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΠΏΡΠ΅ΠΊΡ Π±Π΅Π·ΠΆΠΈΡΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌΠ°ΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ (6) - ΡΠΏΠ΅ΡΠΈΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΊΠΎΡ Π³ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ° ΡΠΈΡΠ΅ ΠΎΠ²ΠΈΠ΅ ΡΡΠ΅Π΄ΠΈ Π²ΠΎ Π΅Π΄Π½Π° ΠΌΡΠ΅ΠΆΠ° ΠΈ Π³ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°.
Π‘Π΅ΠΏΠ°ΠΊ, Π½Π΅ΠΊΠΎΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡΠ° ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π°Ρ ΡΠ΅Π½Π·ΠΎΡ, Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Ρ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π²ΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ° Π΄Π° ΡΠ΅ Π²ΠΊΠ»ΡΡΡΠ²Π° ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡΡΡΠ²Π° ΡΠΏΠΎΡΠ΅Π΄ ΡΠ°ΡΠΏΠΎΡΠ΅Π΄, Π° ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ° Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ½ΠΈΠΌΠ° Π²ΠΈΠ΄Π΅ΠΎ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠΈΠ³Π½Π°Π» ΠΎΠ΄ Π΄Π΅ΡΠ΅ΠΊΡΠΎΡ Π·Π° Π΄Π²ΠΈΠΆΠ΅ΡΠ΅. ΠΠΎ Π½Π°ΡΠ΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΈΡΠ΅ ΡΠ»ΡΡΠ°ΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ Π±Π΅Π· ΠΏΠΎΡΠ΅Π±Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ, Π½ΠΎ Π·Π° Π΄Π° ΡΠΎΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π΅Π½ ΡΠΈΡΡΠ΅ΠΌ ΡΠΎ ΠΌΠ½ΠΎΠ³Ρ ΡΡΠ΅Π½Π°ΡΠΈΡΠ°, Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΎ Π΅.
ΠΠ° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΡΠΎ Π³Π»ΠΎΠ±Π°Π»Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΎΠ±ΠΈΡΠ΅Π½ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΡΡΡΠ΅Ρ (7), ΠΊΠΎΡ ΠΎΠ΄Π°ΠΌΠ½Π° ΡΡΠ°Π½Π° Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ Π°ΠΏΠ°ΡΠ°Ρ Π·Π° Π΄ΠΎΠΌΠ°ΡΠΈΠ½ΡΡΠ²ΠΎ Π²ΠΎ ΡΠ΅ΠΊΠΎΡ Π΄ΠΎΠΌ. ΠΠ²Π΄Π΅ ΠΈΠΌΠ° ΡΡΡΠ΅ Π΅Π΄Π΅Π½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Π²ΠΎ ΠΊΠΎΡΠΈΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ - Π°ΠΊΠΎ ΡΠ΅ ΠΈΠ·Π³ΡΠ±ΠΈ Π²ΡΡΠΊΠ°ΡΠ° ΡΠΎ ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ, ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ ΡΠ΅ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π½ΠΎΡΠΌΠ°Π»Π½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π»ΠΎΠ³ΠΈΡΠΊΠΈΠΎΡ Π±Π»ΠΎΠΊ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°Π½ Π²ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ, Π° Π½Π΅ Π²ΠΎ ΡΡΠ»ΡΠ³Π°ΡΠ° ΠΎΠ±Π»Π°ΠΊ.
ΠΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌΠ°ΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ
ΠΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ ΡΡΠΎ ΡΠ΅ Π΄ΠΈΡΠΊΡΡΠΈΡΠ° Π²ΠΎ ΠΎΠ²ΠΎΡ Π½Π°ΠΏΠΈΡ Π΅ ΡΠ°Π·Π²ΠΈΠ΅Π½ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΡΠΎ Π΅Π΄Π½Π° ΠΏΠ»ΠΎΡΠ° , ΠΊΠΎΡ Π±Π΅ΡΠ΅ ΠΎΠ±ΡΠ°Π²Π΅Π½ Π²ΠΎ ΠΌΠ°ΡΡ 2018 Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΠΈΠΌΠ° Π΄ΠΎΠ²ΠΎΠ»Π½ΠΎ ΡΠ΅ΡΡΡΡΠΈ ΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈ Π·Π°Π΄Π°ΡΠΈ. ΠΠΊΠ»ΡΡΡΠ²Π° ΡΠ΅ΡΠΈΡΠΈ-ΡΠ°Π΄ΡΠ΅Π½ Cortex-A53 ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° 64-Π±ΠΈΡΠ½Π° ARMv8-A Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, ΡΠΎ ΡΠ°ΠΊΡ Π½Π° 1.4 GHz, ΠΊΠ°ΠΊΠΎ ΠΈ 1 GB RAM, Wi-Fi 802.11ac, Bluetooth 4.2 ΠΈ Π³ΠΈΠ³Π°Π±ΠΈΡΠ΅Π½ Π΅ΡΠ΅ΡΠ½Π΅Ρ Π°Π΄Π°ΠΏΡΠ΅Ρ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠΈ ΠΏΡΠ΅ΠΊΡ USB 2.0 .

Π‘ΠΊΠ»ΠΎΠΏΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π΅ ΠΌΠ½ΠΎΠ³Ρ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ - ΠΌΠΈΠΊΡΠΎΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ (1) Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ Π²ΠΎ ΠΏΠ»Π°ΡΡΠΈΡΠ½Π° ΠΊΡΡΠΈΡΠ° (2), ΠΏΠΎΡΠΎΠ° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠΊΠ° ΠΊΠ°ΡΡΠΈΡΠΊΠ° ΠΎΠ΄ 8 GB Π²ΠΎ microSD ΡΠΎΡΠΌΠ°Ρ ΡΠΎ ΡΠΎΡΡΠ²Π΅Ρ (3) ΠΈ USB Z-Wave ΠΌΡΠ΅ΠΆΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ (4) ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈΡΠ΅ ΡΠ»ΠΎΡΠΎΠ²ΠΈ. ΠΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ Π΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ ΡΠΎ Π½Π°ΠΏΠΎΡΡΠ²Π°ΡΠ΅ΡΠΎ ΠΏΡΠ΅ΠΊΡ Π°Π΄Π°ΠΏΡΠ΅Ρ Π·Π° Π½Π°ΠΏΠΎΡΡΠ²Π°ΡΠ΅ ΠΎΠ΄ 5V, 2.1Π (5) ΠΈ USB - ΠΌΠΈΠΊΡΠΎ-USB ΠΊΠ°Π±Π΅Π» (6). Π‘Π΅ΠΊΠΎΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ ΠΈΠΌΠ° Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠΊΠΈ Π±ΡΠΎΡ, ΠΊΠΎΡ Π΅ Π·Π°ΠΏΠΈΡΠ°Π½ Π²ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΊΠ°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° ΠΏΡΠΈ ΠΏΡΠ²ΠΎΡΠΎ Π»Π°Π½ΡΠΈΡΠ°ΡΠ΅ ΠΈ Π΅ Π½Π΅ΠΎΠΏΡ
ΠΎΠ΄Π΅Π½ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΡΡΠ»ΡΠ³ΠΈΡΠ΅ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ.
Π‘ΠΎΡΡΠ²Π΅ΡΠΎΡ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ Π±Π΅ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ΅Π½ ΠΎΠ΄ Π°Π²ΡΠΎΡΠΎΡ Π½Π° ΠΎΠ²ΠΎΡ Π½Π°ΠΏΠΈΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ Linux Π Π°ΡΠΏΠ±ΠΈΡΡΠΊΠΈ Π²ΠΎΠ΄Π°Ρ. Π‘Π΅ ΡΠΎΡΡΠΎΠΈ ΠΎΠ΄ ΡΠ»Π΅Π΄Π½ΠΈΠ²Π΅ Π³Π»Π°Π²Π½ΠΈ ΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΠΈ:
- ΡΠ΅ΡΠ²Π΅ΡΡΠΊΠΈ ΠΏΡΠΎΡΠ΅Ρ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ½Π° Π΄ΠΎΠΌΠ°ΡΠ½Π° ΠΎΠΏΡΠ΅ΠΌΠ° ΠΈ ΠΎΠ±Π»Π°ΠΊΠΎΡ;
- Π³ΡΠ°ΡΠΈΡΠΊΠΈ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ Π·Π° ΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΊΠΈΡΠ΅ ΠΈ ΡΠ°Π±ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ;
- Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π·Π° ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ.

ΠΠ°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ Π΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Π²Π³ΡΠ°Π΄Π΅Π½ DBMS ΠΈ Π΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠ° Π½Π° SD ΠΊΠ°ΡΡΠΈΡΠΊΠ° ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΡΠΎΡΡΠ²Π΅Ρ. Π‘Π»ΡΠΆΠΈ ΠΊΠ°ΠΊΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ΅ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ - ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΏΠΎΠ²ΡΠ·Π°Π½Π°ΡΠ° ΠΎΠΏΡΠ΅ΠΌΠ° ΠΈ Π½Π΅ΡΠ·ΠΈΠ½Π°ΡΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½Π° ΡΠΎΡΡΠΎΡΠ±Π°, Π±Π»ΠΎΠΊ ΠΎΠ΄ Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ, ΠΊΠ°ΠΊΠΎ ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΡΠΎ Π±Π°ΡΠ°Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°ΡΠ΅ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠΈΡΠ° Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π° Π²ΠΈΠ΄Π΅ΠΎ Π°ΡΡ
ΠΈΠ²Π°). ΠΠΎΠ³Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ ΡΠ΅ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°, ΠΎΠ²ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠ΅ Π·Π°ΡΡΠ²ΡΠ²Π°Π°Ρ, ΡΡΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ Π²ΠΎ ΡΠ»ΡΡΠ°Ρ Π½Π° ΠΏΡΠ΅ΠΊΠΈΠ½ Π½Π° Π½Π°ΠΏΠΎΡΡΠ²Π°ΡΠ΅ΡΠΎ.
ΠΡΠ°ΡΠΈΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌΠ°ΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ ΡΠ°Π·Π²ΠΈΠ΅Π½ Π²ΠΎ PHP 7 ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΌΠΈΠΊΡΠΎΡΠ°ΠΌΠΊΠ° . ΠΠ΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ΅Π½ Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ°. , ΡΠ΅ΡΡΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π²ΠΎ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΏΠΎΡΠ°Π΄ΠΈ Π΄ΠΎΠ±ΡΠΈΡΠ΅ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ ΠΈ Π½ΠΈΡΠΊΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈ Π·Π° ΡΠ΅ΡΡΡΡΠΈ.
(ΠΊΠ»ΠΈΠΊΠ½Π΅ΡΠ΅ Π½Π° ΡΠ»ΠΈΠΊΠ°ΡΠ° Π·Π° Π΄Π° ΡΠ° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ Π²ΠΎ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ°)
ΠΠ»Π°Π²Π½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΡΠ° Π½Π° Π³ΡΠ°ΡΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ Π΅ Π΄Π° ΡΠ° ΠΏΠΎΠ²ΡΠ·Π΅ ΠΏΠ°ΠΌΠ΅ΡΠ½Π°ΡΠ° Π΄ΠΎΠΌΠ°ΡΠ½Π° ΠΎΠΏΡΠ΅ΠΌΠ° (IP ΠΊΠ°ΠΌΠ΅ΡΠΈ Π·Π° Π½Π°Π΄Π·ΠΎΡ ΠΈ ΡΠ΅Π½Π·ΠΎΡΠΈ) ΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ. ΠΠ΅Π±-Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° ΡΠ° ΡΠΈΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ°ΡΠ° ΠΈ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½Π°ΡΠ° ΡΠΎΡΡΠΎΡΠ±Π° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ ΠΈ ΡΡΠ΅Π΄ΠΈΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ Π½Π΅Π³ΠΎ ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ SQLite. ΠΠ° Π΄Π° ΡΠ° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ, ΡΠΎΡ ΠΈΡΠΏΡΠ°ΡΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ JSON ΠΏΡΠ΅ΠΊΡ RESTful API ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ.
ΠΡΠΎΡΠ΅Ρ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ
ΠΡΠΎΡΠ΅Ρ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ - ΠΊΠ»ΡΡΠ½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΊΠΎΡΠ° ΡΠ° Π²ΡΡΠΈ ΡΠ΅Π»Π°ΡΠ° Π³Π»Π°Π²Π½Π° ΡΠ°Π±ΠΎΡΠ° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΠΊΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΈ ΠΊΠΎΠΈ ΡΠ° ΡΠΎΡΠΌΠΈΡΠ°Π°Ρ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ: ΠΏΡΠΈΠΌΠ°ΡΠ΅ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠ΅Π½Π·ΠΎΡΠ½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, ΠΈΠ·Π΄Π°Π²Π°ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ Π΄Π΅ΡΡΡΠ²Π° Π²ΠΎ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡ ΠΎΠ΄ Π²Π³ΡΠ°Π΄Π΅Π½Π°ΡΠ° Π»ΠΎΠ³ΠΈΠΊΠ°. Π¦Π΅Π»ΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π΅ Π΄Π° ΠΊΠΎΠΌΡΠ½ΠΈΡΠΈΡΠ° ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ½Π°ΡΠ° Π΄ΠΎΠΌΠ°ΡΠ½Π° ΠΎΠΏΡΠ΅ΠΌΠ°, Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π° Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ, Π΄Π° ΠΏΡΠΈΠΌΠ° ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΎΠ΄ Π³ΡΠ°ΡΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΠΈ ΠΎΠ±Π»Π°ΠΊΠΎΡ. ΠΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π²ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ ΡΡΠΎ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄ΡΠ²Π° Π΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ ΠΊΠ°ΠΊΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° ΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½ΠΈΡΠΊΠΈ ΡΠ°Π·Π²ΠΈΠ΅Π½Π° Π²ΠΎ C++ ΠΈ Π»Π°Π½ΡΠΈΡΠ°Π½Π° ΠΊΠ°ΠΊΠΎ ΠΏΠΎΡΠ΅Π±Π½Π° ΡΡΠ»ΡΠ³Π° systemd ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π΅Π½ ΡΠΈΡΡΠ΅ΠΌ Linux Raspbian.
ΠΠ»Π°Π²Π½ΠΈΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΡΠ΅:
- ΠΠ΅Π½Π°ΡΠ΅Ρ Π·Π° ΠΏΠΎΡΠ°ΠΊΠΈ;
- Π‘Π΅ΡΠ²Π΅Ρ Π·Π° IP ΠΊΠ°ΠΌΠ΅ΡΠ°;
- Π‘Π΅ΡΠ²Π΅Ρ Π·Π° ΡΡΠ΅Π΄ Z-Wave;
- Π‘Π΅ΡΠ²Π΅Ρ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°;
- ΠΠ°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ ΠΈ Π±Π»ΠΎΠΊ Π½Π° Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°;
- RESTful API ΡΠ΅ΡΠ²Π΅Ρ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ Π³ΡΠ°ΡΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ;
- MQTT ΠΊΠ»ΠΈΠ΅Π½Ρ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ.
ΠΡΠΎΡΠ΅ΡΠ½ΠΈΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π°Ρ ΠΊΠ°ΠΊΠΎ ΠΏΠΎΡΠ΅Π±Π½ΠΈ Π½ΠΈΡΠΊΠΈ, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈΡΠ΅ ΠΌΠ΅ΡΡ ΠΊΠΎΠΈ ΡΠ΅ ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°Π°Ρ Π²ΠΎ ΡΠΎΡΠΌΠ° Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ JSON (ΠΈΠ»ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΡΡΠΎ Π³ΠΎ ΠΏΡΠ΅ΡΡΡΠ°Π²ΡΠ²Π°Π°Ρ ΠΎΠ²ΠΎΡ ΡΠΎΡΠΌΠ°Ρ Π²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠ½Π°ΡΠ° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°).

ΠΠ»Π°Π²Π½Π°ΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π΅ ΠΌΠ΅Π½Π°ΡΠ΅Ρ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ, ΠΊΠΎΡ Π³ΠΈ Π½Π°ΡΠΎΡΡΠ²Π° JSON ΠΏΠΎΡΠ°ΠΊΠΈΡΠ΅ Π΄ΠΎ ΡΠΈΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ. ΠΠΈΠ΄ΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΈΡΠ° Π·Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΏΠΎΡΠ°ΠΊΠΈ JSON ΠΈ Π²ΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅ ΡΡΠΎ ΠΌΠΎΠΆΠ°Ρ Π΄Π° Π³ΠΈ ΠΏΡΠΈΡΠ°ΡΠ°Ρ ΡΠ΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ Π²ΠΎ ΡΠ°Π±Π΅Π»Π°ΡΠ°:
Π’ΠΈΠΏ Π½Π° ΡΡΠ΅Π΄
ΠΏΡΠΎΡΠΎΠΊΠΎΠ»
Π’ΠΈΠΏ Π½Π° ΠΏΠΎΡΠ°ΠΊΠ°
ΡΡΠ΅Π΄Π‘ΠΎΡΡΠΎΡΠ±Π°
ΠΊΠΎΠΌΠ°Π½Π΄Π°
ΠΊΠ°ΠΌΠ΅ΡΠ°
onvif
ΡΠ΅Π½Π·ΠΎΡΡΠΊΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
on
ΡΡΡΠΈΠΌΠΈΠ½Π³ (Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ/ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΎ)
ΡΠ΅Π½Π·ΠΎΡ
Π±ΡΠ°Π½
ΠΊΠΎΠΌΠ°Π½Π΄Π°
ΠΈΡΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅
ΡΠ½ΠΈΠΌΠ°ΡΠ΅ (Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ/ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΎ)
Π΅ΡΠ΅ΠΊΡΠΎΡ
mqtt
BusinessLogicRule
ΡΡΡΠΈΠΌΠΈΠ½Π³ (Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ/ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΎ)
evice (ΠΠΎΠ΄Π°Ρ/ΠΡΡΡΡΠ°Π½ΠΈ)
Π±ΠΈΠ·Π½ΠΈΡΠΠΎΠ³ΠΈΠΊΠ°
ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° ΠΠΎΠ΄Π°ΡΠΎΡΠΈ
ΡΠ½ΠΈΠΌΠ°ΡΠ΅ (Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ/ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΎ)
Bluetooth
ΡΡΠ΅Π΄Π‘ΠΎΡΡΠΎΡΠ±Π°
Π³ΡΠ΅ΡΠΊΠ°
wifi
rf
ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΠ°ΠΊΠ° ΠΎΠ΄ Π΄Π΅ΡΠ΅ΠΊΡΠΎΡ Π·Π° Π΄Π²ΠΈΠΆΠ΅ΡΠ΅ Π½Π° ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ° ΠΈΠ·Π³Π»Π΅Π΄Π° Π²Π°ΠΊΠ°:
{
"vendor": "*****",
"version": "3.0.0",
"timestampMs": "1566293475475",
"clientType": "gateway",
"deviceId": "1616453d-30cd-44b7-9bf0-************",
"deviceType": "camera",
"protocol": "onvif",
"messageType": "sensorData",
"sensorType": "camera",
"label": "motionDetector",
"sensorData": "on"
}
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½Π° Π»ΠΎΠ³ΠΈΠΊΠ°
ΠΠ° Π΄Π° ΠΏΡΠΈΠΌΠ°ΡΠ΅ ΠΈΠ»ΠΈ ΠΈΡΠΏΡΠ°ΡΠΈΡΠ΅ ΠΏΠΎΡΠ°ΠΊΠ° ΠΎΠ΄ Π΄ΠΈΡΠΏΠ΅ΡΠ΅ΡΠΎΡ, Π±Π»ΠΎΠΊΠΎΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠΈ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ ΠΎΠ΄ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ ΡΠΈΠΏ. ΠΡΠ΅ΡΠΏΠ»Π°ΡΠ°ΡΠ° Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ΠΎ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΠΎΠ΄ ΡΠΈΠΏΠΎΡ "ΠΠΊΠΎ ΡΠΎΠ³Π°Ρ...", ΠΏΡΠ΅ΡΡΡΠ°Π²Π΅Π½ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ JSON ΠΈ Π²ΡΡΠΊΠ° Π΄ΠΎ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠΎΡ ΡΠΎ ΠΏΠΎΡΠ°ΠΊΠΈ Π²ΠΎ Π±Π»ΠΎΠΊΠΎΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π° Π΄Π° Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π½Π° IP ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ° Π΄Π° ΠΏΡΠΈΠΌΠ° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΎΠ΄ GUI ΠΈ ΠΎΠ΄ ΠΎΠ±Π»Π°ΠΊΠΎΡ, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ Π΄ΠΎΠ΄Π°Π΄Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΎΠ²ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ:
{
"if": {
"and": [{
"equal": {
"deviceId": "1616453d-30cd-44b7-9bf0-************"
}
},
{
"equal": {
"messageType": "command"
}
}
]
},
"then": {
"result": "true"
}
}
ΠΠΎΠΊΠΎΠ»ΠΊΡ ΡΡΠ»ΠΎΠ²ΠΈΡΠ΅ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ Π²ΠΎ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΠΊ (Π»Π΅Π²Π°ΡΠ° ΡΡΡΠ°Π½Π°) ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° ΡΠ΅ Π²ΠΈΡΡΠΈΠ½ΠΈΡΠΈ, ΡΠΎΠ³Π°Ρ ΡΠΎΠ° Π΅ Π·Π°Π΄ΠΎΠ²ΠΎΠ»Π΅Π½ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ (Π΄Π΅ΡΠ½Π°ΡΠ° ΡΡΡΠ°Π½Π°) ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΈ ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠΎΡ Π΄ΠΎΠ±ΠΈΠ²Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΡΠ΅Π»ΠΎΡΠΎ Π½Π° ΠΏΠΎΡΠ°ΠΊΠ°ΡΠ° JSON. ΠΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΡ ΠΏΠΎΠ΄Π΄ΡΠΆΡΠ²Π° Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈ ΠΊΠΎΠΈ Π³ΠΈ ΡΠΏΠΎΡΠ΅Π΄ΡΠ²Π°Π°Ρ ΠΏΠ°ΡΠΎΠ²ΠΈΡΠ΅ ΠΊΠ»ΡΡ-Π²ΡΠ΅Π΄Π½ΠΎΡΡ Π½Π° JSON:
- Π΅Π΄Π½Π°ΠΊΠ²ΠΎ Π½Π° "Π΅Π΄Π½Π°ΠΊΠ²ΠΈ";
- Π½Π΅ Π΅ Π΅Π΄Π½Π°ΠΊΠ²ΠΎ Π½Π° βΠ½Π΅_Π΅Π΄Π½Π°ΠΊΠΎΠ²β;
- ΠΏΠΎΠΌΠ°Π»ΠΊΡ βΠΏΠΎΠΌΠ°Π»ΠΊΡβ;
- ΠΏΠΎΠ²Π΅ΡΠ΅ βΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ°β;
- ΠΏΠΎΠΌΠ°Π»ΠΎ ΠΈΠ»ΠΈ Π΅Π΄Π½Π°ΠΊΠ²ΠΎ Π½Π° βΠΏΠΎΠΌΠ°Π»_ΠΈΠ»ΠΈ_Π΅Π΄Π½Π°ΠΊΠ²ΠΎβ;
- ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠΎ ΠΈΠ»ΠΈ Π΅Π΄Π½Π°ΠΊΠ²ΠΎ Π½Π° βΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠΎ_ΠΈΠ»ΠΈ_Π΅Π΄Π½Π°ΠΊΠ²ΠΎβ.
Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΠ΄ ΡΠΏΠΎΡΠ΅Π΄Π±Π°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Ρ Π΅Π΄Π½ΠΈ ΡΠΎ Π΄ΡΡΠ³ΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π±ΡΠ»ΠΎΠ²ΠΈ Π°Π»Π³Π΅Π±ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈ:
- Π "ΠΈ"
- ΠΠΠ βΠΈΠ»ΠΈβ;
- ΠΠ βΠ½Π΅β.
Π’Π°ΠΊΠ°, ΡΠΎ ΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈ ΠΈ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΈ Π²ΠΎ ΠΏΠΎΠ»ΡΠΊΠ° Π½ΠΎΡΠ°ΡΠΈΡΠ°, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠΎΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈ ΡΡΠ»ΠΎΠ²ΠΈ ΡΠΎ Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ.
Π’ΠΎΡΠ½ΠΎ ΠΈΡΡΠΈΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° JSON ΠΏΠΎΡΠ°ΠΊΠΈ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ Π²ΠΎ JSON ΡΠΎΡΠΌΠ°Ρ, ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π²ΠΎ Π±Π»ΠΎΠΊΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π·Π° Π»ΠΎΠ³ΠΈΠΊΠ° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ Π·Π° Π΄Π° Π³ΠΎ ΠΏΡΠ΅ΡΡΡΠ°Π²ΠΈ Π·Π½Π°Π΅ΡΠ΅ΡΠΎ ΠΈ Π΄Π° ΡΠΏΡΠΎΠ²Π΅Π΄Π΅ Π»ΠΎΠ³ΠΈΡΠΊΠΈ Π·Π°ΠΊΠ»ΡΡΠΎΡΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΡΠ΅Π½Π·ΠΎΡΠ½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΎΠ΄ ΡΠ΅Π½Π·ΠΎΡΠΈ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ.
Π‘ΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°, ΠΊΠΎΡΠΈΡΠ½ΠΈΠΊΠΎΡ ΠΊΡΠ΅ΠΈΡΠ° ΡΡΠ΅Π½Π°ΡΠΈΡΠ° ΡΠΏΠΎΡΠ΅Π΄ ΠΊΠΎΠΈ ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ ΡΡΠ΅Π±Π° Π΄Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ: βΠΠΊΠΎ ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΡΠ΅Π½Π·ΠΎΡΠΎΡ Π·Π° ΠΎΡΠ²ΠΎΡΠ°ΡΠ΅ Π½Π° Π²Π»Π΅Π·Π½Π°ΡΠ° Π²ΡΠ°ΡΠ°, ΡΠΎΠ³Π°Ρ Π²ΠΊΠ»ΡΡΠ΅ΡΠ΅ Π³ΠΎ ΡΠ²Π΅ΡΠ»ΠΎΡΠΎ Π²ΠΎ Ρ ΠΎΠ΄Π½ΠΈΠΊΠΎΡβ. ΠΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ° Π³ΠΈ ΡΠΈΡΠ° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ Π½Π° ΡΠ΅Π½Π·ΠΎΡΠΈΡΠ΅ (ΡΠ΅Π½Π·ΠΎΡ Π·Π° ΠΎΡΠ²ΠΎΡΠ°ΡΠ΅) ΠΈ Π°ΠΊΡΡΠ°ΡΠΎΡΠΈΡΠ΅ (ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΠ°ΠΌΠ΅ΡΠ½Π° Π»Π°ΠΌΠ±Π°) ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π²ΠΎ JSON ΡΠΎΡΠΌΠ°Ρ, ΠΊΠΎΠ΅ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ° Π΄ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ. ΠΠ²ΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ ΠΏΠΎΠ΄Π΅ΡΠ°Π»Π½ΠΎ ΡΠ΅ ΡΠ΅ Π΄ΠΈΡΠΊΡΡΠΈΡΠ° Π²ΠΎ ΡΡΠ΅ΡΠ°ΡΠ° ΡΡΠ°ΡΠΈΡΠ° ΠΎΠ΄ Π½Π°ΡΠ°ΡΠ° ΡΠ΅ΡΠΈΡΠ°, ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΡΠ΅ Π·Π±ΠΎΡΡΠ²Π°ΠΌΠ΅ Π·Π° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°ΡΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° Π·Π° ΡΠΏΡΠ°Π²ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈΠΎΡ Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ ΠΏΠΎΠ³ΠΎΡΠ΅ ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° β SAX ΠΏΠ°ΡΡΠ΅Ρ Π·Π° JSON ΡΠΎΡΠΌΠ°Ρ Π²ΠΎ C++. Π‘Π΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ°Π»Π½ΠΎΡΠΎ ΡΠΈΡΠ°ΡΠ΅ ΠΈ ΠΏΠ°ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° Π½ΠΈΠ·Π° ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° Π·Π° ΡΠΏΠΎΡΠ΅Π΄Π±Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π²ΠΎ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅:
void CRuleEngine::Process(PProperties pFact)
{
m_pActions->clear();
rapidjson::Reader reader;
for(TStringMap::value_type& rRule : m_Rules)
{
std::string sRuleId = rRule.first;
std::string sRuleBody = rRule.second;
CRuleHandler ruleHandler(pFact);
rapidjson::StringStream ruleStream(sRuleBody.c_str());
rapidjson::ParseResult parseResult = reader.Parse(ruleStream, ruleHandler);
if(!parseResult)
{
m_Logger.LogMessage(
NLogger2::ePriorityLevelError,
std::string("JSON parse error"),
"CRuleEngine::Process()",
std::string("RuleId: ") + sRuleId);
}
PProperties pAction = ruleHandler.GetAction();
if(pAction)
{
pAction->Set("ruleId", sRuleId);
m_pActions->push_back(pAction);
}
}
}
Π’ΡΠΊΠ° pFact β ΡΡΡΡΠΊΡΡΡΠ° ΠΊΠΎΡΠ° ΡΠΎΠ΄ΡΠΆΠΈ ΠΏΠ°ΡΠΎΠ²ΠΈ ΠΊΠ»ΡΡ-Π²ΡΠ΅Π΄Π½ΠΎΡΡ ΠΎΠ΄ ΠΏΠΎΡΠ°ΠΊΠ° JSON, m_ΠΡΠ°Π²ΠΈΠ»Π° β Π½ΠΈΠ·Π° ΠΎΠ΄ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°. Π‘ΠΏΠΎΡΠ΅Π΄Π±Π°ΡΠ° Π½Π° Π΄ΠΎΡΠ΄ΠΎΠ²Π½Π°ΡΠ° ΠΏΠΎΡΠ°ΠΊΠ° ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΠΎΡΠΎ Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ ΡΠ΅ Π²ΡΡΠΈ Π²ΠΎ ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° reader.Parse(ruleStream, ruleRandler)ΠΊΠ°Π΄Π΅ Π Π°ΠΊΡΠ²Π°Ρ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π° Π΅ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠΎΡ ΡΠ° ΡΠΎΠ΄ΡΠΆΠΈ Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π½Π° ΠΡΠ»ΠΎΠ²ΠΈΡΠ΅ ΠΈ ΡΠΏΠΎΡΠ΅Π΄Π±Π΅Π½ΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈ. sRuleId β ΡΠ½ΠΈΠΊΠ°ΡΠ΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π°, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΡ Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°Π°Ρ ΠΈ ΡΡΠ΅Π΄ΡΠ²Π°Π°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΈ. m_pActions β Π½ΠΈΠ·Π° ΡΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΎΠ΄ Π»ΠΎΠ³ΠΈΡΠΊΠΎ Π·Π°ΠΊΠ»ΡΡΡΠ²Π°ΡΠ΅: JSON ΠΏΠΎΡΠ°ΠΊΠΈ ΠΊΠΎΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΈΡΠΈ ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ΠΈ ΠΏΠΎΠ½Π°ΡΠ°ΠΌΡ Π΄ΠΎ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π·Π° Π΄Π° ΠΌΠΎΠΆΠ°Ρ Π½ΠΈΡΠΊΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΈΡΠΈΡΠ΅ Π΄Π° Π³ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π°Π°Ρ.
ΠΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅ Π½Π° RapidJSON ΡΠ΅ ΡΠΏΠΎΡΠ΅Π΄Π»ΠΈΠ²ΠΈ ΡΠΎ ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° strlen (), Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈΡΠ΅ Π±Π°ΡΠ°ΡΠ° Π·Π° ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΡΠ΅ΡΡΡΡΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Π°Ρ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΠΎΠ²Π°Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π²ΠΎ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΡΠ΅Π΄ΠΈ. Π£ΠΏΠΎΡΡΠ΅Π±Π°ΡΠ° Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ ΠΈ Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π²ΠΎ JSON ΡΠΎΡΠΌΠ°Ρ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°ΡΠ΅ ΡΠ»Π΅ΠΊΡΠΈΠ±ΠΈΠ»Π΅Π½ ΡΠΈΡΡΠ΅ΠΌ Π·Π° ΡΠ°Π·ΠΌΠ΅Π½Π° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎΠΌΠ΅ΡΡ ΡΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ.
Π-Π±ΡΠ°Π½ΠΎΠ²ΠΈ ΡΠ΅Π½Π·ΠΎΡΠΈ ΠΈ Π°ΠΊΡΡΠ°ΡΠΎΡΠΈ
ΠΠ»Π°Π²Π½Π°ΡΠ° ΠΏΡΠ΅Π΄Π½ΠΎΡΡ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ Π΅ ΡΠΎΠ° ΡΡΠΎ ΠΌΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΡΡΠΎΡΠ½ΠΎ Π΄Π° ΠΌΠ΅ΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° Π½Π°Π΄Π²ΠΎΡΠ΅ΡΠ½ΠΎΡΠΎ ΠΎΠΏΠΊΡΡΠΆΡΠ²Π°ΡΠ΅ ΠΈ Π΄Π° Π²ΡΡΠΈ ΠΊΠΎΡΠΈΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΎ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡ ΠΎΠ΄ ΡΠΈΡΡΠ°ΡΠΈΡΠ°ΡΠ°. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΡΠ΅Π½Π·ΠΎΡΠΈΡΠ΅ ΠΈ Π°ΠΊΡΠΈΠ²Π°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ. ΠΠΎ ΡΠ΅ΠΊΠΎΠ²Π½Π°ΡΠ° Π²Π΅ΡΠ·ΠΈΡΠ°, ΠΎΠ²Π° ΡΠ΅ Π±Π΅Π·ΠΆΠΈΡΠ½ΠΈ ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΠΈ ΡΠ°Π±ΠΎΡΠ°Ρ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠ°Π»Π½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ° 869 MHz ΠΠ° Π ΡΡΠΈΡΠ°. ΠΠ° Π΄Π° ΡΠ°Π±ΠΎΡΠ°Ρ, ΡΠΈΠ΅ ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π°Ρ Π²ΠΎ ΠΌΡΠ΅ΠΆΠ½Π° ΠΌΡΠ΅ΠΆΠ°, ΠΊΠΎΡΠ° ΡΠΎΠ΄ΡΠΆΠΈ ΠΏΠΎΠ²ΡΠΎΡΡΠ²Π°ΡΠΈ Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΈ Π·Π° Π΄Π° ΡΠ΅ Π·Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠ±Π»Π°ΡΡΠ° Π½Π° ΠΏΠΎΠΊΡΠΈΠ΅Π½ΠΎΡΡ. Π£ΡΠ΅Π΄ΠΈΡΠ΅ ΠΈΠΌΠ°Π°Ρ ΠΈ ΠΏΠΎΡΠ΅Π±Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π·Π° Π·Π°ΡΡΠ΅Π΄Π° Π½Π° Π΅Π½Π΅ΡΠ³ΠΈΡΠ° - ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠΈΠΎΡ Π΄Π΅Π» ΠΎΠ΄ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π³ΠΎ ΠΏΠΎΠΌΠΈΠ½ΡΠ²Π°Π°Ρ Π²ΠΎ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΌΠΈΡΡΠ²Π°ΡΠ΅ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΠ°ΠΌΠΎ ΠΊΠΎΠ³Π° Π½ΠΈΠ²Π½Π°ΡΠ° ΡΠΎΡΡΠΎΡΠ±Π° ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° Π³ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈ ΠΆΠΈΠ²ΠΎΡΠ½ΠΈΠΎΡ Π²Π΅ΠΊ Π½Π° Π²Π³ΡΠ°Π΄Π΅Π½Π°ΡΠ° Π±Π°ΡΠ΅ΡΠΈΡΠ°.

Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΡΠ΄Π΅ΡΠ΅ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΠ΅Π΄ΠΈ Z-Wave Π½Π° ΠΏΠ°Π·Π°ΡΠΎΡ. ΠΡΠ΄Π΅ Π΄Π° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΈΠΌΠ΅ΡΠΈ:
- ΠΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ ΡΡΠ΅ΠΊΠ΅Ρ Zipato PAN16 ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΈ ΠΌΠ΅ΡΠΈ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ: ΠΏΠΎΡΡΠΎΡΡΠ²Π°ΡΠΊΠ° Π½Π° Π΅Π»Π΅ΠΊΡΡΠΈΡΠ½Π° Π΅Π½Π΅ΡΠ³ΠΈΡΠ° (kWh), ΠΌΠΎΡΠ½ΠΎΡΡ (W), Π½Π°ΠΏΠΎΠ½ (V) ΠΈ ΡΡΡΡΡΠ° (A) Π²ΠΎ Π΅Π»Π΅ΠΊΡΡΠΈΡΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°. ΠΠΌΠ° ΠΈ Π²Π³ΡΠ°Π΄Π΅Π½ ΠΏΡΠ΅ΠΊΠΈΠ½ΡΠ²Π°Ρ ΡΠΎ ΠΊΠΎΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈΠΎΡ Π΅Π»Π΅ΠΊΡΡΠΈΡΠ΅Π½ Π°ΠΏΠ°ΡΠ°Ρ;
- Π‘Π΅Π½Π·ΠΎΡΠΎΡ Π·Π° ΠΈΡΡΠ΅ΠΊΡΠ²Π°ΡΠ΅ Neo Coolcam Π΄Π΅ΡΠ΅ΠΊΡΠΈΡΠ° ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° ΠΈΡΡΡΡΠ΅Π½Π° ΡΠ΅ΡΠ½ΠΎΡΡ ΡΠΎ Π·Π°ΡΠ²ΠΎΡΠ°ΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ Π½Π° Π΄Π°Π»Π΅ΡΠΈΠ½ΡΠΊΠ°ΡΠ° ΡΠΎΠ½Π΄Π°;
- Π‘Π΅Π½Π·ΠΎΡΠΎΡ Π·Π° ΡΠ°Π΄ Zipato PH-PSG01 ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° ΠΊΠΎΠ³Π° ΡΠ΅ΡΡΠΈΡΠΊΠΈΡΠ΅ ΡΠ°Π΄ Π²Π»Π΅Π³ΡΠ²Π°Π°Ρ Π²ΠΎ ΠΊΠΎΠΌΠΎΡΠ°ΡΠ° Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΡ Π½Π° Π³Π°Ρ;
- Π‘Π΅Π½Π·ΠΎΡΠΎΡ Π·Π° Π΄Π²ΠΈΠΆΠ΅ΡΠ΅ Neo Coolcam Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΠ²Π΅Π½ΠΎΡΠΎ Π·ΡΠ°ΡΠ΅ΡΠ΅ Π½Π° ΡΠΎΠ²Π΅ΡΠΊΠΎΡΠΎ ΡΠ΅Π»ΠΎ. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠΌΠ° ΡΠ΅Π½Π·ΠΎΡ Π·Π° ΡΠ²Π΅ΡΠ»ΠΈΠ½Π° (Lx);
- ΠΡΠ»ΡΠΈΡΠ΅Π½Π·ΠΎΡΠΎΡ Philio PST02-A ΠΌΠ΅ΡΠΈ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ° (Β°C), ΡΠ²Π΅ΡΠ»ΠΈΠ½Π° (%), ΠΎΡΠ²ΠΎΡΠ°ΡΠ΅ Π½Π° Π²ΡΠ°ΡΠ°ΡΠ°, ΠΏΡΠΈΡΡΡΡΠ²ΠΎ Π½Π° Π»ΠΈΡΠ΅ Π²ΠΎ ΠΏΡΠΎΡΡΠΎΡΠΈΡΠ°ΡΠ°;
- ΠΡΠ΅ΠΆΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Z-Wave USB Stick ZME E UZB1, Π½Π° ΠΊΠΎΡ ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠ΅Π½Π·ΠΎΡΠΈΡΠ΅.
ΠΠ½ΠΎΠ³Ρ Π΅ Π²Π°ΠΆΠ½ΠΎ ΡΡΠ΅Π΄ΠΈΡΠ΅ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π΄Π° ΡΠ°Π±ΠΎΡΠ°Ρ Π½Π° ΠΈΡΡΠ° ΡΡΠ΅ΠΊΠ²Π΅Π½ΡΠΈΡΠ°, Π²ΠΎ ΡΠΏΡΠΎΡΠΈΠ²Π½ΠΎ ΡΠΈΠ΅ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π½Π΅ΠΌΠ° Π΄Π° ΡΠ΅ Π²ΠΈΠ΄Π°Ρ Π²ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΡ Π½Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅. ΠΠ° Π΅Π΄Π΅Π½ ΠΌΡΠ΅ΠΆΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Z-Wave ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Ρ Π΄ΠΎ 232 ΡΡΠ΅Π΄ΠΈ, ΡΡΠΎ Π΅ ΡΠΎΡΠ΅ΠΌΠ° Π΄ΠΎΠ²ΠΎΠ»Π½ΠΎ Π·Π° ΡΡΠ°Π½ ΠΈΠ»ΠΈ ΡΠ΅Π»ΡΠΊΠ° ΠΊΡΡΠ°. ΠΠ° Π΄Π° ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠΈ ΠΎΠ±Π»Π°ΡΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠ½Π° ΠΏΠΎΠΊΡΠΈΠ΅Π½ΠΎΡΡ Π²ΠΎ Π·Π°ΡΠ²ΠΎΡΠ΅Π½ ΠΏΡΠΎΡΡΠΎΡ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ ΠΊΠ°ΠΊΠΎ ΠΏΠΎΠ²ΡΠΎΡΡΠ²Π°Ρ Π½Π° ΡΠΈΠ³Π½Π°Π»ΠΎΡ.

ΠΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΡΡΠΎ Π±Π΅ΡΠ΅ Π΄ΠΈΡΠΊΡΡΠΈΡΠ°Π½ Π²ΠΎ ΠΏΡΠ΅ΡΡ
ΠΎΠ΄Π½ΠΈΠΎΡ ΠΏΠ°ΡΡΡ, ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Z-Wave Π΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ΅Π½ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΡΡΠ΅Π΄ΠΈΡΠ΅ Z-Wave. Π’Π°Π° ΠΊΠΎΡΠΈΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π·Π° Π΄Π° ΠΏΡΠΈΠΌΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ ΡΠ΅Π½Π·ΠΎΡΠΈ Π²ΠΎ C++, ΠΊΠΎΡ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΌΡΠ΅ΠΆΠ½ΠΈΠΎΡ USB ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Z-Wave ΠΈ ΡΠ°Π±ΠΎΡΠΈ ΡΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ΅Π½Π·ΠΎΡΠΈ ΠΈ Π°ΠΊΡΡΠ°ΡΠΎΡΠΈ. ΠΡΠ΅Π΄Π½ΠΎΡΡΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΠ°ΡΠΎΡ Π½Π° ΠΆΠΈΠ²ΠΎΡΠ½Π°ΡΠ° ΡΡΠ΅Π΄ΠΈΠ½Π° ΡΡΠΎ ΡΠ° ΠΌΠ΅ΡΠΈ ΡΠ΅Π½Π·ΠΎΡΠΎΡ ΡΠ° ΡΠ½ΠΈΠΌΠ° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Z-Wave Π²ΠΎ ΡΠΎΡΠΌΠ° Π½Π° ΠΏΠΎΡΠ°ΠΊΠ° JSON:
{
"vendor": "*****",
"version": "3.0.0",
"timestampMs": "1566479791290",
"clientType": "gateway",
"deviceId": "20873eb0-dd5e-4213-a175-************",
"deviceType": "sensor",
"protocol": "zwave",
"messageType": "sensorData",
"homeId": "0xefa0cfa7",
"nodeId": "20",
"sensorType": "METER",
"label": "Voltage",
"sensorData": "229.3",
"units": "V"
}
ΠΠΎΡΠΎΠ° ΡΠ΅ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ° Π΄ΠΎ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π·Π° Π΄Π° ΠΌΠΎΠΆΠ°Ρ Π΄Π° Π³ΠΈ ΠΏΡΠΈΠΌΠ°Π°Ρ Π½ΠΈΡΠΊΠΈΡΠ΅ Π½Π° ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΈΡΠΈΡΠ΅. ΠΠ»Π°Π²Π½ΠΈΠΎΡ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΈΠΊ Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠΎΡ ΠΎΠ΄Π³ΠΎΠ²Π°ΡΠ° Π½Π° Π²ΡΠ΅Π΄Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° ΠΏΠΎΠ»Π΅ΡΠΎ Π·Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π²ΠΎ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΡΠΈΡΠ΅ Π½Π° Π»ΠΎΠ³ΠΈΡΠΊΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°. Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΎΠ΄ Π·Π°ΠΊΠ»ΡΡΠΎΡΠΈΡΠ΅ ΡΡΠΎ ΡΠΎΠ΄ΡΠΆΠ°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ Π½Π°Π·Π°Π΄ Π΄ΠΎ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ ΠΈ ΠΎΡΡΠ°ΠΌΡ ΠΎΠ΄Π°Ρ Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Z-Wave, ΠΊΠΎΡ Π³ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ° ΠΈ Π³ΠΈ ΠΈΡΠΏΡΠ°ΡΠ° Π΄ΠΎ ΠΌΡΠ΅ΠΆΠ½ΠΈΠΎΡ USB ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Z-Wave. ΠΠΎΡΠΎΠ° Π²Π»Π΅Π³ΡΠ²Π°Π°Ρ Π²ΠΎ Π°ΠΊΡΡΠ°ΡΠΎΡΠΎΡ, ΠΊΠΎΡ ΡΠ° ΠΌΠ΅Π½ΡΠ²Π° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° Π΅ΠΊΠΎΠ»ΠΎΡΠΊΠΈΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΈ, Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ Π½Π° ΡΠΎΡ Π½Π°ΡΠΈΠ½ Π²ΡΡΠΈ ΠΊΠΎΡΠΈΡΠ½Π° ΡΠ°Π±ΠΎΡΠ°.
(ΠΊΠ»ΠΈΠΊΠ½Π΅ΡΠ΅ Π½Π° ΡΠ»ΠΈΠΊΠ°ΡΠ° Π·Π° Π΄Π° ΡΠ° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ Π²ΠΎ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ°)
ΠΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΡΡΠ΅Π΄ΠΈΡΠ΅ Z-Wave ΡΠ΅ Π²ΡΡΠΈ Π²ΠΎ Π³ΡΠ°ΡΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΠΎΠ΄Π΅ΡΠ΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° ΡΠΎ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΡΡΠ΅Π΄ΠΈ ΠΈ ΠΊΠ»ΠΈΠΊΠ½Π΅ΡΠ΅ Π½Π° ΠΊΠΎΠΏΡΠ΅ΡΠΎ βΠΠΎΠ΄Π°Ρβ. ΠΠΎΠΌΠ°Π½Π΄Π°ΡΠ° Π·Π° Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΠΏΡΠ΅ΠΊΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ RESTful API Π²Π»Π΅Π³ΡΠ²Π° Π²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΠΈ ΠΏΠΎΡΠΎΠ° ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ° ΠΎΠ΄ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Z-Wave, ΠΊΠΎΡ Π³ΠΎ ΡΡΠ°Π²Π° ΠΌΡΠ΅ΠΆΠ½ΠΈΠΎΡ USB ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Z-Wave Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π·Π° Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΡΡΠ΅Π΄ΠΈ. Π‘Π»Π΅Π΄Π½ΠΎ, Π½Π° ΡΡΠ΅Π΄ΠΎΡ Z-Wave ΡΡΠ΅Π±Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΠ° Π±ΡΠ·ΠΈ ΠΏΡΠΈΡΠΈΡΠΊΠ°ΡΠ° (3 ΠΏΡΠΈΡΠΈΡΠΊΠ°ΡΠ° Π²ΠΎ ΡΠΎΠΊ ΠΎΠ΄ 1,5 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ) Π½Π° ΠΊΠΎΠΏΡΠ΅ΡΠΎ Π·Π° ΡΠ΅ΡΠ²ΠΈΡΠΈΡΠ°ΡΠ΅. Π£Π‘Π-ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ Π³ΠΎ ΠΏΠΎΠ²ΡΠ·ΡΠ²Π° ΡΡΠ΅Π΄ΠΎΡ ΡΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΈ ΠΈΡΠΏΡΠ°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° Π½Π΅Π³ΠΎ Π΄ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Z-Wave. Π’ΠΎΠ°, ΠΏΠ°ΠΊ, ΡΠΎΠ·Π΄Π°Π²Π° Π½ΠΎΠ² Π·Π°ΠΏΠΈΡ Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ SQLite ΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° Π½ΠΎΠ²ΠΈΠΎΡ ΡΡΠ΅Π΄. ΠΠΎ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ Π²ΡΠ΅ΠΌΠ΅Π½ΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π», Π³ΡΠ°ΡΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΡΠ΅ Π²ΡΠ°ΡΠ° Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°ΡΠ° ΡΠΎ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΡΡΠ΅Π΄ΠΈ Z-Wave, ΡΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈ Π³ΠΎ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° Π½ΠΎΠ²ΠΈΠΎΡ ΡΡΠ΅Π΄ Π²ΠΎ ΡΠΏΠΈΡΠΎΠΊΠΎΡ. Π‘Π΅ΠΊΠΎΡ ΡΡΠ΅Π΄ Π΄ΠΎΠ±ΠΈΠ²Π° ΡΠ²ΠΎΡ ΡΠ½ΠΈΠΊΠ°ΡΠ΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΊΠΎΡ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π²ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π·Π° Π·Π°ΠΊΠ»ΡΡΠΎΡΠΈ Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΈ ΠΊΠΎΠ³Π° ΡΠ°Π±ΠΎΡΠΈ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ. Π Π°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΎΠ²ΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠ°ΠΌ Π΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½Π° Π½Π° Π΄ΠΈΡΠ°Π³ΡΠ°ΠΌΠΎΡ UML:
(ΠΊΠ»ΠΈΠΊΠ½Π΅ΡΠ΅ Π½Π° ΡΠ»ΠΈΠΊΠ°ΡΠ° Π·Π° Π΄Π° ΡΠ° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ Π²ΠΎ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ°)
ΠΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ Π½Π° IP ΠΊΠ°ΠΌΠ΅ΡΠΈ
Π‘ΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ Π·Π° ΠΊΠΎΡ ΡΠ΅ Π΄ΠΈΡΠΊΡΡΠΈΡΠ° Π²ΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ° Π΅ Π½Π°Π΄Π³ΡΠ°Π΄Π±Π° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ°Π·Π²ΠΈΠ΅Π½ ΠΎΠ΄ Π°Π²ΡΠΎΡΠΎΡ, ΠΊΠΎΡ Π΅ Π½Π° ΠΏΠ°Π·Π°ΡΠΎΡ Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³Ρ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ Π²ΠΎ Π ΡΡΠΈΡΠ°.
ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ, Π΅Π΄Π΅Π½ ΠΎΠ΄ Π°ΠΊΡΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΎΡ ΠΈΠ·Π±ΠΎΡ Π½Π° ΠΎΠΏΡΠ΅ΠΌΠ° ΡΠΎ ΠΊΠΎΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΠ°. Π‘ΠΎΡΡΠ²Π΅ΡΠΎΡ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ΅Π½ Π·Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ ΡΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ Π²Π½Π°ΡΡΠ΅ Π²ΠΎ Π²ΠΈΠ΄Π΅ΠΎ ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ°, ΡΡΠΎ Π²Π΅Π΄Π½Π°Ρ ΠΏΠΎΡΡΠ°Π²ΡΠ²Π° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΈ Π±Π°ΡΠ°ΡΠ° Π·Π° Π½Π΅ΡΠ·ΠΈΠ½ΠΈΠΎΡ Ρ Π°ΡΠ΄Π²Π΅Ρ - ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΎΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠΈΠ½Π°ΡΠ° Π½Π° ΡΠ»ΠΎΠ±ΠΎΠ΄Π½Π° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°. ΠΠ²Π° Π³Π»Π°Π²Π½ΠΎ ΡΠ° ΠΎΠ±ΡΠ°ΡΠ½ΡΠ²Π° ΠΏΠΎΠ²ΠΈΡΠΎΠΊΠ°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΠΎΠ±Π»Π°ΠΊ CCTV ΠΊΠ°ΠΌΠ΅ΡΠΈΡΠ΅ Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΠΎΠ±ΠΈΡΠ½ΠΈΡΠ΅ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ, ΠΏΠΎΡΡΠ΅Π±Π½Π° Π΅ Π΄ΠΎΠ»Π³Π° ΡΠ°Π·Π° Π½Π° ΠΏΡΠ΅Π³ΠΎΠ²ΠΎΡΠΈ ΡΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈΡΠ΅ Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π° ΠΊΠ°ΠΌΠ΅ΡΠΈ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π·Π° Π΄Π° ΡΠ΅ Π΄ΠΎΠ±ΠΈΠ΅ ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π·Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π½Π° ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ° ΠΈ ΡΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ Π°Π»Π°ΡΠΊΠΈ Π·Π° ΡΠ°Π·Π²ΠΎΡ.

ΠΠ΄ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, ΡΠΈΡΠ΅ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ ΠΈΠΌΠ°Π°Ρ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ Π΄ΡΡΠ³Π° ΠΎΠΏΡΠ΅ΠΌΠ° (ΠΎΡΠΎΠ±Π΅Π½ΠΎ, Π²ΠΈΠ΄Π΅ΠΎ ΡΠ΅ΠΊΠΎΡΠ΄Π΅ΡΠΈ). Π’Π°ΠΊΠ°, ΡΠΏΠΎΡΡΠ΅Π±Π°ΡΠ° Π½Π° ΠΏΠΎΡΠ΅Π±Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ ΠΊΠΎΡ ΡΠ΅ ΠΏΠΎΠ²ΡΠ·ΡΠ²Π° ΠΏΡΠ΅ΠΊΡ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΈ Π΅ΠΌΠΈΡΡΠ²Π° Π²ΠΈΠ΄Π΅ΠΎ ΡΡΡΠΈΠΌΠΎΠ²ΠΈ ΠΎΠ΄ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ Π΄ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΡΠΊΠΈ ΠΏΡΠ΅Π΄Π½ΠΎΡΡΠΈ Π·Π° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊ. ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, Π°ΠΊΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΡ Π²Π΅ΡΠ΅ ΠΈΠΌΠ° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΎ ΡΠΈΡΡΠ΅ΠΌ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π·Π°ΡΠ½ΠΎΠ²Π°Π½ Π½Π° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΈ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ, ΡΠΎΠ³Π°Ρ ΡΡΠ°Π½ΡΠ²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠΈ ΠΈ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΡΠ²ΠΎΡΠΈ Π²ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΏΡΠ°Π²Π½ΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ Π½Π° ΠΎΠ±Π»Π°ΠΊ.
ΠΠ°ΡΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° IP ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ, ΡΠ΅Π³Π° ΠΏΠΎΠ΄Π΄ΡΠΆΠ°Π½ ΠΎΠ΄ ΡΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ Π½Π° IP ΠΊΠ°ΠΌΠ΅ΡΠΈ Π±Π΅Π· ΠΈΡΠΊΠ»ΡΡΠΎΠΊ, Π΅ , ΡΠΈΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎΡΡΠΎΡΠ°Ρ Π²ΠΎ ΡΠ°Π·ΠΈΠΊΠΎΡ Π·Π° ΠΎΠΏΠΈΡ Π½Π° Π²Π΅Π±-ΡΡΠ»ΡΠ³ΠΈΡΠ΅ . ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΠΊΠΎΠΌΡΠ½Π°Π»Π½ΠΈ ΡΡΠ»ΡΠ³ΠΈ ΠΎΠ΄ ΠΊΠΎΠΌΠΏΠ»Π΅ΡΠΎΡ ΡΠΎ Π°Π»Π°ΡΠΊΠΈ ΠΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ° ΠΈΠ·Π²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄ Π·Π° ΡΡΠ»ΡΠ³ΠΈ ΠΊΠΎΠΈ ΡΠ°Π±ΠΎΡΠ°Ρ ΡΠΎ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ:
$ wsdl2h -o onvif.h
https://www.onvif.org/ver10/device/wsdl/devicemgmt.wsdl
https://www.onvif.org/ver10/events/wsdl/event.wsdl
https://www.onvif.org/ver10/media/wsdl/media.wsdl
https://www.onvif.org/ver20/ptz/wsdl/ptz.wsdl
$ soapcpp2 -Cwvbj -c++11 -d cpp_files/onvif -i onvif.h
ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ°, Π΄ΠΎΠ±ΠΈΠ²Π°ΠΌΠ΅ Π·Π±ΠΈΡ Π½Π° Π·Π°Π³Π»Π°Π²ΠΈΠ΅ β*.hβ ΠΈ ΠΈΠ·Π²ΠΎΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ β*.cppβ Π²ΠΎ C++, ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΡΠ°Π²Π°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π²ΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° ΠΈΠ»ΠΈ ΠΏΠΎΡΠ΅Π±Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈ Π΄Π° ΡΠ΅ ΠΊΠΎΠΌΠΏΠ°ΡΠ»ΠΈΡΠ°Π°Ρ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΊΠΎΠΌΠΏΠ°ΡΠ»Π΅ΡΠΎΡ Π½Π° GCC. ΠΠΎΡΠ°Π΄ΠΈ ΠΌΠ½ΠΎΠ³ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΠ΄ΠΎΡ Π΅ Π³ΠΎΠ»Π΅ΠΌ ΠΈ Π±Π°ΡΠ° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠ°. ΠΠΈΠΊΡΠΎΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ Raspberry Pi 3 ΠΌΠΎΠ΄Π΅Π» B+ ΠΈΠΌΠ° Π΄ΠΎΠ²ΠΎΠ»Π½ΠΎ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΎΠ²ΠΎΡ ΠΊΠΎΠ΄, Π½ΠΎ Π΄ΠΎΠΊΠΎΠ»ΠΊΡ ΠΈΠΌΠ° ΠΏΠΎΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π½Π΅ΡΠ΅ ΠΊΠΎΠ΄ΠΎΡ Π½Π° Π΄ΡΡΠ³Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°, Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅ΡΠ°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π½Π°ΡΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΎΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ.
IP ΠΊΠ°ΠΌΠ΅ΡΠΈΡΠ΅ ΡΡΠΎ Π³ΠΎ ΠΏΠΎΠ΄Π΄ΡΠΆΡΠ²Π°Π°Ρ ΡΡΠ°Π½Π΄Π°ΡΠ΄ΠΎΡ ONVIF, ΠΊΠΎΠ³Π° ΡΠ°Π±ΠΎΡΠ°Ρ Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π° ΠΌΡΠ΅ΠΆΠ°, ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ ΠΏΠΎΡΠ΅Π±Π½Π° ΠΌΡΠ»ΡΠΈΠΊΠ°ΡΡ Π³ΡΡΠΏΠ° ΡΠΎ Π°Π΄ΡΠ΅ΡΠ°ΡΠ° 239.255.255.250. ΠΠΎΡΡΠΎΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» , ΡΡΠΎ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° Π³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΡΡΠ΅Π΄ΠΈ Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°.
ΠΡΠ°ΡΠΈΡΠΊΠΈΠΎΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΡΡΠ½ΠΊΡΠΈΡΠ° Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ Π·Π° IP ΠΊΠ°ΠΌΠ΅ΡΠΈ Π²ΠΎ PHP, ΡΡΠΎ Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎ ΠΏΡΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ Π²Π΅Π±-ΡΡΠ»ΡΠ³ΠΈ ΠΏΡΠ΅ΠΊΡ XML ΠΏΠΎΡΠ°ΠΊΠΈ. ΠΡΠΈ ΠΈΠ·Π±ΠΎΡΠΎΡ Π½Π° ΡΡΠ°Π²ΠΊΠΈ ΠΎΠ΄ ΠΌΠ΅Π½ΠΈΡΠΎ Π£ΡΠ΅Π΄ΠΈ > IP ΠΊΠ°ΠΌΠ΅ΡΠΈ > Π‘ΠΊΠ΅Π½ΠΈΡΠ°ΡΠ΅ Π‘Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΡ Π·Π° ΠΏΡΠ΅Π±Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° IP ΠΊΠ°ΠΌΠ΅ΡΠΈ, ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π°ΡΡΠΈ Π³ΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΎΡ Π²ΠΎ ΡΠΎΡΠΌΠ° Π½Π° ΡΠ°Π±Π΅Π»Π°:
(ΠΊΠ»ΠΈΠΊΠ½Π΅ΡΠ΅ Π½Π° ΡΠ»ΠΈΠΊΠ°ΡΠ° Π·Π° Π΄Π° ΡΠ° ΠΎΡΠ²ΠΎΡΠΈΡΠ΅ Π²ΠΎ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ°)
ΠΠΎΠ³Π° Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΠΊΠ°ΠΌΠ΅ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΈ ΠΎΠ΄ΡΠ΅Π΄ΠΈΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈΡΠ΅ ΡΠΏΠΎΡΠ΅Π΄ ΠΊΠΎΠΈ ΡΠ°Π° ΡΠ΅ ΠΊΠΎΠΌΡΠ½ΠΈΡΠΈΡΠ° ΡΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π²ΠΎ ΠΎΠ²Π°Π° ΡΠ°Π·Π°, Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΈ ΠΌΡ ΡΠ΅ Π΄ΠΎΠ΄Π΅Π»ΡΠ²Π° Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΡΡΠ΅Π΄, ΡΠΎ ΠΊΠΎΡ ΠΏΠΎΠ΄ΠΎΡΠ½Π° ΠΌΠΎΠΆΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΡΠ²Π° Π²ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ.

Π‘Π»Π΅Π΄Π½ΠΎ, ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ° ΠΏΠΎΡΠ°ΠΊΠ° Π²ΠΎ JSON ΡΠΎΡΠΌΠ°Ρ ΡΡΠΎ Π³ΠΈ ΡΠΎΠ΄ΡΠΆΠΈ ΡΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° Π΄ΠΎΠ΄Π°Π΄Π΅Π½Π°ΡΠ° ΠΊΠ°ΠΌΠ΅ΡΠ° ΠΈ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ° Π΄ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ ΠΏΡΠ΅ΠΊΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° RESTful API, ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ° ΡΠ΅ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π°Ρ ΠΈ ΡΠ΅ Π·Π°ΡΡΠ²ΡΠ²Π°Π°Ρ Π²ΠΎ Π²Π½Π°ΡΡΠ΅ΡΠ½Π°ΡΠ° Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ SQLite ΠΈ ΡΠ΅ ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π·Π° Π»Π°Π½ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π½ΠΈΡΠΊΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°:
- Π²ΠΎΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ RTSP ΠΊΠΎΠ½Π΅ΠΊΡΠΈΡΠ° Π·Π° ΠΏΡΠΈΠΌΠ°ΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π°ΡΠ΄ΠΈΠΎ ΠΏΠΎΡΠΎΡΠΈ;
- ΡΡΠ°Π½ΡΠΊΠΎΠ΄ΠΈΡΠ°ΡΠ΅ Π½Π° Π°ΡΠ΄ΠΈΠΎ ΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠΈ G.711 mu-Law, G.711 A-Law, G.723 ΠΈΡΠ½. Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ AAC;
- ΡΡΠ°Π½ΡΠΊΠΎΠ΄ΠΈΡΠ°ΡΠ΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΡΡΡΠΈΠΌΠΎΠ²ΠΈ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ H.264 ΠΈ Π°ΡΠ΄ΠΈΠΎ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ AAC Π²ΠΎ ΠΊΠΎΠ½ΡΠ΅ΡΠ½Π΅Ρ FLV ΠΈ Π½Π΅Π³ΠΎΠ²ΠΎ ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π΄ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ RTMP;
- Π²ΠΎΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π²ΡΡΠΊΠ° ΡΠΎ ΠΊΡΠ°ΡΠ½Π°ΡΠ° ΡΠΎΡΠΊΠ° Π½Π° Π΄Π΅ΡΠ΅ΠΊΡΠΎΡΠΎΡ Π·Π° Π΄Π²ΠΈΠΆΠ΅ΡΠ΅ Π½Π° IP ΠΊΠ°ΠΌΠ΅ΡΠ°ΡΠ° ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ ONVIF ΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ Π½Π΅Π³ΠΎΠ²ΠΎ ΠΈΡΠΏΠΈΡΡΠ²Π°ΡΠ΅;
- ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ»ΠΈΠΊΠΈΡΠΊΠ° Π·Π° ΠΏΡΠ΅Π³Π»Π΅Π΄ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ Π΄ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ MQTT;
- Π»ΠΎΠΊΠ°Π»Π½ΠΎ ΡΠ½ΠΈΠΌΠ°ΡΠ΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π°ΡΠ΄ΠΈΠΎ ΠΏΡΠ΅Π½ΠΎΡΠΈ Π²ΠΎ ΡΠΎΡΠΌΠ° Π½Π° ΠΏΠΎΡΠ΅Π±Π½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π²ΠΎ ΡΠΎΡΠΌΠ°Ρ MP4 Π½Π° SD ΠΈΠ»ΠΈ Flash ΠΊΠ°ΡΡΠΈΡΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ.

ΠΠ° Π²ΠΎΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°ΡΠ΅ Π²ΡΡΠΊΠ° ΡΠΎ ΠΊΠ°ΠΌΠ΅ΡΠΈ, ΡΡΠ°Π½ΡΠΊΠΎΠ΄ΠΈΡΠ°ΡΠ΅, ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ°ΡΠ΅ ΠΈ ΡΠ½ΠΈΠΌΠ°ΡΠ΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΡΡΡΠΈΠΌΠΎΠ²ΠΈ Π²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ, ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° 4.1.0.
ΠΠΎ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΡ Π·Π° ΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅, 3 ΠΊΠ°ΠΌΠ΅ΡΠΈ Π±Π΅Π° ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈ ΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ:
- HiWatch DS-I114W (ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ° - 720p, ΡΠΎΡΠΌΠ°Ρ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ° - H.264, Π±ΡΠ·ΠΈΠ½Π° Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ - 1 Mb/s, Π·Π²ΡΠΊ Π.711 ΠΌΡ-ΠΠ°ΠΊΠΎΠ½);
- ΠΠΈΠΊΡΠΎΠ΄ΠΈΠ³ΠΈΡΠ°Π»Π΅Π½ MDC-M6290FTD-1 (ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ° - 1080p, ΡΠΎΡΠΌΠ°Ρ Π½Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ° - H.264, Π±ΡΠ·ΠΈΠ½Π° Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ - 1 Mb/s, Π±Π΅Π· Π·Π²ΡΠΊ);
- Dahua DH-IPC-HDW4231EMP-AS-0360B (ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ° - 1080p, ΡΠΎΡΠΌΠ°Ρ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ° - H.264, Π±ΡΠ·ΠΈΠ½Π° Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ - 1.5 Mb/s, AAC Π°ΡΠ΄ΠΈΠΎ).

Π‘ΠΈΡΠ΅ ΡΡΠΈ ΠΏΡΠ΅Π½ΠΎΡΠΈ Π±Π΅Π° ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ Π΅ΠΌΠΈΡΡΠ²Π°Π½ΠΈ Π²ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ, Π°ΡΠ΄ΠΈΠΎ ΡΡΠ°Π½ΡΠΊΠΎΠ΄ΠΈΡΠ°ΡΠ΅ΡΠΎ Π±Π΅ΡΠ΅ ΠΈΠ·Π²ΡΡΠ΅Π½ΠΎ ΡΠ°ΠΌΠΎ ΠΎΠ΄ Π΅Π΄Π½Π° ΠΊΠ°ΠΌΠ΅ΡΠ°, Π° Π»ΠΎΠΊΠ°Π»Π½ΠΎΡΠΎ Π°ΡΡ
ΠΈΠ²ΡΠΊΠΎ ΡΠ½ΠΈΠΌΠ°ΡΠ΅ Π±Π΅ΡΠ΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ. ΠΠΏΡΠΎΠ²Π°ΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΎΡ Π±Π΅ΡΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ 5%, ΠΈΡΠΊΠΎΡΠΈΡΡΠ΅Π½ΠΎΡΡΠ° Π½Π° RAM-ΠΎΡ Π±Π΅ΡΠ΅ 32 MB (ΠΏΠΎ ΠΏΡΠΎΡΠ΅Ρ), 56 MB (Π²ΠΊΡΠΏΠ½ΠΎ Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ Π³ΠΎ ΠΠ‘).
Π’Π°ΠΊΠ°, ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ½ΠΎ 20-30 ΠΊΠ°ΠΌΠ΅ΡΠΈ (Π²ΠΎ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡ ΠΎΠ΄ ΡΠ΅Π·ΠΎΠ»ΡΡΠΈΡΠ°ΡΠ° ΠΈ Π±ΠΈΡΡΠ΅ΡΡΠΎΡ) ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π°Ρ ΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ, ΡΡΠΎ Π΅ Π΄ΠΎΠ²ΠΎΠ»Π½ΠΎ Π·Π° ΡΠΈΡΡΠ΅ΠΌ Π·Π° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π΄Π·ΠΎΡ Π·Π° ΡΡΠΈΠΊΠ°ΡΠ½Π° ΠΊΡΡΠ° ΠΈΠ»ΠΈ ΠΌΠ°Π» ΠΌΠ°Π³Π°ΡΠΈΠ½. ΠΠ° Π·Π°Π΄Π°ΡΠΈ ΡΡΠΎ Π±Π°ΡΠ°Π°Ρ ΠΏΠΎΠ²ΠΈΡΠΎΠΊΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π½Π΅ΡΡΠΎΠΏ ΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠ°Π΄ΡΠ΅Π½ Intel ΠΏΡΠΎΡΠ΅ΡΠΎΡ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π΅Π½ ΡΠΈΡΡΠ΅ΠΌ. Linux Debian ΠΠ°ΡΡ. ΠΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ Π΅ Π²ΠΎ ΠΏΡΠΎΠ±Π½Π° ΡΠ°Π±ΠΎΡΠ°, Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ Π·Π° ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅ ΡΠ΅ Π±ΠΈΠ΄Π°Ρ Π°ΠΆΡΡΠΈΡΠ°Π½ΠΈ.
ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ
ΠΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΠΎΠ±Π»Π°ΠΊ ΡΠΊΠ»Π°Π΄ΠΈΡΠ° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ (Π²ΠΈΠ΄Π΅ΠΎ ΠΈ ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠΎ ΡΠ΅Π½Π·ΠΎΡ) Π²ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ. ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π½Π° ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ ΠΎΠ±Π»Π°ΠΊ ΡΠ΅ Π±ΠΈΠ΄Π΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°Π½Π° ΠΏΠΎΠ΄Π΅ΡΠ°Π»Π½ΠΎ Π²ΠΎ ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΡΠ°ΡΠΈΡΠ° ΠΎΠ΄ Π½Π°ΡΠ°ΡΠ° ΡΠ΅ΡΠΈΡΠ°. Π‘Π΅Π³Π° Π΄Π° Π·Π±ΠΎΡΡΠ²Π°ΠΌΠ΅ Π·Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡΠΎΡ Π·Π° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΠΈ ΠΏΠΎΡΠ°ΠΊΠΈ ΠΎΠ΄ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ Π΄ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ.
Π‘ΠΎΡΡΠΎΡΠ±ΠΈΡΠ΅ Π½Π° ΠΏΠΎΠ²ΡΠ·Π°Π½ΠΈΡΠ΅ ΡΡΠ΅Π΄ΠΈ ΠΈ ΠΌΠ΅ΡΠ΅ΡΠ°ΡΠ° Π½Π° ΡΠ΅Π½Π·ΠΎΡΠΎΡ ΡΠ΅ ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°Π°Ρ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ , ΠΊΠΎΡ ΡΠ΅ΡΡΠΎ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π²ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ΅ Π·Π° ΠΠ½ΡΠ΅ΡΠ½Π΅Ρ Π½Π° Π½Π΅ΡΡΠ°ΡΠ° ΠΏΠΎΡΠ°Π΄ΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎΡΡ ΠΈ Π΅Π½Π΅ΡΠ³Π΅ΡΡΠΊΠ° Π΅ΡΠΈΠΊΠ°ΡΠ½ΠΎΡΡ. MQTT ΠΊΠΎΡΠΈΡΡΠΈ ΠΌΠΎΠ΄Π΅Π» ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ°Ρ Π½Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ ΡΠ΅ΠΌΠΈ Π²ΠΎ ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π±ΡΠΎΠΊΠ΅ΡΠΎΡ ΠΈ Π³ΠΈ ΠΎΠ±ΡΠ°Π²ΡΠ²Π°Π°Ρ ΡΠ²ΠΎΠΈΡΠ΅ ΠΏΠΎΡΠ°ΠΊΠΈ. ΠΡΠΎΠΊΠ΅ΡΠΎΡ ΠΈΡΠΏΡΠ°ΡΠ° ΠΏΠΎΡΠ°ΠΊΠΈ Π΄ΠΎ ΡΠΈΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΈΡΠΈ ΡΠΏΠΎΡΠ΅Π΄ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° ΡΡΠ²ΡΠ΄Π΅Π½ΠΈ ΡΠΎ Π½ΠΈΠ²ΠΎΡΠΎ QoS (ΠΠ²Π°Π»ΠΈΡΠ΅Ρ Π½Π° ΡΡΠ»ΡΠ³Π°):
- QoS 0 - ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ Π΅Π΄Π½Π°Ρ (Π±Π΅Π· Π³Π°ΡΠ°Π½ΡΠΈΡΠ° Π·Π° ΠΈΡΠΏΠΎΡΠ°ΠΊΠ°);
- QoS 1 - Π±Π°ΡΠ΅ΠΌ Π΅Π΄Π½Π°Ρ (ΡΠΎ ΠΏΠΎΡΠ²ΡΠ΄Π° Π·Π° ΠΈΡΠΏΠΎΡΠ°ΠΊΠ°);
- QoS 2 - ΡΠΎΡΠ½ΠΎ Π΅Π΄Π½Π°Ρ (ΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΠΏΠΎΡΠ²ΡΠ΄Π° Π·Π° ΠΈΡΠΏΠΎΡΠ°ΠΊΠ°).
ΠΠΎ Π½Π°ΡΠΈΠΎΡ ΡΠ»ΡΡΠ°Ρ, Π½ΠΈΠ΅ ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ . ΠΠΌΠ΅ΡΠΎ Π½Π° ΡΠ΅ΠΌΠ°ΡΠ° Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΠΎΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ. ΠΠ»ΠΈΠ΅Π½ΡΠΎΡ MQTT Π²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠΈ Π½Π° ΠΎΠ²Π°Π° ΡΠ΅ΠΌΠ° ΠΈ Π³ΠΈ ΠΏΡΠ΅Π²Π΅Π΄ΡΠ²Π° JSON ΠΏΠΎΡΠ°ΠΊΠΈΡΠ΅ ΡΡΠΎ Π΄ΠΎΠ°ΡΠ°Π°Ρ ΠΎΠ΄ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π²ΠΎ Π½Π΅Π°. Π‘ΠΏΡΠΎΡΠΈΠ²Π½ΠΎ Π½Π° ΡΠΎΠ°, ΠΏΠΎΡΠ°ΠΊΠΈΡΠ΅ ΠΎΠ΄ Π±ΡΠΎΠΊΠ΅ΡΠΎΡ MQTT ΡΠ΅ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Π°Ρ ΠΎΠ΄ Π½Π΅Π³ΠΎ Π΄ΠΎ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ, ΠΊΠΎΡ ΠΏΠΎΡΠΎΠ° Π³ΠΈ ΠΌΡΠ»ΡΠΈΠΏΠ»Π΅ΠΊΡΠΈΡΠ° Π΄ΠΎ ΡΠ²ΠΎΠΈΡΠ΅ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΈΡΠΈ Π²ΠΎ ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ:

ΠΠ° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠΈ Π·Π° ΡΡΠ°ΡΡΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ, ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΡ Π½Π° Π·Π°ΡΡΠ²Π°Π½ΠΈ ΠΏΠΎΡΠ°ΠΊΠΈ MQTT ΠΏΡΠΎΡΠΎΠΊΠΎΠ». ΠΠ²Π° Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° Π³ΠΎ ΡΠ»Π΅Π΄ΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ ΠΏΡΠΈ ΠΏΡΠ΅ΠΊΠΈΠ½ΠΈ Π½Π° Π½Π°ΠΏΠΎΡΡΠ²Π°ΡΠ΅ΡΠΎ.
ΠΠ»ΠΈΠ΅Π½ΡΠΎΡ MQTT Π±Π΅ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ΅Π½ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π²ΠΎ C++ ΡΠ°Π·ΠΈΠΊ.
H.264 + AAC ΠΌΠ΅Π΄ΠΈΡΠΌΡΠΊΠΈΡΠ΅ ΠΏΠΎΡΠΎΡΠΈ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ Π΄ΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ RTMP, ΠΊΠ°Π΄Π΅ ΡΡΠΎ ΠΊΠ»Π°ΡΡΠ΅Ρ ΠΎΠ΄ ΠΌΠ΅Π΄ΠΈΡΠΌΡΠΊΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΈ Π΅ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ΅Π½ Π·Π° Π½ΠΈΠ²Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅. ΠΠ° ΠΎΠΏΡΠΈΠΌΠ°Π»Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΠΈ ΠΎΠΏΡΠΎΠ²Π°ΡΡΠ²Π°ΡΠ΅ΡΠΎ Π²ΠΎ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΡ ΠΈ Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅ΡΠ΅ Π½Π°ΡΠΌΠ°Π»ΠΊΡ Π²ΡΠΈΡΠ°Π½ΠΈΠΎΡ ΠΌΠ΅Π΄ΠΈΡΠΌΡΠΊΠΈ ΡΠ΅ΡΠ²Π΅Ρ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΠΏΡΠ°Π²ΠΈ ΠΏΡΠ΅Π»ΠΈΠΌΠΈΠ½Π°ΡΠ½ΠΎ Π±Π°ΡΠ°ΡΠ΅ Π΄ΠΎ Π±Π°Π»Π°Π½ΡΠ΅ΡΠΎΡ Π½Π° ΠΎΠΏΡΠΎΠ²Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΎΠ±Π»Π°ΠΊΠΎΡ ΠΈ Π΄ΡΡΠΈ ΠΏΠΎΡΠΎΠ° Π³ΠΎ ΠΈΡΠΏΡΠ°ΡΠ° ΠΌΠ΅Π΄ΠΈΡΠΌΡΠΊΠΈΠΎΡ ΠΏΡΠ΅Π½ΠΎΡ.
ΠΠ°ΠΊΠ»ΡΡΠΎΠΊ
Π‘ΡΠ°ΡΠΈΡΠ°ΡΠ° ΠΈΡΠΏΠΈΡΡΠ²Π°ΡΠ΅ Π΅Π΄Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½Π° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠΌ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΡ Raspberry Pi 3 B+, ββΠΊΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΈΠΌΠ°, ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΎΠΏΡΠ΅ΠΌΠ° ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ Z-Wave, Π΄Π° ΠΊΠΎΠΌΡΠ½ΠΈΡΠΈΡΠ° ΡΠΎ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ ONVIF, Π° ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° ΡΠ°Π·ΠΌΠ΅Π½ΡΠ²Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΡΠΎ ΠΎΠ±Π»Π°ΠΊΠΎΡ ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ MQTT ΠΈ RTMP. Π Π°Π·Π²ΠΈΠ΅Π½ Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΌΠΎΡΠΎΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠΏΠΎΡΠ΅Π΄Π±Π° Π½Π° Π»ΠΎΠ³ΠΈΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈ ΡΠ°ΠΊΡΠΈ ΠΏΡΠ΅ΡΡΡΠ°Π²Π΅Π½ΠΈ Π²ΠΎ JSON ΡΠΎΡΠΌΠ°Ρ.
ΠΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΎΡ Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠΌΠΎΠ²ΠΈ ΠΌΠΎΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ Π΅ Π½Π° ΠΏΡΠΎΠ±Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠ° Π½Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π»ΠΎΠΊΠ°ΡΠΈΠΈ Π²ΠΎ ΠΠΎΡΠΊΠ²Π° ΠΈ ΠΠΎΡΠΊΠΎΠ²ΡΠΊΠΈΠΎΡ ΡΠ΅Π³ΠΈΠΎΠ½.
Π‘Π»Π΅Π΄Π½Π°ΡΠ° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΎΡΠΎΡ ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π° Π΄ΡΡΠ³ΠΈ Π²ΠΈΠ΄ΠΎΠ²ΠΈ ΡΡΠ΅Π΄ΠΈ (RF, Bluetooth, WiFi, ΠΆΠΈΡΠ΅Π½). ΠΠ° ΠΏΠΎΠ³ΠΎΠ΄Π½ΠΎΡΡ Π½Π° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΈΡΠ΅, ΠΏΠΎΡΡΠ°ΠΏΠΊΠ°ΡΠ° Π·Π° ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠ΅ ΡΠ΅Π½Π·ΠΎΡΠΈ ΠΈ IP ΠΊΠ°ΠΌΠ΅ΡΠΈ ΡΠ΅ Π±ΠΈΠ΄Π΅ ΠΏΡΠ΅ΡΡΠ»Π΅Π½Π° Π½Π° ΠΌΠΎΠ±ΠΈΠ»Π½Π°ΡΠ° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ°. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, ΠΏΠΎΡΡΠΎΡΠ°Ρ ΠΈΠ΄Π΅ΠΈ Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΊΠΎΠ΄ΠΎΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ ΠΈ ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΠΎΡΡΠ²Π΅ΡΠΎΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ . ΠΠ²Π° ΡΠ΅ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ Π΄Π° Π·Π°ΡΡΠ΅Π΄ΠΈΡΠ΅ Π½Π° ΠΏΠΎΡΠ΅Π±Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ ΠΈ Π΄Π° ΡΠ° ΠΏΡΠ΅Π½Π΅ΡΠ΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΠ° Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠΌ Π½Π° ΠΎΠ±ΠΈΡΠ΅Π½ ΡΡΡΠ΅Ρ Π·Π° Π΄ΠΎΠΌΠ°ΡΠΈΠ½ΡΡΠ²ΠΎ.
ΠΠ·Π²ΠΎΡ: www.habr.com
