Съдържание:

Проследяване на вариациите на ускорение с Raspberry Pi и MMA7455 с помощта на Python: 6 стъпки
Проследяване на вариациите на ускорение с Raspberry Pi и MMA7455 с помощта на Python: 6 стъпки

Видео: Проследяване на вариациите на ускорение с Raspberry Pi и MMA7455 с помощта на Python: 6 стъпки

Видео: Проследяване на вариациите на ускорение с Raspberry Pi и MMA7455 с помощта на Python: 6 стъпки
Видео: Иновативна система за бързо проследяване на кръвната захар 2024, Ноември
Anonim
Image
Image

Не се спънах, тествах гравитацията. Все още работи…

Представяне на ускоряваща се космическа совалка пояснява, че часовникът в най -високата точка на совалката би избрал по -бързо от един в основата поради разширяване на гравитационното време. Някои твърдят, че ускоряването на борда на совалката ще бъде еднакво и за двата часовника, така че те трябва да тиктакат със същата скорост. Помислете малко.

Мислите, мотивацията и дори насоките могат да произхождат от всяко място-но когато вашето внимание е върху иновациите, то получава приноса от хората, които се концентрират върху тази точка. Raspberry Pi, мини, едноплатен Linux компютър, предлага уникални начинания и основни съвети за организиране, програмиране и електроника. Затворени, като производители на уроци за Raspberry Pi и устройства, получаваме изход от възможността да програмираме, да се занимаваме и да правим изумителни неща с компютърните науки и електрониката. Напоследък имахме радостта да направим изстрел върху задача с помощта на акселерометър и мислите зад това, което можете да направите с тази притурка, са наистина готини. Така че в тази задача ние ще включим MMA7455, 3-осен цифров сензор за акселерометър, за измерване на ускорението в 3 измерения, X, Y и Z, с Raspberry Pi с помощта на Python. Да видим дали ще се изплати.

Стъпка 1: Необходим хардуер

Хардуер, от който се нуждаем
Хардуер, от който се нуждаем
Хардуер, от който се нуждаем
Хардуер, от който се нуждаем

Ние знаем колко неприятно може да бъде да се опитате и да вземете след, без да знаете кои части да вземете, откъде да подредите и колко ще струва всичко предварително. Така че ние свършихме цялата тази работа за вас. След като разпределите всички части на квадрат, би трябвало да е лесно да се справите с тази задача. Вземете след края, за да получите пълен списък с части.

1. Малина Пи

Първата стъпка беше получаването на платка Raspberry Pi. Raspberry Pi е единичен компютър, базиран на Linux. Този малък компютър носи удар в регистрирането на мощност, използван като част от електронни упражнения и компютърни операции като електронни таблици, текстообработка, уеб сърфиране и имейл и игри. Можете да си купите такъв във всеки магазин за електроника или любители.

2. I2C щит за Raspberry Pi

Основната грижа, която Raspberry Pi наистина липсва, е I2C порт. Така че за това конекторът TOUTPI2 I2C ви дава смисъл да използвате Raspberry Pi с ВСЯКО от I2C устройства. Предлага се в DCUBE Store

3. 3-осен акселерометър, MMA7455

Произведен от Freescale Semiconductor, Inc., 3-осният цифров акселерометър MMA7455 е с ниска мощност, по-малък мащаб, обработен сензор, подходящ за измерване на ускорението по оста X, Y и Z. Получихме този сензор от DCUBE Store

4. Свързващ кабел

Ние закупихме свързващия кабел I2C от магазина DCUBE

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

Най -малкото заплетено обаче, най -строго по отношение на необходимостта от захранване е Raspberry Pi! Най -предписаният и най -малко взискателен подход за управление на стратегията е чрез използването на Micro 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 Shield връзка

Като първостепенно значение вземете Raspberry Pi и забележете I2C Shield върху него. Натиснете Щита добре върху GPIO щифтовете на Pi и приключваме с тази прогресия толкова лесно, колкото пай (вижте снимката).

Връзка на Raspberry Pi и сензор

Вземете сензора и свържете с него I2C кабела. За подходящата работа на този кабел, моля, прегледайте I2C изхода ВИНАГИ заема с I2C входа. Същото трябва да се вземе и за Raspberry Pi с I2C щит, монтиран върху GPIO щифтовете.

Препоръчваме използването на I2C кабел, тъй като той отхвърля изискването за разчленяване на изводи, осигуряване и притеснение, постигнато дори от най -скромната бъркотия. С този важен кабел за асоцииране и възпроизвеждане можете да представяте, разменяте измислици или да добавяте още притурки към подходящо приложение. Това поддържа работното тегло до огромно ниво.

Забележка: Кафявият проводник трябва надеждно да поеме след заземяващата (GND) връзка между изхода на едно устройство и входа на друго устройство

Достъпът до интернет е ключов

За да спечелим усилията ни, се нуждаем от интернет връзка за нашия Raspberry Pi. За това имате алтернативи като свързване на Ethernet (LAN) съединение с домашната мрежа. Също така, като алтернатива, удовлетворяващият курс е да използвате WiFi USB конектор. Като цяло, представяйки това, имате нужда от драйвер, за да го накарате да работи. Така че наклонете се към този с Linux в очертанието.

Захранване

Включете Micro USB кабела в гнездото за захранване на Raspberry Pi. Стиснете и сме готови.

Връзка към екрана

Можем да свържем HDMI кабела към друг монитор/телевизор. Понякога трябва да стигнете до Raspberry Pi, без да го свързвате към екран, или може да се наложи да видите информация от него от друго място. Вероятно има креативни и фискално умни начини да се справите с извършването на всички съобразени неща. Един от тях използва - SSH (отдалечено влизане в командния ред). Можете също така да използвате софтуера PuTTY за това.

Стъпка 3: Кодиране на Python за Raspberry Pi

Python кодиране за Raspberry Pi
Python кодиране за Raspberry Pi

Можете да видите кода на Python за сензора Raspberry Pi и MMA7455 в нашето GithubRepository.

Преди да продължите към кода, гарантирайте, че сте прочели стандартите, дадени в хрониката на Readme, и настройте своя Raspberry Pi, както е посочено от него. Това просто ще облекчи за минута да се направи в светлината на настоящите обстоятелства.

Акселерометърът е електромеханична джаджа, която ще измерва силите на ускорението. Тези сили могат да бъдат статични, подобни на постоянната сила на гравитацията, която тегли в краката ви, или могат да бъдат променящи се - причинени от преместване или вибриране на акселерометъра.

Продължава с кода на python и можете да клонирате и променяте кода по всякакъв начин, към който се наклоните.

# Разпространява се с лиценз на свободна воля.# Използвайте го както искате, печелите или безплатно, при условие че се вписва в лицензите на свързаните с него произведения. # MMA7455L # Този код е проектиран да работи с мини модула MMA7455L_I2CS I2C, достъпен от dcubestore.com # 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 шина. Запис_байт_данни (0x1D, 0x16, 0x01)

time.sleep (0.5)

# MMA7455L адрес, 0x1D (16)

# Прочетете данните обратно от 0x00 (00), 6 байта # X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB данни = bus.read_i2c_block_data (0x1D, 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: Практичността на Кодекса

Практичността на Кодекса
Практичността на Кодекса

Изтеглете (или git изтеглете) кода от Github и го отворете в Raspberry Pi.

Изпълнете командите за компилиране и качване на кода в терминала и вижте доходността на екрана. След няколко минути той ще покаже всеки един от параметрите. След като се уверите, че всичко работи лесно, можете да използвате това скитане всеки ден или да направите това скитане малка част от много по -забележителна задача. Каквито и да са вашите нужди, сега имате още една измислица във вашето събиране.

Стъпка 5: Приложения и функции

MMA7455, произведен от Freescale Semiconductor, високоефективен 3-осен цифров акселерометър с ниска мощност, може да се използва за промени в сензорните данни, ориентация на продукта и откриване на жестове. Той е идеален за приложения като мобилен телефон/PMP/PDA: откриване на ориентация (портрет/пейзаж), стабилност на изображението, превъртане на текст, набиране на движение, докосване до заглушаване, преносим компютър: защита срещу кражба, игри: откриване на движение, автоматично събуждане/ Сън за ниска консумация на енергия и цифров фотоапарат: Стабилност на изображението.

Стъпка 6: Заключение

Ако сте обмисляли да изследвате вселената на сензорите Raspberry Pi и I2C, тогава можете да се шокирате, като използвате хардуерните основи, кодирането, подреждането, авторитета и т.н. Когато се опитвате да бъдете по -креативни във вашия малко начинание, никога не вреди да се насочите към външни източници. В този метод може да има няколко поръчки, които може да са ясни, докато някои може да ви тестват, да ви преместят. Във всеки случай можете да направите начин и безупречен, като промените и направите своя формация.

Например, можете да започнете с мисълта за прототип на гравиметър за измерване на локалното гравитационно поле на Земята с MMA7455 и Raspberry Pi с помощта на Python. В горното начинание използвахме фундаментални изчисления. Основният принцип на дизайна е да се измерват много малки частични промени в гравитацията на Земята от 1 g. Така че можете да използвате този сензор по различни начини, които можете да обмислите. Алгоритъмът е да се измерва скоростта на промяна на вертикалния вектор на тежестта във всичките три перпендикулярни посоки, което води до тензор на гравитационния градиент. Тя може да бъде изведена чрез различаване на стойността на гравитацията в две точки, разделени с малко вертикално разстояние, l, и разделяне на това разстояние. Ще се опитаме да направим работещо представяне на този прототип по -рано, отколкото по -късно, конфигурацията, кодът и моделирането работят за анализ на структурен шум и вибрации. Вярваме, че на всички ви харесва!

За ваша утеха имаме омагьосващо видео в YouTube, което може да ви помогне при изпита. Доверете се на това начинание, насочва по -нататъшно разследване. Ако възможността не почука, изградете врата.

Препоръчано: