Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°Π΄ΠΈΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π° Π±Π°Π·Π΅ 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 ΠΎΠΏΡΠ°Π²Π΄Π°Π½ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ Π·Π°Π΄Π°Ρ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅Π»Π΅ΠΌΠ΅ΡΡΠΈΠΈ Π½Π° Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌ ΡΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ° Ρ Π΄Π°ΡΡΠΈΠΊΠ°ΠΌΠΈ, ΡΠ°Π·Π±ΡΠΎΡΠ°Π½Π½ΡΠΌΠΈ ΠΏΠΎ ΡΡΠ°ΡΡΠΊΡ. ΠΠ»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ² ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ»ΠΎΠΆΠ΅Π½ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅.
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).
βοΈ ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΎΠΉ
5. Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π°Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ²ΡΠ·ΠΈ ΠΈ Π±ΠΎΡΡΠ±Π° Ρ ΠΏΠΎΠΌΠ΅Ρ Π°ΠΌΠΈ
ΠΡΠ»ΠΈ ΡΠΈΠ³Π½Π°Π» ΡΠ΅ΡΡΠ΅ΡΡΡ Π½Π° ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΈ ΠΌΠ΅Π½ΡΡΠ΅ Π·Π°ΡΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²:
- ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ Π°Π½ΡΠ΅Π½Π½Π΅ β Ρ NRF24L01 Π°Π½ΡΠ΅Π½Π½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π΄Π»ΠΈΠ½ΠΎΠΉ
31 ΠΌΠΌ(Π΄Π»Ρ 2.4 ΠΠΡ). Π£ΠΊΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ΄Π»ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΡ ΡΠ΄ΡΠ°Π΅Ρ ΠΏΡΠΈΡΠΌ. - ΠΠΎΠΌΠ΅Ρ Π°Ρ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ² β Wi-Fi ΡΠΎΡΡΠ΅ΡΡ, ΠΌΠΈΠΊΡΠΎΠ²ΠΎΠ»Π½ΠΎΠ²ΠΊΠΈ, Bluetooth-ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΠΎΠΉ ΠΆΠ΅ ΡΠ°ΡΡΠΎΡΠ΅ 2.4 ΠΠΡ.
- ΠΠΈΠ·ΠΊΠΎΠΌ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠΈ ΠΏΠΈΡΠ°Π½ΠΈΡ β ΠΏΡΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠΈ Π½ΠΈΠΆΠ΅
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-ΠΊΠΎΠΌΠ°Π½Π΄ Π½ΡΠΆΠ½ΠΎ:
- ΠΡΠΊΠ»ΡΡΠΈΡΡ
TXDΠΈRXDΠΎΡ Arduino. - ΠΠΎΠ΄Π°ΡΡ
3.3VΠ½Π° ΠΏΠΈΠ½SET(ΠΈΠ»ΠΈ Π·Π°ΠΌΠΊΠ½ΡΡΡ Π΅Π³ΠΎ Π½Π°GND, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ). - ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊ 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 ΡΠ΅ΡΠ΅Π· ΡΠ°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡΠ»Ρ Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½Π°?
ΠΠ°, Π½ΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ:
- Bluetooth-ΠΌΠΎΠ΄ΡΠ»Ρ HC-05/HC-06 Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ Arduino (Π΄Π»Ρ ΡΠ²ΡΠ·ΠΈ Ρ ΡΠ΅Π»Π΅ΡΠΎΠ½ΠΎΠΌ).
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Android (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Arduino RC Controller).
- ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Arduino Ρ ΡΠ°Π΄ΠΈΠΎΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ΅ΡΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎ ΡΠ°Π΄ΠΈΠΎ.
ΠΠΎΠ»Π΅Π΅ ΠΏΡΠΎΡΡΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ESP8266/ESP32 Ρ Wi-Fi, Π½ΠΎ ΡΡΠΎ ΡΠΆΠ΅ Π½Π΅ ΡΠ°Π΄ΠΈΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ΅ΡΠΈ.
ΠΠ°ΠΊ Π·Π°ΡΠΈΡΠΈΡΡ ΡΠΈΠ³Π½Π°Π» ΠΎΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ°?
ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΠΌΠ΅ΡΡ Π·Π°ΡΠΈΡΡ:
- Π¨ΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ
RF24EncryptΠ΄Π»Ρ NRF24L01 (AES-128). - ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΠ°Π½Π°Π»: ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠ΅Π½ΡΠΉΡΠ΅ ΠΊΠ°Π½Π°Π» ΡΠ²ΡΠ·ΠΈ (
radio.setChannel()). - Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ°: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ° ΠΊΠ°Π½Π°Π»ΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
"A7B3D9"Π²ΠΌΠ΅ΡΡΠΎ"00001").
ΠΠ»Ρ ΠΊΡΠΈΡΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π²Π΅ΡΠ½ΡΠΌ Π·Π°ΠΌΠΊΠΎΠΌ) Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ LoRa Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ.