আমরা অনেকেই ডিজিটাল ঘড়ি-digital clock তৈরি করতে চাই । কিন্তু এটা কিভাবে তৈরি করবেন অনেকেই কিন্তু এটা জানেন না যে একটা ডিজিটাল ঘড়ি কিভাবে তৈরি করা যায় । আজকে আমি আপনাদের সম্পন্ন একটা ডিজিটাল ক্লক তৈরি করা শেখাবো। এই পোস্টে আমরা আরডুইনো ব্যবহার করে কীভাবে 4 ডিজিট – 7 বিভাগের প্রদর্শন ডিজিটাল ঘড়ি তৈরি করতে শিখতে চলেছি,
আমরা দুটি ডিজিটাল ঘড়ি তৈরি করব, একটি আরটিসি এবং একটি আরটিসি মডিউল ছাড়াই।
এখানে আমরা পর্যায়ক্রমে শিখব যে একটা ডিজিটাল ঘড়ি-Digital clock কিভাবে তৈরি করা যায় ।প্রথমে আমরা জেনে নেব এই পোস্ট থেকে আমরা কি কি শিখতে পারব…
- ডিজিটাল ঘড়ি তৈরি করার কম্পনেন্ট।
- সার্কিট ডায়াগ্রাম ।
- আরডুইনো কোডিং ।
- ডিজিটাল ঘড়ির টাইম সেট । ইত্যাদি
ডিজিটাল ঘড়ি তৈরি করার কম্পনেন্টঃ
আমরা এখন জেনে নিব ডিজিটাল ঘড়ি তৈরি করার জন্য কি কি কম্পোনেন্ট লাগবে …..
- Arduino Uno R3 Board.
- Atmega 328 Microcontroller.
- Red Led-2 pcs.
- 16 MHZ crystal.
- Push button- 2 pcs.
- 7 Segment Display Common Anode / Common Cathode.
- 22 pf Capacitor – 2pcs.
- Green Connector-2pcs.
- Pcb Board.
- Ds3231 RTC Module/Ds1307 RTC Mdule.
- connecting wire.
সার্কিট ডায়াগ্রাম:
প্রথমে আমরা সেভেন সেগমেন্ট ডিসপ্লে ইন্টারনাল ডায়াগ্রাম একটু ভাল করে বুঝবো যে এর কানেকশন কিভাবে দিতে হবে
উপরে আমি আপনাদের দেখিয়েছি 7 Segment Display Common Anode/ Common Cathode এর ইন্টার্নাল ডায়াগ্রাম কেমন হয় । যদি আপনি ডিজিটাল ঘড়ি তৈরি করার জন্য Common Anode 7 Segment Display ব্যবহার করেন, তাহলে +5v/VCC পিনকে কমন ধরতে হবে । আর যদি Common Cathode 7 Segment Display ব্যবহার করেন, তাহলে GND পিনকে কমন ধরতে হবে । আশা করি ব্যাপারটা বুঝতে পেরেছেন । যেহেতু ডিজিটাল ঘড়ি তৈরি করার জন্য 4 Digit 7 segment Display প্রয়োজন সেজন্য আমি সিঙ্গেল ডিজিট এর চারটি 7 Segment Display নিব ।এখানে Common Anode/Common Cathode যেকোনো 7 segment ডিসপ্লে আপনি নিতে পারেন । শুধুমাত্র কোডিং এর ভিতর কিছুটা পরিবর্তন করতে হবে সেটা আমি আপনাদের একটু পরে বলে দিব। এখন চারটি 4-digit 7 সেগমেন্ট ডিসপ্লে আপনারা কিভাবে সংযোগ করবেন সেটা আপনাদের একটু দেখিয়ে দিচ্ছি ।
চারটি 4-digit 7 সেগমেন্ট ডিসপ্লে ঠিক এভাবেই আপনার সংযোগ করবেন। সেভেন সেগমেন্ট ডিসপ্লে এভাবে সংযোগ করা হলে তারপর Arduino সাথে বিভিন্ন কম্পোনেন্ট এর এভাবে সংযোগ করে ডিজিটাল ঘড়ি তৈরি করতে হবে । নিচের ডিজিটাল ঘড়ির কানেকশন ডায়াগ্রাম আপনাদের দেখাচ্ছি ।এখন আপনি যদি চান এখানে আরডিওনো ইউজ না করে শুধুমাত্র এটি ATmega328 এই মাইক্রোকন্ট্রোলার টি ইউজ করে এই ডিজিটাল ঘড়ি টা তৈরি করবেন তাহলে, তাহলে নিচের এই ডায়াগ্রামটি আপনাকে ফলো করতে হবে । এই ডায়াগ্রাম টা ফলো করে এভাবে কানেকশন করলে আপনি আরডিওনো ছাড়া অল্প খরচে ডিজিটাল ঘড়ি টা তৈরি করতে পারবেন ।
এই কানেকশন ডায়াগ্রাম অনুযায়ী আপনি পুরো কানেকশনটা করে ফেলবেন সতর্কতার সাথে ।
আরডুইনো কোডিংঃ
এই ডিজিটাল ক্লক এর কোডিং টা আমি নিচে দিয়ে দিলাম…..
#include "SevSeg.h"
SevSeg Display;
const unsigned long period = 1000;
const unsigned long led_period = 500;
unsigned long startMillis;
unsigned long led_startMillis;
unsigned long currentMillis;
unsigned long led_currentMillis;
const int hrs_btn = A0;
const int min_btn = A1;
const int ledPin = A2;
int Hrs = 12;
int Min = 0;
int Sec = 0;
int Time;
int ledState = LOW;
void setup()
{
pinMode(hrs_btn, INPUT_PULLUP);
pinMode(min_btn, INPUT_PULLUP);
pinMode(ledPin, OUTPUT);
byte numDigits = 4;
byte digitPins[] = {10, 11, 12, 13};
byte segmentPins[] = {2, 3, 4, 5, 6, 7, 8, 9};
bool resistorsOnSegments = true;
bool updateWithDelaysIn = true;
//byte hardwareConfig = COMMON_CATHODE;
byte hardwareConfig = COMMON_CATHODE;
Display.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments);
Display.setBrightness(100);
}
void loop()
{
currentMillis = millis();
if (currentMillis - startMillis >= period)
{
Sec = Sec + 1;
startMillis = currentMillis;
}
led_currentMillis = millis();
if (led_currentMillis - led_startMillis >= led_period)
{
led_startMillis = led_currentMillis;
if (ledState == LOW)
{
ledState = HIGH;
if (digitalRead(hrs_btn) == LOW)
{
Hrs = Hrs + 1;
}
if (digitalRead(min_btn) == LOW)
{
Min = Min + 1;
Sec = 0;
}
}
else
{
ledState = LOW;
}
digitalWrite(ledPin, ledState);
}
if (Sec == 60)
{
Sec = 0;
Min = Min + 1;
}
if (Min == 60)
{
Min = 0;
Hrs = Hrs + 1;
}
if (Hrs == 13)
{
Hrs = 1;
}
Time = Hrs * 100 + Min;
Display.setNumber(Time);
Display.refreshDisplay();
}
লাইব্রেরি ফাইলটা এখান থেকে ডাউনলোড করুনঃ SevSeg.h CLICKHERE
উপরের কানেকশন ডায়াগ্রাম অনুযায়ী কানেকশন করে এই কোডিং টা আপলোড করলে আপনার ডিজিটাল ঘড়ি-digital clock কিন্তু তৈরি হয়ে যাবে ।
hi
ভাই,
আপনার মঙ্গল কামনা করছি। এখানে Circuit Diagram গলো তো দেখা যাচ্ছে না
digital clock
image not show in your website.
circuit diagram deka jay na…
please help
Nice Post