ዝርዝር ሁኔታ:

BMA250 ን እና Raspberry Pi ን በመጠቀም የፍጥነት መለኪያ 4 ደረጃዎች
BMA250 ን እና Raspberry Pi ን በመጠቀም የፍጥነት መለኪያ 4 ደረጃዎች

ቪዲዮ: BMA250 ን እና Raspberry Pi ን በመጠቀም የፍጥነት መለኪያ 4 ደረጃዎች

ቪዲዮ: BMA250 ን እና Raspberry Pi ን በመጠቀም የፍጥነት መለኪያ 4 ደረጃዎች
ቪዲዮ: Particle Photon BMA250 Digital Triaxial Acceleration Sensor Tutorial 2024, ሀምሌ
Anonim
Image
Image

BMA250 እስከ ± 16 ግ ድረስ ባለ ከፍተኛ ጥራት (13-ቢት) ልኬት ያለው ትንሽ ፣ ቀጭን ፣ እጅግ በጣም ዝቅተኛ ኃይል ፣ 3-ዘንግ የፍጥነት መለኪያ ነው። የዲጂታል ውፅዓት ውሂብ እንደ 16-ቢት ሁለትዎች ተሞልቶ በ I2C ዲጂታል በይነገጽ በኩል ተደራሽ ነው። በመጠምዘዝ ዳሰሳ አፕሊኬሽኖች ውስጥ የስበት የማይንቀሳቀስ ፍጥነትን ፣ እንዲሁም በእንቅስቃሴ ወይም በድንጋጤ ምክንያት የሚከሰተውን ተለዋዋጭ ፍጥነትን ይለካል። የእሱ ከፍተኛ ጥራት (3.9 mg/LSB) ከ 1.0 ° በታች የዝንባሌ ለውጦችን ለመለካት ያስችላል።

በዚህ መማሪያ ውስጥ BMA250 ን እና Raspberry Pi ን በመጠቀም በሦስቱም ቀጥ ያሉ መጥረቢያዎች ውስጥ ፍጥነቱን እንለካለን። አነፍናፊው በፓይዘን ቋንቋ ፕሮግራም ተደርጓል።

ደረጃ 1 ሃርድዌር ያስፈልጋል

ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል
ሃርድዌር ያስፈልጋል

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

1. ቢኤምኤ 250

2. Raspberry Pi

3. I2C ኬብል

4. I2C ጋሻ ለ Raspberry Pi

5. የኤተርኔት ገመድ

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

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

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

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

ከሳጥን ውጭ ፣ ቦርዱ ለ I2C በይነገጽ የተዋቀረ ነው ፣ ስለሆነም እርስዎ ሌላ የማይታወቁ ከሆኑ ይህንን መንጠቆ እንዲጠቀሙ እንመክራለን። የሚያስፈልግዎት አራት ሽቦዎች ብቻ ናቸው!

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

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

ደረጃ 3: የፍጥነት መለኪያ ለ Python ኮድ

የፍጥነት መለኪያ የፒቶን ኮድ
የፍጥነት መለኪያ የፒቶን ኮድ
የፍጥነት መለኪያ የፒቶን ኮድ
የፍጥነት መለኪያ የፒቶን ኮድ

የራስበሪ ፒን የመጠቀም ጥቅሙ አነፍናፊውን ከእሱ ጋር ለማስተሳሰር ሰሌዳውን በፕሮግራም ቋንቋ የመተጣጠፍ ችሎታን ይሰጥዎታል። ይህንን የቦርድ ጥቅም በመጠቀም ፣ በፒያቶን ውስጥ ፕሮግራሙን እዚህ እያሳየን ነው። ፓይዘን በቀላል አገባብ ከቀላል የፕሮግራም ቋንቋዎች አንዱ ነው። ለ BMA250 ያለው የፓይዘን ኮድ Dcube መደብር ከሆነው ከጊትሁብ ማህበረሰባችን ማውረድ ይችላል

እንዲሁም ለተጠቃሚዎች ምቾት ፣ እኛ ኮዱን እዚህም እያብራራን ነው-

እንደ ኮድ የመጀመሪያ ደረጃ ፣ በፓይዘን ውስጥ የ SMBus ቤተ -መጽሐፍትን ማውረድ ያስፈልግዎታል ምክንያቱም ይህ ቤተ -መጽሐፍት በኮዱ ውስጥ ጥቅም ላይ የዋሉትን ተግባራት ይደግፋል። ስለዚህ ቤተ -መጽሐፍቱን ለማውረድ የሚከተለውን አገናኝ መጎብኘት ይችላሉ-

pypi.python.org/pypi/smbus-cffi/0.5.1

የሥራ ኮዱን ከዚህ በተጨማሪ መገልበጥ ይችላሉ-

ማስመጣት smbus

የማስመጣት ጊዜ

# I2C busbus = smbus. SMBus (1) ያግኙ

# BMA250 አድራሻ ፣ 0x18 (24)

# የክልል ምርጫ ምዝገባን ፣ 0x0F (15) ይምረጡ

# 0x03 (03) ክልል አዘጋጅ = +/- 2gbus.write_byte_data (0x18 ፣ 0x0F ፣ 0x03)

# BMA250 አድራሻ ፣ 0x18 (24)# የመተላለፊያ ይዘት መመዝገቢያ ይምረጡ ፣ 0x10 (16)

# 0x08 (08) የመተላለፊያ ይዘት = 7.81 Hzbus.write_byte_data (0x18 ፣ 0x10 ፣ 0x08)

ጊዜ። እንቅልፍ (0.5)

# BMA250 አድራሻ ፣ 0x18 (24)

# ከ 0x02 (02) ፣ 6 ባይት መልሰው ያንብቡ

# X-Axis LSB ፣ X-Axis MSB ፣ Y-Axis LSB ፣ Y-Axis MSB ፣ Z-Axis LSB ፣ Z-Axis MSB

ውሂብ = አውቶቡስ.read_i2c_block_data (0x18, 0x02, 6)

# ውሂቡን ወደ 10 ቢት ይለውጡ

xAccl = (ውሂብ [1] * 256 + (ውሂብ [0] & 0xC0)) / 64

xAccl> 511 ከሆነ:

xAccl -= 1024

yAccl = (ውሂብ [3] * 256 + (ውሂብ [2] & 0xC0)) / 64

ከሆነ yAccl> 511:

yAccl -= 1024

zAccl = (ውሂብ [5] * 256 + (ውሂብ [4] & 0xC0)) / 64

ከሆነ zAccl> 511:

zAccl -= 1024

# የውጤት ውሂብ ወደ ማያ ገጽ

"X-Axis ውስጥ ማጣደፍ: % d" % xAccl ያትሙ

"በ Y-Axis ውስጥ ማፋጠን: % d" % yAccl

“ዘ-አክሲዮን ውስጥ ማፋጠን % d” % zAccl ያትሙ

የሚከተለው ትዕዛዝ በመጠቀም ኮዱ ይከናወናል።

$> ፓይዘን BMA250.py gt; ፓይዘን BMA250.py

ለተጠቃሚው ማጣቀሻ የአነፍናፊው ውጤት ከላይ በስዕሉ ላይ ይታያል።

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

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

እንደ BMA250 ያሉ የፍጥነት መለኪያዎች በአብዛኛው መተግበሪያውን በጨዋታዎቹ ውስጥ ያገኛሉ እና የመገለጫ መቀየሪያን ያሳያሉ። ይህ አነፍናፊ ሞጁል ለሞባይል አፕሊኬሽኖች በተራቀቀ የኃይል አስተዳደር ስርዓት ውስጥም ይሠራል። BMA250 ብልህ በሆነ ቺፕ እንቅስቃሴ ከተቋረጠ ተቆጣጣሪ ጋር የተካተተ ባለሶስትዮሽ ዲጂታል የፍጥነት ዳሳሽ ነው።

የሚመከር: