Ардуино руу джойстикийг хэрхэн яаж холбох вэ

Агуулгын хүснэгт:

Ардуино руу джойстикийг хэрхэн яаж холбох вэ
Ардуино руу джойстикийг хэрхэн яаж холбох вэ

Видео: Ардуино руу джойстикийг хэрхэн яаж холбох вэ

Видео: Ардуино руу джойстикийг хэрхэн яаж холбох вэ
Видео: arduino подключение питания и виды сигналов урок №2. 2024, Арваннэгдүгээр
Anonim

Хүмүүсээс микроконтроллер эсвэл компьютерт мэдээлэл дамжуулах олон янзын арга байдаг бөгөөд тэдгээрийн нэг нь joystick ашигладаг. Хоёр тэнхлэг ба товчлуур бүхий аналог джойстикийг Arduino руу хэрхэн холбохыг үзье.

Хоёр тэнхлэг ба товчлуур бүхий джойстик
Хоёр тэнхлэг ба товчлуур бүхий джойстик

Энэ нь зайлшгүй шаардлагатай

  • - Ардуино;
  • - хоёр тэнхлэгийн joystick;
  • - 220 Ом-ийн нэрлэсэн утга бүхий 3 резистор;
  • - 1 RGB эсвэл 3 уламжлалт LED.

Зааварчилгаа

1-р алхам

Жойстик нь мэдээллийг дамжуулахад тохиромжтой, ашиглахад хялбар төхөөрөмж юм. Эрх чөлөөний зэрэг, заалтуудыг унших зарчим, ашигласан технологийн хувьд маш олон тооны джойстик байдаг. Joysticks нь ихэвчлэн аливаа механизм, хяналттай загвар, роботын хөдөлгөөнийг хянахад ашиглагддаг. Өнөөдөр үзэх аналог джойстик нь харилцан перпендикуляр хоёр тэнхлэг бүхий бөмбөлгөн холболтонд бэхлэгдсэн бариул юм. Бариулыг хазайх үед тэнхлэг нь гаралтын хүчдэл өөрчлөгддөг тул потенциометрийн хөдлөх контактыг эргүүлнэ. Мөн аналог джойстик нь товчлуурын товчлууртай бөгөөд энэ нь бариулыг босоо байдлаар дарахад идэвхждэг.

Joystick бүдүүвч зураг
Joystick бүдүүвч зураг

Алхам 2

Доорх схемийн дагуу joystick-ийг холбоно уу. Жойстикын X ба Y аналог гаралтыг Arduino-ийн A1 ба A2 аналог оролттой холбож, SW товчлуурын гаралтыг дижитал оролт руу холбоно. Дамжуулагч нь +5 В хүчдэлээр тэжээгддэг.

Arduino-ийн Joystick холболтын схем
Arduino-ийн Joystick холболтын схем

Алхам 3

Жойстик хэрхэн ажилладагийг тодорхой харахын тулд ийм ноорог бичье. Зүүг зарлаж, тэдгээрийн ажиллах горимыг тохируулцгаая. Setup () процедурын хувьд бид switchPin оролтыг өндөр түвшинд тохируулсан болохыг анхаарна уу. Энэ нь порт дээрх суурилуулсан татах резисторыг идэвхжүүлдэг. Хэрэв та үүнийг асаахгүй бол joystick товчлуур дарагдаагүй үед 8-р Arduino порт агаарт өлгөгдөж, пикапуудыг барих болно. Энэ нь хүсээгүй, эмх замбараагүй хуурамч эерэг үр дагаварт хүргэх болно.

Loop () процедур дээр бид товчлуурын төлөвийг байнга асааж, гаралтын 13 дахь LED ашиглан харуулдаг. SwitchPin оролтыг дээш татсан тул LED байнга асаалттай байдаг ба товчлуур дарахад унтардаг., харин эсрэгээрээ биш.

Дараа нь бид joystick-ийн хоёр потенциометрийн уншилтыг уншина уу - X ба Y тэнхлэгийн гаралт. Arduino нь 10 битийн ADC-тэй тул joystick-ээс уншсан утга нь 0-ээс 1023 хооронд хэлбэлздэг. Жойстикын дунд байрлал дээр зураг дээрээс харж байгаагаар 500 муж дахь утгууд нь хүрээний дунд орчим байна.

Joystick-ийн ажиллагааг харуулах ноорог
Joystick-ийн ажиллагааг харуулах ноорог

Алхам 4

Ихэнхдээ joystick нь цахилгаан моторыг хянахад ашиглагддаг. Гэхдээ яагаад үүнийг LED гэрлийг хянахын тулд ашиглаж болохгүй гэж? Дээрх схемийн дагуу Arduino-ийн дижитал портууд 9, 10, 11-т RGB LED (эсвэл гурван энгийн LED) холбож үзье, мэдээжийн хэрэг резисторуудын талаар мартаж болохгүй.

Joystick ба RGB LED-ийн Arduino холболтын схем
Joystick ба RGB LED-ийн Arduino холболтын схем

Алхам 5

Зурагт үзүүлсэн шиг joystick-ийн байрлалыг тэнхлэгийн дагуу өөрчлөхөд бид харгалзах өнгөний тод байдлыг өөрчлөх болно. Жойстикийг үйлдвэрлэгч яг нарийн төвлөрүүлж чаддаггүй бөгөөд масштабын дунд 512 орчим биш, харин 490-525 хооронд байрладаг тул жолооны бариул төвийг сахисан байрлалд байсан ч гэсэн LED бага зэрэг асаж болно. Хэрэв та үүнийг бүрэн унтраахыг хүсч байвал програмд тохирсон нэмэлт өөрчлөлт оруулна уу.

X, Y тэнхлэгийн дагуу R, G, B сувгийн гэрэлтүүлгийн тархалтын бүдүүвч
X, Y тэнхлэгийн дагуу R, G, B сувгийн гэрэлтүүлгийн тархалтын бүдүүвч

Алхам 6

Дээрх бүдүүвч дээр үндэслэн бид Arduino удирдлагыг RGB LED гэрлийн хяналтын даалгаврыг joystick ашиглан бичнэ.

Нэгдүгээрт, бид товчлууртай ажиллахын тулд тээглүүр ба ledOn ба prevSw гэсэн хоёр хувьсагчийн захидал харилцааг зарлах болно. Setup () процедурын хувьд функцуудыг тээглүүрт хуваарилж, татах резисторыг digitalWrite (swPin, HIGH) командын тусламжтайгаар товчлуурын зүүтэй холбоно уу.

Гогцоонд () бид джойстик товчийг дарж тодорхойлно. Товчлуур дээр дарахад бид "гар чийдэн" горим ба "өнгөт хөгжим" горимыг хооронд нь шилжүүлдэг.

FreeMode () горимд LED-ийн гэрэлтүүлгийг joystick-ийг янз бүрийн чиглэлд хазайлгах замаар удирддаг: тэнхлэгийн дагуу налалт хүчтэй байх тусам харгалзах өнгө нь гэрэлтдэг. Үүнээс гадна утгын хувиргалтыг газрын зургийн функц (утга, fromLower, fromUpper, toLower, toUpper) авдаг. Map () функц нь joystick тэнхлэгийн дагуу хэмжсэн утгуудыг (Багаас өндөр хүртэл) хүссэн гэрэлтүүлгийн хязгаарт (Бага, Өндөр хүртэл) шилжүүлдэг. Та ердийн арифметик үйлдлүүдтэй ижил зүйлийг хийж болно, гэхдээ энэ тэмдэглэгээ хамаагүй богино байна.

DiscoMode () горимд гурван өнгө ээлжлэн тодорч, унтардаг. Товчлуурыг дарахад давталтаас гарах боломжтой байхын тулд давталт бүрийг товчлуур дарагдсан эсэхийг шалгана.

Аналог джойстик ашиглан LED-ийн гэрлийг хянах ноорог
Аналог джойстик ашиглан LED-ийн гэрлийг хянах ноорог

Алхам 7

Үр дүн нь гурван өнгийн RGB LED-ээр хийгдсэн гар чийдэн бөгөөд өнгө бүрийн тод байдлыг joystick ашиглан тохируулдаг. Товчлуурыг дарахад "өнгөт хөгжим" горим идэвхждэг. Хэдийгээр би үүнийг эсрэгээрээ шөнийн гэрэл болгон ашигладаг.

Тиймээс бид Arduino руу аналог хоёр тэнхлэгтэй джойстикийг товчлуураар хэрхэн холбож, уншиж уншиж сурав. Та манай жишээнээс илүү joystick ашиглах сонирхолтой аргыг бодож хэрэгжүүлж болно.

Зөвлөмж болгож буй: