Мазмұны:

Raspberry Pi және LIS3DHTR көмегімен қозғалысты басқару, 3 осьті акселерометр, Python көмегімен: 6 қадам
Raspberry Pi және LIS3DHTR көмегімен қозғалысты басқару, 3 осьті акселерометр, Python көмегімен: 6 қадам

Бейне: Raspberry Pi және LIS3DHTR көмегімен қозғалысты басқару, 3 осьті акселерометр, Python көмегімен: 6 қадам

Бейне: Raspberry Pi және LIS3DHTR көмегімен қозғалысты басқару, 3 осьті акселерометр, Python көмегімен: 6 қадам
Бейне: Как собрать ПЛК Raspberry Pi Pico || Редактор OpenPLC 2024, Маусым
Anonim
Image
Image
Бізге қажет негізгі жабдықтар
Бізге қажет негізгі жабдықтар

Сұлулық бізді қоршайды, бірақ әдетте біз оны білу үшін бақта серуендеуіміз керек. - Руми

Біз білімді топ ретінде біз энергияның көп бөлігін компьютерлер мен ұялы телефондардың алдында жұмыс істеуге жұмсаймыз. Сондықтан, біз жиі өз денсаулығымызға екінші деңгейлі демалыс бөлмесін алуға мүмкіндік береміз, ешқашан шынымен де жаттығу залына немесе фитнес -классқа барудың тамаша мүмкіндігін таба алмаймыз және әдетте фаст -фудты әлдеқайда пайдалы таңдау арқылы таңдаймыз. Көңіл көтеретін жаңалық-бұл сізге есеп жүргізуге көмек қажет пе, әлде сіздің алға жылжуыңызды қадағалау ма, сізге бүгінгі инновацияны пайдаланып, өзіңізге көмектесу үшін қандай да бір гаджет шығаруға болады.

Технология тез дамып келеді. Біз үнемі әлемді және ондағы үйрену тәсілін өзгертетін жаңа инновацияларды қабылдаймыз. Егер сіз дербес компьютерлерде, кодтауда, роботтарда болсаңыз немесе ойнауды ұнатсаңыз, онда технологияның батасы бар. Raspberry Pi, шағын, бір тақталы Linux Linux компьютері сіздің инновациялық технологиямен оқу тәсіліңізді жақсартуға арналған, сонымен қатар бүкіл әлем бойынша білім беруді жетілдірудің кілті. Егер жақын жерде Raspberry Pi мен 3 осьті акселерометр болса, біз не істей аламыз, мүмкін болатын нәтижелер қандай? Мұны қалай табамыз? Бұл тапсырмада біз Raspberry Pi мен LIS3DHTR, 3 осьті акселерометрді пайдаланып, X, Y және Z 3 перпендикуляр осьте үдеуді тексереміз. Сонымен, біз бұл саяхатта 3 өлшемді үдеуді немесе G-Force тексеретін жүйені құруды көруіміз керек.

1 -қадам: Бізге қажет негізгі жабдық

Бізге қажет негізгі жабдықтар
Бізге қажет негізгі жабдықтар
Бізге қажет негізгі жабдықтар
Бізге қажет негізгі жабдықтар

Бізде мәселелер аз болды, өйткені бізде жұмыс істейтін көптеген заттар бар. Қалай болғанда да, біз өзгелердің пайдалы жерінен мінсіз уақытта дұрыс бөлігін жинаудың қаншалықты қиын екенін білеміз және бұл әр тиынға аз көңіл бөледі. Сондықтан біз сізге көмектесер едік. Бөлшектердің толық тізімін алу үшін ілеспе нұсқауларды орындаңыз.

1. Raspberry Pi

Бастапқы қадам Raspberry Pi тақтасын алу болды. Raspberry Pi-бұл Linux негізіндегі бір тақталы компьютер. Бұл кішкентай компьютер гаджеттердің бір бөлігі ретінде пайдаланылатын есептеу қуатын және электрондық кестелер, сөз дайындау, веб -сканерлеу, электрондық пошта және ойындар сияқты қарапайым операцияларды қамтиды.

2. Raspberry Pi үшін I2C қалқаны

Raspberry Pi -дің негізгі мәселесі - бұл I²C порты. Бұл үшін TOUTPI2 I²C қосқышы сізге Rasp Pi -ді кез келген I²C құрылғыларымен пайдалануға мүмкіндік береді. Ол DCUBE дүкенінде қол жетімді

3. 3 осьтік акселерометр, LIS3DHTR

LIS3DH-бұл сандық I2C/SPI сериялық интерфейсінің стандартты шығысы бар «нано» тобына жататын өте төмен қуатты жоғары өнімді үш осьті желілік акселерометр. Біз бұл сенсорды DCUBE дүкенінен сатып алдық

4. Қосылатын кабель

Біз I2C қосылу кабелінDCUBE Store дүкенінен сатып алдық

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

Ең кішкентай, бірақ таңқаларлық, бірақ қуатқа қажеттілік - бұл Raspberry Pi! Ең қарапайым әдіс - Micro USB кабелін пайдалану.

6. Интернетке кіру - бұл қажеттілік

Интернеттегі балалар ешқашан ұйықтамайды

Ethernet (LAN) кабелімен байланысты Raspberry Pi алыңыз және оны желі маршрутизаторына қосыңыз. Таңдау бойынша, WiFi қосқышын іздеңіз және қашықтағы жүйеге өту үшін USB порттарының бірін қолданыңыз. Бұл өткір шешім, қарапайым, кішкентай және ұсақ!

7. HDMI кабелі/қашықтан қатынау

Raspberry Pi -де HDMI порты бар, оны арнайы HDMI кабелі арқылы экранға немесе теледидарға қосуға болады. Таңдау бойынша, сіз SSH -ді Raspberry Pi -мен Linux компьютерінен немесе Macintosh -тен терминалдан байланыстыру үшін пайдалана аласыз. Сол сияқты PuTTY ақысыз және ашық бастапқы терминалды эмулятор лайықты балама болып көрінеді.

2 -қадам: Жабдықты қосу

Жабдықты қосу
Жабдықты қосу
Жабдықты қосу
Жабдықты қосу
Жабдықты қосу
Жабдықты қосу

Схеманы пайда болған схемаға сәйкес жасаңыз. Диаграмма құрыңыз және контурдан кейін дәл алыңыз. Қиял білімнен гөрі маңызды.

Raspberry Pi мен I2C Shield қосылымы

Бәрінен бұрын, Raspberry Pi алыңыз және I2C қалқанын табыңыз. Қалқанды Pi GPIO түйреуіштерінің үстінен мұқият басыңыз, сонда біз бұл прогресті бәліш сияқты қарапайым түрде аяқтаймыз (суретті қараңыз).

Сенсор мен Raspberry Pi қосылуы

Сенсорды және I2C кабелінің интерфейсін алыңыз. Бұл кабельдің дұрыс жұмыс істеуі үшін I2C шығысымен әрқашан I2C шығысын байланыстыруды сұраймыз. I2C қалқаны GPIO түйреуіштері орнатылған Raspberry Pi үшін де дәл осылай істеу керек.

Біз I2C кабелінің қолданылуын қолдаймыз, себебі ол бұрандаларды, бекітуді және ыңғайсыздықты тексеру қажеттілігін жоққа шығарады. Бұл негізгі тіркеме мен ойнату кабелінің көмегімен гаджеттерді тиімді түрде ұсынуға, ауыстыруға немесе қосымша гаджеттерді тиімді түрде қосуға болады. Бұл жұмыс салмағын айтарлықтай деңгейге дейін жеңілдетеді.

Ескертпе: қоңыр сым бір құрылғының шығысы мен басқа құрылғының кірісі арасындағы Ground (GND) байланысына сенімді түрде сәйкес келуі керек

Интернет желісі - бұл кілт

Біздің күш -жігерімізді жеңу үшін бізге Raspberry Pi үшін интернет -қауымдастық қажет. Бұл үшін үй желісімен Ethernet (LAN) кабелін байланыстыру сияқты таңдау бар. Сонымен қатар, балама ретінде, USB USB қосқышын пайдалану қолайлы болады. Әдетте, жұмыс істеу үшін драйвер қажет. Сипаттамада Linux бар адамға қарай ұмтылыңыз.

Нәр беруші

Micro USB кабелін Raspberry Pi қуат ұясына қосыңыз. Жұтып алыңыз, біз дайынбыз.

Экранға қосылу

Біз HDMI кабелін басқа экранмен байланыстыра аламыз. Кейбір жағдайларда сіз Raspberry Pi -ге экранға кірмей -ақ жетуіңіз керек немесе сізге кейбір деректерді басқа жерден қарау қажет болуы мүмкін. Бұлай етуге инновациялық және қаржылық тұрғыдан тиімді тәсілдер бар деп ойлаймын. Олардың бірі -SSH (командалық жолға қашықтан кіру) пайдалану. Сіз сондай -ақ PUTTY бағдарламалық жасақтамасын пайдалана аласыз. Бұл озық пайдаланушыларға арналған. Сондықтан мұнда мәліметтер енгізілмеген.

3 -қадам: Raspberry Pi үшін Python кодтау

Raspberry Pi үшін Python кодтау
Raspberry Pi үшін Python кодтау

Raspberry Pi және LIS3DHTR сенсорына арналған Python коды біздің GithubRepository -де қол жетімді.

Кодқа кіріспес бұрын, Readme мұрағатында берілген ережелерді оқығаныңызға және оған сәйкес Raspberry Pi орнатыңыз. Барлығын қарастыру үшін бір сәтке ғана демалуға болады.

Акселерометр - бұл үдеу күштерін өлшейтін электромеханикалық гаджет. Бұл күштер статикалық болуы мүмкін, бұл сіздің аяғыңыздағы тұрақты тартылыс күшіне ұқсайды немесе олар өзгеруі мүмкін - акселерометрді жылжыту немесе дірілдеу арқылы пайда болады.

Питон коды ілеспе болып табылады және сіз кодты кез келген жолмен клондап, реттей аласыз.

# Ерік-жігер лицензиясымен таратылады.# Егер ол онымен байланысты жұмыстардың лицензиясына сәйкес келсе, оны қалаған жолмен пайдаланыңыз немесе тегін пайдаланыңыз. # LIS3DHTR # Бұл код dcubestore.com сайтында қол жетімді LIS3DHTR_I2CS I2C шағын модулімен жұмыс жасауға арналған # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c-шағын модуль/

smbus импорттау

импорт уақыты

# I2C автобусын алыңыз

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

# LIS3DHTR мекенжайы, 0x18 (24)

# Басқару регистрін таңдаңыз1, 0x20 (32) # 0x27 (39) ҚОСУ режимі, Деректер жиілігін таңдау = 10 Гц # X, Y, Z осі қосылған bus.write_byte_data (0x18, 0x20, 0x27) # LIS3DHTR мекенжайы, 0x18 (24) # Басқару регистрін таңдаңыз4, 0x23 (35) # 0x00 (00) Үздіксіз жаңарту, Толық масштабты таңдау = +/- 2G шинасы.

уақыт.ұйқы (0.5)

# LIS3DHTR мекенжайы, 0x18 (24)

# Деректерді 0x28 (40), 2 байттан # X-Axis LSB, X-Axis MSB деректерінен0 оқыңыз

# Деректерді түрлендіру

xAccl = деректер1 * 256 + деректер0 егер xAccl> 32767 болса: xAccl -= 65536

# LIS3DHTR мекенжайы, 0x18 (24)

# 0x2A (42), 2 байттан деректерді оқу

# Деректерді түрлендіру

yAccl = деректер1 * 256 + деректер0 егер yAccl> 32767 болса: yAccl -= 65536

# LIS3DHTR мекенжайы, 0x18 (24)

# 0x2C (44), 2 байттан деректерді оқу

# Деректерді түрлендіру

zAccl = деректер1 * 256 + деректер0 егер zAccl> 32767 болса: zAccl -= 65536

# Деректерді экранға шығару

басып шығару «X осінде үдеу: %d» %xAccl басып шығару «Y осіндегі үдеу: %d» %yAccl басып шығару «Z осіндегі үдеу: %d» %zAccl

4 -қадам: Кодекстің жұмыс қабілеттілігі

Кодекстің жұмысқа қабілеттілігі
Кодекстің жұмысқа қабілеттілігі

Github -тен кодты жүктеңіз (немесе git pull) және оны Raspberry Pi -де ашыңыз.

Терминалда кодты құрастыру және жүктеу пәрмендерін іске қосыңыз және экрандағы кірісті көріңіз. Бірнеше минуттан кейін ол параметрлердің әрқайсысын көрсетеді. Барлығы қиындықсыз жұмыс істейтініне кепілдік бере отырып, сіз бұл батылдықты неғұрлым маңызды іске апара аласыз.

5 -қадам: Қолданбалар мен мүмкіндіктер

STMicroelectronics компаниясы шығарған LIS3DHTR динамикалық түрде пайдаланушылардың таңдауы бойынша ± 2g/± 4g/± 8g/± 16g толық шкалаларына ие және ол 1 Гц -тен 5 кГц -ке дейінгі жылдамдықпен жылдамдықты өлшеуге қабілетті. LIS3DHTR Motion белсендірілген функциялар мен Free Fall Detection үшін қолайлы. Ол көлбеуді анықтайтын қосымшаларда ауырлық күшінің статикалық үдеуін, сонымен қатар қозғалыс немесе соққыға байланысты динамикалық үдеуді көрсетеді. Басқа қосымшалардың ішінде Click/Double Click Recognition, портативті құрылғыларға арналған интеллектуалды энергия үнемдеу, педометр, дисплей бағдары, ойын және виртуалды шындықты енгізу құрылғылары, әсерді тану, тіркеу және діріл мониторингі мен компенсациясы бар.

6 -қадам: Қорытынды

Бұған сеніңіз, бұл қосымша эксперименттерге көмектеседі. Бұл I2C сенсоры керемет түрде бейімделген, қарапайым және қол жетімді. Бұл керемет дәрежеде тұрақты емес құрылым болғандықтан, бұл тапсырманы кеңейтудің және оны жақсартудың қызықты әдістері бар.

Мысалы, сіз LIS3DHTR мен Raspberry Pi көмегімен педометрдің идеясын бастауға болады. Жоғарыда келтірілген тапсырмада біз негізгі есептеулерді қолдандық. Жеделдету жаяу жүру ережесін талдаудың сәйкес параметрі бола алады. Сіз қозғалыстың үш компонентін алға қарай (орама, X), бүйірлік (қадам, Y) және тік (иіру осі, Z) жеке тұлға үшін тексере аласыз. Барлық 3 осьтің типтік үлгісі жазылады. Кем дегенде 1 осьте үдеудің салыстырмалы үлкен мәндері болады. Сондықтан ең жоғары бағыт пен алгоритм маңызды. Бұл алгоритмнің параметрлерінің (сандық сүзгі, шыңды анықтау, уақыт терезесі және т.б.) қадамдарын ескере отырып, сіз қадамдарды тани аласыз және санауға, сондай-ақ қашықтықты, жылдамдықты және калория мөлшерін өлшей аласыз. Сондықтан сіз бұл сенсорды әр түрлі жолдармен пайдалана аласыз. Барлығыңызға ұнайды деп сенеміз! Біз бұл педометрдің жұмыс нұсқасын тезірек жасауға тырысамыз, конфигурация, код, жүру мен жүгіруді ажырататын құралды есептейтін бөлік және калория.

Сізге жайлылық үшін YouTube -те сізді тексеруге көмектесетін қызықты бейне бар. Сеніңіз, бұл кәсіп әрі қарай ізденуге итермелейді. Ойлауды жалғастырыңыз! Ары қарай іздеуді ұмытпаңыз, себебі одан да көп нәрсе келеді.

Ұсынылған: