Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сСрвоприводом с ИК ΠΏΡƒΠ»ΡŒΡ‚ΠΎΠΌ Π½Π° Arduino: схСма ΠΈ ΠΊΠΎΠ΄

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… систСм управлСния часто Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ простых, Π½ΠΎ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для дистанционного контроля ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ². ИспользованиС связки Arduino, инфракрасного ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° ΠΈ сСрвопривода позволяСт быстро ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Ρ€ΠΎΠ±ΠΎΡ‚Π°, ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΈΠ»ΠΈ ΡƒΠΌΠ½ΠΎΠ³ΠΎ Π·Π°ΠΌΠΊΠ° Π±Π΅Π· нСобходимости программирования слоТных сСтСвых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ². Π˜Π½Ρ„Ρ€Π°ΠΊΡ€Π°ΡΠ½Ρ‹ΠΉ спСктр ΡƒΠ΄ΠΎΠ±Π΅Π½ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ настройки Wi-Fi ΠΈΠ»ΠΈ Bluetooth, работая ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ Β«Π½Π°ΠΆΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΡƒ β€” ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Β».

Π’ основС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π»Π΅ΠΆΠΈΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ считываСт сигналы ΠΎΡ‚ ΠΏΡƒΠ»ΡŒΡ‚Π° дистанционного управлСния (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡ‚ Ρ‚Π΅Π»Π΅Π²ΠΈΠ·ΠΎΡ€Π° ΠΈΠ»ΠΈ аудиосистСмы) ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΡ… Π² ΡƒΠ³Π»Ρ‹ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° Π²Π°Π»Π° сСрвомотора. Π­Ρ‚ΠΎ классичСская Π·Π°Π΄Π°Ρ‡Π° для Π²Ρ…ΠΎΠ΄Π° Π² ΠΌΠΈΡ€ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ, Ρ‚Π°ΠΉΠΌΠΈΠ½Π³ΠΎΠ² ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с внСшними Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ. Π’Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ управлСния Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ зависит ΠΎΡ‚ качСства ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ стабности питания.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Π°ΠΌ потрСбуСтся Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ элСктронных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ Π½Π°Π²Ρ‹ΠΊΠΈ ΠΏΠ°ΠΉΠΊΠΈ ΠΈΠ»ΠΈ использования ΠΌΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚. НСсмотря Π½Π° ΠΊΠ°ΠΆΡƒΡ‰ΡƒΡŽΡΡ простоту, здСсь Π΅ΡΡ‚ΡŒ тСхничСскиС Π½ΡŽΠ°Π½ΡΡ‹, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ согласования напряТСний ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сигналов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ сборка схСмы Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ отсутствиС Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний ΠΈ ΠΏΠ»Π°Π²Π½ΠΎΡΡ‚ΡŒ Ρ…ΠΎΠ΄Π° мСханичСской части.

НСобходимыС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ ΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом являСтся ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ части. Π¦Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтом выступаСт ΠΏΠ»Π°Ρ‚Π° Arduino Uno ΠΈΠ»ΠΈ Π΅Π΅ Π°Π½Π°Π»ΠΎΠ³ (Nano, Pro Mini), оснащСнный ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ ATmega328P. ИмСнно ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ входящиС ИК-сигналы ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΡˆΠΈΡ€ΠΎΡ‚Π½ΠΎ-ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ½ΠΎΠΉ модуляциСй для сСрвопривода. Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ зависит ΠΎΡ‚ доступности ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ устройства.

Для ΠΏΡ€ΠΈΠ΅ΠΌΠ° сигнала Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ИК-ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярной модСлью являСтся VS1838B. Π­Ρ‚ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ…ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ ΡˆΡƒΠΌ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π΅ΡΡƒΡ‰ΡƒΡŽ частоту, выдавая чистый Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ сигнал Π½Π° Π²Ρ…ΠΎΠ΄ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Π‘Π΅Ρ€Π²ΠΎΠΏΡ€ΠΈΠ²ΠΎΠ΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ: ΠΎΡ‚ Π΄Π΅ΡˆΠ΅Π²Ρ‹Ρ… SG90 Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹Ρ… MG996R, ΠΈ Π²Ρ‹Π±ΠΎΡ€ зависит ΠΎΡ‚ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ планируСтся ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ ΠΊ Π²Π°Π»Ρƒ.

  • πŸ”Œ Arduino Uno/Nano β€” ΠΌΠΎΠ·Π³ систСмы, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹.
  • πŸ“‘ ИК-ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ TSOP1738 ΠΈΠ»ΠΈ VS1838B β€” сСнсор, ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с ΠΏΡƒΠ»ΡŒΡ‚Π°.
  • βš™οΈ Π‘Π΅Ρ€Π²ΠΎΠΏΡ€ΠΈΠ²ΠΎΠ΄ SG90 β€” ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ с ΡƒΠ³Π»ΠΎΠΌ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° 180 градусов.
  • πŸ”‹ Π‘Π»ΠΎΠΊ питания 5Π’ β€” для обСспСчСния ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ напряТСния (USB ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ).

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ стоит ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ источнику питания. Π₯отя ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ USB, сСрвоприводы Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ старта ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‚ Ρ‚ΠΎΠΊ Π΄ΠΎ 500 мА, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ просадку напряТСния ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Arduino. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний источник питания 5Π’ с достаточной Ρ‚ΠΎΠΊΠΎΠΎΡ‚Π΄Π°Ρ‡Π΅ΠΉ.

πŸ“Š Какой сСрвопривод Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
SG90 (ΠΌΠΈΠΊΡ€ΠΎ)
MG996R (стандарт)
MG90S (ΠΌΠ΅Ρ‚Π°Π»Π»)
Π”Ρ€ΡƒΠ³ΠΎΠΉ

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ инфракрасного ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

Π˜Π½Ρ„Ρ€Π°ΠΊΡ€Π°ΡΠ½Π°Ρ связь базируСтся Π½Π° модуляции свСтового ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ частоты, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ 38 ΠΊΠ“Ρ†. ΠŸΡƒΠ»ΡŒΡ‚ ΠΈΠ·Π»ΡƒΡ‡Π°Π΅Ρ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ ИК-свСта, кодируя логичСскиС Π½ΡƒΠ»ΠΈ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ°ΡƒΠ· ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ. ΠŸΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ Π½Π° сторонС Arduino Π΄Π΅ΠΌΠΎΠ΄ΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ этот сигнал, прСвращая Π²ΡΠΏΡ‹ΡˆΠΊΠΈ свСта Π² понятныС элСктричСскиС ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΏΡƒΠ»ΡŒΡ‚ΠΎΠ² (Sony, NEC, RC5) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ свой ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ кодирования. Для дСкодирования этих сигналов Π² срСдС Arduino IDE ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° IRremote. Она Π±Π΅Ρ€Π΅Ρ‚ Π½Π° сСбя ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠΈΠ½Π³Ρƒ ΠΈ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², прСдоставляя программисту Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: адрСс устройства, ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ΠΈ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π Π°Π·Π½Ρ‹Π΅ ΠΏΡƒΠ»ΡŒΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹. Если ваш ΠΏΡƒΠ»ΡŒΡ‚ Π½Π΅ опрСдСляСтся, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ поднСсти Π΅Π³ΠΎ Π±Π»ΠΈΠΆΠ΅ ΠΊ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΡƒ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π±Π°Ρ‚Π°Ρ€Π΅ΠΉΠΊΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ слабый сигнал ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам дСкодирования.

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ИК-связь Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… прямой видимости. Π‘ΠΈΠ³Π½Π°Π» Π½Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ сквозь стСны ΠΈ сильно рассСиваСтся ΠΏΡ€ΠΈ Π±ΠΎΠΊΠΎΠ²ΠΎΠΌ ΡƒΠ³Π»Π΅. Для увСличСния Π΄Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ИК-свСтодиоды с Π»ΠΈΠ½Π·Π°ΠΌΠΈ ЀрСнСля, Π½ΠΎ для управлСния сСрвоприводом Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΊΠΎΠΌΠ½Π°Ρ‚Ρ‹ мощности стандартного ΠΏΡƒΠ»ΡŒΡ‚Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ достаточно.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ модуляция 38 ΠΊΠ“Ρ†?

НСсущая частота 38 ΠΊΠ“Ρ† Π²Ρ‹Π±Ρ€Π°Π½Π° Π½Π΅ случайно. Она позволяСт ΠΎΡ‚ΡΠ΅Ρ‡ΡŒ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ ΠΈΠ·Π»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ Π»Π°ΠΌΠΏ накаливания ΠΈ солнца, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΡƒΡŽ частоту мСрцания ΠΈΠ»ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ постоянным источником свСта. ΠŸΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ настроСн Ρ€Π΅Π·ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° эту частоту.

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ элСмСнтов ΠΊ Arduino

Π‘Π±ΠΎΡ€ΠΊΠ° элСктричСской Ρ†Π΅ΠΏΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊ распиновкС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². ИК-ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π°: GND (зСмля), VCC (ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ 5Π’) ΠΈ OUT (ΡΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹ΠΉ). Π‘ΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΈΠ½ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ Π²Ρ…ΠΎΠ΄Ρƒ Arduino, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊ ΠΏΠΈΠ½Ρƒ 11, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ IRremote ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° ΠΏΠ»Π°Ρ‚Π°Ρ… Uno.

Π‘Π΅Ρ€Π²ΠΎΠΏΡ€ΠΈΠ²ΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°: ΠΊΠΎΡ€ΠΈΡ‡Π½Π΅Π²Ρ‹ΠΉ ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ (GND), красный (VCC 5Π’) ΠΈ ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΎΡ€Π°Π½ΠΆΠ΅Π²Ρ‹ΠΉ (сигнал). Π‘ΠΈΠ³Π½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ сСрвопривода ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΈΠ½Ρƒ 9, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ PWM (ШИМ), Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для управлСния ΡƒΠ³Π»ΠΎΠΌ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°. ЗСмля всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ объСдинСна.

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Пин Arduino НазначСниС ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅
ИК-ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ OUT Pin 11 Π’Ρ…ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅
Π‘Π΅Ρ€Π²ΠΎΠΏΡ€ΠΈΠ²ΠΎΠ΄ Signal Pin 9 Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ PWM Π’Π°ΠΉΠΌΠ΅Ρ€ 1
ИК-ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ VCC 5V ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ Макс 50мА
Π‘Π΅Ρ€Π²ΠΎΠΏΡ€ΠΈΠ²ΠΎΠ΄ VCC 5V (Ext) ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ ΠžΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ источник

ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ сСрвопривода Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ 5Π’ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Π΅ΡΡ‚ΡŒ риск ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΉ regulator ΠΏΠ»Π°Ρ‚Ρ‹, Ссли ΠΌΠΎΡ‚ΠΎΡ€ ΠΌΠΎΡ‰Π½Ρ‹ΠΉ. Для сСрвоприводов сСрии MG996R использованиС внСшнСго источника питания 5Π’ с ΠΎΠ±Ρ‰Π΅ΠΉ Π·Π΅ΠΌΠ»Π΅ΠΉ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ бСзопасности.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° схСмы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

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

Настройка срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Для написания ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ срСда Arduino IDE. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π²Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ: IRremote (Π°Π²Ρ‚ΠΎΡ€ shirriff) для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ИК-сигналами ΠΈ Servo (стандартная), которая ΠΈΠ΄Π΅Ρ‚ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅ с IDE. Установка производится Ρ‡Π΅Ρ€Π΅Π· мСню Sketch β†’ Include Library β†’ Manage Libraries.

ПослС установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ рСкомСндуСтся Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ IRrecvDump, входящий Π² состав IRremote. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡ€Ρ‚Π° (Tools β†’ Serial Monitor) ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° ΠΏΡƒΠ»ΡŒΡ‚Π΅. Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ hexadecimal-ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, NEC) ΠΈ адрСс устройства. Π­Ρ‚ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² основном ΠΊΠΎΠ΄Π΅.

#include <IRremote.h>

#include <Servo.h>

#define RECV_PIN 11

IRrecv irrecv(RECV_PIN);

decode_results results;

Servo myServo;

int pos = 90;

Π’ ΠΊΠΎΠ΄Π΅ ΠΌΡ‹ объявляСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сСрвопривода ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ компиляции ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ошибки, Ссли Π² ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π»Π΅ΠΆΠ°Ρ‚ старыС вСрсии Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ libraries Π½Π΅Ρ‚ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² ΠΏΠ°ΠΏΠΎΠΊ IRremote.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° управлСния сСрвоприводом

Основная Π·Π°Π΄Π°Ρ‡Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ β€” ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ состояниС ИК-ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° ΠΈ ΠΏΡ€ΠΈ поступлСнии сигнала ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΡƒΠ³ΠΎΠ» ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° Π²Π°Π»Π°. Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ loop() ΠΌΡ‹ провСряСм Ρ„Π»Π°Π³ availability Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ°. Если Π΄Π°Π½Π½Ρ‹Π΅ Π΅ΡΡ‚ΡŒ, считываСм ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ сравниваСм Π΅Π³ΠΎ с Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ значСниями.

Для управлСния ΡƒΠ³Π»ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ myServo.write(angle), Π³Π΄Π΅ angle β€” Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 0 Π΄ΠΎ 180 градусов. Π§Ρ‚ΠΎΠ±Ρ‹ сСрвопривод Π½Π΅ дСргался ΠΏΡ€ΠΈ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΈ сигнала, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ: ΠΎΠ΄Π½ΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ β€” ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚ Π²ΠΏΡ€Π°Π²ΠΎ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ β€” Π²Π»Π΅Π²ΠΎ, ΠΈΠ»ΠΈ пошаговоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡƒΠ³Π»Π°.

  • πŸ”Ή ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΊΠΎΠ΄Ρ‹ ΠΊΠ½ΠΎΠΏΠΎΠΊ Β«Π’Π²Π΅Ρ€Ρ…Β» ΠΈ Β«Π’Π½ΠΈΠ·Β» с ΠΏΡƒΠ»ΡŒΡ‚Π°.
  • πŸ”Ή ΠŸΡ€ΠΈ ΠΊΠΎΠ΄Π΅ Β«Π’Π²Π΅Ρ€Ρ…Β» ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΡƒΠ³Π»Π° Π½Π° 10 градусов.
  • πŸ”Ή ΠŸΡ€ΠΈ ΠΊΠΎΠ΄Π΅ Β«Π’Π½ΠΈΠ·Β» ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡƒΠ³Π»Π°.
  • πŸ”Ή ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅ΠΌ ΡƒΠ³ΠΎΠ» Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ 0..180 Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΠΎΠΌΠΊΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°.

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ delay(20) послС ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Ρ‚ΡŒ сСрвоприводу врСмя Π½Π° ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π½ΠΎ Π½Π΅ Π΄Π΅Π»Π°ΠΉΡ‚Π΅ Π΅Ρ‘ слишком большой, ΠΈΠ½Π°Ρ‡Π΅ ΠΏΡƒΠ»ΡŒΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Β«Π·Π°Π»ΠΈΠΏΠ°ΡŽΡ‰ΠΈΠΌΒ». ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Π°Ρ рСакция систСмы Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠΉ для ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° систСмы ΠΈ устранСниС нСисправностСй

Π’ процСссС сборки ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ситуации, ΠΊΠΎΠ³Π΄Π° сСрвопривод дСргаСтся, Π° ΠΏΡƒΠ»ΡŒΡ‚ Π½Π΅ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚. Π§Π°Ρ‰Π΅ всСго ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π² Β«Π΄Ρ€Π΅Π±Π΅Π·Π³Π΅Β» ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Π½Π°Π²ΠΎΠ΄ΠΊΠ°Ρ… Π½Π° ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π°Ρ…. ИспользованиС экранированных ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ сокращСниС Π΄Π»ΠΈΠ½Ρ‹ соСдинСний ΠΌΠ΅ΠΆΠ΄Ρƒ Arduino ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠΌