Índice:
- Etapa 1: Hardware básico que exigimos
- Etapa 2: Conectando o Hardware
- Etapa 3: codificação Python para Raspberry Pi
- Etapa 4: A viabilidade do Código
- Etapa 5: aplicativos e recursos
- Etapa 6: Conclusão
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
A beleza nos rodeia, mas normalmente, precisamos estar caminhando em um jardim para conhecê-la. - Rumi
Como o grupo educado que parecemos ser, investimos a maior parte de nossa energia trabalhando antes de nossos PCs e telefones celulares. Portanto, frequentemente deixamos nosso bem-estar ficar em segundo plano, nunca encontrando realmente a oportunidade ideal para ir à academia ou a uma aula de fitness e, como regra, escolher o fast food em vez de opções muito mais benéficas. A notícia animadora é: se tudo de que você precisa é de alguma ajuda para manter registros ou para monitorar seu progresso, você pode utilizar a inovação de hoje para fabricar alguns gadgets para ajudar a si mesmo.
A tecnologia está se desenvolvendo rapidamente. De forma consistente, percebemos alguma inovação que mudará o mundo e a maneira como aprendemos nele. Quando você está em PCs, programação e robôs ou apenas gosta de mexer, há uma bênção tecnológica por aí. Raspberry Pi, o micro computador Linux de placa única, é dedicado a melhorar a maneira como você aprende com a tecnologia inovadora, mas também é a chave para melhorar a aprendizagem educacional em todo o mundo. Então, quais são os resultados possíveis que podemos fazer se tivermos um Raspberry Pi e um acelerômetro de 3 eixos por perto? Que tal encontrarmos isso! Nesta tarefa, verificaremos a aceleração em 3 eixos perpendiculares, X, Y e Z utilizando Raspberry Pi e LIS3DHTR, um acelerômetro de 3 eixos. Portanto, devemos ver nesta jornada para criar um sistema para verificar a aceleração tridimensional ou G-Force.
Etapa 1: Hardware básico que exigimos
Os problemas eram menores para nós, uma vez que temos uma grande quantidade de coisas por aí para trabalhar. Em qualquer caso, sabemos como é problemático para os outros juntar a parte certa em tempo imaculado do local útil e que é defendido prestando pouca atenção a cada centavo. Então, nós o ajudaríamos. Siga o anexo para obter uma lista de peças completa.
1. Raspberry Pi
O passo inicial foi conseguir uma placa Raspberry Pi. O Raspberry Pi é um PC baseado em Linux de placa única. Este pequeno PC tem um grande poder de computação, utilizado como parte das atividades de gadgets e operações diretas, como planilhas, preparação de palavras, digitalização da web e e-mail e jogos.
2. Escudo I2C para Raspberry Pi
A principal preocupação de que o Raspberry Pi esteja realmente ausente é uma porta I²C. Portanto, para isso, o conector TOUTPI2 I²C dá a sensação de usar Rasp Pi com QUALQUER um dos dispositivos I²C. Está disponível na DCUBE Store
3. Acelerômetro de 3 eixos, LIS3DHTR
O LIS3DH é um acelerômetro linear de três eixos de ultra baixo consumo de energia e alto desempenho pertencente à família “nano”, com saída padrão de interface serial digital I2C / SPI. Adquirimos este sensor da DCUBE Store
4. Cabo de conexão
Adquirimos o cabo de conexão I2C na DCUBE Store
5. Cabo micro USB
O menor desnorteado, mas o mais rigoroso quanto à necessidade de energia, é o Raspberry Pi! A maneira mais fácil de lidar com isso é usando o cabo Micro USB.
6. O acesso à web é uma necessidade
As crianças da INTERNET NUNCA dormem
Obtenha seu Raspberry Pi associado a um cabo Ethernet (LAN) e conecte-o ao seu roteador de rede. Opcional, procure um conector WiFi e utilize uma das portas USB para chegar ao sistema remoto. É uma decisão acertada, simples, pequena e de má qualidade!
7. Cabo HDMI / acesso remoto
O Raspberry Pi tem uma porta HDMI que você pode conectar especificamente a uma tela ou TV com um cabo HDMI. Opcionalmente, você pode utilizar o SSH para se associar ao Raspberry Pi de um PC Linux ou Macintosh a partir do terminal. Da mesma forma, PuTTY, um emulador de terminal gratuito e de código aberto, parece uma alternativa decente.
Etapa 2: Conectando o Hardware
Faça o circuito de acordo com o esquema apresentado. Desenhe um diagrama e siga o esboço com precisão. A imaginação é mais importante do que o Conhecimento.
Conexão do Raspberry Pi e Escudo I2C
Acima de tudo, pegue o Raspberry Pi e localize o escudo I2C nele. Pressione o escudo delicadamente sobre os pinos GPIO de Pi e terminaremos com essa progressão tão simples quanto uma torta (veja o snap).
Conexão do Sensor e Raspberry Pi
Pegue o sensor e faça a interface do cabo I2C com ele. Para a operação adequada deste cabo, recorde a saída I2C SEMPRE associada à entrada I2C. O mesmo deve ser feito para o Raspberry Pi com o escudo I2C montado sobre os pinos GPIO.
Endossamos o uso do cabo I2C, uma vez que elimina a necessidade de examinar pinagens, fixação e desconforto causado mesmo pelo menor parafuso. Com esse anexo fundamental e cabo de reprodução, você pode apresentar, trocar dispositivos ou adicionar mais dispositivos a um aplicativo de forma eficaz. Isso facilita o peso do trabalho até um nível significativo.
Observação: O fio marrom deve seguir de forma confiável a conexão de aterramento (GND) entre a saída de um dispositivo e a entrada de outro dispositivo
Rede web é a chave
Para tornar nosso esforço uma vitória, exigimos uma associação da Internet para o nosso Raspberry Pi. Para isso, você tem opções como fazer a interface de um cabo Ethernet (LAN) com a rede doméstica. Além disso, como alternativa, seja como for, um curso confortável é usar um conector USB WiFi. Como regra para isso, você precisa de um motorista para fazê-lo funcionar. Portanto, incline-se para aquele com Linux na descrição.
Fonte de energia
Conecte o cabo Micro USB ao conector de alimentação do Raspberry Pi. Dê um soco e estamos prontos.
Conexão com a tela
Podemos ter o cabo HDMI associado a outra tela. Em alguns casos, você precisa obter um Raspberry Pi sem conectá-lo a uma tela ou pode precisar visualizar alguns dados de outro lugar. É concebível que existam abordagens inovadoras e financeiramente experientes para fazer isso. Um deles está utilizando -SSH (login de linha de comando remoto). Você também pode utilizar o software PUTTY para isso. Estes são para usuários avançados. Portanto, os detalhes não estão incluídos aqui.
Etapa 3: codificação Python para Raspberry Pi
O código Python para o sensor Raspberry Pi e LIS3DHTR pode ser acessado em nosso GithubRepository.
Antes de prosseguir com o código, certifique-se de ler as regras fornecidas no arquivo Leiame e configurar seu Raspberry Pi de acordo com ele. Será apenas uma pausa por um momento para fazer todas as coisas consideradas.
Um acelerômetro é um dispositivo eletromecânico que mede as forças de aceleração. Esses poderes podem ser estáticos, semelhantes à força constante da gravidade puxando seus pés, ou podem ser alteráveis - provocados pelo movimento ou vibração do acelerômetro.
O que o acompanha é o código python e você pode clonar e ajustar o código de qualquer maneira que desejar.
# Distribuído com licença de livre arbítrio. # Use-o da maneira que quiser, com ou sem lucro, desde que se enquadre nas licenças das obras associadas. # LIS3DHTR # Este código foi desenvolvido para funcionar com o Mini Módulo LIS3DHTR_I2CS I2C disponível em dcubestore.com # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 % Mini-módulo B2c /
import smbus
tempo de importação
# Pegue o ônibus I2C
bus = smbus. SMBus (1)
# Endereço LIS3DHTR, 0x18 (24)
# Selecione o registro de controle 1, 0x20 (32) # 0x27 (39) Modo LIGADO, Seleção de taxa de dados = 10 Hz # X, Y, barramento habilitado do eixo Z.write_byte_data (0x18, 0x20, 0x27) # Endereço LIS3DHTR, 0x18 (24) # Selecione o registro de controle 4, 0x23 (35) # 0x00 (00) Atualização contínua, Seleção completa = +/- 2G bus.write_byte_data (0x18, 0x23, 0x00)
tempo.sono (0,5)
# Endereço LIS3DHTR, 0x18 (24)
# Leia os dados de 0x28 (40), 2 bytes # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)
# Converta os dados
xAccl = dados1 * 256 + dados0 se xAccl> 32767: xAccl - = 65536
# Endereço LIS3DHTR, 0x18 (24)
# Ler dados de 0x2A (42), 2 bytes # LSB do eixo Y, dados MSB do eixo Y0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)
# Converta os dados
yAccl = dados1 * 256 + dados0 se yAccl> 32767: yAccl - = 65536
# Endereço LIS3DHTR, 0x18 (24)
# Leia os dados de 0x2C (44), 2 bytes # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)
# Converta os dados
zAccl = data1 * 256 + data0 se zAccl> 32767: zAccl - = 65536
# Dados de saída para a tela
print "Aceleração no eixo X:% d"% xAccl print "Aceleração no eixo Y:% d"% yAccl print "Aceleração no eixo Z:% d"% zAccl
Etapa 4: A viabilidade do Código
Baixe (ou git pull) o código do Github e abra-o no Raspberry Pi.
Execute os comandos de Compilar e Upload do código no terminal e veja o rendimento na Tela. Após alguns minutos, ele demonstrará cada um dos parâmetros. Por garantir que tudo funcione sem problemas, você pode levar esse desafio para um empreendimento mais digno de nota.
Etapa 5: aplicativos e recursos
Fabricado pela STMicroelectronics, o LIS3DHTR tem escalas completas selecionáveis pelo usuário dinamicamente de ± 2g / ± 4g / ± 8g / ± 16g e é capaz de medir acelerações com taxas de dados de saída de 1Hz a 5kHz. O LIS3DHTR é apropriado para funções ativadas por movimento e detecção de queda livre. Ele quantifica a aceleração estática da gravidade em aplicações de detecção de inclinação e, além disso, a aceleração dinâmica que se aproxima devido ao movimento ou choque. Outras aplicações incluem reconhecimento de clique / duplo clique, economia inteligente de energia para dispositivos portáteis, pedômetro, orientação de exibição, dispositivos de entrada para jogos e realidade virtual, reconhecimento de impacto e registro e monitoramento e compensação de vibração.
Etapa 6: Conclusão
Acredite que este empreendimento estimula mais experimentação. Este sensor I2C é fenomenalmente adaptável, modesto e disponível. Uma vez que é uma estrutura impermanente de um grau incrível, existem maneiras interessantes de expandir essa tarefa e até mesmo melhorá-la.
Por exemplo, você pode começar com a ideia de um pedômetro usando o LIS3DHTR e o Raspberry Pi. Na tarefa acima, utilizamos cálculos fundamentais. A aceleração pode ser o parâmetro relevante para analisar a condução de uma caminhada. Você pode verificar os três componentes do movimento de um indivíduo que são para a frente (roll, X), lateral (pitch, Y) e vertical (eixo de yaw, Z). Um padrão típico de todos os 3 eixos é registrado. Pelo menos 1 eixo terá valores de aceleração periódica relativamente grandes. Portanto, a direção do pico e um algoritmo são essenciais. Levando em consideração o parâmetro de etapas (filtro digital, detecção de pico, janela de tempo, etc.) deste algoritmo, você pode reconhecer e contar etapas, bem como medir distância, velocidade e, até certo ponto, calorias queimadas. Portanto, você pode utilizar este sensor de várias maneiras que você pode considerar. Confiamos que todos gostem! Tentaremos fazer uma versão funcional deste pedômetro mais cedo ou mais tarde, a configuração, o código, a parte que calcula os meios para separar caminhada e corrida e calorias queimadas.
Para seu consolo, temos um vídeo intrigante no YouTube que pode ajudar em seu exame. Acredite, este empreendimento motiva mais exploração. Continue refletindo! Lembre-se de cuidar, pois mais está surgindo persistentemente.
Recomendado:
Raspberry Pi - ADXL345 Acelerômetro de 3 eixos Python Tutorial: 4 etapas
Raspberry Pi - ADXL345 Acelerômetro de 3 eixos em Python Tutorial: O ADXL345 é um acelerômetro de 3 eixos pequeno, fino e de potência ultrabaixa com medição de alta resolução (13 bits) de até ± 16 g. Os dados de saída digital são formatados como complemento de dois de 16 bits e são acessíveis por meio da interface digital I2C. Ele mede o
Raspberry Pi - ADXL345 Acelerômetro de 3 eixos Java Tutorial: 4 etapas
Raspberry Pi - ADXL345 3-Axis Accelerometer Java Tutorial: O ADXL345 é um acelerômetro de 3 eixos pequeno, fino e ultrabaixo com medição de alta resolução (13 bits) de até ± 16 g. Os dados de saída digital são formatados como complemento de dois de 16 bits e são acessíveis por meio da interface digital I2C. Ele mede o
Raspberry Pi MMA8452Q 3 eixos 12 bits / 8 bits acelerômetro digital Python Tutorial: 4 etapas
Raspberry Pi MMA8452Q 3 eixos 12 bits / 8 bits Acelerômetro digital Python Tutorial: O MMA8452Q é um acelerômetro inteligente, de baixo consumo de energia, capacitivo, microusinado e de três eixos com 12 bits de resolução. Opções flexíveis programáveis pelo usuário são fornecidas com o auxílio de funções incorporadas no acelerômetro, configuráveis para duas interrupções
Acelerômetro de 3 eixos, ADXL345 com Raspberry Pi usando Python: 6 etapas
Acelerômetro de 3 eixos, ADXL345 com Raspberry Pi usando Python: pensando em um gadget que pode verificar o ponto em que seu Offroader está inclinado para persistir. Não seria agradável se alguém se ajustasse quando existe a possibilidade de tombar? Obviamente sim. Seria verdade
Preliminar * SPI no Pi: comunicando-se com um acelerômetro de 3 eixos SPI usando um Raspberry Pi: 10 etapas
Preliminar * SPI no Pi: comunicando-se com um acelerômetro de 3 eixos SPI usando um Raspberry Pi: guia passo a passo sobre como configurar o Raspbian e comunicar-se com um dispositivo SPI usando a biblioteca SPI bcm2835 (NÃO bit banged!). muito preliminar … Preciso adicionar imagens melhores de conexões físicas e trabalhar alguns dos códigos estranhos