این ماژول یک سنسور جوی استیک می باشد.
خروجی این ماژول در دو محور X و Y از نوع آنالوگ بوده و در محور Z به شکل دیجیتال است.
این جوی استیک به یک پتانسیومتر 10 کیلو اهمی راک PS2 مجهز است.
این ماژول می تواند در کنترل از راه دور ها و سایر کارهای تعاملی دیگر مورد استفاده قرار بگیرد.
همچنین این محصول به سادگی قابل اتصال به پروجکت برد می باشد و با انواع میکرو کنترولر ها قابلیت کار را دارد.
Int JoyStick_X = 0; // x
Int JoyStick_Y = 1; // y
Int JoyStick_Z = 3; // key
Void setup () {
pinMode (JoyStick_X, INPUT);
PinMode (JoyStick_Y, INPUT);
PinMode (JoyStick_Z, INPUT);
Serial.begin (9600); // 9600 bps
}
void loop () {
int x, y, z;
x = analogRead (JoyStick_X);
y = analogRead (JoyStick_Y);
z = digitalRead (JoyStick_Z);
Serial.print (x, DEC); Serial.print ( ",");
Serial.print (y, DEC); Serial.print ( ",");
Serial.println (z, DEC);
}
این جوی استیک یک پتانسیومتر 10 کیلو اهم است که در دو جهت X و Y حرکت می کند.
در این جوی استیک موقعیت کلاهک با تغییرات مقدار مقاومتی محور X و Y مشخص می شود.
در محور Z نیز یک کلید قرار دارد که با فشار دادن کلاهک وصل می شود.
با توجه به شکل بالا مشاهده می کنید که عملکرد این جوی استیک بر مبنای تغییرات مقاومتی استوار است.
با اتصال پینهای تغذیه به یک منبع تغذیه 5 ولت خروجی های آنالوگ جوی استیک از صفر ولت تا 5 ولت تغییر می کند.
در حالتی که کلاهک در وسط قرار گیرد ولتاژ خروجی های آنالوگ 2/5 ولت است.
با پردازش این ولتاژ می توانید موقعیت محور آن را تشخیص دهید.
همچنین می توانید با اندازه گیری مقاومت پتانسیومتر ها اقدام به پردازش حرکت جوی استیک کنید.
محور جوی استیک طوری طراحی شده است که بعد از حرکت دادن آن و با رها کردن کلاهک به شکل خودکار به حالت وسط بر می گردد.
در شکل زیر میزان چرخش محور را مشاهده می کنید.
قسمت آبی رنگ بخش خلاص بوده و قسمتهای سبز رنگ محدوده قابل استفاده می باشد.
مانند شکل زیر این ماژول را به یک آردواینو وصل کنید و برنامه تست را بارگزاری کنید.
در پنجره سریال می توانید نتیجه عملکرد جوی استیک را مشاهده کنید.