Taula de continguts:
- Pas 1: maquinari bàsic que necessitem
- Pas 2: Connexió del maquinari
- Pas 3: codificació de Python per a Raspberry Pi
- Pas 4: La pràctica del codi
- Pas 5: Aplicacions i funcions
- Pas 6: Conclusió
Vídeo: Acceleròmetre de 3 eixos, ADXL345 amb Raspberry Pi mitjançant Python: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:13
Pensant en un gadget que pugui comprovar el punt en què el vostre Offroader està inclinat cap a la retard. No seria agradable si algú s’ajusta quan hi ha la possibilitat de bolcar? Evidentment, sí. Seria realment útil per a les persones que els agrada anar a la muntanya i fer viatges empresarials.
Sens dubte, un veritable període d’avaluació avançada, l’IoT ens arriba. Com a amants dels gadgets i de la programació, creiem que Raspberry Pi, el PC micro Linux ha tractat les habilitats creatives de la gent en general, portant amb ell una explosió en metodologies innovadores. Quins són els resultats imaginables que podem fer en cas que tinguem un Raspberry Pi i un acceleròmetre de 3 eixos a prop? Hauríem de descobrir-ho! En aquesta tasca, detectarem l’acceleració en 3 eixos, X, Y i Z utilitzant Raspberry Pi i ADXL345, un acceleròmetre de 3 eixos. Per tant, hauríem d’observar en aquesta excursió per fabricar un marc per mesurar l’acceleració tridimensional cap amunt o la força G.
Pas 1: maquinari bàsic que necessitem
Els problemes eren menys per a nosaltres, ja que tenim un munt de coses per treballar. Tot i això, sabem que és complicat per a altres muntar la part correcta en el moment perfecte des del lloc oportú i que es justifica independentment de cada cèntim. Per tant, us ajudarem a totes les regions. Llegiu el següent per obtenir una llista completa de peces.
1. Raspberry Pi
El primer pas va ser adquirir una placa Raspberry Pi. Aquest petit equip de poc consum proporciona una base econòmica i generalment senzilla per a empreses electròniques, Internet de les coses (IoT), Smart Cities, Educació escolar.
2. Escut I2C per a Raspberry Pi
El principal que falta realment al Raspberry Pi és un port I²C. Per això, el connector TOUTPI2 I²C us dóna la sensació d’utilitzar Rasp Pi amb dispositius MULTIPLE I²C. És accessible a DCUBE Store
3. Acceleròmetre de 3 eixos, ADXL345
Fabricat per Analog Devices, l'ADXL345, és un acceleròmetre de 3 eixos de baixa potència amb mesuraments de 13 bits d'alta resolució fins a ± 16 g. Hem adquirit aquest sensor a DCUBE Store
4. Cable de connexió
Teníem el cable de connexió I2C accessible a DCUBE Store
5. Cable micro USB
El Raspberry Pi és el més confús, però el més estricte quant a la necessitat d’energia. L’enfocament més senzill per encendre el Raspberry Pi és mitjançant el cable Micro USB.
6. L’accés web és una necessitat
L'accés web es pot habilitar mitjançant un cable Ethernet (LAN) associat a una xarxa local i al web. D'altra banda, podeu associar-vos a una xarxa sense fils mitjançant un dongle sense fils USB, que requerirà configuració.
7. Cable HDMI / accés remot
Amb el cable HDMI incorporat, podeu connectar-lo a un televisor digital o a un monitor. Cal estalviar diners en efectiu! Raspberry Pi es pot utilitzar remotament a utilitzar estratègies distintives com SSH i Access via web. Podeu utilitzar el programari font PuTTYopen.
Pas 2: Connexió del maquinari
Feu el circuit segons l'esquema aparegut. Elaboreu un esquema i feu-lo després de la configuració deliberadament.
Connexió de l’escut Raspberry Pi i I2C
Per sobre de tot, agafeu el Raspberry Pi i observeu-hi l'I2C Shield. Premeu delicadament l’escut sobre els passadors GPIO de Pi i hem acabat amb aquesta progressió tan senzilla com el pastís (vegeu l’adhesiu).
Connexió del sensor i del gerd Pi
Agafeu el sensor i la interfície del cable I2C. Per al funcionament adequat d'aquest cable, recordeu la sortida I2C SEMPRE associada amb l'entrada I2C. El mateix s’ha de prendre després per al Raspberry Pi amb l’escut I2C muntat sobre els pins GPIO.
Prescrivim la utilització del cable I2C ja que refuta el requisit de revisar els pinouts, la soldadura i el malestar causats fins i tot per l’error més petit. Amb aquest cable bàsic plug and play, podeu introduir, intercanviar dispositius o afegir més dispositius a una aplicació fàcilment. Això fa que les coses siguin senzilles.
Nota: el cable marró hauria de seguir de manera fiable la connexió de terra (GND) entre la sortida d’un dispositiu i l’entrada d’un altre dispositiu
La xarxa web és clau
Per guanyar la nostra empresa, necessitem una connexió web per al nostre Raspberry Pi. Per a això, teniu alternatives com la interfície d’un cable Ethernet (LAN) amb el sistema domèstic. A més, com a opció, però, una ruta útil és utilitzar un connector WiFi. Algunes vegades, per a això, necessiteu un controlador perquè funcioni. Per tant, inclineu-vos cap a aquell amb Linux a la representació.
Font d'alimentació
Connecteu el cable Micro USB a la presa d’alimentació de Raspberry Pi. Enceneu-lo i ja estem bé.
Connexió a pantalla
Podem tenir el cable HDMI associat a una altra pantalla. En alguns casos, heu d’arribar a un Raspberry Pi sense connectar-lo a una pantalla o és possible que hàgiu de veure algunes dades d’ell des d’un altre lloc. És concebible que hi hagi enfocaments innovadors i amb coneixements financers per fer-ho com a tal. Un d’ells fa servir: SSH (inici de sessió remot a la línia d’ordres). També podeu utilitzar el programari PuTTY per a això.
Pas 3: codificació de Python per a Raspberry Pi
El codi Python per al sensor Raspberry Pi i ADXL345 és accessible al nostre dipòsit Github.
Abans d’anar al codi, assegureu-vos de llegir les directrius del document Llegeix-me i configurar el vostre Raspberry Pi segons el mateix. Simplement es detindrà un minut per fer-ho.
Un acceleròmetre és un dispositiu que mesura l’acceleració adequada; l’acceleració adequada no és el mateix que l’acceleració de coordenades (taxa de canvi de velocitat). Es pot accedir als models d’un i múltiples eixos de l’acceleròmetre per identificar la magnitud i la direcció de l’acceleració adequada, com a quantitat vectorial, i es poden utilitzar per detectar l’orientació, coordinar l’acceleració, la vibració, el xoc i caure en un medi resistiu.
El codi és senzill davant vostre i es troba en l'estructura més senzilla que podeu imaginar i no hauríeu de tenir problemes.
# Distribuïda amb una llicència de lliure voluntat. # Utilitzeu-la de la manera que vulgueu, de forma gratuïta o gratuïta, sempre que encaixi en les llicències de les obres associades. # ADXL345 # Aquest codi està dissenyat per funcionar amb el mòdul Mini ADXL345_I2CS I2C disponible a dcubestore.com # https://dcubestore.com/product/adxl345-3-axis-accelerometer-13-bit-i%C2%B2c-mini -mòdul /
importar smbus
temps d'importació
# Aconsegueix un bus I2C
bus = smbus. SMBus (1)
# ADXL345 adreça, 0x53 (83)
# Seleccioneu registre de velocitat d'amplada de banda, 0x2C (44) # 0x0A (10) Mode normal, velocitat de dades de sortida = bus 100 Hz. Write_byte_data (0x53, 0x2C, 0x0A) # Adreça ADXL345, 0x53 (83) # Seleccioneu registre de control de potència, 0x2D (45) # 0x08 (08) Desactivació del mode de repòs automàtic bus.write_byte_data (0x53, 0x2D, 0x08) # ADXL345 adreça, 0x53 (83) # Selecciona el registre de format de dades, 0x31 (49) # 0x08 (08) Autotest desactivat, de 4 fils interfície # Resolució completa, rang = +/- 2g bus.write_byte_data (0x53, 0x31, 0x08)
time.sleep (0,5)
# ADXL345 adreça, 0x53 (83)
# Llegir dades de 0x32 (50), 2 bytes # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x53, 0x32) data1 = bus.read_byte_data (0x53, 0x33)
# Converteix les dades a 10 bits
xAccl = ((dades1 i 0x03) * 256) + dades0 si xAccl> 511: xAccl - = 1024
# ADXL345 adreça, 0x53 (83)
# Tornar a llegir les dades des de 0x34 (52), 2 bytes # Eix Y LSB, eix Y data MSB = bus.read_byte_data (0x53, 0x34) data1 = bus.read_byte_data (0x53, 0x35)
# Converteix les dades a 10 bits
yAccl = ((dades1 i 0x03) * 256) + dades0 si yAccl> 511: yAccl - = 1024
# ADXL345 adreça, 0x53 (83)
# Llegir dades de 0x36 (54), 2 bytes # Eix Z LSB, eix Z dades MSB = bus.read_byte_data (0x53, 0x36) data1 = bus.read_byte_data (0x53, 0x37)
# Converteix les dades a 10 bits
zAccl = ((dades1 i 0x03) * 256) + dades0 si zAccl> 511: zAccl - = 1024
# Sortida de dades a la pantalla
imprimir "Acceleració a l'eix X:% d"% xAccl imprimir "Acceleració a l'eix Y:% d"% yAccl imprimir "Acceleració a l'eix Z:% d"% zAccl
Pas 4: La pràctica del codi
Baixeu-vos (o git pull) el codi de Github i obriu-lo al Raspberry Pi.
Executeu les ordres per compilar i penjar el codi al terminal i veure la sortida a Monitor. Passats uns instants, mostrarà tots els paràmetres. Després d’assegurar-vos que tot funcioni fàcilment, podeu endur-vos aquesta aventura a una tasca més gran.
Pas 5: Aplicacions i funcions
L’ADXL345 és un acceleròmetre de 3 eixos petit, prim i ultralleuger, de 3 eixos, amb una resolució d’alta resolució (13 bits) de fins a ± 16 g. L'ADXL345 és adequat per a aplicacions de telefonia mòbil. Quantifica l’acceleració estàtica de la gravetat en aplicacions de detecció d’inclinació i, a més, l’acceleració dinàmica que s’aconsegueix a causa del moviment o el xoc. Altres aplicacions inclouen telèfons mòbils, instrumentació mèdica, dispositius per apuntar i jugar, instrumentació industrial, dispositius de navegació personal i protecció per a disc dur (HDD).
Pas 6: Conclusió
Espero que aquesta tasca motivi una nova experimentació. Aquest sensor I2C és extraordinàriament flexible, econòmic i accessible. Com que és un sistema impermanent en gran mesura, hi ha maneres interessants d’ampliar aquesta tasca i millorar-la fins i tot.
Per exemple, podeu començar amb la idea d’un inclinòmetre mitjançant l’ADXL345 i el Raspberry Pi. En el projecte anterior, hem utilitzat càlculs bàsics. Podeu improvisar el codi dels valors G, angles de pendent (o inclinació), elevació o depressió d’un objecte respecte a la gravetat. A continuació, podeu comprovar les opcions d’avanç, com ara angles de rotació per a rotllo (eix frontal a darrere, X), pitch (eix de costat a costat, Y) i guijar (eix vertical, Z). Aquest acceleròmetre mostra forces G en 3D. Per tant, podeu utilitzar aquest sensor de diverses maneres que podeu considerar.
Per a la vostra comoditat, tenim un fascinant exercici d’instrucció en vídeo a YouTube que us pot ajudar a investigar. La confiança en aquesta empresa motiva una nova exploració. Segueix contemplant! Tingueu en compte cercar-ne, ja que contínuament en surten més.
Recomanat:
Raspberry Pi - Tutorial d’acceleròmetre de 3 eixos ADXL345 Python: 4 passos
Raspberry Pi: tutorial d’acceleròmetre de 3 eixos ADXL345: l’ADXL345 és un acceleròmetre de 3 eixos petit, prim i de poca potència, amb un mesurament d’alta resolució (13 bits) de fins a ± 16 g. Les dades de sortida digital es formaten com a complement de dos bits de 16 bits i són accessibles a través de la interfície digital I2 C. Mesura el
Arduino Nano - MMA8452Q Tutorial d’acceleròmetre digital de 3 eixos de 12 i 8 bits: 4 passos
Arduino Nano: MMA8452Q Tutorial d’acceleròmetre digital de 12 eixos i 8 bits de 3 eixos: l’MMA8452Q és un acceleròmetre capacitari i micromecanitzat intel·ligent, de poca potència, de tres eixos, amb 12 bits de resolució. S'ofereixen opcions programables per a l'usuari amb l'ajut de funcions incrustades a l'acceleròmetre, configurables per a dues interrupcions
Control de moviment amb Raspberry Pi i LIS3DHTR, acceleròmetre de 3 eixos, amb Python: 6 passos
Control de moviment amb Raspberry Pi i LIS3DHTR, acceleròmetre de 3 eixos, utilitzant Python: la bellesa ens envolta, però normalment cal caminar per un jardí per conèixer-la. - Rumi Com a grup educat que semblem ser, invertim la gran majoria de la nostra energia treballant abans que els nostres ordinadors i telèfons mòbils. Per tant, sovint deixem el nostre benestar
Raspberry Pi MMA8452Q Acceleròmetre digital de 3 eixos de 12 i 8 bits Tutorial de Java: 4 passos
Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Accelerometer Digital Tutorial Java: El MMA8452Q és un acceleròmetre intel·ligent, de baixa potència, de tres eixos, capacitiu, micromecanitzat, amb 12 bits de resolució. S'ofereixen opcions programables per a l'usuari amb l'ajut de funcions incrustades a l'acceleròmetre, configurables per a dues interrupcions
SPI preliminar * al Pi: comunicar-se amb un acceleròmetre de 3 eixos SPI mitjançant un Raspberry Pi: 10 passos
SPI preliminar * al Pi: Comunicar-se amb un acceleròmetre de 3 eixos SPI utilitzant un Raspberry Pi: guia pas a pas sobre com configurar Raspbian i comunicar-se amb un dispositiu SPI mitjançant la biblioteca SPI bcm2835 (NO està petita). molt preliminar … Necessito afegir millors imatges de connexió física i treballar alguns codis incòmodes