工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduinoを搭載したニキシー時計|最もシンプルなデザイン

コンポーネントと消耗品

>
Arduino UNO
× 1
UTSOURCE電子部品
× 1

このプロジェクトについて

長い一日の仕事の末、ついにArduinoとオプトアイソレーションチップを使ってニキシー時計を作ることに成功しました。購入が難しいニキシードライバーは必要ありません。

完全な説明については、ビデオをご覧ください:

プロジェクトを作成するためのパーツリスト:

1. Arduino UNO https://amzn.to/2P58O7s

2.ニキシー管6個 https://amzn.to/3aHyJvX

3.オプトカプラーチップTLP627

4.12VDCから390VDCへのDCステップアップモジュール https://amzn.to/30kpdK9

5.ブレッドボード https://amzn.to/2uCrnsW

6.リアルタイムクロックモジュールDS3231 https://amzn.to/2SIyEzI

utsource.net で電子部品を購入する

ステップ1.回路設計

<図>

この回路は、光絶縁チップを使用して、Arduino(5VDCを使用)によるニキシー管(150VDCを使用)を制御します。マトリックス接続により、6ニキシー管の60個のライトを制御するためにArduinoからの16個の出力のみが必要です。リアルタイムクロックモジュールDS3231は、時間を維持するために使用され(電源をオフにする場合もあります)、I2CネットワークによってArduinoと通信します。 Arduinoはリアルタイムで読み取り、ニキシーライトを高頻度で順番にオン/オフして、人間の目に6つの数字を永続的に表示させます

ステップ2.Arduinoコード

  // Youtubeチャンネル:engineer2you 
#include
#include "DS3231.h"
RTClib RTC;
DS3231 Clock;
int時間;
int分;
int秒;
const int nixie_0 =2;
const int nixie_1 =3;
const int nixie_2 =4;
const int nixie_3 =5;
const int nixie_4 =6;
const int nixie_5 =7;
const int nixie_6 =8;
const int nixie_7 =9;
const int nixie_8 =10;
const int nixie_9 =11;
const int row_1 =0;
const int row_2 =1;
const int row_3 =14;
const int row_4 =15;
const int row_5 =16;
const int row_6 =17;
const int time_on =2;
void setup(){
pinMode(nixie_0、OUTPUT);
pinMode(nixie_1、OUTPUT);
pinMode(nixie_2、OUTPUT);
pinMode(nixie_3、OUTPUT);
pinMode(nixie_4、OUTPUT);
pinMode( nixie_5、OUTPUT);
pinMode(nixie_6、OUTPUT);
pinMode(nixie_7、OUTPUT);
pinMode(nixie_8、OUTPUT);
pinMode(nixie_9、OUTPUT);
pinMode(row_1、OUTPUT);
pinMode(row_2、OUTPUT);
pinMode(row_3、OUTPUT);
pinMode(row_4、OUTPUT);
pinMode(row_5 、OUTPUT);
pinMode(row_6、OUTPUT);
//Serial.begin(9600); // seiralprintlnを使用しないでください。出力ピンD0およびD1に影響します
Wire.begin();
}
void loop(){
// --- ----------------クロック値を取得---------------------------
DateTime now =RTC.now();
hour =now.hour();
minutes =now.minute();
second =now.second();
/ / ------------------- show clock number ----------------------
int j; //右から2番目の数値
int k; //右から最初の数字
j =second / 10;
k =second%10;
// -----------最初の秒数を表示
off_all();
on_number(0、k + 2);
delay(time_on);
// ----------- 2番目の秒数を表示
off_all();
on_number(1、j + 2);
delay(time_on);

j =分/ 10;
k =minutes%10;
// -----------最初の分数を表示
off_all();
on_number(14、k + 2);
delay(time_on);
// ----------- 2番目の分数を表示
off_all();
on_number(15、j + 2 );
delay(time_on);
j =hour / 10;
k =hour%10;
// -----------最初に表示時間数
off_all();
on_number(16、k + 2);
delay(time_on);
// ----------- 2番目の時間数を表示
off_all();
on_number(17、j + 2 );
delay(time_on);
}
void on_number(int row、int nixie){
digitalWrite(row、HIGH);
digitalWrite(nixie、HIGH );
}
void off_all(){
digitalWrite(row_1、LOW);
digitalWrite(row_2、LOW);
digitalWrite(row_3、LOW);
digitalWrite(row_4、LOW);
digitalWrite(row_5、LOW);
digitalWrite(row_6、LOW);
digitalWrite(nixie_0、LOW);
digitalWrite(nixie_1 、LOW);
digitalWrite(nixie_2、LOW);
digitalWrite(nixie_3、LOW);
digitalWrite(nixie_4、LOW);
digitalWrite(nixie_5、LOW);
digitalWrite(nixie_6、LOW);
digitalWrite(nixie_7、LOW);
digitalWrite(nixie_8、LOW);
digitalWrite(nixie_9、LOW);
delayMicroseconds(400); //他のチューブへの「ゴースト」効果を防ぐため
}

基本的に、コードはモジュールDS3231からリアルタイムで取得され、オプトアイソレーションチップを介して6ニキシー管に表示されます。

ステップ3.回路を構築する

<図> <図> <図> <図> <図>

これは単なる実験なので、すべてをブレッドボードで作成しました。幸い、最初は問題なく動作します

次のステップでは、装飾の良いMDFケースでニキシー時計を作成して、部屋に置くことができるようにします。

コード

  • コードスニペット#1
コードスニペット#1 プレーンテキスト
 // Youtubeチャネル:engineer2you#include  #include "DS3231.h" RTClib RTC; DS3231 Clock; int hour; int minutes; int second; const int nixie_0 =2; const int nixie_1 =3; const int nixie_2 =4; const int nixie_3 =5; const int nixie_4 =6; const int nixie_5 =7; const int nixie_6 =8; const int nixie_7 =9; const int nixie_8 =10; const int nixie_9 =11; const int row_1 =0; const int row_2 =1; const int row_3 =14; const int row_4 =15; const int row_5 =16; const int row_6 =17; const int time_on =2; void setup(){pinMode(nixie_0、OUTPUT); pinMode(nixie_1、OUTPUT); pinMode(nixie_2、OUTPUT); pinMode(nixie_3、OUTPUT); pinMode(nixie_4、OUTPUT); pinMode(nixie_5、OUTPUT); pinMode(nixie_6、OUTPUT); pinMode(nixie_7、OUTPUT); pinMode(nixie_8、OUTPUT); pinMode(nixie_9、OUTPUT); pinMode(row_1、OUTPUT); pinMode(row_2、OUTPUT); pinMode(row_3、OUTPUT); pinMode(row_4、OUTPUT); pinMode(row_5、OUTPUT); pinMode(row_6、OUTPUT); //Serial.begin(9600); // seiral printlnを使用しないでください。出力ピンD0&D1に影響しますWire.begin();} void loop(){// -------------------クロック値を取得------------------------------ DateTime now =RTC.now();時間=now.hour();分=now.minute(); second =now.second(); // -------------------クロック番号を表示---------------------- int j; //右から2番目の数値intk; //右から最初の数字j =2番目/ 10; k =秒%10; // ----------- 2番目のoff_all();の最初の数を表示しますon_number(0、k + 2); delay(time_on); // ----------- 2番目の数を表示off_all(); on_number(1、j + 2); delay(time_on); j =分/ 10; k =分%10; // -----------最初の分数を表示off_all(); on_number(14、k + 2); delay(time_on); // ----------- 2番目の分数を表示off_all(); on_number(15、j + 2); delay(time_on); j =時間​​/ 10; k =時間%10; // -----------最初の時間数を表示off_all(); on_number(16、k + 2); delay(time_on); // ----------- 2番目の時間数を表示off_all(); on_number(17、j + 2); delay(time_on);} void on_number(int row、int nixie){digitalWrite(row、HIGH); digitalWrite(nixie、HIGH);} void off_all(){digitalWrite(row_1、LOW); digitalWrite(row_2、LOW); digitalWrite(row_3、LOW); digitalWrite(row_4、LOW); digitalWrite(row_5、LOW); digitalWrite(row_6、LOW); digitalWrite(nixie_0、LOW); digitalWrite(nixie_1、LOW); digitalWrite(nixie_2、LOW); digitalWrite(nixie_3、LOW); digitalWrite(nixie_4、LOW); digitalWrite(nixie_5、LOW); digitalWrite(nixie_6、LOW); digitalWrite(nixie_7、LOW); digitalWrite(nixie_8、LOW); digitalWrite(nixie_9、LOW); delayMicroseconds(400); //他のチューブへの「ゴースト」効果を防ぐため} 

製造プロセス

  1. Arduinoハメ撮りビジョンクロック
  2. Arduinoを使用したDIYの最もシンプルなIV9Numitron時計
  3. E3.seriesを使用したハーネス設計
  4. Simple Word Clock(Arduino)
  5. イスラムの祈りの時間とArduino時計
  6. マスタークロック
  7. Arduinoでコインアクセプターを制御する
  8. ArduinoTemp。 3.2ディスプレイを備えたモニターとリアルタイムクロック
  9. LEDを制御するBluetoothを搭載したArduino!
  10. MDFウッドケースのArduinoでニキシー時計を作る
  11. DS1302RTCを備えたシンプルな目覚まし時計