ماژول ساعت فوق دقیق DS3231SN
ماژول ساعت فوق دقیق DS3231 با رابط I2C
ماژول DS3231 یک ساعت دقیق و کنترل کننده تقویم است که با استفاده از آن می توانید تاریخ و ساعت دقیق را نگهداری کنید. این ماژول از پروتکل ارتباطی I2C پشتیبانی میکند و دارای دو خروجی ساعت (SQW) و قابلیت نصب باتری داخلی جهت حفظ ساعت در صورت قطع برق است. با استفاده از این ماژول می توانید امکاناتی مانند تنظیم زمان تقویم، نمایش تاریخ و ساعت در صفحه نمایش، زمانبندی رویدادها و تعیین بازههای زمانی برای روشن و خاموش کردن دستگاه استفاده کنید. آی سی DS3231 تکمیل شده و پیشرفته ترDS1307 بوده که علاوه بر امکاناتDS1307 از دقت بالاتر، در نظرگرفتن پین ریست و قابل برنامه ریزی 2 زمان مختلف به منظور تنظیم آلارم است. ولتاژ کاری ماژول ساعت فوق دقیق DS3231 در ولتاژ 3.3 بوده و از باتری بک آپ و جریان مصرفی بسیار پایین استفاده میکند. در واقع ماژول ساعت فوق دقیق DS3231 ساعت زمان واقعی یا همان real time clock(RTC) است. کارکرد ماژول ساعت فوق دقیق DS3231 براساس کدهای binary coded decimalکه اصطلاحا کدBCD نامیده می شود، کارایی دارد.باتری بک آپ قرار گرفته بر روی ماژول ساعت فوق دقیق DS3231 زمانیکه برق در دسترس نیست باعث جلوگیری از عقب افتادن زمان خواهد شد. منبع کلاک این آی سی از یک کریستال ساعت به فرکانس 32.768KHZاستفاده می کند. این آی سی قابل کارکرد در دو حالت 24ساعته و 12ساعته AM/PM را دارد همچنین علاوه بر ساعت بصورت ثانیه، دقیقه، ساعت امکان ذخیره تاریخ بصورت روز، هفته، ماه، سال را نیز دارد. در ضمن اطلاعات نوشته شده بر روی این آی سی تا سال 2100 برنامه ریزی شده است.
ویژگی های ماژول ساعت فوق دقیق DS3231SN
- دقت ساعت DS3231 در شرایط معمولی حدود 2 دقیقه در سال است.
- ولتاژ تغذیه ماژول DS3231 بین 2.3 و 5.5 ولت است.
- ماژول DS3231 از رابط I2C برای ارتباط با میکروکنترلرها استفاده میکند.
- DS3231 قادر به نگهداری و نمایش تاریخ و زمان با دقت تا ثانیه است.
- DS3231 دارای حافظه داخلی برای ذخیره تاریخ و زمان بوده و تا یک سال بدون نیاز به تغییر باتری از اطلاعات محافظت میکند.
- ماژول DS3231 قادر به تنظیم تاریخ و زمان از طریق میکروکنترلر است.
- DS3231 دارای دو آلارم قابل تنظیم است که به صورت دستی یا با استفاده از میکروکنترلر میتوان آنها را تنظیم و فعال کرد.
- DS3231 دارای قطعهٔ زماندار است که در صورت قطع برق، تاریخ و زمان را در حافظه داخلی حفظ میکند.
- دمای عملکرد DS3231 بین -40 درجهٔ سانتیگراد تا +85 درجه سانتیگراد است.
بررسی پایه ها و اتصالات ماژول ساعت فوق دقیق DS3231SN
این ماژول از رابط i2C برای برقراری ارتباط با میکرکنترلر مورد استفاده از شما استفاده میکند. رابط کاربری ساده است. RTC را یا از طریق منبع تغذیه یا از طریق میکروکنترلر تغذیه کنید و سپس به ترتیب SCL را به SCL و SDA را به SDA ماژول و میکروکنترلر سیم کنید.
به همراه ماژول ds3231 چه وسایلی بخریم؟
برای استفاده از ماژول DS3231 نیاز به چند وسیله است که عبارتند از:
۱. برد آردوینو یا هر میکروکنترلر دیگری که دارای پروتکل I2C باشد.
۲. کابل های ارتباطی مناسب برای اتصال ماژول به برد میکروکنترلر، معمولا از کابل های جامپر استفاده می شود.
۳. برد برای مونتاژ ماژول DS3231 به عنوان مثال برد Breadboard
۴. باتری سکهای 3 ولت برای حفظ زمان و تاریخ در صورت قطع برق و یا خاموش شدن ماژول
در برخی موارد، ممکن است نیاز به مقاومتها و LED باشد که بسته به نوع کاربرد ماژول، به آنها نیاز دارید.
راه اندازی ماژول ساعت Ds3231 با آردوینو
آی سی DS2331 تکمیل شده و پیشرفته ترDS1307 بوده که علاوه بر امکانات DS1307 از دقت بالاتر، در نظرگرفتن پین ریست و نیز قابل برنامه ریزی ۲زمان مختلف به منظور تنظیم آلارم است. ولتاژ کاری ماژول ۳٫۳ الی ۵٫۵ ولت بوده و از باتری بک آپ و جریان مصرفی بسیار پایین استفاده می کند. در واقع این ماژول ساعت زمان واقعی real time clock(RTC) بوده که از پروتکل سریالI2C پشتیبانی می کند. کارکرد این ماژول براساس کدهای binary coded decimalکه اصطلاحا کدBCD نامیده می شود، است.باتری بک آپ قرار گرفته بر روی این ماژول زمانیکه برق در دسترس نیست باعث جلوگیری از عقب افتادن زمان خواهد شد. منبع کلاک این آی سی از یک کریستال ساعت به فرکانس ۳۲٫۷۶۸KHZاستفاده می کند. این آی سی قابل کارکرد در دو حالت۲۴ساعته و۱۲ساعته AM/PM را دارد همچنین علاوه بر ساعت بصورت ثانیه، دقیقه، ساعت امکان ذخیره تاریخ بصورت روز، هفته، ماه، سال را نیز دارد. در ضمن اطلاعات نوشته شده بر روی این آی سی تا سال۲۱۰۰ برنامه ریزی شده است. از دیگر امکانات این ماژول میتوان به اندازهگیری دما اشاره نمود. این کد، تاریخ و زمان فعلی را در فرمت "yyyy/mm/dd hh:mm:ss" به صورت تکراری در سریال مانیتور نمایش میدهد. برای استفاده از کد، مطمئن شوید که ماژول DS3231 به آردوینو متصل شده است و کتابخانه RTClib را نصب کردهاید.
#include <Wire.h>
#include <RTClib.h>
RTC_DS3231 rtc;
void setup() {
Serial.begin(9600);
Wire.begin();
rtc.begin();
// در صورتی که ماژول DS3231 دارای زمان تعیین شده است، این خط را به حالت توضیحی بگذارید.
//rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
// در صورتی که ماژول DS3231 بطور صحیح کار نمیکند، این خط را فعال کرده و بررسی کنید.
/*if (!rtc.begin()) {
Serial.println("Couldn't find RTC");
while (1);
}*/
}
void loop() {
DateTime now = rtc.now();
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(" ");
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
delay(1000);
}
راه اندازی ماژول ساعت Ds3231 با میکروپایتون
این کد، تاریخ و زمان فعلی را در فرمت "yyyy-mm-dd hh:mm:ss" در صفحه نمایش SSD1306 نشان میدهد. برای استفاده از کد، مطمئن شوید که ماژول ساعت DS3231 به میکروپایتون متصل شده است و کتابخانه ssd1306 را نصب کردهاید.این کد تاریخ و زمان را بهروز نمیکند و فقط زمان را در هنگامی که کد اجرا میشود نشان میدهد. برای تنظیم تاریخ و زمان، میتوانید از تابع rtc.datetime() و توابع مربوطه برای تنظیم هر یک از فیلدهای تاریخ و زمان استفاده کنید.
import machine
import ssd1306
from machine import I2C
from machine import Pin
from machine import RTC
# تنظیمات ماژول I2C و صفحه نمایش SSD1306
i2c = I2C(scl=Pin(5), sda=Pin(4))
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
# تنظیمات ماژول ساعت DS3231
rtc = RTC()
def display_datetime():
datetime = rtc.datetime()
# نمایش تاریخ و زمان در صفحه نمایش
oled.fill(0)
oled.text("Date: {}-{}-{}".format(datetime[0], datetime[1], datetime[2]), 0, 0)
oled.text("Time: {}:{}:{}".format(datetime[4], datetime[5], datetime[6]), 0, 20)
oled.show()
while True:
display_datetime()
machine.delay(1000)
مشخصات
- کاربری
- مناسب برای استفاده صنعتی
- نوع ماژول
- ساعت
- تعداد قطعات
- 12 عدد
- ابعاد فیبر
- 3.8 2.2 سانتی متر
- سطح تجربه مورد نیاز
- پیشرفته
- ولتاژ مورد نياز
- 3.3 تا 5.5 ولت
- فیبر مدار چاپی
- فایبرگلاس دو رو متالیزه
- دمای کاری
- 0 تا 40 درجه
- چاپ مس
- دارای چاپ آبی
- تعداد پایه ها
- 10 پایه
- کشور سازنده
- چین
- نوع کانکتور
- پین هدر
- معماری پردازنده
- CLOCK
- نوع اسیلاتور
- کریستال داخلی
توسط همین ماژول هم میتوانید اقدام به اجرای درخواستتان کنید. البته اگر فقط بخواهید یک سلول باتری لیتیومی را مدیریت شارژ کنید، همان گزینه ماژول TP4056 مناسب خواهد بود.
امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایههای GPIO قابل اتصال به میکروکنترلرها هستند.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.