Índice:

Longboard elétrico rastreável: 16 etapas (com fotos)
Longboard elétrico rastreável: 16 etapas (com fotos)

Vídeo: Longboard elétrico rastreável: 16 etapas (com fotos)

Vídeo: Longboard elétrico rastreável: 16 etapas (com fotos)
Vídeo: How I track my electric skateboard (EASY MOD) 2024, Novembro
Anonim
Longboard elétrico rastreável
Longboard elétrico rastreável
Longboard elétrico rastreável
Longboard elétrico rastreável
Longboard elétrico rastreável
Longboard elétrico rastreável
Longboard elétrico rastreável
Longboard elétrico rastreável

Este projeto consiste em um longboard elétrico que retém o percurso com a ajuda de um pi de framboesa. Essas sessões são mantidas em um banco de dados mySQL e são exibidas no meu site que foi feito com o microframework 'Flask'.

(Este é um projeto escolar feito em 3 semanas)

Etapa 1: Materiais e Ferramentas

Este projeto requer habilidades de soldagem e custará cerca de € 500.

Materiais:

Todos os materiais e links para os fornecedores estão na folha de lista de materiais.

Ferramentas:

  • Ferro de soldar + lata
  • Alicate
  • Pistola de cola quente
  • Conjunto de chaves de fenda e chave allen
  • Um pincet pode ser útil às vezes
  • Cortador / removedor de fio

Um torno, cortador a laser e impressora 3D são usados neste projeto!

Etapa 2: Mudar as rodas e preparar o caminhão

Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão
Mudando as rodas e preparando o caminhão

Em primeiro lugar, tirei aquelas rodinhas brancas do meu longboard. Em seguida, retirei os rolamentos de esferas e os coloquei nas rodas laranja de 90 mm.

O caminhão no qual o motor será montado precisa de um pequeno ajuste. A roda com a roda dentada não cabe no caminhão do longboard que comprei, então tive que cortar cerca de 1 cm com um torno.

e montei-os nos caminhões, exceto a roda com a engrenagem (eu escolhi aleatoriamente o lado direito, traseiro).

Etapa 3: Montagem do motor de corte e soldagem

Montagem do motor de corte e soldagem
Montagem do motor de corte e soldagem
Montagem do motor de corte e soldagem
Montagem do motor de corte e soldagem
Montagem do motor de corte e soldagem
Montagem do motor de corte e soldagem

Fiz a montagem do motor de alumínio com corta-laser nas dimensões da foto acima.

O posicionamento da montagem é importante. Ele precisa ser inclinado para baixo o máximo possível sem tocar na placa e, como tenho um motor grande, o ângulo não é assim tão grande. Acontece que eu conheço um soldador, então a princípio ele soldou um pouco e depois para testar o posicionamento, empurrei os caminhões de um lado para o outro para ver se tocava na placa.

Depois que toda a minha placa foi concluída, fiz um teste e o suporte do motor se soltou, o que explica por que meu motor parecerá danificado nas próximas fotos;) Depois disso, pedi a um conhecido para soldá-lo completamente.

Etapa 4: Montagem do motor e da correia

Montagem do motor e correia
Montagem do motor e correia
Montagem do motor e correia
Montagem do motor e correia
Montagem do motor e correia
Montagem do motor e correia

Use 4 dos negritos M4 * 14 para montar o motor no suporte.

Depois disso, você deve fixar a polia do motor de 12 dentes no eixo do motor. Certifique-se de que o pequeno negrito está na parte plana do eixo!

Agora você pode pegar uma das correias e colocá-la em volta da polia, pegar a roda com a engrenagem e girar até que toda a correia esteja em volta da engrenagem.

Aperte a porca do caminhão para que a roda não caia e pronto.

Etapa 5: Diagramas de fiação

Diagramas de fiação
Diagramas de fiação
Diagramas de fiação
Diagramas de fiação
Diagramas de fiação
Diagramas de fiação

