
Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03

Sou estudante na Howest Kortrijk. Para mostrar nossas habilidades aos leitores que precisávamos para construir um projeto, escolhi criar um hodômetro e velocímetro para meu skate com um scanner RFID. Neste instrutível vou contar como fiz esse projeto.
Tive essa ideia porque gosto de andar de skate e passear. Enquanto estou navegando, seria útil ver a distância percorrida e ver minha velocidade.
Lembre-se de que este é um protótipo.
Etapa 1: Componentes
Componentes
Usei os seguintes componentes para criar este projeto:
- Skate
- Potenciômetro
- LCD
- Sensor de efeito Hall
- Resistor de 10k Ohm
- Raspberry Pi
- Arduino Nano
- Fio jumper (fêmea para macho)
- Fio jumper (Raspberry Pi)
- Fio jumper (macho para macho)
- PCB
- Scanner RFID
- Crachá RFID
- Banco de poder
Consulte BillOfMaterials para links e preços
Etapa 2: Fiação

O salão tem 3 pinos: um VCC, um GND e uma saída. O aterramento vai para um GND. O VCC para 3,3 V e a saída neste exemplo vai para GPIO 26. Um resistor de 10K Ohm aumenta a saída.
Eu uso comunicação serial via USB entre o raspberry pi e o arduino nano para ler os emblemas. Isso não está na foto, mas é obrigatório!
D9 RST (Reset) D10 SDA (SS) (SPI SS) D11 MOSI (SPI MOSI) D12 MISO (SPI MISO) D13 SCK (SPI SCK) GND GND3.3V 3.3V
Etapa 3: Esquema de banco de dados

Meu banco de dados possui 3 tabelas:
- Comercial
- Sessão
- Dados
Cada usuário pode rastrear dados separadamente. Uma sessão contém dados para que você saiba o quão rápido você foi em determinados pontos durante a sessão.
Etapa 4: configurar o Arduino Nano



Primeiro coloque o seu arduino nano no seu pc através do cabo USB. Selecione o arduino certo e a porta USB certa para fazer o upload.
Em seguida, precisamos adicionar a biblioteca que uso para ler o crachá RFID. Baixe 'rfid-master' e vá para o sketch, inclua a biblioteca e então adicione a biblioteca. ZIP. Vá para o zip que você acabou de baixar e use este, ele será instalado automaticamente. Depois disso, baixe o meu editado 'RFID_Read.ino' pressione ctrl + O adicionar ao mesmo tempo e vá para este arquivo e abra-o.
Se você seguiu todas as etapas acima, pode verificar o arquivo. Se ocorrer um bug da primeira vez, tente mais uma vez. Se for bem sucedido, você pode fazer o upload para o seu arduino. Usando o atalho ctrl + shift + m, você pode abrir o monitor serial. Você pode testar o arquivo aqui. Se o teste for bem-sucedido, você pode desconectar o arduino e conectá-lo a uma porta USB do raspberry pi
Etapa 5: configurar o Raspberry Pi
Nessas etapas iremos configurar o raspberry pi como banco de dados e servidor web.
NESTE EXEMPLO, EU USO O USUÁRIO 'eu' SE VOCÊ USAR OUTRO USUÁRIO, VOCÊ PRECISA ALTERAR OS ARQUIVOS DE CONFIGURAÇÃO, MANTENHA ISSO EM MENTE!
1. Crie um usuário:
Crie uma variável
pieter @ rpipieter: ~ $ user = me
Fazendo o usuário sudo e adicionando a todos os grupos
groups = $ (id pi -Gn | sed 's / ^ pi // g' | sed 's / /, / g') sudo useradd $ {user} -s / bin / bash -m -G $ {groups} sudo sed "s / ^ pi / $ {user} /" /etc/sudoers.d/010_pi-nopasswd | sudo tee "/etc/sudoers.d/011_${user}-nopasswd" sudo passwd $ {user}
Faça login na conta
pieter @ rpipieter: ~ $ su - me
Senha: me @ my-rpi: ~ $
2. Conecte-se ao WiFi
me @ rpipieter: ~ $ sudo -iroot @ rpipieter: ~ # echo 'Senha' | wpa_passphrase 'Networkname' >> /etc/wpa_supplicant/wpa_supplicant.conf root @ rpipieter: ~ # wpa_cli -i wlan0 reconfigure root @ rpipieter: ~ # logout
Verifique se a internet está funcionando
root @ rpipieter: ~ # wget google.com
3. Atualizando o raspberry pi e instalando os pacotes necessários
me @ my-rpi: ~ $ sudo apt update
me @ my-rpi: ~ $ sudo apt atualizar me @ rpipieter: ~ $ sudo apt install -y python3-venv python3-pip python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 gitme @ my-rpi: ~ $ sudo reinicie -h agora
4. Clone meu repositório github
me @ rpipieter: ~ $ git clone
me @ rpipieter: ~ $ cd skate-o-meter / skateometer /
5. Fazendo o ambiente virtual
Ao fazer esses comandos, muitos pacotes serão instalados, isso pode levar algum tempo.
me @ rpipieter: ~ / skate-o-meter / skateometer $ python3 -m pip install --atualizar pip setuptools wheel virtualenv
me @ rpipieter: ~ / skate-o-meter / skateometer $ python3 -m venv --system-site-packages env (env) me @ rpipieter: ~ / skate-o-meter / skateometer $ python -m pip install mysql- conector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib pyserial pyjwt RPi. GPIO
6. Criação do banco de dados e usuários
Estamos usando banco de dados mysql
pieter @ rpipieter: ~ / skate-o-meter / skateometer $ cd
pieter @ rpipieter: ~ $ sudo mysql
Em seguida, copie, cole isto
GRANT SELECT, INSERT, UPDATE, DELETE ON *. * TO 'som-data' @ 'localhost'; DEFINIR SENHA PARA 'som-data' @ 'localhost' = PASSWORD ('sensor9810'); select * from mysql.user; CRIAR USUÁRIO 'som-admin' @ 'localhost' IDENTIFICADO POR 'admin9810'; CRIAR USUÁRIO 'som-web' @ 'localhost' IDENTIFICADO POR 'web9810'; CRIAR USUÁRIO 'som-sensor' @ 'localhost' IDENTIFICADO POR 'sensor9810'; CRIAR BANCO DE DADOS skateometerdb; GRANT ALL PRIVILEGES ON skateometerdb. * To 'som-admin' @ 'localhost' COM GRANT OPTION; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb. * TO 'som-web' @ 'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON skateometerdb. * TO 'som-sensor' @ 'localhost'; PRIVILÉGIOS DE FLUSH;
Em seguida, vamos adicionar o esquema de banco de dados existente com relações.
me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo mysql <sql / skateometerdb_dump-withoutdata.sql
7. Serviços
Aqui nós copiamos nossos arquivos de configuração e recarregamos a pasta para que possamos habilitar os serviços
me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo cp conf / som - *. service / etc / systemd / systemme @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl daemon-reload
Agora vamos habilitar os serviços para que toda vez que iniciarmos o raspberry pi, eles iniciem automaticamente com ele.
me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl enable som-flask.service
Link simbólico criado /etc/systemd/system/multi-user.target.wants/som-flask.service → /etc/systemd/system/som-flask.service. me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl enable som-data.service Link simbólico criado /etc/systemd/system/multi-user.target.wants/som-data.service → / etc / systemd / system / som-data.service. me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl start som-data.service me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo systemctl start som-flask.service
8. NGINX
me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo cp conf / nginx / etc / nginx / sites-available / skateometerme @ rpipieter: ~ / skate-o-meter / skateometer $ sudo rm / etc / nginx / sites -enabled / default me @ rpipieter: ~ / skate-o-meter / skateometer $ sudo ln -s / etc / nginx / sites-available / skateometer / etc / nginx / sites-enabled / skateometerme @ rpipieter: ~ / skate-o -meter / skateometer $ sudo systemctl restart nginx.service
Etapa 6: Habitação + Hall

Habitação
Primeiro fiz um buraco no meu skate para o LCD, o potenciômetro e a campainha. Depois disso, soldei o LCD, o potenciômetro e a campainha no PCB. Então usei um jumperwire para o RPI, aquele com 40 pinos. Eu coloco um lado no pi de framboesa e a outra metade eu corto, desse lado a gente vai soldar. No arquivo 'cabo-rpi' você pode ver onde você precisa soldar qual fio.
Para o invólucro usei uma velha caixa curvadora, fiz alguns furos para um cabo ethernet e para o jumper entrar na caixa.
Eu mantenho a caixa embaixo do skate com alguns parafusos. Dentro da caixa arrumei tudo para caber e também usei parafusos e algumas borrachas para manter tudo no lugar. Isso torna mais fácil retirar as coisas.
O RFID é montado na luz da caixa e é mantido no lugar com ziptires, um problema que encontrei foi que às vezes ele não digitalizava, mas com algumas alterações fiz funcionar.
Sensor de efeito Hall
Primeiro, fiz um furo na roda e coloquei um ímã nele.
Para o hall são usados 3 jumperwires (macho para macho) Eu os soldei no meu PCB e também no próprio hall. Montei o sensor de corredor em minha caminhonete com algumas ziptires. Certifique-se de que o ímã e o sensor estejam bem alinhados, caso contrário, nem sempre registrará o pulso.
Etapa 7: iniciando o aplicativo
Passo 1:
Conecte o framboesa e o banco de energia.
Passo 2:
Espere até o programa iniciar, você pode acompanhar isso no LCD. Você verá o endereço IP, vá para este endereço IP.
Etapa 3:
Crie um usuário, você pode fazer isso registrando-se. Você precisa digitalizar o crachá para ver seu UID do crachá no LCD.
Passo 4:
Se você criou um usuário, pode digitalizar seu crachá e uma sessão será iniciada.
Etapa 5:
Faça um cruzeiro ao redor
Etapa 6:
Digitalize o crachá novamente para interromper a sessão
Etapa 7:
Faça login para ver sua sessão e dados detalhados da sessão
Recomendado:
Como fazer LED ICE SKATE: 6 etapas (com fotos)

Como fazer LED ICE SKATE: Coloquei LEDs de neopixel no meu patim de gelo. Toda vez que o microfone, que está conectado à placa Arduino, ouve algum som barulhento. Ele envia vários sinais aos LEDs. É fácil de fazer, mesmo para iniciantes. Compartilhei códigos e instruções. Vamos tentar
Skate Light Graffiti: 6 etapas (com fotos)

Skate Light Graffiti: Já fiz grafite leve no passado e sempre acho os resultados e o processo muito divertidos. Eu queria dar um passo adiante e trabalhar em minha habilidade de criador para construir um skate leve de graffiti. Aqui está como eu fiz
Fusion Board - Skate elétrico impresso em 3D: 5 etapas (com fotos)

Fusion Board - Skate elétrico impresso em 3D: Este instrutivo é uma visão geral do processo de construção do Fusion E-Board que projetei e construí enquanto trabalhava nos hubs 3D. O projeto foi comissionado para promover a nova tecnologia HP Multi-Jet Fusion oferecida por Hubs 3D, e para mostrar mult
Skate elétrico DIY: 14 etapas (com fotos)

Skate elétrico DIY: Após 2 anos de pesquisa, eu construí meu primeiro skate elétrico. Desde que vi um instrutivo sobre como construir seu próprio skate elétrico, sou apaixonado por skates elétricos DIY. Fazer seu próprio skate elétrico é uma forma de mu
Skate com microcontrolador PIC e LEDs: 8 etapas (com fotos)

Skate com microcontrolador PIC e LEDs: O que você ganha quando um engenheiro elétrico constrói um skate do zero para o presente de Natal de uma criança de 13 anos? Você ganha um skate com oito LEDs brancos (faróis), oito LEDs vermelhos (luzes traseiras), todos controlados por microntrolador PIC! E eu mig