سلام دوستان
من یک بخاری دارم که به جهت ایمنی توسط تنظیمات غیر قابل تغییر هر هشت ساعت خاموش میشه و برای راه اندازی مجدد نیاز داره توسط دکمه پاور( از نوع پوش باتن)یکبار خاموش و مجددا روشن بشه.
این بخاری ها بعد خاموش شدن کوره احتراق به مدت 3 دقیقه فن دستگاه رو روشن نگه میداره تا دمای بالای دستگاه خارج بشه.از اونجایی ک هر هشت ساعت خاموش روشن کردنش زیاد مطلوب نیست(مثلا نصفه شب خاموش میشه)تصمیم دارم با کمترین تغییر تو مدارات الکترونیکی و بدون آسیب به دستگاه، کاری کنم خودش پروسه خاموش روشن کردن تو هر هشت ساعت رو انجام بده.
نظر به اینکه از الکترونیک چیزی بلد نیستم دوتا راه حل ک از دستم بر میاد به نظرم رسید، ممنون میشم ملاحظه بفرمایید.
راه حل اول:
از دکمه پاور روی پنل دوتا سیم بگیرم و به رله یه تایمر وصل کنم تا بعد روشن شدن دستگاه به صورت اتومات هر هشت ساعت و قبل خاموش شدن دستگاه،عملکرد فشرده شدن پوش باتن رو انجام بده ک دستگاه خاموش شه و بعد 5 دقیقه مجددا عملکرد دکمه پوش باتن رو برای روشن شدن دستگاه انجام بده و این چرخه بی نهایت تکرار بشه.
ماژول تایمر های تو سایت رله دارن یا وصله یا قطعه ولی با توجه به عملکرد پوش باتن رله باید تو یک ثانیه وصل و قطع بشه(و تایمرا اکثرا قابلیت تنظیم برای یک ثانیه قطعی و وصل شدن رو ندارن) و با زمانبندی ک من دارم ،امکان برنامه ریزی با شرایطی ک بالا توضیح دادم رو ندارن
راه حل دوم:
با ی بورد آردوینو مینی و ی سنسور دما ی ترموستات بسازم.به اینشکل ک
از دکمه پاور روی پنل دوتا سیم بگیرم و به رلهssr(بخاطر وصل و قطعی بدون صدا و ننداختن نویز رو مدارات بخاری) وصل کنم.
به محض خاموش شدن کوره بعد هشت ساعت سنسور دما رو میخونه و از مقداری ک ما براش تنظیم کردیم پایینتر میاد اولین دستوری ک میکرو بعد پایین اومدن دما انجام میده پایه رله رو وصل میکنه(delay 300)بعد وقفه رله قطع میشه(delay50000)تا اینجا رله به مدت 0.3ثانیه وصل شده و خاموش شدنش 5ثانیه طول کشیده ک عملا دستگاه خاموش شده.مجددا میکرو بعد وقفه 5 ثانیه به مدت 0.3 ثانیه دوباره وصل میشه و ایندفعه به مدت 20 ثانیه خاموش میمونه ک عملا انگار دکمه پاور دوباره فشرده شده و دستگاه روشن شده.حالا تو این 20 ثانیه وقفه دستگاه جرقه میزنه کوره روشن میشه و دمای باد خروجی میره بالا و به محض بالا رفتن دما دیگه میکرو اتفاقات بالا رو تکرار نمیکنه و این سیکل بینهایت ادامه داره.چون تو این پروسه قرار نیست کار دیگه ای توسط میکرو انجام بشه مهمم نیست میکروپشت وقفه هایی ک براش گذاشتم منتظر بمونه.
از دوستانی ک لطفشون همیشه شامل حال همه بوده خواهش میکنم منو راهنمایی کنن و اگه راه بهتری وجود داره ارائه کنن.ممنون بابت حوصله ای ک بخرج دادید.
float tempC;
int tempPin = 0;
int ledPin = 13;
void setup()
{
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
}
void loop()
{
tempC = analogRead(tempPin);
tempC = (5.0*tempC*100.0)/1024.0;
Serial.print((byte)tempC);
if (tempC <31)
{
//خاموش شدن دستگاه digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(5000);
// روشن شدن دستگاه digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(20000);
}
else
{
digitalWrite(ledPin, LOW);
}
delay(1000);
}