Π Π°Π΄ΠΈΠΎΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Arduino: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство ΠΎΡ‚ схСмы Π΄ΠΎ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ систСмы радиоуправлСния Π½Π° Π±Π°Π·Π΅ Arduino β€” это ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ возмоТности для дистанционного управлСния модСлями машин, Π΄Ρ€ΠΎΠ½ΠΎΠ², домашнСй Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ инфракрасного управлСния (ИК), радиосигналы Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ прямой видимости ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠΌ ΠΈ ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊΠΎΠΌ, Π° Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ связи ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ Π΄ΠΎ 1–2 ΠΊΠΌ ΠΏΡ€ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ настройкС Π°Π½Ρ‚Π΅Π½Π½ ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. Но с Ρ‡Π΅Π³ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ, Ссли Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ с бСспроводной ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…?

МногиС ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ Π΄ΡƒΠΌΠ°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ для радиоуправлСния Π½ΡƒΠΆΠ½Ρ‹ дорогостоящиС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈΠ»ΠΈ Π³Π»ΡƒΠ±ΠΎΠΊΠΈΠ΅ знания Π² радиоэлСктроникС. На самом Π΄Π΅Π»Π΅, достаточно Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π°: ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Nano ΠΈΠ»ΠΈ Uno, радиомодуля (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, NRF24L01 ΠΈΠ»ΠΈ HC-12), источника питания ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ². Π“Π»Π°Π²Π½ΠΎΠ΅ β€” ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² связи, Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠ°ΡΡ‚ΡŒ ΠΈ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ разбСрёмся, ΠΊΠ°ΠΊ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π½Π°Π΄Ρ‘ΠΆΠ½ΡƒΡŽ систСму с нуля, ΠΈΠ·Π±Π΅ΠΆΠ°Π² Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ошибок.

Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅:

  • πŸ”Ή КакиС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π»ΡƒΡ‡ΡˆΠ΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ для Ρ€Π°Π·Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ (короткая/длинная дистанция, ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ).
  • πŸ”Ή Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΊ Arduino Π±Π΅Π· риска ΡΠΆΠ΅Ρ‡ΡŒ ΠΏΠΎΡ€Ρ‚Ρ‹.
  • πŸ”Ή Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ скСтчи для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° ΠΈ ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊΠ° с пояснСниями.
  • πŸ”Ή Бпособы увСличСния Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ связи ΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΠΏΠΎΠΌΠ΅Ρ….

1. Π’Ρ‹Π±ΠΎΡ€ радиомодуля: NRF24L01 vs HC-12 vs LoRa

ΠžΡ‚ модуля зависит Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ связи, Π½ΠΎ ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ систСмы. Рассмотрим Ρ‚Ρ€ΠΈ популярных Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°:

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π”Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ пространство) Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Частота ΠŸΠ»ΡŽΡΡ‹ ΠœΠΈΠ½ΡƒΡΡ‹
NRF24L01 Π΄ΠΎ 100 ΠΌ (с усилитСлСм β€” Π΄ΠΎ 1 ΠΊΠΌ) Π΄ΠΎ 2 ΠœΠ±ΠΈΡ‚/с 2.4 Π“Π“Ρ† Низкая Ρ†Π΅Π½Π°, простота ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° mesh-сСтСй ЧувствитСлСн ΠΊ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌ ΠΎΡ‚ Wi-Fi, малая Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π΅Π· усилитСля
HC-12 Π΄ΠΎ 1.8 ΠΊΠΌ (с Π°Π½Ρ‚Π΅Π½Π½ΠΎΠΉ) Π΄ΠΎ 1.2 ΠšΠ±ΠΈΡ‚/с 433 ΠœΠ“Ρ† Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌ, Π½ΠΈΠ·ΠΊΠΎΠ΅ энСргопотрСблСниС МСньшая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ настройки Ρ‡Π΅Ρ€Π΅Π· AT-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
LoRa (SX1278) Π΄ΠΎ 10 ΠΊΠΌ (Π² ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… условиях) Π΄ΠΎ 300 ΠšΠ±ΠΈΡ‚/с 433/868/915 ΠœΠ“Ρ† РСкордная Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΈΠ·ΠΊΠΎΠ΅ энСргопотрСблСниС, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ настройки, высокая Ρ†Π΅Π½Π°, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ лицСнзирования Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… странах

Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Ρ…ΠΎΠ±Π±ΠΈ-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, управлСния машинкой ΠΈΠ»ΠΈ ΠΊΠ²Π°Π΄Ρ€ΠΎΠΊΠΎΠΏΡ‚Π΅Ρ€ΠΎΠΌ) ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»Π΅Π½ NRF24L01 с усилитСлСм (NRF24L01+PA+LNA). Он Π΄Π΅ΡˆΡ‘Π²Ρ‹ΠΉ, ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹ΠΉ ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½. Если Π½ΡƒΠΆΠ½Π° большая Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для управлСния Π²ΠΎΡ€ΠΎΡ‚Π°ΠΌΠΈ Π³Π°Ρ€Π°ΠΆΠ° Π½Π° расстоянии 500+ ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²), Π»ΡƒΡ‡ΡˆΠ΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ HC-12.

LoRa ΠΎΠΏΡ€Π°Π²Π΄Π°Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π΅Π»Π΅ΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… расстояниях ΠΈΠ»ΠΈ систСм ΡƒΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ° с Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ, разбросанными ΠΏΠΎ участку. Для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ слишком слоТСн Π² настройкС.

πŸ“Š Какой Ρ€Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
NRF24L01
HC-12
LoRa
Π”Ρ€ΡƒΠ³ΠΎΠΉ
Π•Ρ‰Ρ‘ Π½Π΅ Ρ€Π΅ΡˆΠΈΠ»

2. НСобходимыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ инструмСнты

ΠŸΠ΅Ρ€Π΅Π΄ сборкой ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, всё Π»ΠΈ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ. Π’ΠΎΡ‚ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Π±Π°Π·Π΅ NRF24L01:

  • πŸ› οΈ ΠŸΠ»Π°Ρ‚Π° Arduino: Uno, Nano ΠΈΠ»ΠΈ Mega (для слоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²).
  • πŸ“‘ Π Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»ΠΈ: 2 ΡˆΡ‚. NRF24L01 (ΠΈΠ»ΠΈ HC-12, Ссли Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Π΅Π³ΠΎ).
  • πŸ”‹ Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ питания: Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠ° 9V ΠΈΠ»ΠΈ Li-Po аккумулятор (3.7–12V).
  • πŸ”Œ ΠœΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ("ΠΏΠ°ΠΏΠ°-ΠΌΠ°ΠΌΠ°") для прототипирования.
  • πŸ”§ Паяльник ΠΈ ΠΏΡ€ΠΈΠΏΠΎΠΉ (Ссли Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ схСму навСсным ΠΌΠΎΠ½Ρ‚Π°ΠΆΠΎΠΌ).
  • πŸ“Ÿ ДТойстик ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ (для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°).
  • πŸ”„ Π‘Ρ‚Π°Π±ΠΈΠ»ΠΈΠ·Π°Ρ‚ΠΎΡ€ напряТСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, AMS1117 3.3V), Ссли ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ модуля Π²Ρ‹ΡˆΠ΅ 3.6V.

Π’Π°ΠΆΠ½ΠΎ: NRF24L01 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‚ 3.3V, Π° Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Arduino β€” 5V. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π±Π΅Π· дСлитСля напряТСния ΠΈΠ»ΠΈ логичСского ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΆΠ΅Ρ‡ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ! Об этом ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅.

3. Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ NRF24L01 ΠΊ Arduino

Рассмотрим ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ схСму для Arduino Uno ΠΈ NRF24L01. Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ: Π½Π΅ ΠΏΠΎΠ΄Π°Π²Π°ΠΉΡ‚Π΅ 5V Π½Π° ΠΏΠΈΠ½Ρ‹ модуля! Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π»ΠΈΠ±ΠΎ внСшний стабилизатор, Π»ΠΈΠ±ΠΎ встроСнный Π²Ρ‹Π²ΠΎΠ΄ 3.3V Π½Π° Arduino (Π½ΠΎ ΡƒΡ‡Ρ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π²Ρ‹Π΄Π°Ρ‘Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΎΠΊ).

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° ΠΈ ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊΠ° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ:

