ዝርዝር ሁኔታ:

ባለ 3-አክሲዮን ጋይሮስኮፕ ዳሳሽ BMG160 ን ከዝርፊያ ጋር ማገናኘት 5 ደረጃዎች
ባለ 3-አክሲዮን ጋይሮስኮፕ ዳሳሽ BMG160 ን ከዝርፊያ ጋር ማገናኘት 5 ደረጃዎች

ቪዲዮ: ባለ 3-አክሲዮን ጋይሮስኮፕ ዳሳሽ BMG160 ን ከዝርፊያ ጋር ማገናኘት 5 ደረጃዎች

ቪዲዮ: ባለ 3-አክሲዮን ጋይሮስኮፕ ዳሳሽ BMG160 ን ከዝርፊያ ጋር ማገናኘት 5 ደረጃዎች
ቪዲዮ: በ 20ሺ ብር የሚሸጥ አክሲዮን !! እንዳያመልጣችሁ !! በጣም አትራፊ አክሲዮን !! Ethiopian Business Information 2024, ሀምሌ
Anonim
Image
Image

በዘመናዊው ዓለም ውስጥ ከግማሽ በላይ የሚሆኑ ወጣቶች እና ልጆች ጨዋታን ይወዳሉ እና እሱን የሚወዱ ሁሉ በጨዋታ ቴክኒካዊ ገጽታዎች የተደነቁ በዚህ ጎራ ውስጥ የእንቅስቃሴ ዳሰሳ አስፈላጊነትን ያውቃሉ። እኛ በተመሳሳይ ነገር ተገርመናል እና በቦርዶቹ ላይ ለማምጣት ብቻ ፣ የማንኛውንም ነገር የማዕዘን መጠን መለካት በሚችል የጂሮስኮፕ ዳሳሽ ላይ ለመሥራት አስበናል። ስለዚህ ፣ ሥራውን ለመቋቋም የወሰድነው አነፍናፊ BMG160 ነው። ቢኤምጂ160 ባለ 16-ቢት ፣ ዲጂታል ፣ ባለ ሦስትዮሽ ፣ ጋይሮስኮፕ ዳሳሽ ነው ፣ ይህም በሦስት ቀጥ ባለ ክፍል ልኬቶች ውስጥ የማዕዘን ደረጃውን ሊለካ ይችላል።

በዚህ መማሪያ ውስጥ ፣ የ BMG160 ን ሥራ ከ Particle Photon ጋር እናሳያለን።

ለዚህ ዓላማ የሚያስፈልጉዎት ሃርድዌር እንደሚከተለው ነው

1. BMG160

2. ቅንጣት ፎቶን

3. I2C ኬብል

4. I2C ጋሻ ለ Particle Photon

ደረጃ 1 BMG160 አጠቃላይ እይታ

ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!

በመጀመሪያ እኛ BMG160 የሆነውን የአነፍናፊ ሞጁል መሰረታዊ ባህሪያትን እና በሚሠራበት የግንኙነት ፕሮቶኮል እርስዎን በደንብ ማወቅ እንፈልጋለን።

BMG160 በመሠረቱ ባለ 16-ቢት ፣ ዲጂታል ፣ ባለ ሦስትዮሽ ፣ ጋይሮስኮፕ ዳሳሽ ሲሆን ይህም የማዕዘን መጠኖችን ሊለካ ይችላል። እሱ በሦስት ቀጥ ባለ ክፍል ልኬቶች ፣ በ x- ፣ y- እና z-axis ፣ እና ተጓዳኝ የውጤት ምልክቶችን በማቅረብ የማዕዘን መጠኖችን ማስላት ይችላል። የ I2C የግንኙነት ፕሮቶኮልን በመጠቀም ከሮዝቤሪ ፒ ቦርድ ጋር መገናኘት ይችላል። ይህ ልዩ ሞጁል ለሸማች ትግበራዎች እንዲሁም ለኢንዱስትሪ ዓላማዎች መስፈርቶችን ለማሟላት የተነደፈ ነው።

አነፍናፊው የሚሠራበት የግንኙነት ፕሮቶኮል I2C ነው። I2C ለተዋሃደው የተቀናጀ ወረዳ ያመለክታል። በ SDA (ተከታታይ ውሂብ) እና በ SCL (ተከታታይ ሰዓት) መስመሮች በኩል ግንኙነቱ የሚካሄድበት የግንኙነት ፕሮቶኮል ነው። ብዙ መሣሪያዎችን በተመሳሳይ ጊዜ ለማገናኘት ያስችላል። እሱ በጣም ቀላሉ እና ቀልጣፋ የግንኙነት ፕሮቶኮል አንዱ ነው።

ደረጃ 2 - እርስዎ የሚፈልጉት..

ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!
ምንድን ነው የሚፈልጉት..!!

ግባችንን ለማሳካት የሚያስፈልጉን ቁሳቁሶች የሚከተሉትን የሃርድዌር ክፍሎች ያካትታሉ።

1. BMG160

2. ቅንጣት ፎቶን

3. I2C ኬብል

4. I2C ጋሻ ለ Particle Photon

ደረጃ 3 የሃርድዌር ማያያዣ;

የሃርድዌር ግንኙነት
የሃርድዌር ግንኙነት
የሃርድዌር ግንኙነት
የሃርድዌር ግንኙነት

የሃርድዌር መንጠቆው ክፍል በመሠረቱ በአነፍናፊው እና በፓርቲው መካከል የሚፈለጉትን የሽቦ ግንኙነቶች ያብራራል። ለተፈለገው ውጤት በማንኛውም ስርዓት ላይ ሲሰሩ ትክክለኛ ግንኙነቶችን ማረጋገጥ መሠረታዊ አስፈላጊነት ነው። ስለዚህ አስፈላጊዎቹ ግንኙነቶች እንደሚከተለው ናቸው

BMG160 ከ I2C በላይ ይሠራል። እያንዳንዱን የአነፍናፊ በይነገጽ እንዴት ሽቦ ማገናኘት እንደሚቻል የሚያሳይ የምስል ሽቦ ንድፍ ምሳሌ እዚህ አለ።

ከሳጥን ውጭ ፣ ቦርዱ ለ I2C በይነገጽ የተዋቀረ ነው ፣ ስለሆነም እርስዎ ሌላ የማይታወቁ ከሆኑ ይህንን መንጠቆ እንዲጠቀሙ እንመክራለን።

የሚያስፈልግዎት አራት ሽቦዎች ብቻ ናቸው! Vcc ፣ Gnd ፣ SCL እና SDA ፒኖች የሚያስፈልጉት አራት ግንኙነቶች ብቻ ናቸው እና እነዚህ በ I2C ገመድ እገዛ ተገናኝተዋል።

እነዚህ ግንኙነቶች ከላይ ባሉት ሥዕሎች ውስጥ ይታያሉ።

ደረጃ 4 3-የአክሲስ ጋይሮስኮፕ ልኬት ቅንጣት ኮድ

3-ዘንግ ጋይሮስኮፕ የመለኪያ ቅንጣት ኮድ
3-ዘንግ ጋይሮስኮፕ የመለኪያ ቅንጣት ኮድ
3-የአክሲስ ጋይሮስኮፕ የመለኪያ ቅንጣት ኮድ
3-የአክሲስ ጋይሮስኮፕ የመለኪያ ቅንጣት ኮድ

አሁን በንጥል ኮድ እንጀምር።

ከአርዲኖው ጋር የአነፍናፊ ሞጁሉን እየተጠቀምን ሳለ እኛ application.h እና spark_wiring_i2c.h ቤተ -መጽሐፍትን አካተናል። "application.h" እና spark_wiring_i2c.h ቤተ -መጽሐፍት በአነፍናፊው እና በንጥሉ መካከል ያለውን የ i2c ግንኙነት የሚያመቻቹ ተግባሮችን ይ containsል።

ጠቅላላው ቅንጣት ኮድ ለተጠቃሚው ምቾት ከዚህ በታች ተሰጥቷል-

#ያካትቱ

#ያካትቱ

// BMG160 I2C አድራሻ 0x68 (104) ነው

#መግለፅ Addr 0x68

int xGyro = 0 ፣ yGyro = 0 ፣ zGyro = 0;

ባዶነት ማዋቀር ()

{

// ተለዋዋጭ አዘጋጅ

ቅንጣት። ተለዋዋጭ (“i2cdevice” ፣ “BMG160”);

ቅንጣት። ተለዋዋጭ (“xGyro” ፣ xGyro);

ቅንጣት። ተለዋዋጭ (“yGyro” ፣ yGyro);

ቅንጣት። ተለዋዋጭ ("zGyro" ፣ zGyro);

// የ I2C ግንኙነትን እንደ ማስተር ማስጀመር

Wire.begin ();

// የመጀመሪያ ግንኙነት ተከታታይ ግንኙነት

Serial.begin (9600);

// I2C ማስተላለፍን ይጀምሩ

Wire.begin ማስተላለፊያ (Addr);

// የክልል ምዝገባን ይምረጡ

Wire.write (0x0F);

// ሙሉ ልኬት 2000 ዲፒኤስ ያዋቅሩ

Wire.write (0x80);

// I2C ማስተላለፍን ያቁሙ

Wire.endTransmission ();

// I2C ማስተላለፍን ይጀምሩ

Wire.begin ማስተላለፊያ (Addr);

// የመተላለፊያ ይዘት መመዝገቢያ ይምረጡ

Wire.write (0x10);

// የመተላለፊያ ይዘት አዘጋጅ = 200 Hz

Wire.write (0x04);

// I2C ማስተላለፍን ያቁሙ

Wire.endTransmission ();

መዘግየት (300);

}

ባዶነት loop ()

{

ያልተፈረመ int ውሂብ [6];

// I2C ማስተላለፍን ይጀምሩ

Wire.begin ማስተላለፊያ (Addr);

// የውሂብ መመዝገቢያ ይምረጡ

Wire.write (0x02);

// I2C ማስተላለፍን ያቁሙ

Wire.endTransmission ();

// 6 ባይት ውሂብን ይጠይቁ

Wire.requestFrom (Addr, 6);

// 6 ባይት መረጃዎችን ያንብቡ

// xGyro lsb ፣ xGyro msb ፣ yGyro lsb ፣ yGyro msb ፣ zGyro lsb ፣ zGyro msb

ከሆነ (Wire.available () == 6)

{

ውሂብ [0] = Wire.read ();

ውሂብ [1] = Wire.read ();

ውሂብ [2] = Wire.read ();

ውሂብ [3] = Wire.read ();

ውሂብ [4] = Wire.read ();

ውሂብ [5] = Wire.read ();

}

መዘግየት (300);

// ውሂቡን ይለውጡ

xGyro = ((ውሂብ [1] * 256) + ውሂብ [0]);

ከሆነ (xGyro> 32767)

{

xGyro -= 65536;

}

yGyro = ((ውሂብ [3] * 256) + ውሂብ [2]);

ከሆነ (yGyro> 32767)

{

yGyro -= 65536;

}

zGyro = ((ውሂብ [5] * 256) + ውሂብ [4]);

ከሆነ (zGyro> 32767)

{

zGyro -= 65536;

}

// የውሂብ ውፅዓት ወደ ዳሽቦርድ

Particle.publish ("X-Axis of Rotation:", String (xGyro));

Particle.publish ("Y-Axis of Rotation:", String (yGyro));

Particle.publish ("Z-Axis of rotation:", String (zGyro));

መዘግየት (1000);

}

ደረጃ 5: ማመልከቻዎች

ማመልከቻዎች
ማመልከቻዎች

BMG160 እንደ ተንቀሳቃሽ ስልኮች ፣ የሰው ማሽን በይነገጽ መሣሪያዎች ባሉ መሣሪያዎች ውስጥ የተለያዩ የመተግበሪያዎች ብዛት አለው። ይህ አነፍናፊ ሞጁል እንደ የምስል ማረጋጊያ (DSC እና ካሜራ-ስልክ) ፣ የጨዋታ እና የጠቋሚ መሣሪያዎች ላሉ የሸማች መተግበሪያዎች መስፈርቶችን ለማሟላት የተነደፈ ነው። እንዲሁም የእጅ ምልክት እውቅና በሚፈልጉ እና በቤት ውስጥ አሰሳ ውስጥ ጥቅም ላይ በሚውሉት ስርዓቶች ውስጥ ይሠራል።

የሚመከር: