Índice:
- Etapa 1: montagem das peças
- Etapa 2: Circuito
- Etapa 3: Calibração
- Etapa 4: montagem e acabamento
- Etapa 5: Arduino Sketch - Calibração
- Etapa 6: Arduino Sketch - Relógio
Vídeo: Relógio Nixie Bargraph: 6 etapas (com imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:40
Editar 9/11 / 17Com a ajuda do Kickstarter eu lancei um kit para este kit de relógio! Inclui uma placa de driver e 2 tubos Nixie IN-9. Tudo que você precisa adicionar é seu próprio Arduino / Raspberry Pi / outro. O kit pode ser encontrado clicando neste link!
Eu vi muitos relógios Nixie online e achei que eles pareciam ótimos, mas eu não queria gastar mais de US $ 100 em um relógio que nem inclui os tubos! Então, com um pouco de conhecimento em eletrônica, eu procurei nos vários tubos nixie e circuitos. Eu queria fazer algo um pouco diferente da grande variedade de relógios nixie de aparência bastante semelhante. No final, optei por usar tubos de gráfico de barras Nixie IN-9. São tubos longos e finos e a altura do plasma brilhante depende da corrente que passa pelos tubos. O tubo à esquerda está em incrementos de horas e o tubo à direita está em minutos. Eles têm apenas duas derivações e, portanto, tornam a construção de um circuito mais simples. Nesse projeto, há um tubo de horas e minutos, com as alturas do plasma em cada tubo representando o tempo atual. A hora é mantida usando um microcontrolador Adafruit Trinket e um relógio de tempo real (RTC).
Etapa 1: montagem das peças
Existem duas seções, primeiro a eletrônica e, em segundo lugar, a montagem e acabamento. Os componentes eletrônicos necessários são: Adafruit Trinket 5V - $ 7,95 (www.adafruit.com/products/1501) Adafruit RTC - $ 9 (www.adafruit.com/products/264) 2x Nixie IN-9 bargraph ~ $ 3 por tubo no eBay 1x Fonte de alimentação Nixie 140v ~ $ 12 no eBay 4x 47 uF capacitores de eletrólito 4x resistores de 3,9 kOhm 2x potenciômetro de 1 kOhm 2x Transistor MJE340 NPN alta tensão ~ $ 1 cada 1x LM7805 5v regulador ~ $ 1 1x soquete de 2,1 mm ~ $ 1 1x caixa de projeto com pcb ~ $ 5 1x Fonte de alimentação 12v DC (encontrei uma velha de algum gadget esquecido há muito tempo) Solda, fio de conexão, etc. Montagem: Decidi montar a eletrônica em uma pequena caixa plástica preta de projeto, em seguida, montar os tubos em um movimento de relógio antigo. Para marcar a hora e os minutos, usei fio de cobre enrolado nos tubos. Peças de montagem: Movimento de relógio antigo - $ 10 eBay de fio de cobre - $ 3 eBay de pistola de cola quente
Etapa 2: Circuito
O primeiro passo é construir a fonte de alimentação do Nixie. Ele veio como um pequeno kit do eBay, incluindo um pequeno PCB e só precisava que os componentes fossem soldados à placa. Esta fonte particular é variável entre 110-180v, controlável com um pequeno pote na placa. Usando uma pequena chave de fenda, ajuste a saída para ~ 140v. Antes de ir para todo o caminho, eu queria testar minhas válvulas nixie, para fazer isso eu construí um circuito de teste simples usando uma válvula, transistor e um potenciômetro de 10k que eu tinha ao redor. Como pode ser visto na primeira figura, o fornecimento de 140 V é conectado ao ânodo do tubo (perna direita). O cátodo (perna esquerda) é então conectado à perna do coletor do transistor MJE340. Uma fonte de 5 V é conectada a um potenciômetro de 10k dividido para aterrar na base do transistor. Finalmente, o emissor do transistor é conectado ao aterramento por meio de um resistor limitador de corrente de 300 ohms. Se você não está familiarizado com transistores e eletrônicos, isso realmente não importa, apenas conecte-o e altere a altura do plasma com o botão do potenciômetro! Uma vez que isso esteja funcionando, podemos começar a fazer nosso relógio. O circuito de relógio completo pode ser visto no segundo diagrama de circuito. Depois de alguma pesquisa, encontrei um tutorial perfeito no site de aprendizado Adafruit fazendo quase exatamente o que eu queria fazer. O tutorial pode ser encontrado aqui: https://learn.adafruit.com/trinket-powered-analog-m… Este tutorial usa um controlador Trinket e um RTC para controlar dois amperímetros analógicos. Usando modulação por largura de pulso (PWM) para controlar a deflexão da agulha. A bobina do amperímetro calcula a média do PWM em um sinal CC efetivo. No entanto, se usarmos o PWM diretamente para acionar os tubos, a modulação de alta frequência significa que a barra de plasma não ficará "presa" à base do tubo e você terá uma barra flutuante. Para evitar isso, calculei a média do PWM usando um filtro passa-baixa com uma constante de tempo longa para obter um sinal quase CC. Isso tem uma frequência de corte de 0,8 Hz, isso é bom, pois estamos atualizando a hora do relógio apenas a cada 5 segundos. Além disso, como os gráficos de barras têm uma vida útil finita e podem precisar ser substituídos, e nem todos os tubos são exatamente iguais, incluí um pote de 1k após o tubo. Isso permite ajustes para ajustar a altura do plasma para os dois tubos. Para conectar o trinket ao relógio de tempo real (RCT), conecte o pino 0 do Trinket ao RTC-SDA, o pino 2 do Trinket ao RTC-SCL e o Trinket-5v ao RTC-5v e o Trinket GND ao aterramento do RTC. Para esta parte, pode ser útil visualizar as instruções do relógio Adafruit, https://learn.adafruit.com/trinket-powered-analog-…. Uma vez que o Trinket e o RTC estão conectados corretamente, conecte os tubos nixie, transistores, filtros etc. em uma placa de ensaio seguindo cuidadosamente o diagrama do circuito.
Para fazer o RTC e o Trinket falarem, primeiro você precisa baixar as bibliotecas corretas do Adafruit Github. Você precisa do TinyWireM.h e do TInyRTClib.h. Primeiro queremos calibrar os tubos, carregue o esboço de calibração no final deste instrutível. Se nenhum dos esboços no final funcionar, tente o esboço do relógio Adafruit. Eu ajustei o esboço do relógio Adafruit para funcionar de forma mais eficaz com os tubos nixie, mas o esboço do Adafruit funcionará bem.
Etapa 3: Calibração
Depois de fazer o upload do esboço de calibração, as graduações precisam ser marcadas.
Existem três modos de calibração, o primeiro define os dois tubos nixie para a saída máxima. Use para ajustar o potenciômetro de forma que a altura do plasma em ambos os tubos seja a mesma e ligeiramente abaixo da altura máxima. Isso garante que a resposta seja linear em todo o intervalo de clock.
A segunda configuração calibra o tubo dos minutos. Ele muda entre 0, 15, 30, 45 e 60 minutos a cada 5 segundos.
A última configuração repete isso para cada incremento de hora. Ao contrário do relógio Adafruit, o indicador de hora se move em incrementos fixos uma vez a cada hora. Era difícil obter uma resposta linear para cada hora ao usar um medidor analógico.
Depois de ajustar o potenciômetro, carregue o esboço para calibrar por minutos. Pegue o fio de cobre fino e corte um pedaço curto. Enrole isso em volta do tubo e torça as duas pontas. Deslize para a posição correta e usando uma pistola de cola quente coloque uma pequena gota de cola para mantê-la no lugar certo. Repita isso para cada incremento de minuto e hora.
Esqueci de tirar alguma foto desse processo, mas dá para ver nas fotos como o fio está preso. Embora eu tenha usado muito menos cola apenas para prender o fio.
Etapa 4: montagem e acabamento
Uma vez que os tubos estão todos calibrados e funcionando, agora é a hora de fazer o circuito permanentemente e montar em alguma forma de base. Eu escolhi um movimento de relógio antigo porque gostei da mistura de tecnologia antiga, anos 60 e moderna. Ao transferir da placa de ensaio para a placa de strip, tenha muito cuidado e leve o seu tempo garantindo que todas as conexões sejam feitas. A caixa que comprei era um pouco pequena, mas com um pouco de colocação cuidadosa e um pouco de força, consegui fazer tudo para caber. Eu fiz um furo na lateral para a fonte de alimentação e outro para os cabos nixie. Cobri os fios nixie com termorretrátil para evitar qualquer curto. Quando os componentes eletrônicos forem montados na caixa, cole-os na parte de trás do movimento do relógio. Para montar os tubos usei cola quente e colei as pontas dos fios retorcidos ao metal, tomando cuidado para que fiquem retos. Provavelmente usei muita cola, mas não é muito perceptível. Pode ser algo que possa ser melhorado no futuro. Quando tudo estiver montado, carregue o esboço do relógio Nixie no final deste instrutível e admire o seu adorável novo relógio!
Etapa 5: Arduino Sketch - Calibração
# define HOUR_PIN 1 // Exibição das horas via PWM no Trinket GPIO # 1
#define MINUTE_PIN 4 // Exibição de minutos via PWM no Trinket GPIO # 4 (via chamadas do temporizador 1)
horas int = 57; minutos int = 57; // definir pwm mínimo
void setup () {pinMode (HOUR_PIN, OUTPUT); pinMode (MINUTE_PIN, OUTPUT); PWM4_init (); // configurar saídas PWM
}
void loop () {// Use isso para ajustar os potes nixie para garantir que a altura máxima do tubo corresponda a analogWrite (HOUR_PIN, 255); analogWrite4 (255); // Use para calibrar os incrementos de minuto
/*
analogWrite4 (57); // minuto 0 atraso (5000); analogWrite4 (107); // atraso de 15 minutos (5000); analogWrite4 (156); // atraso de 30 minutos (5000); analogWrite4 (206); // atraso de 45 minutos (5000); analogWrite4 (255); // atraso de 60 minutos (5000);
*/
// Use para calibrar os incrementos de hora / *
analogWrite (HOUR_PIN, 57); // 57 é a saída mínima e corresponde ao atraso de 1 am / pm (4000); // atrasa 4 segundos analogWrite (HOUR_PIN, 75); // 75 é a saída que corresponde a 2 am/pm delay (4000); analogWrite (HOUR_PIN, 93); // 93 é a saída que corresponde a 3 am / pm delay (4000); analogWrite (HOUR_PIN, 111); // 111 é a saída que corresponde a 4 am/pm delay (4000); analogWrite (HOUR_PIN, 129); // 129 é a saída que corresponde a 5 am / pm delay (4000); analogWrite (HOUR_PIN, 147); // 147 é a saída que corresponde a 6 am/pm delay (4000); analogWrite (HOUR_PIN, 165); // 165 é a saída que corresponde a 7 am / pm delay (4000); analogWrite (HOUR_PIN, 183); // 183 é a saída que corresponde a 8 am / pm delay (4000); analogWrite (HOUR_PIN, 201); // 201 é a saída que corresponde ao atraso das 9 am / pm (4000); analogWrite (HOUR_PIN, 219); // 219 é a saída que corresponde a 10 am / pm delay (4000); analogWrite (HOUR_PIN, 237); // 237 é a saída que corresponde a 11 am / pm delay (4000); analogWrite (HOUR_PIN, 255); // 255 é a saída que corresponde às 12h / pm
*/
}
void PWM4_init () {// Configurar PWM no Trinket GPIO # 4 (PB4, pino 3) usando Timer 1 TCCR1 = _BV (CS10); // sem prescaler GTCCR = _BV (COM1B1) | _BV (PWM1B); // limpa OC1B na comparação OCR1B = 127; // ciclo de trabalho inicializado em 50% OCR1C = 255; // frequência }
// Função para permitir analogWrite no Trinket GPIO # 4 void analogWrite4 (uint8_t duty_value) {OCR1B = duty_value; // o dever pode ser de 0 a 255 (0 a 100%)}
Etapa 6: Arduino Sketch - Relógio
// Relógio medidor analógico Adafruit Trinket
// Funções de data e hora usando um DS1307 RTC conectado via I2C e o TinyWireM lib
// Baixe essas bibliotecas do repositório Github da Adafruit e // instale em seu diretório de bibliotecas do Arduino #include #include
// Para depurar, descomente o código serial, use um FTDI Friend com seu pino RX conectado ao Pin 3 // Você precisará de um programa de terminal (como o freeware PuTTY para Windows) configurado para // a porta USB do FTDI friend em 9600 baud. Remova o comentário dos comandos Serial para ver o que está acontecendo // # define HOUR_PIN 1 // Exibição das horas via PWM no Trinket GPIO # 1 #define MINUTE_PIN 4 // Exibição dos minutos via PWM no Trinket GPIO # 4 (via chamadas do Timer 1) // SendOnlySoftwareSerial Serial (3); // Transmissão serial no Trinket Pin 3 RTC_DS1307 rtc; // Configure o relógio em tempo real
void setup () {pinMode (HOUR_PIN, OUTPUT); // define os pinos do medidor PWM como saídas pinMode (MINUTE_PIN, OUTPUT); PWM4_init (); // Defina o temporizador 1 para trabalhar PWM no Trinket Pin 4 TinyWireM.begin (); // Comece I2C rtc.begin (); // Inicia o relógio em tempo real DS1307 //Serial.begin(9600); // Inicia o Serial Monitor em 9600 baud if (! Rtc.isrunning ()) {//Serial.println("RTC is NOT running! "); // a linha seguinte define o RTC para a data e hora em que este esboço foi compilado rtc.adjust (DateTime (_ DATE_, _TIME_)); }}
void loop () {uint8_t hourvalue, minutevalue; uint8_t hourvoltage, minutevoltage;
DateTime now = rtc.now (); // Obtenha a informação RTC hourvalue = now.hour (); // Obter a hora if (hourvalue> 12) hourvalue - = 12; // Este relógio tem 12 horas minutevalue = now.minute (); // Obtenha os minutos
minutevoltage = map (minutevalue, 1, 60, 57, 255); // Converter minutos em ciclo de trabalho PWM
if (valor da hora == 1) {analogWrite (HOUR_PIN, 57); } if (hourvalue == 2) {analogWrite (HOUR_PIN, 75); // cada hora corresponde a +18} if (hourvalue == 3) {analogWrite (HOUR_PIN, 91); }
if (valor da hora == 4) {analogWrite (HOUR_PIN, 111); } if (hourvalue == 5) {analogWrite (HOUR_PIN, 126); } if (hourvalue == 6) {analogWrite (HOUR_PIN, 147); } if (hourvalue == 7) {analogWrite (HOUR_PIN, 165); } if (hourvalue == 8) {analogWrite (HOUR_PIN, 183); } if (hourvalue == 9) {analogWrite (HOUR_PIN, 201); } if (hourvalue == 10) {analogWrite (HOUR_PIN, 215); } if (hourvalue == 11) {analogWrite (HOUR_PIN, 237); } if (hourvalue == 12) {analogWrite (HOUR_PIN, 255); }
analogWrite4 (minutevoltagem); // a gravação analógica de minuto pode permanecer a mesma que o mapeamento funciona // o código para colocar o processador para hibernar pode ser preferível - vamos atrasar delay (5000); // verifique o tempo a cada 5 segundos. Você pode mudar isso. }
void PWM4_init () {// Configurar PWM no Trinket GPIO # 4 (PB4, pino 3) usando Timer 1 TCCR1 = _BV (CS10); // sem prescaler GTCCR = _BV (COM1B1) | _BV (PWM1B); // limpa OC1B na comparação OCR1B = 127; // ciclo de trabalho inicializado em 50% OCR1C = 255; // frequência }
// Função para permitir analogWrite no Trinket GPIO # 4 void analogWrite4 (uint8_t duty_value) {OCR1B = duty_value; // o dever pode ser de 0 a 255 (0 a 100%)}
Recomendado:
Faça seu próprio relógio retro Nixie com um RTC !: 7 etapas (com imagens)
Faça seu próprio relógio nixie retrô com um RTC !: Neste projeto, vou mostrar como criar um relógio nixie retrô. Isso significa que vou mostrar como você pode controlar as válvulas nixie com uma fonte de alimentação DC de alta tensão e, em seguida, combinarei 4 válvulas nixie com um Arduino, um relógio em tempo real (RTC) e um cu
Relógio de aposentadoria / Contagem Crescente / Relógio Dn: 4 etapas (com imagens)
Relógio de aposentadoria / Contagem crescente / Dn Clock: Eu tinha alguns desses visores matriciais de LED 8x8 na gaveta e estava pensando no que fazer com eles. Inspirado por outros instructables, tive a ideia de construir um display de contagem regressiva / crescente para fazer a contagem regressiva para uma data / hora futura e se o tempo alvo p
C51 Relógio Eletrônico de 4 Bits - Relógio de Madeira: 15 Passos (com Imagens)
C51 Relógio Eletrônico de 4 Bits - Relógio de Madeira: Tive algum tempo livre neste fim de semana, então fui em frente e montei este Relógio Digital Eletrônico 4-Bits DIY de AU $ 2,40 que comprei no AliExpress um tempo atrás
Criando um relógio a partir de um relógio: 11 etapas (com imagens)
Criando um relógio a partir de um relógio: neste Instructable, pego um relógio existente e crio o que considero um relógio melhor. Iremos da imagem da esquerda para a imagem da direita. Antes de começar em seu próprio relógio, saiba que remontar pode ser um desafio, pois o piv
Converter o relógio comum doméstico em um relógio auto-brilhante: 8 etapas (com imagens)
Converta o relógio comum em casa em um relógio que brilha: PRIMEIRO, AINDA MEUS AGRADECIMENTOS À EQUIPE DE INSTRUTÁVEIS FAÇA OS MEUS DIAS DE RECUPERAÇÃO DE SAÚDE MAIS RESPONSÁVEIS … Neste instructables, quero compartilhar com vocês como converter seu relógio comum doméstico em um relógio com brilho próprio. > > Por fazer isso