Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Fiz um ventilador que está conectado à internet para usar com Zwift, um sistema de treinamento / jogo de corrida de bicicleta virtual. Quando você vai mais rápido no Zwift, o ventilador gira mais rápido para simular as condições externas de pilotagem.;) Eu me diverti muito construindo isso, espero que você goste de construir você mesmo.
! use estas instruções por sua própria conta e risco, você está trabalhando com correntes mortais, então tome cuidado
O Zwiftfan foi coroado como 'Hack of the Month' no programa GCN e apresentado no blog Zwift Insider.
Etapa 1: Peças e Ferramentas
Primeiro você precisa de um fã. Eu tinha um ventilador com 3 velocidades diferentes, então foi o que usei. Se você tiver um com 2 ou 4 velocidades, pode simplesmente ajustar o código que controla o ventilador. Mas tem que ser um leque com botões. Eu encontrei esta Amazon. E como sou holandês, aqui está um link para um fã no bol.com que funcionaria. Vai custar cerca de US $ 30, -
Então precisamos de um dispositivo para conectar o ventilador à internet e algo para controlá-lo. Usei um fóton da partícula. Facilitam a programação de dispositivos IoT. O Photon custa US $ 19, - Também precisamos de um escudo de relé para controlar o ventilador. Usei um modelo mais antigo, por isso parece um pouco diferente, mas o novo modelo deve funcionar bem. Custo $ 30, - Você também precisa de um adaptador DC para alimentar a blindagem do relé, isso é mais $ 8, -
Você também precisa de um computador para executar alguns scripts enquanto usa o ventilador. Como acabei de fazer o Zwift no meu macbook, foi isso que usei para construir isso, portanto, essas instruções são para uso com um Mac. Mas se você é um bom amigo de sua máquina Windows, acho que seria possível fazê-la funcionar em tal dispositivo também. E se você for realmente bacana, provavelmente poderia fazer o script rodar em um servidor (ou na nuvem), se você fizer isso, por favor, deixe-me agora.
Finalmente, precisamos de algumas amarras, pedaços curtos de arame para altas correntes, chave (s) de fenda e um par de cortadores de arame.
Etapa 2: hackear o ventilador
Abra o ventilador (primeiro remova o plugue;) e certifique-se de anotar as cores dos fios associados às diferentes velocidades (1, 2 e 3) antes de iniciar a próxima etapa. Observe que também há um fio conectado à caixa do botão não conectado a um dos botões. Este é o fio que alimenta a energia (comum). Remova os botões da caixa e desconecte todos os fios.
Observe que cada relé tem 3 conexões para usar. NO, NC e COMM. NO significa Normalmente Aberto, NC significa Normalmente Fechado e COM para Comum. Queremos conectar a ventoinha ao NÃO para que nada aconteça até que o desejemos. Conecte o fio da velocidade 1 ao NÃO no relé 1, o fio da velocidade 2 ao relé 2 e o fio 3 do relé 3.
Em seguida, conecte o fio comum ao COMM no relé 1 e faça uma conexão do COMM no relé 1 ao COMM no relé 2 com um pedaço de fio curto (adequado para 220v) e também do COMM no relé 2 para COMM no relé 3.
Eu conectei a blindagem do relé à base do ventilador com algumas braçadeiras para fins de demonstração. O melhor seria construir uma moradia, devido aos contactos expostos com 220v neles! Tenha cuidado, especialmente com crianças por perto!
Etapa 3: coloque o código no fóton
Monte o Photon no Relayshield e alimente o Relayshield com um adaptador (fornecendo entre 7v e 20v). As especificações podem ser encontradas aqui.
Depois de ligar o Relayshield, o Photon ganhará vida e você poderá conectá-lo à sua rede wi-fi. Com o dispositivo Photon, vem um conjunto completo de instruções sobre como fazer isso.
Em seguida, o Photon precisa executar algum código para ser capaz de controlar a blindagem do relé. Você pode baixar a versão mais recente deste arquivo e os outros arquivos necessários para este projeto no Github.
Pegue o código de photon_code_zwiftfan.ino e carregue-o em seu Photon. Este código possibilita o controle dos relés via internet. Não é necessário editar este código.
Se necessário, há uma ótima comunidade para ajudá-lo se você ficar sem saber o que fazer!
ATUALIZAÇÃO: Sebastian Linz fez uma versão melhor do código controlando o ventilador, você pode encontrar sua versão e manual aqui:
Etapa 4: instale bibliotecas em seu Mac
Vamos usar algumas bibliotecas para obter os dados do Zwift, analisá-los e enviar comandos ao Photon para acionar os relés corretos. Precisamos instalar essas bibliotecas em nosso Mac.
- Abra um Terminal (cmd + barra de espaço e digite Terminal é uma maneira de fazer isso)
- Copie e cole cada uma das próximas linhas no terminal e pressione Enter (uma por uma)
npm install --save zwift-mobile-api
npm install node
pedido de instalação npm
Você pode ver alguns avisos (WARN) durante a instalação, mas isso não deve ser problema. Contanto que você não veja erros (ERR!). Agora você instalou as versões mais recentes das bibliotecas necessárias no seu mac.
Créditos: este projeto não seria possível sem a excelente biblioteca de API de código aberto (!) Zwift da Ogadai
Etapa 5: edite o arquivo Javascript
Adicionando suas credenciais
Agora vem uma parte complicada. Precisamos ajustar o script que obtém os dados do Zwift e ativa o Photon para garantir que ele funcione com suas credenciais, tanto para o Zwift quanto para o Photon.
- tenha suas credenciais Zwift (nome de usuário e senha) em mãos
- encontre o seu ID Zwift usando esta ferramenta online feita por Christian Wiedmann ou alternatifly através deste método.
- encontre seu ID de dispositivo Photon e accessToken
Se você tem tudo isso, baixe o arquivo javascript "zwiftfan.js" e abra-o em um editor de texto como o cotEditor gratuito. Na imagem anexada você pode ver quais linhas editar e quais credenciais inserir.
Ajustando as configurações
Se quiser que seu ventilador reaja a diferentes métricas, como frequência cardíaca ou potência, você pode alterar o modo de 1 (= velocidade) para 2 (= potência) ou 3 (= frequência cardíaca). Você também pode alterar os valores em que o ventilador muda da velocidade 1 para 2 ou 3 para os diferentes modos.
Salvando o script
Depois de inserir todas as credenciais, salve o documento com o mesmo nome de arquivo em uma pasta em nosso mac que você possa lembrar facilmente, como "zwiftfan"
agradecimentos especiais a roekoe pela ajuda para escrever e depurar o código javascript
Etapa 6: um script de lançamento
Você pode ativar o programa navegando em seu Terminal até a pasta onde o salvou e, em seguida, digite
node zwiftfan.js
e pressione Enter.
Mas isso não é muito conveniente se você estiver de bicicleta e se esquecer de lançar o programa. E também, às vezes o programa travará (não saiba por que, se alguém travar, por favor me avise) e o script abaixo fará com que o programa reinicie automaticamente. Então eu fiz um script de shell que você pode clicar duas vezes.
Navegue até a pasta onde você salvou todos os arquivos e clique com o botão direito em "start_zwiftfan.sh" em seu Finder para obter as opções. Selecione 'Abrir com' e 'outro'.
Na parte inferior da próxima tela, marque a caixa com 'Sempre aberto com este programa' e escolha 'Todos os programas' no menu suspenso logo acima dessa caixa de seleção. Em seguida, selecione 'Terminal' e clique no botão 'Abrir'.
Mais uma coisa complicada;
- Abra o seu Terminal (CMD + barra de espaço e digite Terminal + ENTER)
- modelo;
cd [nome do seu diretório]
pressione enter e digite
chmod 700 launch_zwiftfan.sh
e entre novamente.
Agora você criou um arquivo e pode clicar duas vezes para iniciar nosso programa javascript com o Terminal. Ou inicie com um clique se você colocá-lo em seu dock. Se o Zwift estiver em execução, o Terminal imprimirá a velocidade atual em Zwift a cada segundo. Se o Zwift não estiver ativo, o script retornará erros.
ps. desculpe, as imagens estão em holandês, mas acho que você vai conseguir.;) Caso contrário, você só precisa aprender holandês, mas não se preocupe, holandês é fácil! Basta dizer "stroopwafels" e sorrir.
Etapa 7: algumas palavras finais
Espero que tudo tenha funcionado no final. Se você já usou este tutorial eu adoraria ouvir de você e talvez uma foto? E se você tiver alguma melhoria no projeto ou nestas instruções, sinta-se à vontade para me enviar um e-mail para [email protected]
Feliz Zwifting!