সুচিপত্র:

উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি: 6 টি ধাপ
উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি: 6 টি ধাপ

ভিডিও: উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি: 6 টি ধাপ

ভিডিও: উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি: 6 টি ধাপ
ভিডিও: শ্বেতী রোগ কি এবং এটি ছোঁয়াচে রোগ কিনা জেনে নিন_Ask if leucoderma disease and infectious disease_HD 2024, জুলাই
Anonim
উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি
উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি
উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি
উজ্জ্বল নিয়ন্ত্রণযোগ্য সূর্যোদয় বাতি

আপনি কি কখনও 7ish এ ঘুম থেকে উঠেছিলেন, স্বাভাবিক সময় আপনি কাজের জন্য জেগে উঠতে হবে, এবং নিজেকে অন্ধকারে খুঁজে পেয়েছেন? শীত একটি ভয়ঙ্কর সময়, তাই না? আপনাকে মাঝরাতে ঘুম থেকে উঠতে হবে (অন্যথায় এত অন্ধকার কেন?), নিজেকে বিছানা থেকে ছিড়ে ফেলুন এবং আপনার অর্ধচেতন শরীরকে শাওয়ারে পাঠান।

সকালের অন্ধকার - এই প্রকল্পের লক্ষ্য হল একটি সমস্যা সমাধান করা।

আশেপাশে প্রচুর সস্তা সূর্যোদয় বাতি আছে, কিন্তু সেগুলি সবই কম শক্তি এবং ফ্যাকাশে। এগুলি নাইট ল্যাম্পের মতো, যা আপনাকে আরও ভাল ঘুমানোর কথা বলে। আমি যা চাই তা মোটেও নয়।

একই সময়ে, কেবল উজ্জ্বল আলো জ্বালানো আপনাকে অবিলম্বে জাগিয়ে তুলবে, তবে আলতোভাবে পর্যাপ্ত নয়। আমি যা চাই তা হল দুটি পদ্ধতির সংমিশ্রণ - একটি কম উজ্জ্বলতার সাথে আলো জ্বালান, ধীরে ধীরে পূর্ণ গতিতে পৌঁছান, তারপরে একটি সত্যিকারের অ্যালার্ম বন্ধ হয়ে যায় এবং আপনি আর এত ঘুমান না। আসুন এটিতে একটি পাখির গান যুক্ত করি এবং আপনি প্রতিদিন সকালে স্বর্গে জেগে উঠুন!

ধাপ 1: ল্যাম্প অ্যারে

ল্যাম্প অ্যারে
ল্যাম্প অ্যারে
ল্যাম্প অ্যারে
ল্যাম্প অ্যারে

প্রথমত, আমাদের নিজেরই বাতি দরকার। আমার সাদা দেয়াল এবং সিলিং সহ একটি বেশ বড় রুম আছে, তাই আমি 7 GU10 LED ল্যাম্পের জন্য গিয়েছিলাম, প্রতিটি 6W এর মতো কিছু, 40W এর বিশুদ্ধ শক্তির চেয়ে বেশি! এটি আপনাকে দিনের বেলা মনে করার জন্য যথেষ্ট। এছাড়াও এটি দিনের বেলা একটি সাধারণ রুম আলো হিসাবে ব্যবহার করা যেতে পারে।

আপনি এটি কীভাবে একত্রিত করেন তা কোন ব্যাপার না, আপনি কোন সকেট দিয়ে কোন বাতি ব্যবহার করেন। যা কিছু গুরুত্বপূর্ণ - এগুলি অবশ্যই অস্পষ্ট বাতি হতে হবে!

আমার ক্ষেত্রে, আমার 7 GU10 সকেট সংযুক্ত একটি কাঠের তক্তা আছে, সব একসাথে সংযুক্ত। আমি পরে এটি একটি প্লাস্টিকের বাক্সে রাখব।

ধাপ 2: ডিমিং তত্ত্ব

ডিমিং তত্ত্ব
ডিমিং তত্ত্ব

তত্ত্বে তত্ত্ব এবং অনুশীলনের মধ্যে কোন পার্থক্য নেই। অনুশীলনে আছে।

ESP32/Arduino থেকে একটি ডিমার নিয়ন্ত্রণ করা আমার কল্পনার মতো সহজ নয় বলে মনে হচ্ছে। আমি একটি রোবটডাইন এসি লাইট ডিমার মডিউল পেয়েছি। নির্মাতা তার জন্য একটি লাইব্রেরি প্রস্তাব করে। এটি ESP32 তে কাজ করে না (এবং এটি মানিয়ে নেওয়া সত্যিই কঠিন, কারণ এটি অনেক নিম্ন স্তরের ATMega- নির্দিষ্ট রেজিস্ট্রি অ্যাক্সেস ব্যবহার করে), Arduino Nano- এ কাজগুলি সাজানো, নিম্ন-মধ্য উজ্জ্বলতার উপর একটি ভয়ঙ্কর ঝলকানি দেয়। এজন্যই আমি কিছু সময় কাটিয়েছি কিভাবে এটি কাজ করে এবং আমার নিজের উপায় তৈরি করে।

কিছুটা তত্ত্ব।

নির্বাচিত ডিমার মডিউল একটি খুব জনপ্রিয় TRIAC ব্যবহার করে: BTA16। এটি সম্পর্কে প্রচুর নিবন্ধ রয়েছে। আমি এখানে সংক্ষিপ্ত করার চেষ্টা করব।

TRIAC একটি মডিউল যা আউটপুটে একটি ইনপুট পজিটিভ বা নেগেটিভ ভোল্টেজ প্রেরণ করতে পারে, অথবা ব্লক করতে পারে। ডিফল্টরূপে এটি সবকিছু ব্লক করে। এটি খোলার জন্য, আমাদের এটি 100 এর জন্য গেট ইনপুটে একটি উচ্চ সংকেত দেওয়া উচিত। তারপর এটি খোলা থাকবে যতক্ষণ না কারেন্ট শূন্যে নেমে আসে, যা ঘটে যখন একটি ইনপুট ভোল্টেজ সাইন পরিবর্তন করে, একটি শূন্য ভোল্টেজ অতিক্রম করে। তারপর নিচের চক্রটিতে আমাদের আরো ১০০ ইউএস পালস করা উচিত। কখন একটি পালস দিতে হবে তা চয়ন করে, আমরা উজ্জ্বলতা নিয়ন্ত্রণ করি: একেবারে শুরুতে এটি করুন, এবং এটি 100% পাওয়ার ট্রান্সমিশনের কাছাকাছি হবে। এটি পরে করুন, এবং এটি ম্লান হয়ে যাবে। এটি ব্যাখ্যা করে উপরের চিত্রটি দেখুন।

চক্রের একই বিন্দুতে ডাল উৎপন্ন করার জন্য, আমাদের ঠিক কখন এটি শুরু হবে তা জানতে হবে। এজন্যই ডিমার মডিউলটিতে একটি জিরো-ক্রস ডিটেক্টর রয়েছে। এটি কেবল একটি সংকেত উত্থাপন করে (যা আমরা আরডুইনোতে হার্ডওয়্যার বাধা হিসাবে ধরব) প্রতিবার ভোল্টেজ শূন্য অতিক্রম করলে।

ধাপ 3: ডিমিং অনুশীলন

ডিমিং অনুশীলন
ডিমিং অনুশীলন

হ্যাঁ, এভাবেই আপনি জেগে উঠবেন, যদি আপনার বাতি নিভে না যায় এবং আপনার ঘুমের চোখে সমস্ত 40W শক্তি রাখে।

সাধারণ সমস্যা।

আমাদের একাধিক সমস্যার সমাধান করতে হবে।

ঝলকানি।

মাইক্রোকন্ট্রোলারের সময়টি অবশ্যই গেট আউটপুট চালু এবং বন্ধ করার ক্ষেত্রে সুনির্দিষ্ট হতে হবে। লাইব্রেরি RobotDyn পরামর্শ দেয়, প্রতি 100us একটি টাইমার বাধা আছে, এবং শুধুমাত্র টাইমারে গেট স্তর পরিবর্তন করে। এর মানে হল এটি সর্বোত্তম মান থেকে +/- 50 মাইক্রোসেকেন্ড হতে পারে। এটি একটি উচ্চ উজ্জ্বলতায় একটি ভাল ফলাফল দেয়, কিন্তু কম উজ্জ্বলতায় অনেকটা ঝলকানি দেয়। এছাড়াও যদি মাইক্রোকন্ট্রোলার অনেক কিছু করে, এটি সময়ের সঠিকতা হ্রাস করে, তাই আদর্শভাবে একটি নিবেদিত মাইক্রোকন্ট্রোলার ডিমারের জন্য ব্যবহার করা উচিত।

সর্বনিম্ন উজ্জ্বলতা এলইডিগুলির একটি অন্তর্নির্মিত শক্তি রূপান্তরকারী রয়েছে, যা পর্যাপ্ত শক্তি না থাকলে কাজ করতে অস্বীকার করবে। আমার ল্যাম্পগুলি 10-11%থেকে শুরু করে সূক্ষ্ম কাজ করে।

এমনকি এই মান সহ, আমার কিছু বাতি শুরুতে জ্বলতে অস্বীকার করে। এমনকি পরে উজ্জ্বলতা বাড়ানোর সময়, তারা অন্ধকার থাকে। এজন্যই, যখন আমরা অফ স্টেট থেকে কিছু ইতিবাচক উজ্জ্বলতার দিকে যাই, আমরা 5 চক্রের একটি উষ্ণ সময়কাল দিয়ে শুরু করি, যখন আমরা প্রদীপগুলিকে সম্পূর্ণ শক্তি প্রদান করি। তারপর আমরা কাঙ্ক্ষিত উজ্জ্বলতা দিয়ে চালিয়ে যাই। এটি প্রায় অদৃশ্য, কিন্তু সত্যিই সাহায্য করে।

50/60 Hz প্রধান ফ্রিকোয়েন্সি। পরবর্তী শূন্যের আগে আপনাকে কতটা অপেক্ষা করতে হবে তা জানতে হবে। এটা বেশ সহজ - আমরা শুধু দুটি শেষ বিরতির মধ্যে সময়ের পার্থক্য দেখি।

ধীরে ধীরে উজ্জ্বলতা পরিবর্তন ইএসপি 32 বেশ ধীর, এটি একটি তুচ্ছ এইচটিটিপি বা এমনকি ওয়েবসকেট অনুরোধ প্রক্রিয়া করতে 0.5 সেকেন্ড সময় নেয়, তাই মসৃণ উজ্জ্বলতা রূপান্তর আশা করবেন না, এটি কোনওভাবে ডিমার লেভেলে প্রয়োগ করা প্রয়োজন। এই কারণেই, যখন এটি একটি সিরিয়াল পোর্ট থেকে একটি নতুন উজ্জ্বলতা পায়, এটি কেবলমাত্র লক্ষ্য নির্ধারণ করে, এবং তারপর ধীরে ধীরে এটি সময়ের সাথে যোগাযোগ করে।

সমাধান

ডিমারের জন্য এখানে আমার সহজ আরডুইনো কোড। এটি সিরিয়াল ইনপুট থেকে একটি কমান্ড (নতুন উজ্জ্বলতার সাথে এক বাইট) এর জন্য অপেক্ষা করে, জিরো-ক্রস বাধাগুলি পরিচালনা করে, TRIAC নিয়ন্ত্রণ করে, উপরের সমস্ত সমস্যাগুলি পরিচালনা করে।

ধাপ 4: ল্যাম্প কন্ট্রোলার (ESP32)

ল্যাম্প কন্ট্রোলার (ESP32)
ল্যাম্প কন্ট্রোলার (ESP32)
ল্যাম্প কন্ট্রোলার (ESP32)
ল্যাম্প কন্ট্রোলার (ESP32)

এখানে আমার সমস্ত উপাদানগুলির সংযোগ স্কিমা রয়েছে। ESP32 বোর্ড আমি যা ব্যবহার করি (হেলটেক) থেকে খুব আলাদা, তাই নির্বাচিত পিনগুলি কিছুটা অদ্ভুত দেখায়, তবে এটি এখনও সূক্ষ্মভাবে কাজ করা উচিত। আপনার প্রকল্পে বিভিন্ন পিন ব্যবহার করতে বিনা দ্বিধায়।

এখানে কোড সব নিয়ন্ত্রণ করে। এটা বেশ সোজা-সামনের দিকে।

প্রধান বৈশিষ্ট্য।

নিয়ন্ত্রণযোগ্য ল্যাম্প ওয়াইফাই এর সাথে সংযোগ স্থাপন করে, পোর্ট 81 এ একটি ওয়েবসকেট সার্ভার চালু করে, কমান্ডের জন্য অপেক্ষা করে।

আপাতত মাত্র দুটি কমান্ড সমর্থিত: "set_brightness" এবং "update_settings", যা… বেশ স্ব-বর্ণনামূলক।

এনটিপি থেকে সময় পাওয়া আমি জিনিসগুলিকে জটিল করে তুলতে চাই না এবং স্কিমাতে একটি বাস্তব সময় ঘড়ি যুক্ত করতে চাই না। আমাদের ইন্টারনেট অ্যাক্সেস আছে, যার মানে আমরা কিছু এনটিপি সার্ভার থেকে রিয়েল টাইম পেতে পারি এবং তারপরে সিস্টেম টাইমার ব্যবহার করে বর্তমান সময়ের ট্র্যাক রাখতে পারি।

আপনি একটি অ্যালার্ম সেট করতে পারেন। এটি আসলে কি করে: ন্যূনতম উজ্জ্বলতা দিয়ে শুরু হয় এবং ধীরে ধীরে 10 মিনিটের মধ্যে সম্পূর্ণ উজ্জ্বলতায় চলে যায়। তারপর এটি কয়েক ঘন্টা ধরে থাকে। তারপর এটি ধীরে ধীরে 60 সেকেন্ডের বেশি বন্ধ হয়ে যায়।

উপরের সমস্ত পরামিতি কনফিগারযোগ্য।

পাখি গান।ডিএফপ্লেয়ার মিনি সঙ্গীত বাজানোর জন্য ব্যবহৃত হয়। এর জন্য প্রচুর গাইড রয়েছে, তবে মূলত আপনাকে কেবল একটি মাইক্রোএসডি কার্ড প্লাগ করতে হবে, যা FAT32 এ ফরম্যাট করা হবে, যার একটি নাম 0001.mp3। এই ফাইলটি আপনার পছন্দ মতো কিছু থাকতে পারে, আমার ক্ষেত্রে এটি 15 মিনিটের পাখির গান (এটি লুপ করা হবে), এবং এটি আমার সকালকে আশ্চর্যজনক করে তোলে উল্লেখ্য যে বিদ্যুতের উপর একটি বিশাল ক্যাপাসিটর আছে, এবং সিরিয়াল লাইনে 1 kOhm প্রতিরোধক ESP32 এবং DFplayer - এগুলি alচ্ছিক, কিন্তু গোলমাল কমাতে সাহায্য করে।

EEPROM- এ সেটিংস সংরক্ষণ করা।সব সেটিংস EEPROM- এ লেখা এবং শুরুতে লোড করা হয়। এটি একটি নিয়ামক সংযুক্ত না করে অন্তত একটি অ্যালার্ম বৈশিষ্ট্য সহ বাতি ব্যবহার করা সম্ভব করে তোলে।

OLED স্ক্রিনে কিছু তথ্য রেন্ডার করা। আমার Heltec ESP32- এর একটি অন্তর্নির্মিত SSD1306 128X64 I2C স্ক্রিন সমস্ত প্রয়োজনীয় তথ্য এতে রেন্ডার করা হয়েছে। আমি জানি, বাক্সটি কুৎসিত দেখায়, আমি কিছু থ্রিডি প্রিন্ট করেছি এবং ড্রিল দিয়ে গর্ত এবং জানালা কেটেছি। দ্রুত, নোংরা, কিন্তু এটি কাজ করে!

ধাপ 5: কন্ট্রোল প্যানেল

কন্ট্রোল প্যানেল
কন্ট্রোল প্যানেল
কন্ট্রোল প্যানেল
কন্ট্রোল প্যানেল

এটাই প্রকল্পের প্রাণকেন্দ্র। মূল 7 ডিসপ্লে সহ রাস্পবেরি পাই, কিছু কিভি ফ্রন্ট-এন্ড চালাচ্ছে।

এখানে সম্পূর্ণ সোর্স কোড।

বৈশিষ্ট্য

পাইথনে লেখা আমি কিভিকে ভালোবাসি, এটি ইউজার ইন্টারফেসের জন্য একটি পাইথন ফ্রেমওয়ার্ক। খুব সহজ, নমনীয় এবং দক্ষ (উচ্চ পারফরম্যান্স এবং হার্ডওয়্যার ত্বরণের জন্য ভিতরে প্রচুর সি কোড ব্যবহার করে)।

আবহাওয়া বর্তমান তাপমাত্রা এবং বাইরে চাপ দেখান। যদি আপনি একটি দূরবর্তী সেন্সর সংযুক্ত করেন - তাপমাত্রার ভিতরেও এটি নিম্নলিখিত 12 ঘন্টার জন্য আবহাওয়ার পূর্বাভাসের অনুরোধ এবং বিশ্লেষণ করে এবং বৃষ্টির সম্ভাবনা সম্পর্কে একটি পরামর্শ দেয়।

সানরাইজ ল্যাম্প নিয়ামক আরেকটি প্যানেল অ্যালার্ম সম্পর্কে কিছু প্রাথমিক তথ্য প্রদর্শন করে এবং আপনাকে উজ্জ্বলতা সামঞ্জস্য করতে দেয়। আপনি যদি সেটিংসে যান, আপনি ল্যাম্পের যেকোনো প্যারামিটার কনফিগার করতে পারেন, যার মধ্যে রয়েছে অ্যালার্মের সময়সূচী, সর্বোচ্চ অডিও ভলিউম ইত্যাদি।

স্ক্রিনসেভার কিছু সময় নিষ্ক্রিয় থাকার পর পর্দায় গেম অফ লাইফ রেন্ডার করে।

সেখানে এর চেয়ে বেশি ছিল, কিন্তু অন্যান্য জিনিসগুলি অকেজো বলে মনে হয়েছিল।

স্থাপন

আমি রাস্পবিয়ানে ম্যানুয়ালি সবকিছু ইনস্টল করেছি, এবং এখন বলতে পারি: আমার ভুলের পুনরাবৃত্তি করবেন না। KivyPie ব্যবহার করুন, এটিতে সবকিছু আগে থেকেই ইনস্টল করা আছে।

তা ছাড়া, শুধু কোড রিপোজিটরিতে ইনস্টলেশন গাইড অনুসরণ করুন।

ধাপ 6: উপভোগ করুন

ব্যক্তিগতভাবে আমি ডিভাইসটি নিয়ে খুশি। আমি এটিকে দিনের বেলায় বাড়িতে একটি প্রধান আলো হিসাবে ব্যবহার করি এবং এটি আমাকে সকালে ঘুম থেকে উঠতে দেয়, এটি আশ্চর্যজনক।

আমি জানি নির্দেশাবলী খুব দানাদার এবং বর্ণনামূলক নয়। যদি কেউ একই জিনিস তৈরি করে এবং সমস্যা থাকে - আমি সাহায্য করতে পেরে খুশি হব!

প্রস্তাবিত: