વાયરલેસ PS2 નિયંત્રક સાથે Arduino ને કેવી રીતે નિયંત્રિત કરવું

  • PS2 નિયંત્રક એ રોબોટ્સને નિયંત્રિત કરવા માટે એક આર્થિક અને અર્ગનોમિક વિકલ્પ છે.
  • PS2 નિયંત્રકને Arduino સાથે કનેક્ટ કરવા માટે તમારે લોજિક લેવલ કન્વર્ટરની જરૂર છે.
  • PS2X લાઇબ્રેરી PS2 નિયંત્રકને Arduino સાથે સંકલિત કરવાનું સરળ બનાવે છે.
  • નિયંત્રક પાસે ચોક્કસ નિયંત્રણ માટે 14 બટનો અને બે એનાલોગ સ્ટિક છે.

arduino વિશે પુસ્તકો

Arduino અને પ્લેસ્ટેશન 2 નિયંત્રક વચ્ચેની ક્રિયાપ્રતિક્રિયા રોબોટિક્સ અને ઓટોમેશન પ્રોજેક્ટ્સ માટે અતિ રસપ્રદ છે. PS2 વાયરલેસ કંટ્રોલર એ બહુમુખી અને ખૂબ જ સસ્તું કંટ્રોલર છે, જે વિવિધ પ્રકારના એનાલોગ અને ડિજિટલ ઇનપુટ્સ ઓફર કરવામાં સક્ષમ છે. જો કે સૈદ્ધાંતિક રીતે તે એક જટિલ કાર્ય જેવું લાગે છે, આ બે સિસ્ટમોનું એકીકરણ તદ્દન સસ્તું છે, વિવિધ પુસ્તકાલયો અને સાધનોને આભારી છે કે જે પ્રક્રિયાને સરળ બનાવવા માટે પહેલેથી જ વિકસાવવામાં આવ્યા છે.

વાયરલેસ PS2 કંટ્રોલર એ રોબોટ્સ, 4×4 વાહનો અથવા કોઈપણ પ્રકારના પ્રોજેક્ટને નિયંત્રિત કરવા માટેનો અર્ગનોમિક અને આર્થિક વિકલ્પ છે જ્યાં પ્રવાહી અને વ્યવહારુ રિમોટ કંટ્રોલની જરૂર હોય છે. Arduino સાથે આ નિયંત્રકનો ઉપયોગ કરવો એ એક ઉકેલ છે જે ઘણા શોખીનો પસંદ કરે છે, કારણ કે તે માત્ર સસ્તું જ નથી, પરંતુ તેની બે એનાલોગ સ્ટીક્સ અને 14 બટનોના સમૂહને કારણે ઉચ્ચ-ચોકસાઇ નિયંત્રણ અનુભવ પ્રદાન કરે છે.

Arduino સાથે PS2 નિયંત્રકનો ઉપયોગ કરવાના ફાયદા

નો મુખ્ય ફાયદો છે ps2 નિયંત્રક તે છે વાયરલેસ, જે તમને તમારા પ્રોજેક્ટ્સને કેબલની મર્યાદા વિના ગતિશીલતા પ્રદાન કરવાની મંજૂરી આપે છે. વધુમાં, લાંબા ગેમિંગ સત્રો માટે ઑપ્ટિમાઇઝ કરેલ તેની અર્ગનોમિક ડિઝાઇનને કારણે તેનો ઉપયોગ કરવો ખૂબ જ આરામદાયક છે, જે તેને ચોકસાઇ અથવા પ્રતિભાવને અસર કર્યા વિના લાંબા સમય સુધી રોબોટ્સ અથવા અન્ય ઉપકરણોને નિયંત્રિત કરવા માટે યોગ્ય બનાવે છે.

અન્ય મહત્વપૂર્ણ પાસું ખર્ચ છે. એક ક્લોન PS2 નિયંત્રક €10 કરતાં ઓછી કિંમતે મળી શકે છે. આ કિંમત માટે, તમને મોટી સંખ્યામાં બટનો અને એનાલોગ ઇનપુટ્સ સાથેનું કંટ્રોલર મળે છે, જે તેને રિમોટ કંટ્રોલ પ્રોજેક્ટ્સ માટે જબરદસ્ત આકર્ષક વિકલ્પ બનાવે છે.

આ નિયંત્રકને Arduino સાથે સંકલિત કરવા માટે, નિયંત્રક પોતે અને રીસીવર ઉપરાંત, તેનો ઉપયોગ કરવો સામાન્ય છે. તર્ક સ્તર કન્વર્ટર જે PS3,3 કંટ્રોલરના 2V સિગ્નલોને 5V સાથે એડજસ્ટ કરવાની મંજૂરી આપે છે જેની સાથે Arduino તેની મોટાભાગની આવૃત્તિઓમાં કામ કરે છે.

સામગ્રી જરૂરી છે

Arduino UNO R4 વાઇફાઇ...
Arduino UNO R4 વાઇફાઇ...
કોઈ સમીક્ષાઓ નહીં
  • વાયરલેસ PS2 નિયંત્રક. આ નિયંત્રકના ક્લોનની કિંમત €9 અને €10 વચ્ચે છે.
  • વાયરલેસ રીસીવર નિયંત્રક માટે, સામાન્ય રીતે પેકેજમાં શામેલ છે.
  • લોજિક લેવલ કન્વર્ટર. આ જરૂરી છે કારણ કે Arduino 5V પર કામ કરે છે અને PS2 નિયંત્રક 3,3V સિગ્નલો સાથે કામ કરે છે.
  • Arduino. તમે કોઈપણ મોડેલનો ઉપયોગ કરી શકો છો, જેમ કે Arduino Uno, મેગા અથવા મીની.
  • બ્રેડબોર્ડ અને રીસીવર અને Arduino વચ્ચે જોડાણો બનાવવા માટે કેબલ.

જોડાણો અને એસેમ્બલી

વાયરલેસ રીસીવર જે PS2 નિયંત્રક સાથે છે તે બંને વચ્ચેના સંચાર માટે મુખ્ય ભાગ છે. આ ઘટક સાથે જોડાય છે Arduino પિનની શ્રેણી દ્વારા, જે રીસીવરના આધારે બદલાય છે, પરંતુ સામાન્ય રીતે સમાવેશ થાય છે પાવર (5V અને GND), ડેટા, ઘડિયાળ અને અન્ય સહાયકો જેમ કે ધ્યાન અથવા વાઇબ્રેશન પિન.

એક મહત્વપૂર્ણ ભલામણ એ છે કે કેબલના રંગ કોડ પર વિશ્વાસ ન કરવો, કારણ કે આ ઉત્પાદકના આધારે બદલાઈ શકે છે. તેમાંના દરેકના કાર્યને ચકાસવા માટે મલ્ટિમીટરનો ઉપયોગ કરવો શ્રેષ્ઠ છે, જે કનેક્શનમાં સંભવિત ભૂલોને ટાળશે.

એકવાર તમે પિનને યોગ્ય રીતે ઓળખી લો તે પછી, તમે a નો ઉપયોગ કરી શકો છો બ્રેડબોર્ડ અલગ-અલગ સિગ્નલોને Arduino સાથે સોલ્ડર કરવા અથવા કનેક્ટ કરવા માટે, અથવા જો તમે બધું જ સઘન રીતે માઉન્ટ કરવાનું પસંદ કરો છો, તો તમે કેબલને સીધા જ રીસીવર પર સોલ્ડર કરી શકો છો, હંમેશા ખાતરી કરો કે કનેક્શન્સ સાચા છે.

એનો ઉપયોગ કરવો ખૂબ જ મહત્વપૂર્ણ છે તર્ક સ્તર કન્વર્ટર કારણ કે, ઉલ્લેખ કર્યો છે તેમ, PS2 નિયંત્રક 3,3V પર કામ કરે છે, જ્યારે મોટાભાગના Arduino બોર્ડ 5V પર કામ કરે છે. આ કન્વર્ટર બંને સિસ્ટમોને નુકસાન પહોંચાડ્યા વિના એકબીજા સાથે "વાત" કરવાની મંજૂરી આપશે.

PS2 નિયંત્રક માટે રૂપરેખાંકન અને પુસ્તકાલય

Arduino સાથે PS2 નિયંત્રકને નિયંત્રિત કરવા માટે, ત્યાં છે PS2X_lib તરીકે ઓળખાતી મૂળભૂત પુસ્તકાલય, બિલ પોર્ટર દ્વારા બનાવવામાં આવ્યું છે, જે આ પ્રકારના નિયંત્રણોના ઉપયોગને મોટા પ્રમાણમાં સુવિધા આપે છે. આ સોફ્ટવેર તમને નિયંત્રક તેના વાયરલેસ રીસીવર દ્વારા મોકલે છે તે તમામ સંકેતોનું સંચાલન કરવાની મંજૂરી આપશે.

આ પુસ્તકાલયનું સ્થાપન ખૂબ જ સરળ છે અને તમે તેને અહીંથી શોધી શકો છો GitHub. એકવાર તમારા Arduino વિકાસ વાતાવરણમાં ડાઉનલોડ અને ઇન્સ્ટોલ થઈ જાય, પછી તમે તેની સાથે કામ કરવાનું શરૂ કરી શકો છો.

આગળનું પગલું Arduino કોડમાં પિનને ગોઠવવાનું હશે. તમારે ખાતરી કરવાની જરૂર પડશે કે તમે પિનને યોગ્ય રીતે વ્યાખ્યાયિત કરો છો. ઘડિયાળ, આદેશ, ડેટા y ધ્યાન જે તમારા ઇનપુટ્સ અને આઉટપુટને અનુરૂપ છે Arduino. આ મહત્વપૂર્ણ છે, કારણ કે ખોટી પિન સોંપણી નિયંત્રકને યોગ્ય રીતે પ્રતિસાદ ન આપવાનું કારણ બની શકે છે.

નીચેના કોડ સ્નિપેટ બતાવે છે કે આ પિનને કેવી રીતે ગોઠવવું:

#include 
PS2X ps2x; // crear la clase para el mando PS2
int error; // variable para errores
#define PS2_CLK 34
#define PS2_CMD 24
#define PS2_ATT 32
#define PS2_DAT 22
// Configuramos los pines para el mando
error = ps2x.config_gamepad(PS2_CLK, PS2_CMD, PS2_ATT, PS2_DAT, true, true);

એકવાર પિન ગોઠવાઈ ગયા પછી, તમે કોડ દ્વારા નિયંત્રક મોકલે છે તે સંકેતો વાંચવાનું શરૂ કરી શકો છો. પુસ્તકાલય એ તપાસવા માટે ચોક્કસ પદ્ધતિઓ પ્રદાન કરે છે કે શું a બટન દબાવવામાં આવ્યું છે, તેમજ મૂલ્યો મેળવવા માટે એનાલોગ નિયંત્રક જોયસ્ટિક્સ.

બટન વાંચન

El ps2 નિયંત્રક સુધી ધરાવે છે 14 બટનો, નિયંત્રણના આગળ અને પાછળના ભાગ વચ્ચે વિતરિત. આગળ અને પાછળના બટનો વાંચવા માટે તમે નીચેના કોડનો ઉપયોગ કરી શકો છો:

if (ps2x.Button(PSB_PAD_UP)) {
   Serial.println("Arriba");
} else if (ps2x.Button(PSB_PAD_DOWN)) {
  Serial.println("Abajo");
} else if (ps2x.Button(PSB_PAD_LEFT)) {
  Serial.println("Izquierda");
} else if (ps2x.Button(PSB_PAD_RIGHT)) {
  Serial.println("Derecha");
}

દિશા બટનો ઉપરાંત, તમે ક્રિયા બટનોના સક્રિયકરણને વાંચી શકો છો જેમ કે વર્તુળ, X, ચોરસ અને ત્રિકોણ, એ જ રીતે.

જોયસ્ટિક વાંચન

એનાલોગ જોયસ્ટિક્સ PS2 નિયંત્રક સતત મૂલ્યો પ્રદાન કરે છે જેનો ઉપયોગ તમે મોટર્સને ખસેડવા અથવા રોબોટની દિશા અને ગતિને નિયંત્રિત કરવા માટે કરી શકો છો, ઉદાહરણ તરીકે. મૂલ્યો 0 થી 255 સુધીની હોય છે, જ્યારે જોયસ્ટિક્સ આરામ પર હોય ત્યારે 127 કેન્દ્રીય મૂલ્ય હોય છે.

int LX = ps2x.Analog(PSS_LX);
int LY = ps2x.Analog(PSS_LY);
int RX = ps2x.Analog(PSS_RX);
int RY = ps2x.Analog(PSS_RY);
Serial.print("Stick Values: ");
Serial.print(LX);Serial.print(",");
Serial.print(LY);Serial.print(",");
Serial.print(RX);Serial.print(",");
Serial.println(RY);

આ મૂલ્યો સાથે તમે કંટ્રોલ લિવર પર કેટલું દબાણ લાદવામાં આવે છે તેના આધારે તમે મોટર્સની ગતિને નિયંત્રિત કરી શકો છો.

પ્રાયોગિક ઉદાહરણો

નિયંત્રણ એ 4x4 રોવર રોબોટ PS2 નિયંત્રક સાથે એ આ પ્રકારના નિયંત્રકની એપ્લિકેશનનું ઉત્તમ ઉદાહરણ છે. આ એસેમ્બલી એ સાથે ખાસ કરીને સરળ બને છે અરડિનો મેગા, કારણ કે તે વધુ પિન અને વધુ મેમરી પ્રદાન કરે છે, જે તમને એક જ સમયે અનેક મોટર્સ અને સેન્સર્સનું સંચાલન કરવાની મંજૂરી આપે છે.

નીચેનો કોડ નિયંત્રક પરના દિશા બટનોનો ઉપયોગ કરીને રોવરને કેવી રીતે નિયંત્રિત કરવું તેનું મૂળભૂત ઉદાહરણ બતાવે છે:

void loop() {
 ps2x.read_gamepad();
 if (ps2x.Button(PSB_PAD_UP)) {
  avance();
 } else if (ps2x.Button(PSB_PAD_DOWN)) {
  retroceso();
 } else if (ps2x.Button(PSB_PAD_LEFT)) {
  giroIzquierda();
 } else if (ps2x.Button(PSB_PAD_RIGHT)) {
  giroDerecha();
} else {
  paro();
 }
}

કંટ્રોલર પરના વિવિધ બટનો વાહનની હિલચાલને કેવી રીતે નિયંત્રિત કરી શકે છે તેનું આ એક સરળ ઉદાહરણ છે, પરંતુ જોયસ્ટિક્સનો ઉપયોગ રોબોટની દિશા અને ગતિ બંનેને નિયંત્રિત કરીને સરળ અને વધુ ચોક્કસ હલનચલન માટે પરવાનગી આપશે.

યોગ્ય એકીકરણ અને ગોઠવણી સાથે, આ નિયંત્રક લગભગ કોઈપણ Arduino-આધારિત ઇલેક્ટ્રોનિક પ્રોજેક્ટને નિયંત્રિત કરવા માટે ખૂબ જ શક્તિશાળી સાધન બની જાય છે.

ભેગું કરો પ્લેસ્ટેશન 2 નિયંત્રક Arduino સાથે તે રોબોટ પ્રોજેક્ટ્સ, ઓટોમેટેડ સિસ્ટમ્સ અથવા રોબોટિક આર્મ્સ જેવી સરળ સિસ્ટમ્સને નિયંત્રિત કરવા માટે શક્યતાઓની વિશાળ શ્રેણી ખોલે છે. મોટી સંખ્યામાં બટનો અને જોયસ્ટિક્સની ચોકસાઈ આ નિયંત્રકને પરિચિત, એર્ગોનોમિક ઈન્ટરફેસ સાથે તેમના બિલ્ડ્સમાં રિમોટ કંટ્રોલ ઉમેરવા માંગતા લોકો માટે ઉત્તમ પસંદગી બનાવે છે.


ટિપ્પણી કરવા માટે સૌ પ્રથમ બનો

તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: મિગ્યુએલ gelંજેલ ગેટóન
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.