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

Python ашиглан Raspberry Pi болон MMA7455 ашиглан хурдатгалын өөрчлөлтийг хянах: 6 алхам
Python ашиглан Raspberry Pi болон MMA7455 ашиглан хурдатгалын өөрчлөлтийг хянах: 6 алхам

Видео: Python ашиглан Raspberry Pi болон MMA7455 ашиглан хурдатгалын өөрчлөлтийг хянах: 6 алхам

Видео: Python ашиглан Raspberry Pi болон MMA7455 ашиглан хурдатгалын өөрчлөлтийг хянах: 6 алхам
Видео: Электроникийн сургалт 2024, Арваннэгдүгээр
Anonim
Image
Image

Би унаагүй, би таталцлыг туршиж байсан. Энэ нь одоо ч ажиллаж байна…

Сансрын хөлгийн хурдалж буй хөлөг онгоцны татан авалтын хамгийн өндөр цэг дээрх цаг нь таталцлын хүчний цаг хугацааны өргөтгөлийн улмаас сууринаас илүү хурдан байх болно гэдгийг тодруулав. Шатлид хөлөг онгоцны хурдыг нэмэгдүүлэх нь хоёуланд нь адилхан байх болно, тиймээс тэд ижил хурдтай явах ёстой гэж зарим хүмүүс маргаж байв. Үүнийг жаахан бодоорой.

Бодол санаа, хүсэл эрмэлзэл, тэр ч байтугай удирдамж нь хаанаас ч үүсч болно, гэхдээ хэрэв та инновацид анхаарлаа хандуулбал энэ асуудалд анхаарлаа төвлөрүүлж буй хүмүүсээс хувь нэмэр оруулдаг. Линукс компьютерийн мини, нэг самбар бүхий Raspberry Pi нь өвөрмөц ажлууд, зохион байгуулалт, програмчлал, электроникийн чиглэлээр мэргэшсэн зөвлөгөөг санал болгодог. Raspberry Pi болон төхөөрөмжүүдийн зааварчилгаа хийсний дараа бид компьютерийн шинжлэх ухаан, электроникийг ашиглан програмчлах, засах, гайхалтай зүйлийг хийх боломжийг олж авах болно. Удалгүй бид хурдатгал хэмжигчийг ашиглан даалгавраа биелүүлэхэд баяртай байсан бөгөөд энэ хэрэгслээр юу хийж чадах талаар бодож байсан нь үнэхээр гайхалтай юм. Тиймээс энэ даалгаварт бид 3 тэнхлэг бүхий дижитал хурдасгуур мэдрэгч болох MMA7455-ийг багтаасан бөгөөд хурдатгалыг X, Y, Z гэсэн 3 хэмжээсээр Raspberry Pi ашиглан Python ашиглан хэмжих болно.

Алхам 1: Бидэнд хэрэгтэй тоног төхөөрөмж

Бидний шаарддаг техник хангамж
Бидний шаарддаг техник хангамж
Бидний шаарддаг техник хангамж
Бидний шаарддаг техник хангамж

Аль хэсгийг авах, хаанаас зохион байгуулах, бүх зүйл ямар үнэтэй болохыг урьдчилан мэдэхгүйгээр оролдох, авах нь хичнээн хэцүү болохыг бид мэднэ. Тиймээс бид энэ бүх ажлыг танд зориулж хийсэн. Бүх хэсгүүдийг дөрвөлжин хэлбэртэй болгосны дараа энэ даалгаврыг хийх нь хурдан байх болно. Бүтэн хэсгүүдийн жагсаалтыг авахын тулд явж дууссаны дараа авна уу.

1. Raspberry Pi

Эхний алхам бол Raspberry Pi самбар авах явдал байв. Raspberry Pi бол Линукс дээр суурилсан ганц бие самбар юм. Энэхүү бяцхан компьютер нь электроникийн дасгал хийх, хүснэгт, текст боловсруулах, вэб серфинг, имэйл, тоглоом гэх мэт компьютерийн үйл ажиллагаанд ашигладаг бүртгэлийн чадварт маш их ач холбогдол өгдөг. Та ямар ч цахилгаан бараа, хоббитой дэлгүүрээс худалдаж авч болно.

2. Raspberry Pi -д зориулсан I2C бамбай

Raspberry Pi -ийн үндсэн асуудал бол I2C порт юм. Үүний тулд TOUTPI2 I2C холбогч нь Raspberry Pi -г ямар ч I2C төхөөрөмжтэй ашиглах боломжийг танд олгоно. Үүнийг DCUBE дэлгүүрт ашиглах боломжтой

3. 3 тэнхлэгийн хурдатгал хэмжигч, MMA7455

Freescale Semiconductor, Inc-ийн үйлдвэрлэсэн MMA7455 3 тэнхлэгтэй дижитал хурдасгуур нь бага хүч чадалтай бөгөөд X, Y, Z тэнхлэгийн дагуу хурдатгалыг хэмжих зориулалттай жижиг оврын машин юм. Бид энэ мэдрэгчийг DCUBE дэлгүүрээс авсан

4. Холбох кабель

Бид I2C холбох кабелийгDCUBE Store -оос худалдаж авсан

5. Микро USB кабель

Бага зэрэг орооцолдсон боловч эрчим хүчний хэрэгцээтэй холбоотой хамгийн хатуу зүйл бол Raspberry Pi юм! Стратеги удирдахад хамгийн их шаарддаг, хамгийн бага шаарддаг арга бол микро USB кабель ашиглах явдал юм. Илүү дэвшилтэт, мэргэшсэн арга бол GPIO эсвэл USB порт ашиглан тусгайлан хүч өгөх явдал юм.

6. Сүлжээний дэмжлэг

Raspberry Pi -ээ Ethernet (LAN) кабелиар холбож, гэрийн сүлжээнд холбоно уу. Нөгөө талаас, WiFi холбогчийг хайж, USB портуудын аль нэгийг ашиглан алсын сүлжээнд очно уу. Энэ бол үндсэн, жижиг, энгийн шийдвэр юм!

7. HDMI кабель/алсын хандалт

Raspberry Pi нь HDMI порттой бөгөөд та үүнийг HDMI кабелиар дамжуулан дэлгэц эсвэл телевизортой холбож болно. Сонголтын хувьд та SSH -ийг ашиглан Raspberry Pi -г Linux компьютер эсвэл терминалаас Mac компьютер ашиглан суулгаж болно. Үүний нэгэн адил, PuTTY, үнэгүй, нээлттэй эх сурвалжийн терминал эмулятор нь ухаалаг бодол шиг сонсогдож байна.

Алхам 2: Тоног төхөөрөмжийг холбох

Тоног төхөөрөмжийг холбох
Тоног төхөөрөмжийг холбох
Тоног төхөөрөмжийг холбох
Тоног төхөөрөмжийг холбох
Тоног төхөөрөмжийг холбох
Тоног төхөөрөмжийг холбох

Схемд үзүүлсэн шиг хэлхээг хий. Схемд та янз бүрийн электроникийн бүрэлдэхүүн хэсгүүд, холбох утас, цахилгаан кабель, I2C мэдрэгчийн холболтыг харах болно.

Raspberry Pi ба I2C бамбай холболт

Хамгийн чухал зүйл бол Raspberry Pi -ийг авч, дээр нь I2C бамбайг олоорой. Pi -ийн GPIO тээглүүр дээр Shield -ийг маш сайн дарахад бид энэ явцыг бялуу шиг хялбархан хийж чадна.

Raspberry Pi ба мэдрэгчийн холболт

Мэдрэгч ба I2C кабелийг түүнтэй хамт аваарай. Энэхүү кабелийг зохих ёсоор ашиглахын тулд I2C гаралтыг үргэлж I2C оролттой хамт авч үзнэ үү. GPIO зүү дээр суурилуулсан I2C бамбай бүхий Raspberry Pi -ийн дараа мөн адил зүйлийг хийх ёстой.

I2C кабелийг ашиглахыг зөвлөж байна. Энэхүү мэдэгдэхүйц холбоо, тоглох кабелийн тусламжтайгаар та тохирох аппликейшн дээр танилцуулах, солих эсвэл илүү олон хэрэгсэл нэмж оруулах боломжтой. Энэ нь ажлын жинг асар өндөр түвшинд хүртэл дэмждэг.

Тэмдэглэл: Хүрэн утас нь нэг төхөөрөмжийн гаралт ба өөр төхөөрөмжийн оролт хооронд Ground (GND) холболтын дараа найдвартай байх ёстой

Интернет хандалт бол түлхүүр юм

Хүчин чармайлтаа ялахын тулд бид Raspberry Pi -ийнхээ интернет холболтыг шаарддаг. Үүний тулд танд гэрийн сүлжээнд Ethernet (LAN) холболт хийх гэх мэт өөр сонголтууд байна. Түүнчлэн, сэтгэл ханамжтай курс бол WiFi USB холбогч ашиглах явдал юм. Үүнийг илэрхийлэхийн тулд үүнийг ажиллуулахын тулд драйвер шаардагдана. Тиймээс линукс бүхий нэг рүү чиглүүл.

Цахилгаан хангамж

Микро USB кабелийг Raspberry Pi -ийн цахилгаан залгуурт залгаарай. Цохилт хий, бид бэлэн боллоо.

Дэлгэц рүү холбогдох

Бид HDMI кабелийг өөр монитор/телевизортой холбож болно. Заримдаа, та Raspberry Pi -ийг дэлгэцтэй холбохгүйгээр авах хэрэгтэй эсвэл өөр газраас мэдээллийг үзэх шаардлагатай болдог. Боломжтой бүх зүйлийг хийх бүтээлч, санхүүгийн хувьд ухаалаг арга замууд байж магадгүй юм. Тэдний нэг нь - SSH (алсын тушаалын мөрөөр нэвтрэх) ашиглаж байна. Үүний тулд та PuTTY програм хангамжийг ашиглаж болно.

Алхам 3: Raspberry Pi -д зориулсан Python кодчилол

Raspberry Pi -д зориулсан Python кодчилол
Raspberry Pi -д зориулсан Python кодчилол

Та Raspberry Pi болон MMA7455 мэдрэгчийн Python кодыг манай GithubRepository дээрээс харах боломжтой.

Кодоо үргэлжлүүлэхийн өмнө Readme -ийн он дараалалд заасан стандартуудыг уншиж, Raspberry Pi -г түүнд заасан дагуу тохируулна уу. Энэ нь одоогийн нөхцөл байдлаас шалтгаалан нэг минутын дотор л тайвшрах болно.

Акселерометр бол хурдатгалын хүчийг хэмжих цахилгаан механик төхөөрөмж юм. Эдгээр хүч нь хөдөлгөөнгүй байж болох бөгөөд энэ нь таны хөл рүү таталцлын тогтмол хүчийг татдагтай адил юмуу өөр өөр байж болно.

Энэ бол питон код бөгөөд та кодыг хүссэн чиглэлээрээ хуулбарлаж, өөрчилж болно.

# Чөлөөт зөвшөөрлийн лицензээр тараагдсан.# Холбогдох ажлын лицензтэй нийцэж байгаа тохиолдолд ашиг, үнэгүй ашиглах боломжтой. # MMA7455L # Энэ код нь dcubestore.com дээрээс авах боломжтой MMA7455L_I2CS I2C Mini модультай ажиллахад зориулагдсан болно # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-i%C2 %B2c-мини модуль/

smbus импортлох

импортлох хугацаа

# I2C автобус авах

автобус = smbus. SMBus (1)

# MMA7455L хаяг, 0x1D (16)

# Сонгох горимын хяналтын бүртгэл, 0x16 (22) # 0x01 (01) Хэмжих горим, +/- 8g bus.write_byte_data (0x1D, 0x16, 0x01)

цаг унтах (0.5)

# MMA7455L хаяг, 0x1D (16)

# 0x00 (00), 6 байтаас өгөгдлийг буцааж унших 0x00, 6)

# Өгөгдлийг 10 бит болгон хөрвүүлэх

xAccl = (өгөгдөл [1] & 0x03) * 256 + өгөгдөл [0] хэрэв xAccl> 511: xAccl -= 1024 yAccl = (өгөгдөл [3] & 0x03) * 256 + өгөгдөл [2] бол yAccl> 511: yAccl - = 1024 zAccl = (өгөгдөл [5] & 0x03) * 256 + өгөгдөл [4] хэрэв zAccl> 511: zAccl -= 1024

# Дэлгэц рүү өгөгдөл гаргана

хэвлэх "X тэнхлэг дэх хурдатгал: %d" %xAccl хэвлэх "Y тэнхлэг дэх хурдатгал: %d" %yAccl хэвлэх "Z тэнхлэгийн хурдатгал: %d" %zAccl

Алхам 4: Дүрмийн практик байдал

Дүрмийн практик байдал
Дүрмийн практик байдал

Github -аас кодыг татаж аваад (эсвэл git pull) аваад Raspberry Pi дээр нээнэ үү.

Терминал дахь кодыг хөрвүүлэх, байршуулах командыг ажиллуулаад дэлгэц дээрх өгөөжийг харна уу. Хэдэн минутын дараа энэ нь параметр бүрийг харуулах болно. Бүх зүйл амархан ажилладаг гэдгийг баталгаажуулсны дараа та энэ тэнүүчлэлийг өдөр бүр ашиглах эсвэл энэ тэнүүчлэлийг илүү чухал ажлын нэг хэсэг болгох боломжтой. Таны хэрэгцээ шаардлагаас үл хамааран та цугларахдаа өөр нэг эсрэг заалттай болно.

Алхам 5: Програм ба онцлог

Freescale Semiconductor компаниас үйлдвэрлэсэн MMA7455 загварыг бага хүчин чадалтай, 3 тэнхлэг бүхий бага хүчин чадалтай дижитал хурдасгуур хэмжигчийг Мэдрэгч Мэдээллийн Өөрчлөлт, Бүтээгдэхүүний Чиглэл, Дохио Хайлтын илрүүлэлтэд ашиглаж болно. Энэ нь гар утас/PMP/PDA: чиг баримжаа илрүүлэх (хөрөг/ландшафт), зургийн тогтвортой байдал, текст гүйлгэх, хөдөлгөөн хийх, товших, дуугүй болгох, зөөврийн компьютер: хулгайтай тэмцэх, тоглоом тоглох: хөдөлгөөнийг илрүүлэх, автоматаар сэрээх гэх мэт програмуудад тохиромжтой. Бага эрчим хүчний хэрэглээ болон дижитал камерын хувьд унтах: Зургийн тогтвортой байдал.

Алхам 6: Дүгнэлт

Хэрэв та Raspberry Pi ба I2C мэдрэгчийн орчлон ертөнцийг судлахаар төлөвлөж байсан бол тоног төхөөрөмжийн үндсийг ашиглах, кодлох, зохицуулах, эрх мэдэл өгөх гэх мэт зүйлсийг ашиглан өөрийгөө гайхшруулж чадна. жижиг бизнес, энэ нь гадны эх үүсвэр рүү шилжихэд хэзээ ч хохирол учруулдаггүй. Энэ аргын хувьд хэд хэдэн энгийн даалгавар байж болох ч зарим нь таныг шалгаж, хөдөлгөж магадгүй юм. Ямар ч тохиолдолд та өөрийн хэлбэрийг өөрчилж, бий болгосноор үүнийг төгс төгөлдөр болгож чадна.

Жишээлбэл, та Гравиметрийн прототипийг бодож, дэлхийн орон нутгийн таталцлын талбарыг MMA7455 болон Raspberry Pi ашиглан Python ашиглан хэмжиж болно. Дээрх ажилд бид үндсэн тооцооллыг ашигласан болно. Загварын үндсэн зарчим бол дэлхийн хүндийн хүчний 1 гр доторх маш жижиг бутархай өөрчлөлтийг хэмжих явдал юм. Тиймээс та энэ мэдрэгчийг янз бүрийн аргаар ашиглаж болно. Алгоритм нь таталцлын градиент тензорыг бий болгох босоо таталцлын векторын перпендикуляр гурван чиглэлд өөрчлөгдөх хурдыг хэмжих явдал юм. Жижиг босоо зайгаар тусгаарлагдсан хоёр цэг дэх таталцлын утгыг ялгаж, энэ зайд хуваах замаар үүнийг гаргаж болно. Энэхүү прототипийн бүтэц, дуу чимээ, чичиргээний шинжилгээнд зориулан тохиргоо, код, загварчлал хийх ажлыг бид удахгүй хийх болно. Та бүхэнд таалагдсан гэдэгт бид итгэж байна!

Таныг тайвшруулахын тулд танд үзлэг хийхэд тань тус болох YouTubew видео бичлэг байна. Энэхүү хүчин чармайлтанд итгэж, нэмэлт мөрдөн байцаалт явуулна. Хэрэв боломж тогшихгүй бол хаалга барь.

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