Мазмұны:
Бейне: Raspberry Pi MMA8452Q 3 осьтік 12 биттік/8 биттік цифрлық акселерометр Python оқулығы: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
MMA8452Q-ақылды, қуаты аз, үш осі бар, сыйымдылығы 12 микротехникалық акселерометр, ажыратымдылығы 12 бит. Қолданбалы бағдарламаланатын икемді опциялар акселерометрге ендірілген функциялардың көмегімен қамтамасыз етілген, олар екі үзу түйреуішіне теңшеледі. Онда ± 2g/± 4g/± 8g пайдаланушы таңдауға болатын толық шкаласы бар, жоғары сүзгіден өткен сүзілген деректер, сонымен қатар нақты уақытта қол жетімді сүзгіленбеген деректер бар. Міне, оның таңқурай pi көмегімен питон кодының көмегімен көрсетілуі.
1 -қадам: Сізге не керек..
1. Raspberry Pi
2. MMA8452Q
3. I²C кабелі
4. Raspberry Pi үшін I²C қалқаны
5. Ethernet кабелі
2 -қадам: Қосылымдар:
Таңқурай пи үшін I2C қалқанын алыңыз және оны таңқурай пи gpio түйреуіштерінен ақырын басыңыз.
Содан кейін I2C кабелінің бір ұшын MMA8452Q сенсорына, екінші ұшын I2C қалқанына қосыңыз.
Ethernet кабелін pi -ге қосыңыз немесе WiFi модулін қолдана аласыз.
Қосылымдар жоғарыдағы суретте көрсетілген.
3 -қадам: код:
MMA8452Q үшін питон кодын біздің github репозиторийінен жүктеуге болады- ControlEverythingCommunity
Міне сілтеме.
Біз питон коды үшін SMBus кітапханасын қолдандық, мұнда таңқурай pi -де SMBus орнату қадамдары сипатталған:
pypi.python.org/pypi/smbus-cffi/0.5.1
Сіз кодты осы жерден көшіре аласыз, ол келесі түрде берілген:
# Ерікті лицензиямен таратылды.
# Мұны онымен байланысты жұмыстардың лицензиясына сәйкес келген жағдайда, оны кез келген жолмен пайдаланыңыз немесе тегін пайдаланыңыз.
# MMA8452Q
# Бұл код MMA8452Q_I2CS I2C шағын модулімен жұмыс жасауға арналған.
smbus импорттау
импорт уақыты
# I2C автобусын алыңыз
автобус = smbus. SMBus (1)
# MMA8452Q мекенжайы, 0x1C (28)
# Басқару регистрін таңдаңыз, 0x2A (42)
# 0x00 (00) StandBy режимі
bus.write_byte_data (0x1C, 0x2A, 0x00)
# MMA8452Q мекенжайы, 0x1C (28)
# Басқару регистрін таңдаңыз, 0x2A (42)
# 0x01 (01) Белсенді режим
bus.write_byte_data (0x1C, 0x2A, 0x01)
# MMA8452Q мекенжайы, 0x1C (28)
# Конфигурация регистрін таңдаңыз, 0x0E (14)
# 0x00 (00) Ауқымды +/- 2g етіп орнатыңыз
bus.write_byte_data (0x1C, 0x0E, 0x00)
уақыт.ұйқы (0.5)
# MMA8452Q мекенжайы, 0x1C (28)
# Деректерді 0x00 (0), 7 байттан кері оқыңыз
# Күй регистрі, X-Axis MSB, X-Axis LSB, Y-Axis MSB, Y-Axis LSB, Z-Axis MSB, Z-Axis LSB
data = bus.read_i2c_block_data (0x1C, 0x00, 7)
# Деректерді түрлендіру
xAccl = (деректер [1] * 256 + деректер [2]) / 16
егер xAccl> 2047:
xAccl -= 4096
yAccl = (деректер [3] * 256 + деректер [4]) / 16
егер yAccl> 2047:
yAccl -= 4096 z
Accl = (деректер [5] * 256 + деректер [6]) / 16
егер zAccl> 2047:
zAccl -= 4096
# Деректерді экранға шығару
басып шығару «X осіндегі үдеу: %d» %xAccl
басып шығару «Y осінде үдеу: %d» %yAccl
басып шығару «Z осінде үдеу: %d» %zAccl
4 -қадам: Өтініштер:
MMA8452Q әр түрлі қосымшаларға ие, оған электронды компас қосымшалары, портрет/пейзаж, жоғары/төмен, солға/оңға, артқа/алдыңғы позиция идентификаторы, ноутбук, электронды оқырман, ноутбуктің құлдырауы мен құлауды анықтау кіреді. бағдарларды анықтау, оның ішінде виртуалды шындық пен ойынның 3D пайдаланушылардың позициясы туралы кері байланыс, қадамдық қадамдарды санау, HDD үшін құлаудың түсуін анықтау, GPS резервтік көшірмесі және тағы басқалар сияқты нақты уақыттағы белсенділікті талдау.
Ұсынылған:
Raspberry Pi - ADXL345 3 осьті акселерометр Python оқулығы: 4 қадам
Raspberry Pi-ADXL345 3 осьті акселерометр Python оқулығы: ADXL345-бұл кішкентай, жұқа, ультра қуатты, 3 осьті акселерометр, жоғары ажыратымдылықта (13 биттік) ± 16 г дейін. Сандық шығыс деректері 16 биттік қосалқы ретінде форматталған және I2 C сандық интерфейсі арқылы қол жетімді. Ол өлшейді
Arduino Nano-MMA8452Q 3 осьтік 12 биттік/8 биттік цифрлық акселерометр оқулығы: 4 қадам
Arduino Nano-MMA8452Q 3 осьтік 12 биттік/8 биттік сандық акселерометр оқулығы: MMA8452Q-бұл ақылды, қуаты аз, үш осьті, сыйымдылығы бар, микромахинді акселерометр, рұқсаты 12 бит. Қолданбалы бағдарламаланатын икемді опциялар акселерометрге ендірілген функциялардың көмегімен қамтамасыз етілген, екі үзіліспен реттеледі
Raspberry Pi - BH1715 цифрлық жарық сенсоры Python оқулығы: 4 қадам
Raspberry Pi - BH1715 цифрлық ортадағы жарық сенсоры Python оқулығы: BH1715 - бұл I²C шиналы интерфейсі бар цифрлық жарық сенсоры. BH1715 әдетте мобильді құрылғылар үшін СКД мен пернетақта жарығының қуатын реттеу үшін қоршаған жарық туралы мәліметтерді алу үшін қолданылады. Бұл құрылғы 16-разрядты ажыратымдылық пен реттеуді ұсынады
Raspberry Pi MMA8452Q 3 осьтік 12 биттік/8 биттік сандық акселерометр Java оқулығы: 4 қадам
Raspberry Pi MMA8452Q 3-осьтік 12-биттік/8-биттік сандық акселерометр Java оқулығы: MMA8452Q-ақылды, қуаты аз, үш осьті, сыйымдылығы бар, микромахинді акселерометр, ажыратымдылығы 12 бит. Қолданбалы бағдарламаланатын икемді опциялар акселерометрге ендірілген функциялардың көмегімен қамтамасыз етілген, екі үзіліспен реттеледі
3 осьтік акселерометр LIS2HH12 модулі: 10 қадам (суреттермен)
3 осьтік акселерометр LIS2HH12 модулі: Бұл нұсқаулық arduino бағдарламалық қамтамасыз ету мен дәнекерлеу тәжірибесі бар бастапқы деңгей болып саналады. LIS2HH12 модулін Tiny9 жасаған. Tiny9 - бұл DIY қаптауыштарға, компанияларға немесе өнертапқыштарға арналған сенсорлық модульдерді сатумен айналысатын жаңа компания. Ана жерде