Postura Pal com Walabot
Evite dores no pescoço e nas costas monitorando seu postura sentada com sensor de distância Walabot e um aplicativo Android.
Coisas usadas neste projeto
Componentes de hardware
Walabot com Raspberry Pi
Por que construí Posture Pal
Milhões de pessoas passam 7 a 8 horas por dia sentadas na frente de seus computadores. Um traço comum é aparente entre as pessoas que usam o computador de maneira inadequada:uma postura de cabeça para a frente. Uma vez que as pessoas geralmente se sentam enquanto usam um computador, as pessoas também tendem a se curvar e curvar [1]. A dor no pescoço causada pelo uso impróprio do computador pode ser evitada com o treinamento da atenção plena, sem a necessidade de equipamentos desconfortáveis.
Esta postura de cabeça para frente exerce uma pressão considerável no pescoço humano. Uma cabeça humana normal pesa cerca de 4,54 kg. Uma avaliação de tensões descobriu que uma postura de 15 graus com a cabeça para a frente aumentou o peso efetivo na parte do pescoço da coluna para 27 libras (12,25 kg). De acordo com um estudo, a dor no pescoço relacionada ao trabalho é duas vezes mais provável para quem está sentado com uma flexão de 20 graus do pescoço. Criei este aplicativo para ajudar a me lembrar quando minha cabeça está muito perto do computador e para melhorar a qualidade geral do meu estilo de vida de programação. O estágio atual consiste em um aplicativo Android de código aberto desenvolvido pelo autor que fornece notificações quando o usuário está muito perto do computador.
Etapa 1:inicie o servidor no Pi
Instale o SDK do Walabot.
Usaremos a biblioteca Python Flask para atender à distância-alvo do Walabot, portanto no seu Raspberry Pi
pip install flask - usuário
git clone https://gist.github.com/justinshenk/aa1e1eb7ceb87fd82f0b655b5ad20c8a posture-server
cd posture-server
python3 server.py
O script Python server.py fornece um ponto de extremidade para obter a distância do Walabot usando um servidor Flask:
#! / usr / local / env python
import json
importar tempo
do flask importar Flask, jsonify, request, Response
app =Flask (__ name__)
distance =0
@ app.route ('/ set')
def set ():
distância global
distância =request.args.get ('distance')
return jsonify (distance)
@ app.route ('/ status')
def status ():
return Response (json.dumps ({'status':distance}))
if __name__ =='__main__':
app.run (host ='0.0.0.0', porta =3000)
Em outra janela de terminal, comece a detectar a distância do alvo com o Walabot:
python3 distance.py
A distância até o alvo / usuário é acessada por meio da API interna
wlbt.get_targets ()
e a profundidade do alvo é acessada via zPosCm e atualizada no servidor com uma variável de URL:
distance =str (targets [0] .zPosCm)
r =requests.get (“http:// localhost:3000 / set? distance =” + distância)
Etapa 2. Inicie o aplicativo Android
Baixe o aplicativo Android.
O aplicativo usa GraphView para exibir os dados e pesquisa longa de HTTP para solicitar o status. O código-fonte do aplicativo Android está disponível em https://github.com/justinshenk/Walabot-PosturePal. Crie você mesmo ou simplesmente instale o APK. Abra o aplicativo. O aplicativo Android é usado para definir uma postura de referência para comparação e modificar a sensibilidade do dispositivo.
// Obter distância via JsonObjectRequest
String url =“http://192.168.0.100:3000/status”; // substituir pelo endereço IP do Pi
final JsonObjectRequest jsonObjectRequest =new JsonObjectRequest
(Request.Method.GET, url, nulo, novo Response.Listener
@Override
public void onResponse (JSONObject response) {
Double distance =0 .;
try {
distance =response.getDouble (“status”);
// Atualizar gráfico
dataset =updateData (dataset, distance);
…
// Atualizar exibição de texto
currDistance.setText (“Distance:“ + String.format (“%. 2f”, distance ));
…
// Pesquisa a cada segundo
new Timer (). scheduleAtFixedRate (new TimerTask () {
@Override
public void run () {
queue.add(jsonObjectRequest);
}
}, 0, 1000);
Etapa 3:calibrar
Leia mais informações… .Posture Pal with Walabot
Processo de manufatura
- Tecido com Loção
- Ler a temperatura com DS18B20 | Raspberry Pi 2
- Medindo a temperatura com RASPBERRY PI
- Monitorando a temperatura com Raspberry Pi
- Touchpad Walabot
- Rastreador de banheiro (Powered by Walabot)
- Reconhecimento de dígitos AI com PiCamera
- Introdução ao TJBot
- Construindo um segway com Raspberry Pi
- GoPiGo v2 com Windows IoT