Os componentes eletrônicos foram conectados de acordo com os diagramas acima.

O primeiro é um esquema completo da eletrônica.

O segundo diagrama mostra todas as conexões da parte elétrica do longboard, o 6s UBEC a 12V vai para o próximo diagrama. Esse diagrama mostra o circuito das luzes e sensores que são controlados pelo Raspberry Pi.

Como você provavelmente já viu, a tela tft tem um cabeçalho fêmea que ocupa muitos pinos. Pinos de que precisamos para comunicação serial com o módulo GPS. Assim, soldei os fios nos pinos de que precisamos (Figura 4-6) a um conector fêmea que se conecta ao Pi.

Etapa 6: Conectando o BMS

Conectando o BMS
Conectando o BMS
Conectando o BMS
Conectando o BMS
Conectando o BMS
Conectando o BMS

Usei comsa42 seus intructáveis para o diagrama de conexão.

Eu usei uma placa Balance BMS (sistema de gerenciamento de bateria) para carregar meus lipo's para que eu pudesse deixá-los em minha caixa e carregá-los com um 'carregador inteligente' através de um conector DC à prova d'água

Soldei dois cabos para uma porta de carregamento no BMS, um no P- (preto) e outro no P + (vermelho). (Esses cabos não precisam ser tão grossos, pois só vão passar 2 Amps a porta de carga)

NOTA: No começo eu usei um conector DC com parafusos, mas depois o substituí pelo conector DC à prova d'água da BOM. Não solde o plugue ainda ou você terá um problema quando quiser colocá-lo em sua caixa.

Liguei as duas baterias em série com um dos 'XT60 2 pack in series plug' que comprei. Eu pluguei aquele conector macho em um fêmea e soldei um fio vermelho e preto grosso nele. O fio vermelho vai para B + no BMS e o preto vai para o B-.

Em seguida, os cabos de equilíbrio para as baterias. Usei dois dos cabos de equilíbrio comprados e desconectei o fio vermelho para a bateria um e o último fio preto para a bateria dois em ambos os lados. Não precisamos deles porque são iguais aos fios grossos da bateria, que já conectamos. Em seguida, solde-o na ordem certa, como no diagrama.

NOTA: No meio conectei o aterramento com o positivo da próxima bateria, mas isso não é realmente necessário, pois o conector série já faz isso.

Etapa 7: Chave liga / desliga (tecla de loop)

Chave liga / desliga (tecla de loop)
Chave liga / desliga (tecla de loop)
Chave liga / desliga (tecla de loop)
Chave liga / desliga (tecla de loop)
Chave liga / desliga (tecla de loop)
Chave liga / desliga (tecla de loop)

Em vez de comprar um interruptor anti-faísca de 60 dólares, fiz uma chave de laço. O princípio é simples. Você faz uma interrupção no circuito e para ligar a placa, conecta o conector anti-faísca XT90 e o circuito é fechado, sem faíscas.

Primeiro, soldei um fio no plugue macho (imagem 2-4) e, em seguida, alguns conectores bullet de 3,5 mm no plugue XT90 fêmea.

Para conectá-lo às baterias, usei um conector XT60 macho a um conector XT60 fêmea, mas com uma interrupção no fio vermelho. Em seguida, soldei conectores bullet nas pontas onde cortei o fio ao meio, para que eu pudesse conectar o conector XT90 fêmea em vez de soldá-lo diretamente ao cabo. Portanto, conecte-o e pronto, o botão liga / desliga está pronto.

Etapa 8: VESC, indicador de bateria e conector UBEC

VESC, indicador de bateria e conector UBEC
VESC, indicador de bateria e conector UBEC
VESC, indicador de bateria e conector UBEC
VESC, indicador de bateria e conector UBEC
VESC, indicador de bateria e conector UBEC
VESC, indicador de bateria e conector UBEC

Eu fiz meu próprio '3 em paralelo a 1 conector' colando 3 conectores XT60 juntos (foto 1) e soldando um fio aos positivos da árvore e um fio aos negativos da árvore (fotos 2-6). Em seguida, soldei um conector macho a ele e protegi os cabos desencapados com um pouco de fita preta. (foto 7-9)

VESC & Indicador

Solde um plugue XT60 macho para os cabos de alimentação VESC e para os cabos do indicador de porcentagem / tensão da bateria.

uBEC

Desconecte 2 cabos de equilíbrio e solde a extremidade macho em um plugue XT60 macho. As extremidades fêmeas se conectam ao lado de entrada do uBEC (conversor de voltagem).

NOTA: Eu cortei os fios de equilíbrio um 'pouco' mais curtos, mas isso foi um erro, então deixe-os intactos;)

Etapa 9: Sensor do motor para Vesc

Sensor do motor para Vesc
Sensor do motor para Vesc
Sensor do motor para Vesc
Sensor do motor para Vesc
Sensor do motor para Vesc
Sensor do motor para Vesc

Use dois dos cabos de passo para conectar o sensor do motor ao VESC. O motor tem 5 pinos, 2 para alimentação e árvore para os sensores Hall (1 pino por sensor Hall).

Puxe os quatro cabos para fora do lado de 4 pinos e pegue um fio extra de um segundo cabo de passo, corte-os um pouco mais curtos e solde alguns pinos machos na extremidade. Coloque-os na ordem correta, como nas fotos

Use tubos termorretráteis e fita para tornar tudo seguro! Feito isso, a única coisa que resta a fazer é colocá-los na ordem correta do VESC para o motor.

Etapa 10: Fonte de alimentação Raspberry Pi

Fonte de alimentação Raspberry Pi
Fonte de alimentação Raspberry Pi
Fonte de alimentação Raspberry Pi
Fonte de alimentação Raspberry Pi
Fonte de alimentação Raspberry Pi
Fonte de alimentação Raspberry Pi

Precisamos de um conversor de 12V para 5V que alimentará o raspberry pi via USB, então pensei imediatamente em um carregador de carro. É uma solução barata e prática.

NOTA: Antes de abri-lo, você deve se lembrar de qual é a porta que pode fornecer 2,1 Amps, porque o Pi precisa disso.

Portanto, remova o adesivo e desparafuse a parte superior da carga do carro e, em seguida, afrouxe o pino na parte inferior. Depois ele se abrirá facilmente, solde a mola (+ 12V) e o objeto curvo de metal (GND) solto e substitua-os por 2 daqueles fios de equilíbrio (solde o lado macho no PCB).

Feito isso, verifiquei se tudo estava correto conectando um conector DC aos fios e plugando-o na fonte de alimentação do meu stip de LED e medindo a tensão de saída USB (os dois externos são + 5V e GND).

Se tudo estiver correto, você pode ocultar as peças de metal expostas com alguns tubos termorretráteis e fita.

NOTA: Dubbelcheck a polaridade no carregador, porque pode ser diferente.

Etapa 11: Fiação do Pi, Luzes e GPS

Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS
Fiação do Pi, Luzes e GPS

Agora a energia para as luzes.

Recebemos 12 V do nosso uBEC e precisamos disso para as nossas luzes dianteiras, luz traseira e carregador de carro. O raspberry pi não consegue fornecer corrente nem voltagem suficiente para alimentar os LEDs, então teremos que usar um transistor. O 12V será usado como fonte de alimentação e o raspberry pi irá ligá-los e desligá-los controlando a base do transistor NPN (2N222: foto 2) então vamos soldar isso a uma placa de prototipagem.

Em primeiro lugar, toda a luz traseira é como a parte de trás do longboard e o pi de framboesa virá na frente, então o cabo terá que ser estendido (foto 3-5). A lanterna traseira tem 3 fios. Preto (negativo), amarelo (luz de corrida / cauda), vermelho (luz de freio / parada). Mas como há apenas uma diferença muito pequena entre o freio e a luz de funcionamento, escolho usar o fio vermelho e deixar o amarelo sozinho. Coloque um fio macho comprido no metal fornecido para a luz traseira e dobre-o até que o fio não possa mais se soltar. Faça isso para o fio preto e vermelho.

Para as luzes traseiras, solde-as em paralelo. Em seguida, a placa de prototipagem. Solde as extremidades fêmeas dos dois fios de equilíbrio na placa e use um fio de cobre para espalhar os 12 V em toda a placa. Em seguida, adicione os transistores, um para as luzes dianteiras e outro para as luzes traseiras. Coletor -> 12V, emissor -> GND en a base para um resistor e depois para um fio com uma extremidade fêmea, que vai caber nos pinos GPIO pi framboesa (pinos 20 e 21). O carregador do carro pode ser alimentado por 12V, então coloque um cabo usb na entrada USB correta e coloque a extremidade micro usb no pi raspberry.

Conexões GPS:

PI GPS

3,3 V -> Vin

GND -> GND

RX -> TX

TX -> RX

NOTA: Apenas os 2 pinos básicos do transistor precisam de um resistor externo para limitar a corrente. As luzes não precisam deles porque estão embutidas nos leds.

Etapa 12: Alojamento

Habitação
Habitação
Habitação
Habitação
Habitação
Habitação

Enrolei as partes que se encaixam entre si em folhas de plástico para ter certeza de que todo o arame estava preso e é mais fácil colocá-lo na caixa depois. Eu projetei todas as peças no inventor e as imprimi com minha impressora 3D. Todos os arquivos do inventor (.ipt) e da impressora / divisor (.stl) são fornecidos. Os designs são muito básicos.

Verso (peças de longboard elétrico)

Você pode colocar o indicador de bateria e o plugue XT90 fêmea e, em seguida, colocar a caixa de plástico. Assim que a caixa ficou presa, fixei o plugue do XT90 com cola quente para que fique preso quando a chave é puxada para dentro e para fora. Também adicionei um parafuso na parte interna da caixa, ao lado da parede onde o plugue XT90 está conectado, de forma que a parede não possa ser pressionada ao conectar a chave de laço.

A antena do módulo GPS é longa, muito longa. Então, mantive as duas pontas para fora da caixa e dobrei o arame nesta parte da caixa.

NOTA: Use parafusos pequenos que não sejam mais longos do que o longboard é grosso!

Uma vez que isso estava bom, substituí meu conector DC de teste por um à prova d'água. Eu soldei alguns fios com conectores bullet fêmea aos fios e conectores bullet macho nos fios que estão ligados à placa BMS. Mais uma vez, os fios não precisam ser tão grossos porque o carregador fornece apenas cerca de 2 amperes. Também será mais fácil conectar a tomada na caixa com alguns fios menores …

Frente (raspberry pi com GPS e luzes)

Deslize a tela na parte traseira do caso. Coloque todos os cabos dentro da caixa e aparafuse-os. Você também pode querer colocar um pouco de papel alumínio ou algo entre a antena e o Raspberry Pi, porque era muito magnético e os computadores nem sempre são assim.

NOTA: Tenha cuidado ao deslizar a tela tft para dentro da caixa, para não danificar os cabos que controlam o toque. Isso aconteceu comigo…

Etapa 13: Configuração básica Pi

Em primeiro lugar, precisamos de um cartão SD com Raspbian. Você pode baixar o raspbian aqui. Depois de fazer o download, podemos instalar o raspbian no cartão SD. Você pode instalar o software usando Win32Discmanager ou etcher em seu computador.

Quando estiver instalado, você terá que adicionar um arquivo chamado 'ssh' sem extensão para habilitar o SSH no pi. Uma vez feito isso, você pode inicializar o seu raspberry e adicioná-lo à sua rede.

O pi não terá conexão com a sua rede então você terá que configurar um endereço APIPA, este é o endereço IP que o pi terá quando não tiver conexão com a rede. Abra o arquivo 'cmdline.txt' no cartão SD e adicione um endereço APIPI. Por exemplo: 'ip = 169.254.10.5'.

NOTA: Certifique-se de que tudo esteja em uma linha ou não funcionará!

Coloque o SD no PI, adicione um cabo de rede do seu pi ao computador e, em seguida, conecte a energia.

Depois você pode usar o Putty ou se você usar um mac, basta usar o terminal para criar uma conexão SSH.

ssh [email protected]

Adicionando uma conexão sem fio:

Para adicionar uma nova rede ao seu pi, você pode digitar este comando:

echo ENTER_ YOUR_PASSWORD | wpa_passphrase ENTER_YOUR_SSID >>

/etc/wpa_supplicant/wpa_supplicant.conf

Após uma reinicialização, você deverá encontrar seu endereço IP no roteador e conectar-se ao pi via ssh com esse endereço IP.

ssh pi @ IP_FROM_PI

Sempre encontrar seu ip é um pouco chato, então vamos configurar um nome de host para que possamos usá-lo (a instalação do bonjour é necessária em um PC com janela para isso).

sudo raspi-config nonint do_hostname CHOOSE_A_HOSTNAME

NOTA: Para usar o nome do host no futuro, você deve digitar a regra SSH assim:

ssh USER@YOUR_HOSTNAME.local

Devemos ter certeza de que o sistema e os pacotes do pi estão atualizados:

Digite o seguinte comando para perceber que:

sudo apt-get update && sudo apt-get upgrade

Etapa 14: coloque o projeto em seu Pi

Novo usuário

Eu criei um novo usuário 'longboard' para este projeto:

Precisamos ir à raiz para isso

sudo -i

Adduser longboard Nova senha:> l0ngb0 @ rd Nome completo:> longboard elétrico

Você pode deixar o resto vazio. A seguir, precisaremos dar ao usuário 'longboard' os direitos de sudo

adduser longboard sudo

Depois, vamos voltar para o nosso usuário de longboard

su longboard

Pacotes

Instalando alguns pacotes para o projeto. Pacotes para hospedar o site e banco de dados

python3 -m pip install --user --upgrade pip == 9.0.3

sudo apt install -y python3-mysqldb mysql-server uwsgi nginx uwsgi-plugin-python3 rabbitmq-server

Banco de dados de conectores, sites de pacotes e bibliotecas para detecção de GPS / tijdzone

python -m pip instalar mysql-conector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-conector-python passlib argon2 libgeos-dev pytz tzwhere

Configuração de banco de dados

Verifique o status do mysql

sudo systemctl status mysql

Ao inserir este comando, você pode ver que o MySQL escuta apenas em 127.0.0.1 -> não acessível a partir da rede, apenas local (no próprio pi).

ss -lt | grep mysql

Iniciar cliente como roo

sudo mysql

Crie usuários:

CRIAR USUÁRIO 'project-admin' @ 'localhost' IDENTIFICADO POR '@ min_l0ngb0 @ rd';

CRIAR USUÁRIO 'project-longboard' @ 'localhost' IDENTIFICADO POR 'l0ngb0 @ rd';

Criação de banco de dados e configuração de privilégios:

CRIAR BANCO DE DADOS longboard_db;

GRANT ALL PRIVILEGES ON longboard_db. * Para 'project-admin' @ 'localhost' COM GRANT OPTION; > GRANT SELECT, INSERT, UPDATE, DELETE ON longboard_db. * TO 'project-longboard' @ 'localhost'; > PRIVILÉGIOS DE FLUSH;

Execute o script sql para criar as tabelas, ele também criará um usuário padrão para o site:

(nome de usuário: longboard, senha: teste):

source / home / logboard / longboard / longboard_db.sql;

sair

Teste se a execução do arquivo funcionou:

echo 'mostrar tabelas;' | mysql longboard_db -t -u project-admin -p

Crie um diretório 'longboard' e clone meu projeto do github

longboard mkdir && cd longboard

git clone

Se você usou o mesmo nome de diretório e usuário que eu, não deve ajustar os arquivos no diretório conf.

Caso contrário, você deve ajustar os arquivos (> sudo nano conf / filename.extension)

Uma vez que os caminhos estejam corretos, você deve copiar os arquivos para o diretório do sistema. Existem serviços de árvore.

  • Um para o site de quiosque no host local.
  • Um para o módulo GPS com conexão de banco de dados
  • Um para o site disponível em sua rede

sudo cp conf / project1 - *. service / etc / systemd / system /

sudo systemctl daemon-reload> sudo systemctl start project1- *> sudo systemctl status project1- *

Quando tudo estiver bem, você deve habilitá-los para que iniciem automaticamente quando o pi for inicializado:

(Se a etapa anterior falhar, você deve verificar os caminhos nos arquivos de configuração)

sudo systemctl enable project1- *

Configurando o serviço nginx:

  • copie conf / nginx para 'sites-available' (e dê a ele um nome melhor)
  • remova o link para a configuração padrão
  • link para o novo config / nginx
  • reinicie para ativar as mudanças

sudo cp conf / nginx / etc / nginx / sites-available / project1

sudo rm / etc / nginx / sites-enabled / default> sudo ln -s / etc / nginx / sites-available / project1 / etc / nginx / sites-enabled / project1> sudo systemctl restart nginx.service

Verifique se o nginx sobreviveu:

sudo systemctl status nginx.service

Feito isso, você deve ter um servidor web no ip do seu pi disponível na sua rede e um site no host local para iniciar e parar a sessão offline.

Etapa 15: configurar o modo quiosque Raspberry Pi

Configurando o modo quiosque Raspberry Pi
Configurando o modo quiosque Raspberry Pi

Instalando pacotes

sudo apt-get install chromium-browser x11-xserver-utils organizado

Insira o arquivo de inicialização automática do usuário pi:

sudo nano / etc / xdg / lxsession / LXDE-pi / autostart

Você terá que comentar (colocar um # antes da linha) a regra existente:

# @ xscreensaver -no-splash

Em seguida, adicione essas linhas abaixo da linha do protetor de tela

@xset está desligado

@xset -dpms @xset s noblank @ chromium-browser --noerrdialogs --kiosk https://127.0.0.1:8080/ --overscroll-history-navigation = 0 --incognito --disable-pinch

Pressione ctrl-O e depois ctrl-X para escrever e sair do arquivo e agora digite:

sudo raspi-config

De lá, navegue até boot_behaviour e altere esta configuração para inicializar no modo desktop e fazer login como usuário pi por padrão.

NOTA: para sair do modo quiosque, você pode digitar

navegador de cromo sudo killall.

Isso fechará todas as instâncias do navegador chromium.

Etapa 16: Como funciona

Como funciona
Como funciona
Como funciona
Como funciona
Como funciona
Como funciona

Quando o pi for inicializado, você verá o endereço IP na tela do tft junto com uma lista de todos os usuários da placa.

Você pode iniciar uma sessão offline por meio desta tela. Você também pode controlar suas luzes. Se você digitar o endereço IP em seu navegador, você chegará na tela de login. Você pode fazer o login com o usuário padrão 'board' (senha: teste). ou você pode criar uma nova conta. Feito isso, você verá seu painel. Aqui você pode ver sua rota de viagem e distância total, tempo de viagem. Se você for para a guia longboard, você pode ver a localização atual do tabuleiro, você pode alternar suas luzes e você pode começar a gravar uma sessão. Depois de clicar em 'iniciar sessão', o PI determinará constantemente a localização e salvará no banco de dados até que você pressione 'parar sessão'. Se o GPS não tiver um ponto fixo, a sessão não pode ser iniciada, você receberá um alerta no topo da tela. Suas sessões serão exibidas em um mapa do google.

Concurso Make it Move
Concurso Make it Move
Concurso Make it Move
Concurso Make it Move

Vice-campeão no concurso Make it Move

Recomendado: