Índice:
- Etapa 1: Lista de peças
- Etapa 2: Circuito Eletrônico
- Etapa 3: Hardware: Como fazer uma placa frente e verso com o método Toner-Direct
- Etapa 4: Software e Flashing
- Etapa 5: o caso
- Etapa 6: Conclusões
Vídeo: PEQUENO relógio de pulso OLED impresso em 3D: 6 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Olá, você gostaria de construir seu próprio relógio de pulso?
Certamente é um desafio construir um pequeno relógio de pulso faça você mesmo como este. O benefício é o prazer de ter tornado sua própria ideia real e ter orgulho de atingir esse nível de habilidade …
A razão para eu fazer meu próprio relógio foi que meu smart-watch barato –disse ser à prova d'água– desistiu de seu pobre fantasma uma vez mergulhado em uma piscina …: (Então eu estava com raiva de comprar relógios (outro caro "solar "-o relógio também desistiu - sua bateria de pequeno porte não teve chance de ser substituída …).
Por outro lado, os projetos DIY-Watch existentes para o meu sabor eram em sua maioria muito pesados ou muito rústicos - então decidi construir meu próprio relógio, tendo a possibilidade de incluir minhas características preferidas!
Se quiser, você pode modificar o software, para realizar suas próprias idéias: Comentei todas as linhas (dependendo do Programa escolhido entre 700-800 linhas …) - Mas esteja avisado: Este projeto é realmente desafiador e certamente não para iniciantes ! O formato pequeno e leve (30 x 30 x 10 mm) requer manuseio preciso da caixa impressa em 3D e soldagem cuidadosa da placa de 2 lados: embora exista opção para pedido de PCB da placa (arquivos Eagle e Gerber incluído) aqui eu fiz isso com meu método especializado Toner-Direct - instrução, portanto, também incluída aqui).
Propriedades do relógio:
- O display OLED de 128x64px mostra um relógio digital e analógico, ativado com o botão direito, mostrando a data, hora, nível da bateria e temperatura do pulso. Alternativamente (se desejar), pode incluir um Alarme ou um Temporizador.
- Um calendário mensal completo é exibido pressionando o botão esquerdo por mais de 0,6 s, destacando o dia da semana real.
- Pressionar o botão esquerdo rapidamente seleciona um menu simples para escolher data, hora (e alarme ou cronômetro, se escolhido para incluir no programa), valores a serem definidos com o botão direito.
- Pressionar o botão direito duas vezes ativa um pequeno LED- "Torch" -luz, (bom para noites negras).
- Entre 22h00 e 7h00 o display OLED é automaticamente escurecido, (veja lá, com função especial de escurecimento incluída!) Para que não cegue à noite.
- A bateria de íons de lítio dura quase 2 anos, assumindo que o display + eletrônico consome cerca de 25mA com duração de 5s aceso, exibindo o relógio cerca de 10 vezes por dia.
Etapa 1: Lista de peças
Ferramentas necessárias:
Se você gosta de experimentar o hardware e o software, você precisa de:
• Prancha de pão 8,2 x 5,5 cm AliExpress
• Fonte de alimentação regulada de 3 V, como esta no esquema acima ou uma fonte semelhante, por exemplo, por exemplo. de um conector USB de 5 V (500 mA). ⇒ AMS1117-Adj ⇒ ebay
• Adaptador SMD SOIC-8 para DIP-8 pinos para o ebay RTC-Chip
• Programador ISP Atmel como o "USBTiny" - AliExpress
• Arduino Pro Mini AliExpress
• Breadboard Jumper-Wires Banggood
(Eletrônico-) Peças necessárias:
• ⇒ veja o arquivo Html-BOM para peças eletrônicas (Download).
• A placa de 2 faces para o próprio relógio: ⇒ consulte o passo "Como fazer uma placa de 2 faces com o método Toner-Direct".
• 1x - Bateria ø24 x 3mm - Bateria de lítio 3, 2V (célula-botão) - CR2430 - AliExpress
• Fita Kapton / Polymid # 25mm para isolamento entre placa / bateria e placa OLED
• 1x pulseira de 20mm - eu recomendo uma "pulseira Milanaise de aço inoxidável" - ebay
• Caixa impressa em 3D: ⇒ ver arquivo de download com instruções (Passo).
Uma placa em cada duas?
No caso de você desejar fazer uma placa de duas (uC, RTC, outras peças E a placa de direção OLED em uma), você pode usar meu circuito + placa-layout para o SSD1306-I2C-Display (consulte Download: OLED-Display_SSD1306-I2C-Circuit.zip). Use as 2 camadas inteiras e isole-as do visor e da bateria com a fita Kapton, de modo que o relógio possa ser cerca de 1,5 mm mais plano ainda.
Etapa 2: Circuito Eletrônico
Em primeiro lugar, precisamos saber o básico:
Este OLED-Clock é feito com um chip DS3231 RTC (Real Time Clock em um formato SMD SO-8 menor), que é dirigido pelo conhecido ATMega328P- (Arduino) -µController, e - em contraste com o soft normalmente usado -StandBy (do µController) - este relógio é fornecido com um desligamento elétrico completo após 5 segundos, além do RTC. Fiz esse desligamento com dois transistores mosfet, que funcionam como uma "chave seletora" em conjunto com o uC e o botão direito (D8).
Dois pequenos botões em ambos os lados da caixa (D6 e D8) atuam como entradas, que controlam o menu e as configurações do relógio.
O relógio tem um Display de Data + Hora, (Display de Alarme - se incluído no programa), uma Lanterna e um Calendário do mês + dia atual. Na 2ª. versão I incluí um Alarme, ele pode ser substituído também por um Timer.
O visor fica escurecido entre 23h00 e 7h00 (23h00 e 07h00) à noite.
Função dos 2 botões (à esquerda e à direita):
• Botão ALTERAR D8, (lado direito), pressionando:
1x = ativar uC / Display, exibindo hora + data, etc. por cerca de 5 segundos antes de desligar (= display escuro).
2x = acender a lanterna / tocha.
3x = retornar ao modo normal (= Modo-0).
• Botão SELECIONAR D6 (lado esquerdo):
Pressionar D6 uma vez seleciona MODE, rolando os Modos de 1-10, para alterar Data / Hora, etc (dow, dia, ano, hora, segundos, alarme … ligado / desligado).
O botão-D8 à direita aumenta os valores de MODO selecionados, definidos e salvos selecionando o próximo MODO (com o botão esquerdo-D6) …
Para alterar os segundos, acerte o relógio em +1 minuto e pressione o botão direito (D8) em 59 segundos para sincronizar com um horário externo.
A sincronização de hora / data também é possível baixando a hora do PC por arquivo batch: Conexão Serial para um Arduino externo - de lá para os quatro pinos I2C do Clock-OLED. (O uC do Relógio permanece desativado neste tempo, para isso incluí os 2 R's de 4,7kΩ, R7 e R8 - faça uma ponte entre eles se não forem usados!) …
• Calendário de mês / data:
Se o botão esquerdo (D6) for pressionado por mais de 0,6 segundos, um calendário mensal real será exibido. Sem auto-desativação! Se um dos dois botões for pressionado mais uma vez, o calendário será deixado.
• ALARME: (se incluído no programa de software + fornecido com um tweeter de hardware ou micro-piezo-beeper)
Pode ser configurado para emitir um bipe na hora combinada todos os dias no mesmo horário (24h, 60m). Um asterisco no canto superior direito da tela indica se o alarme está "Ligado" ou não. Uma alternativa útil para o Programa de Alarme talvez seja um Timer … (para fazer).
• Bateria:
A bateria é uma bateria de lítio CR2430 (ø24x3mm) com cerca de 300mA de potência. Um símbolo de bateria indica o nível (analógico) da bateria (3, 25 V = cheia, 2, 75 V = vazia). O relógio está funcionando com tensões de +5, 0 V até +2, 0 V (padrão: 3, 0 V). Apenas o Flash-LED funciona a partir de no máx. +4, 0V até +2, 7V. Aviso: Não o ative com 5V! - isso é demais para o LED - expira em poucos segundos, embora seja fornecido com uma resistência de 33Ω. A tensão máxima absoluta para o processador e o RTC é de 5, 25 V (+ 5 V USB para programar o uC diretamente por ISP, sem bootloader!).
• Temperatura:
O RTC possui um sensor de temperatura embutido (para corrigir o desvio de temperatura do cristal embutido), para que possamos usá-lo para exibir a temperatura (do pulso).
• Flash-LED:
Se o botão CHANGE (D8) for pressionado duas vezes, uma luz relativamente brilhante está "brilhando no escuro". Att.: Sem auto-desativação! Apenas pressionando este botão direito mais uma vez desativa este LED, mostrando o display normal por cerca de 5 segundos.
• Pino de reinicialização suave: Um pino de reinicialização (D7) redefine todos os dados armazenados se aterrado (caixa aberta: lado inferior direito). Usado no tempo de programação, em resumo para um "soft-reset" de todos os valores de entrada …
O circuito:
Se olharmos o esquema, à esquerda está o controlador µ "Arduino" nu (ATMega328-P), ativado com o botão direito (D8) na entrada D12: o botão-D8 puxa o portão de P-Mosfet para baixo através da resistência R5 e o diodo D1, para que o P-Mosfet "ligue" e conecte o VBAT com o VCC: µController + Display fica atualizado!
Para ver o "Princípio de alternância dos dois Mosfets, carreguei este" Flip-Flop com dois Mosfets "(arquivos Eagle).
Após 5s, o µC desliga-se automaticamente através do Output-D5, que desativa ambos os Mosfets, puxando o Portão do N-Mosfet para baixo, então R5 (e o Portão do P-Mosfet) está "alto" e o P-Mosfet corta o corrente do µC e do display OLED. A descida do VCC mantém o Gate de N-Mosfet abaixo de R3 e R6 (abaixo de sua tensão de limiar de Gate), então o circuito permanece desligado.
No lado superior esquerdo, vemos a tensão VBAT "ampliada" através de um LED branco simples com cerca de 2,5 V, reduzido em 100k de VBAT (cerca de 3, 2 V) para cerca de 1, 1 V (máx.), Que é usado como Entrada analógica interna para medir a tensão real da bateria.
µController, RTC e display OLED estão se comunicando por meio de I²C, uma comunicação simples e eficaz de 2 fios, implementada por biblioteca.
Para soldar as peças SMD, é útil usar uma pequena pinça com pontas pontiagudas, então agarrar as pequenas peças SMD seria mais fácil de manusear (posicionamento) e soldar com uma ponta de solda fina, soldando primeiro um lado do SMD -Parte, pré-aquecer o ponto de solda a cerca de 330 ° C antes de adicionar fio de estanho fino e de baixo ponto de fusão (ø 0,5 mm) ao ponto de solda.
Baixe o layout Circuito + Placa:
Etapa 3: Hardware: Como fazer uma placa frente e verso com o método Toner-Direct
Se você quiser comprar a placa de 2 lados, aqui são fornecidos os arquivos Gerber Eagle + (necessários) (download).
Se você gosta de fazer a placa sozinho, mostro um método preciso para fazer uma placa de 2 faces por "TonerDirect".
1. Imprima o arquivo "OLED-Clock-2-nl_TonerDirect.pdf" em "Papel de transferência de toner", 2. Recorte as 2 tiras do papel, uma tira para cada lado da placa, 3. com agulhas de ø 0,5mm picando precisamente os 4 cantos do tabuleiro (use uma lupa com luz forte - é muito importante picar as agulhas com a melhor precisão possível no meio das 4 vias de canto!).
4. Imprima (em um papel em branco normal) o arquivo "OLED-Clock-2-nl_Frame.pdf" e cole o resultado em uma placa de circuito de cobre de dois lados (0,5-0,8 mm de espessura). Serrar a placa com cerca de 2-3 mm a mais de tolerância (aqui cerca de 35 x 35 mm) e, em seguida, fazer os 4 orifícios precisamente nos cantos com uma broca de 0,6 mm. Após este passo retire o papel com acetona e esmerilhe os 2 lados de cobre do cartão com lixa fina (min. 400). Após esta etapa, não toque mais no tabuleiro com os dedos vazios! Permitido é agarrá-lo lateralmente (com os dedos limpos).
5. Marque a direção congruente do Toner-Tranfer-Paper nos 2 lados não impressos!
6. Espete as agulhas no papel, depois no quadro e, por fim, pique-as no papel oposto.
7. Depois de obter as três "camadas" exatamente congruentes, substitua as agulhas por 4 pedaços de fio de cobre de 0,5 mm, dobrados em uma das extremidades 90 °, para que não passem. Após esta etapa, dobre os fios do outro lado 90 ° e corte as pontas curtas.
8. Assim preparada, esta peça pode passar 3 vezes por um toner-laminador (modificado), aquecido até 200 °!
9. Corte os pedaços pequenos de arame de 0,5 mm e remova os restos de arame. Em seguida, retire os dois papéis e voilá: o toner está grudando firmemente no cobre.
10. Controle de linhas limpas: Se uma linha estiver quebrada, podemos consertá-la com uma caneta permanente resistente à água. Na maioria dos casos, apenas superfícies maiores precisam fechar alguns orifícios pequenos. Caso contrário (se o resultado for insatisfatório), remova o toner com papel de cozinha e acetona e repita as etapas 1-9.
11. Gravura limpa: Eu gravo minhas placas de cobre DIY com uma solução de persulfato de sódio (uma ou duas colheres de chá) com um nível de cerca de 5 mm de água em um Pyrex-Dish clássico (1-1, 5L), esta solução aquecida até cerca de 80 ° C (eu sei, essa temperatura relativamente alta destrói o persulfato, mas ele grava muito mais rápido do que com temeraturas mais baixas e cria bordas nítidas e limpas em poucos minutos). Deixei o persulfato remanescente umedecer depois de secar completamente e risquei os cristais, recolhendo-os em um frasco velho para reciclagem!
11. Controle as linhas e superfícies de cobre com uma lupa.
12. Remova as bordas salientes com uma esmerilhadeira vertical (como no meu primeiro instrutível) e controle as dimensões com um paquímetro: os 2 lados do botão devem ser paralelos, tendo 27,4 mm de distância, mas cuidado para não esmerilhar os 2 contatos-botão!
Etapa 4: Software e Flashing
Programando a placa:
O programa é escrito em C ++, portanto podemos modificá-lo com um simples editor ASCII, e se necessário, leia as explicações no final de cada linha…
Importante: Não podemos usar o Serial-Flashing do Arduino para programar o µC, porque o bootloader precisa de muito tempo entre o "Start" (pressionando o Botão D8) e o "Display-On". Portanto, temos que atualizá-lo sem um Bootloader (usado normalmente em todas as placas Arduino). Portanto, programamos nossa placa por (Atmel) ISP-Connector + Programmer. O ISP-Connector feito aqui (onboard) é feito com 6 miniconectores de soquete separados de uma fileira e soldados dentro do lado direito da placa, então conectado com uma (pequena!) Barra de 6 pinos (2,54mm- grade), como na última foto da Etapa anterior.
Você não precisa apenas do Arduino-GUI, mas de mais algumas bibliotecas (para fazer o download) para compilar o programa:
- A biblioteca Wire (contida no programa Arduino) - para comunicação por I²C betw. µC, RTC e display OLED
- Biblioteca EEPROM (também contida no Programa Arduino) - para armazenar diversos valores no µController
- "Adafruit_GFX" + "Adafruit_SSD1306" - ambas as bibliotecas para orientar o display OLED
- EnableInterrupt - para trabalhar com interrupções de portas / pinos do Arduino (⇒ Entradas de botão)
- Chip SD3231-RTC: não preciso de biblioteca, escrevi as funções de várias bibliotecas encontradas na Internet e estou mais simples de usar. Eles estão incluídos no final do programa principal ("OLED-Clock-2-nl.ino").
Atenção: A biblioteca Adafruit não tem (até agora) um tratamento eficaz para escurecer o chip OLED, então copiei uma string da Internet e colei no final da biblioteca "Adafruit_SSD1306", com a qual se pode escurecer o display, um pouco mais útil… (⇒ veja o download do Add-on "Como ajustar o brilho no display OLED.zip", aqui no final).
Trabalhando com 3, 2V - então usando os 8Mhz internos (sem 16Mhz-Crystal):
O µC aqui é rápido o suficiente para funcionar sem um cristal de 16 MHz, então (com 3,2 V da bateria) podemos usar os 8 MHz pré-programados internos (uma parte a menos para soldar:-).
Depois de carregado e compilado o programa fornecido "OLED-Clock-2-nl.ino" no Arduino-GUI, (download), copie o resultado.hex para a pasta avrdude.
(o arquivo.hex compilado é encontrado na pasta temporária do PC, em uma subpasta como:
"C: / Tmp / arduino_build_646711 / xyz.ino" - aí você pode encontrar o arquivo hex-compilado desejado, neste caso nosso "OLED-Clock-2-nl.ino.hex".
O arquivo hex agora pode ser atualizado (aqui "manualmente" por avrdude em uma linha de comando) através de um Conector ISP, mas você precisa de um Programador como o USBTiny ou um AVRISP2 com um Conector ISP de 6 pinos (meu Conector ISP é Faça você mesmo com um pequeno conector de 6 pinos, como mostrado na minha última foto, para que você possa reprogramar a placa a qualquer momento, se necessário).
Agora conecte o programador de 6 pinos à placa (suponho que tenho experiência com placas Arduino) …
Conectado, em uma janela de comando (no Windows, mude para a pasta avrdude e digite cmd) - cole esta linha:
avrdude.exe -C avrdude.conf -v -V -p m328p -c usbtiny -e -D -U flash: w: OLED-Clock-2-nl.ino.ino.hex: i
Depois que o flash do µController terminar, os "fusíveis" apropriados (do µController) devem ser configurados:
avrdude -p atmega328p -c usbtiny -U lfuse: w: 0xFF: m -U hfuse: w: 0xD7: m -U efuse: w: 0xFF: m -U lock: w: 0x3F: m
Se desejar modificar uma dessas configurações, você pode encontrar mais informações com esta calculadora de fusíveis online.
Etapa 5: o caso
Não só fazer a placa eletrônica é um desafio, mas também uma caixa pequena e leve para esta placa!
Aqui para fazer o download da minha mala de propósito, com um adaptador de bateria CR2032 pssible, para inserir uma bateria usada mais comum. A placa eletrônica e a bateria devem ser completamente isoladas uma da outra com uma fita Kapton-Polimid ou uma alternativa forte. Não use fita adesiva simples, é muito fraca para isolar fortemente e pode causar curto-circuito na bateria!
Eu experimentei muitos layouts (para PLA impresso em 3D) e concluí com uma espessura de parede de cerca de 1,3 mm. Desta forma, as forças provenientes da pulseira são retidas de forma eficiente por ambos os lados da caixa em conjunto com a tampa de encaixe. Os outros lados podem ser mais finos, cerca de 1,0 mm …
Portanto, modificar a altura da caixa (no caso de modificar a prancha …?) Não será um grande problema.
Além disso, se você tem um Alarme ou um Timer dentro, você precisa de outra Caixa, então eu fiz uma proposta de como inserir um pequeno piezo-tweeter (ou por exemplo, este micro-alto-falante: CUI-15062S) … (Veja Caso-2).
Após a impressão da caixa (com uma altura de camada recomendada de 0,1 mm e cerca de 50% de preenchimento com "sobreposição de parede"), você tem que rebarbar as cordas laterais de superação, lixando as bordas o suficiente, mas não muito … A um pouco mais desafiador é arquivar os 4 pequenos encaixes da tampa em um ângulo certo de ~ 100-120 °, de modo que eles se encaixem na caixa com força suficiente, mas sem dilatá-la ou quebrá-la - nem deixando a tampa muito pequena para ficar fixo …
O orifício quadrado para o OLED também deve ser lixado cuidadosamente, combinando exatamente com o contorno do vidro OLED, sem quebrá-lo durante a sondagem para inserir Placa + Display OLED (agora em conjunto). Portanto, tenha cuidado ao arquivar e tentar repetidamente para ver se todas as peças se encaixam.
Os gases resultantes são melhor removidos com uma faca afiada.
Agora você pode inserir a pulseira com um pedaço de fio de latão (ø1mm, comprimento: 28,5mm). Para tal, os 2 orifícios dos suportes da caixa têm de ser furados de forma a que o fio passe, mas depois se fixe firmemente nos suportes.
Antes de armar o case com eletrônico e tiras - é possível esmaltar com tinta (recomendo thinner-spray automotivo - seca mais rápido, colando menos poeira nas superfícies!). Recomendo também tratá-lo primeiro com um spray de aterramento (mais fino), que depois pode ser lixado até uma superfície lisa e fina, sem linhas impressas e falhas. Eu mesmo prefiro um acabamento dourado ou prateado, ou também um acabamento de madeira seria bom - você escolhe …
Etapa 6: Conclusões
Considerações sobre a bateria:
A bateria de íons de lítio CR2432 tem cerca de 300mAh de capacidade, portanto, ela se mantém com uma duração de aproximadamente 2 anos, se exibindo o relógio cerca de 10 vezes (cada á 5 segundos) por dia. Portanto, você pode trocá-la por uma bateria de íons de lítio CR2032 mais comum (mas menor), que suporta cerca de 1, 4 anos com sua bateria de 210 mA.
Também procurei uma célula-botão de lítio recarregável como a (comum) CR2430 e encontrei: "LIR-2430". Esta bateria tem apenas cerca de 50mA de capacidade, mas é recarregável, por exemplo. através de uma transferência de energia sem fio… Para isso fiz uma sonda e você pode ver o resultado no esquema + layout incluído. A transferência de energia em si faz o trabalho muito bem. Para gravar uma bobina plana com cerca de 30 voltas sobre uma tampa de placa de epóxi plana, permanece um ToDo … Para carregar a bateria, propus um circuito de carga simples com um LED branco e 2 Schottky-Diodos para limitar a tensão final de carregamento para este recarregáveis até um máximo de cerca de 3,6 V …
Finalmente - MUITO importante:
!!! NUNCA CARREGUE UMA BATERIA DE LÍION NÃO RECARREGÁVEL !!! - pode explodir e pegar fogo!
Curiosamente experimentei uma célula-botão de íons de lítio CR2430 (não recarregável), -como precaução- em um frasco fechado … Após cerca de uma hora, carregando com 3,3 V constante, notei uma pequena deformação convexa da caixa … e embora a tensão desta bateria tenha aumentado de 2,8 para 3,2 V, a capacidade no final foi enormemente reduzida! - então uma recarga não faz sentido: este Button-Cells é realmente NÃO recarregável.
Restando para fazer:
• uma função de temporizador (baseada em software) + (hardware + caixa) -Tweeter ou vibrador-motor
• um circuito de recarga sem fio
• Acabamento em metal ou madeira brilhante.
Recomendado:
Relógio Arduino de dígito único impresso DIY 3D: 4 etapas
Relógio Arduino de dígito único impresso em 3D DIY: relógio Arduino Nano totalmente funcional de um dígito grande
Relógio infinito impresso em 3D: 3 etapas (com imagens)
Relógio infinito impresso em 3D: a ideia com este relógio é torná-lo na forma de um símbolo de infinito, em que um lado da forma exibirá o ponteiro das horas e o outro exibirá os minutos. Se você tiver alguma sugestão ou pergunta para o desenho ou o bacalhau
Relógio Vortex: um relógio de pulso com espelho infinito: 10 etapas (com fotos)
Relógio Vortex: um relógio de pulso com espelho infinito: O objetivo deste projeto era criar uma versão vestível de um relógio com espelho infinito. Ele usa seus LEDs RGB para indicar o tempo, atribuindo horas, minutos e segundos às luzes vermelha, verde e azul, respectivamente, e sobrepondo esses tons t
Relógio servo cinético impresso em 3D: 3 etapas
Relógio servo cinético impresso em 3D: relógio incomum impresso em 3D controlado por dois servo motores
Relógio com mostrador LED piscante impresso em 3D: 7 etapas (com imagens)
Relógio mostrador de LED piscante impresso em 3D: Bem-vindo ao Yantrah's instrutível! Nós da Yantrah nos concentramos em educação prática, ensinamos design CAD 3D, programação, STEAM e robótica. Este é um relógio simples impresso em 3D baseado em Arduino com LEDs piscantes para mostrar as horas , minutos e segundos se passaram