NRF24L01  β†’  Arduino Uno

GND β†’ GND

VCC β†’ 3.3V (ΠΈΠ»ΠΈ внСшний источник 3.3V)

CE β†’ D9

CSN β†’ D10

SCK β†’ D13

MOSI β†’ D11

MISO β†’ D12

IRQ β†’ НС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ)

Для HC-12 схСма ΠΏΡ€ΠΎΡ‰Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‚ 5V:

HC-12     β†’  Arduino Uno

GND β†’ GND

VCC β†’ 5V

TXD β†’ D3 (RX)

RXD β†’ D2 (TX)

SET β†’ НС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ (ΠΈΠ»ΠΈ ΠΊ GND для Ρ€Π΅ΠΆΠΈΠΌΠ° AT-ΠΊΠΎΠΌΠ°Π½Π΄)

ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Arduino Nano, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΠ»Π°Ρ‚Ρ‹. На Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠ»ΠΎΠ½Π°Ρ… Π²Ρ‹Π²ΠΎΠ΄ 3.3V Π½Π΅ Π²Ρ‹Π΄Π°Ρ‘Ρ‚ достаточно Ρ‚ΠΎΠΊΠ° для NRF24L01. Π’ этом случаС придётся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний стабилизатор.

Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ссли ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ NRF24L01 ΠΊ 5V?

ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ³ΠΎΡ€Π΅Ρ‚ΡŒ сразу ΠΈΠ»ΠΈ Π΄Π΅Π³Ρ€Π°Π΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. Π‘ΠΈΠΌΠΏΡ‚ΠΎΠΌΡ‹: ΠΏΠ΅Ρ€Π΅Π³Ρ€Π΅Π², Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°, отсутствиС связи. Если это ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΡ€ΠΎΠ·Π²ΠΎΠ½ΠΊΠΈ β€” сопротивлСниС ΠΌΠ΅ΠΆΠ΄Ρƒ VCC ΠΈ GND Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ >10 кОм.

4. ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Arduino: ΠΊΠΎΠ΄ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° ΠΈ ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊΠ°

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с NRF24L01 понадобится Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° RF24. УстановитС Π΅Ρ‘ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π² Arduino IDE (мСню Π‘ΠΊΠ΅Ρ‚Ρ‡ β†’ ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ β†’ Π£ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ). Для HC-12 Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π½Π΅ трСбуСтся β€” ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ΄Ρ‘Ρ‚ Ρ‡Π΅Ρ€Π΅Π· стандартный Serial.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ° (ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ с дТойстика):

#include <SPI.h>

#include <nRF24L01.h>

#include <RF24.h>

RF24 radio(9, 10); // CE, CSN

const byte address[6] = "00001";

struct DataPackage {

int joyX;

int joyY;

bool button1;

};

DataPackage data;

void setup() {

radio.begin();

radio.openWritingPipe(address);

radio.setPALevel(RF24_PA_MAX); // Максимальная ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ

radio.stopListening();

pinMode(2, INPUT_PULLUP); // Кнопка на пинС D2

}

void loop() {

data.joyX = analogRead(A0); // Ось X дТойстика

data.joyY = analogRead(A1); // Ось Y дТойстика

data.button1 = !digitalRead(2); // Кнопка (инвСрсия ΠΈΠ·-Π·Π° PULLUP)

radio.write(&data, sizeof(data));

delay(50); // Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° для ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ

}

Код для ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊΠ° (ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сСрвоприводами):

#include <SPI.h>

#include <nRF24L01.h>

#include <RF24.h>

#include <Servo.h>

RF24 radio(9, 10);

const byte address[6] = "00001";

Servo servo1, servo2;

struct DataPackage {

int joyX;

int joyY;

bool button1;

};

DataPackage data;

void setup() {

radio.begin();

radio.openReadingPipe(0, address);

radio.setPALevel(RF24_PA_MAX);

radio.startListening();

servo1.attach(3); // Π‘Π΅Ρ€Π²ΠΎ Π½Π° ΠΏΠΈΠ½Π΅ D3

servo2.attach(5); // Π‘Π΅Ρ€Π²ΠΎ Π½Π° ΠΏΠΈΠ½Π΅ D5

}

void loop() {

if (radio.available()) {

radio.read(&data, sizeof(data));

int servo1Pos = map(data.joyX, 0, 1023, 0, 180);

int servo2Pos = map(data.joyY, 0, 1023, 0, 180);

servo1.write(servo1Pos);

servo2.write(servo2Pos);

if (data.button1) {

// ДСйствиС ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ

}

}

}

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹:

  • πŸ”Ή АдрСс ΠΊΠ°Π½Π°Π»Π° ("00001") Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ΅ ΠΈ ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊΠ΅.
  • πŸ”Ή radio.setPALevel(RF24_PA_MAX) устанавливаСт ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ (ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΎ ΠΈ энСргопотрСблСниС).
  • πŸ”Ή Ѐункция map() ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ значСния дТойстика (0–1023) Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ сСрвопривода (0–180).

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 5

5. Π£Π²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ связи ΠΈ Π±ΠΎΡ€ΡŒΠ±Π° с ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌΠΈ

Если сигнал тСряСтся Π½Π° расстоянии мСньшС заявлСнного, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²:

  1. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Π°Π½Ρ‚Π΅Π½Π½Π΅ β€” Ρƒ NRF24L01 Π°Π½Ρ‚Π΅Π½Π½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π΄Π»ΠΈΠ½ΠΎΠΉ 31 ΠΌΠΌ (для 2.4 Π“Π“Ρ†). Π£ΠΊΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡƒΠ΄Π»ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡƒΡ…ΡƒΠ΄ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΈΡ‘ΠΌ.
  2. ΠŸΠΎΠΌΠ΅Ρ…Π°Ρ… ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… устройств β€” Wi-Fi Ρ€ΠΎΡƒΡ‚Π΅Ρ€Ρ‹, ΠΌΠΈΠΊΡ€ΠΎΠ²ΠΎΠ»Π½ΠΎΠ²ΠΊΠΈ, Bluetooth-устройства Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° Ρ‚ΠΎΠΉ ΠΆΠ΅ частотС 2.4 Π“Π“Ρ†.
  3. Низком напряТСнии питания β€” ΠΏΡ€ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ΅ 3.0V ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ "Π³Π»ΡŽΡ‡ΠΈΡ‚ΡŒ".

Бпособы ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ связь:

  • πŸ“Ά Π—Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π°Π½Ρ‚Π΅Π½Π½Ρƒ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΏΠΈΡ€Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ»ΠΈ с усилитСлСм).
  • πŸ”‹ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ источник питания для модуля (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Li-Po 3.7V с LDO-стабилизатором).
  • πŸ”„ ΠŸΠΎΠΌΠ΅Π½ΡΠΉΡ‚Π΅ ΠΊΠ°Π½Π°Π» связи Π² ΠΊΠΎΠ΄Π΅: radio.setChannel(76) (Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ 0–125).
  • πŸ›‘οΈ Π­ΠΊΡ€Π°Π½ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ β€” ΠΎΠ±Π΅Ρ€Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π² Ρ„ΠΎΠ»ΡŒΠ³Ρƒ, оставив ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΉ Π°Π½Ρ‚Π΅Π½Π½Ρƒ.

Для HC-12 Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ настройки Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· AT-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π½Π° максимум, ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅:

AT+P8

А для смСны ΠΊΠ°Π½Π°Π»Π° (частоты):

AT+C001

(Π³Π΄Π΅ 001 β€” Π½ΠΎΠΌΠ΅Ρ€ ΠΊΠ°Π½Π°Π»Π° ΠΎΡ‚ 001 Π΄ΠΎ 127).

6. Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ

Ошибка β„–1: ΠœΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ опрСдСляСтся Arduino.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ссли послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча Π² Serial Monitor Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ сообщСниС "radio hardware not responding", ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅:
  • ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ CE ΠΈ CSN (ΠΎΠ½ΠΈ часто ΠΏΡƒΡ‚Π°ΡŽΡ‚ΡΡ мСстами).
  • НапряТСниС Π½Π° VCC β€” ΠΎΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ€ΠΎΠ²Π½ΠΎ 3.3V (Π½Π΅ 5V!).
  • ΠšΠ°Ρ‡Π΅ΡΡ‚Π²ΠΎ ΠΏΠ°ΠΉΠΊΠΈ β€” "Ρ…ΠΎΠ»ΠΎΠ΄Π½Ρ‹Π΅" ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Ρ‚ΡŒ сигнал.

Ошибка β„–2: Π”Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ потСрями.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Ρ‹:

  • Блишком большая Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² loop() (ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚Π΅ delay() ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ millis()).
  • ΠŸΠΎΠΌΠ΅Ρ…ΠΈ Π½Π° частотС β€” ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°Π½Π°Π» (radio.setChannel()).
  • НСхватка питания β€” ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ кондСнсатор 1000 ΠΌΠΊΠ€ ΠΌΠ΅ΠΆΠ΄Ρƒ VCC ΠΈ GND модуля.

Ошибка β„–3: HC-12 Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° AT-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² Ρ€Π΅ΠΆΠΈΠΌ AT-ΠΊΠΎΠΌΠ°Π½Π΄ Π½ΡƒΠΆΠ½ΠΎ:
  1. ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ TXD ΠΈ RXD ΠΎΡ‚ Arduino.
  2. ΠŸΠΎΠ΄Π°Ρ‚ΡŒ 3.3V Π½Π° ΠΏΠΈΠ½ SET (ΠΈΠ»ΠΈ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° GND, Π² зависимости ΠΎΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ).
  3. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΊ Arduino Ρ‡Π΅Ρ€Π΅Π· SoftwareSerial (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° ΠΏΠΈΠ½Ρ‹ D2/D3).

7. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅: ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²

Π Π°Π΄ΠΈΠΎΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Arduino ΠΌΠΎΠΆΠ½ΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ Ρ€Π°Π·Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ. Π’ΠΎΡ‚ нСсколько ΠΈΠ΄Π΅ΠΉ с ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌ описаниСм Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ:

  • πŸš— Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ машинкой Π½Π° Ρ€Π°Π΄ΠΈΠΎΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ:
    • ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊ: дТойстик + Arduino Nano + NRF24L01.
    • ΠŸΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊ: Arduino Uno + Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ΠΌΠΎΡ‚ΠΎΡ€ΠΎΠ² L298N + аккумулятор.
    • Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ: ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΡƒΠ»ΡŒΡ‚Ρ€Π°Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ для Π°Π²Ρ‚ΠΎΡ‚ΠΎΡ€ΠΌΠΎΠ·Π°.
  • πŸšͺ ДистанционноС ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π½ΠΈΠ΅ Π²ΠΎΡ€ΠΎΡ‚ Π³Π°Ρ€Π°ΠΆΠ°:
    • ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊ: ΠΊΠ½ΠΎΠΏΠΊΠ° + HC-12 (Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 1 ΠΊΠΌ).
    • ΠŸΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊ: Arduino + Ρ€Π΅Π»Π΅ для управлСния ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΎΠΌ Π²ΠΎΡ€ΠΎΡ‚.
    • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ: Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΉ Π·Π°ΠΌΠΎΠΊ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΉ).
  • πŸ›©οΈ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ²Π°Π΄Ρ€ΠΎΠΊΠΎΠΏΡ‚Π΅Ρ€ΠΎΠΌ:
    • ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‚Ρ‡ΠΈΠΊ: 2 дТойстика + NRF24L01+PA+LNA.
    • ΠŸΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊ: Arduino Mega + гироскоп MPU6050 + 4 ESC-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°.
    • Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ: потрСбуСтся PID-рСгулятор для стабилизации ΠΏΠΎΠ»Ρ‘Ρ‚Π°.

Для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с высокими трСбованиями ΠΊ надёТности (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Ρ€ΠΎΠ½ΠΎΠΌ) рСкомСндуСтся:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²ΡƒΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΡŽΡŽ связь (ΠΏΡ€ΠΈΡ‘ΠΌΠ½ΠΈΠΊ отправляСт ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ получСния Π΄Π°Π½Π½Ρ‹Ρ…).
  • Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΡƒΡŽ сумму Π² ΠΏΠ°ΠΊΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ цСлостности.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ автоматичСский Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ Π΄ΠΎΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Π΅ связи.

FAQ: ЧастыС вопросы ΠΏΠΎ Ρ€Π°Π΄ΠΈΠΎΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ Π½Π° Arduino

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ NRF24L01 ΠΈ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, ΠΈ для ΠΏΡ€ΠΈΡ‘ΠΌΠ°?

Π”Π°, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄Π²ΡƒΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΡŽΡŽ связь. Для этого Π² ΠΊΠΎΠ΄Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌΡ‹ radio.stopListening() (ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π°) ΠΈ radio.startListening() (ΠΏΡ€ΠΈΡ‘ΠΌ). Однако для простых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, управлСния машинкой) достаточно одностороннСй связи.

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ NRF24L01?

Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π² Arduino скСтч GettingStarted ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ RF24. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Serial Monitor β€” Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ исправСн, Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ сообщСниС "Radio power level: PA_MAX" ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ ΠΊΠ°Π½Π°Π»Π΅. Если вмСсто этого появляСтся "radio hardware not responding", ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅.

ΠšΠ°ΠΊΡƒΡŽ Π°Π½Ρ‚Π΅Π½Π½Ρƒ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для увСличСния Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ?

Для NRF24L01 ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘Ρ‚:

  • Π‘ΠΏΠΈΡ€Π°Π»ΡŒΠ½Π°Ρ Π°Π½Ρ‚Π΅Π½Π½Π° (ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ· ΠΌΠ΅Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²ΠΎΠ»ΠΎΠΊΠΈ Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ 1 ΠΌΠΌ, свСрнув Π΅Ρ‘ Π² 5–6 Π²ΠΈΡ‚ΠΊΠΎΠ² Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ 10 ΠΌΠΌ).
  • АнтСнна "ΡƒΡ‚ΠΊΠ°" (Π΄Π»ΠΈΠ½Π° 31 ΠΌΠΌ для 2.4 Π“Π“Ρ†, продаётся Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ… Ρ€Π°Π΄ΠΈΠΎΠ΄Π΅Ρ‚Π°Π»Π΅ΠΉ).
  • НаправлСнная Π°Π½Ρ‚Π΅Π½Π½Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Yagi, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ навСдСния).

Для HC-12 эффСктивна Π°Π½Ρ‚Π΅Π½Π½Π° Π΄Π»ΠΈΠ½ΠΎΠΉ 17.3 см (Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΡŒ Π²ΠΎΠ»Π½Ρ‹ для 433 ΠœΠ“Ρ†).

МоТно Π»ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Arduino Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»ΡŒ с Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°?

Π”Π°, Π½ΠΎ для этого понадобится:

  1. Bluetooth-ΠΌΠΎΠ΄ΡƒΠ»ΡŒ HC-05/HC-06 Π½Π° сторонС Arduino (для связи с Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠΌ).
  2. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Android (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Arduino RC Controller).
  3. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Arduino с Ρ€Π°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠΎ Ρ€Π°Π΄ΠΈΠΎ.

Π‘ΠΎΠ»Π΅Π΅ простой Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ESP8266/ESP32 с Wi-Fi, Π½ΠΎ это ΡƒΠΆΠ΅ Π½Π΅ Ρ€Π°Π΄ΠΈΠΎΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ сСти.

Как Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ сигнал ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π°?

Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ€Ρ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹:

  • Π¨ΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ RF24Encrypt для NRF24L01 (AES-128).
  • ДинамичСский ΠΊΠ°Π½Π°Π»: пСриодичСски мСняйтС ΠΊΠ°Π½Π°Π» связи (radio.setChannel()).
  • Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ адрСса: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ слоТныС адрСса ΠΊΠ°Π½Π°Π»ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "A7B3D9" вмСсто "00001").

Для ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Ρ… систСм (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, управлСния Π΄Π²Π΅Ρ€Π½Ρ‹ΠΌ Π·Π°ΠΌΠΊΠΎΠΌ) Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ LoRa с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ.