সুচিপত্র:

ব্লুটুথের মাধ্যমে DIY স্মার্ট LED ডিমার নিয়ন্ত্রিত: 7 টি ধাপ
ব্লুটুথের মাধ্যমে DIY স্মার্ট LED ডিমার নিয়ন্ত্রিত: 7 টি ধাপ

ভিডিও: ব্লুটুথের মাধ্যমে DIY স্মার্ট LED ডিমার নিয়ন্ত্রিত: 7 টি ধাপ

ভিডিও: ব্লুটুথের মাধ্যমে DIY স্মার্ট LED ডিমার নিয়ন্ত্রিত: 7 টি ধাপ
ভিডিও: New TVS NTROQ 125 - Great Features with low price and High Mileage 2024, নভেম্বর
Anonim
DIY স্মার্ট LED Dimmer ব্লুটুথ দ্বারা নিয়ন্ত্রিত
DIY স্মার্ট LED Dimmer ব্লুটুথ দ্বারা নিয়ন্ত্রিত

এই নির্দেশযোগ্য কিভাবে একটি স্মার্ট ডিজিটাল ডিমার তৈরি করতে হয় তা বর্ণনা করে। ডিমার হল একটি সাধারণ আলোর সুইচ যা ঘর, হোটেল এবং অন্যান্য অনেক ভবনে ব্যবহৃত হয়। ডিমার সুইচগুলির পুরানো সংস্করণগুলি ম্যানুয়াল ছিল, এবং সাধারণত আলোর স্তর নিয়ন্ত্রণের জন্য একটি ঘূর্ণমান সুইচ (পোটেন্টিওমিটার) বা বোতামগুলি অন্তর্ভুক্ত করে। এই নির্দেশাবলী বর্ণনা করে কিভাবে একটি ডিজিটাল ডিমার তৈরি করা যায় যার আলোর তীব্রতা নিয়ন্ত্রণের দুটি উপায় রয়েছে; একটি স্মার্টফোন এবং শারীরিক বোতাম। দুটি মোড নির্বিঘ্নে একসাথে কাজ করতে পারে যাতে ব্যবহারকারী একটি বোতাম এবং স্মার্টফোন উভয় থেকে উজ্জ্বলতা বৃদ্ধি বা হ্রাস করতে পারে। প্রকল্পটি একটি SLG46620V CMIC, HC-06 ব্লুটুথ মডিউল, পুশ বোতাম এবং LEDs ব্যবহার করে বাস্তবায়িত হয়।

আমরা SLG46620V CMIC ব্যবহার করতে যাচ্ছি কারণ এটি বিচ্ছিন্ন প্রকল্পের উপাদানগুলিকে ছোট করতে সাহায্য করে। গ্রিনপ্যাক আইসিগুলি ছোট এবং এর বহুবিধ উপাদান রয়েছে, যা একজন ডিজাইনারকে উপাদানগুলি হ্রাস করতে এবং নতুন বৈশিষ্ট্য যুক্ত করতে দেয়। উপরন্তু, প্রকল্পের ব্যয় পরবর্তীকালে হ্রাস করা হয়।

SLG46620V- এ একটি SPI কানেকশন ইন্টারফেস, PWM ব্লক, FSM এবং একটি ক্ষুদ্র চিপে প্রচুর দরকারী অতিরিক্ত ব্লক রয়েছে। এই উপাদানগুলি ব্যবহারকারীকে একটি ব্যবহারিক স্মার্ট ডিমার তৈরি করতে দেয় যা ব্লুটুথ ডিভাইস বা প্রাচীর বোতামগুলির মাধ্যমে নিয়ন্ত্রণ করা যায়, বর্ধিত-সময় ডিমিং সমর্থন করে এবং মাইক্রোকন্ট্রোলার বা ব্যয়বহুল উপাদানগুলি ব্যবহার না করে নির্বাচনযোগ্য বৈশিষ্ট্য যুক্ত করা যায়।

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

ধাপ 1: প্রকল্প বৈশিষ্ট্য এবং ইন্টারফেস

প্রকল্প বৈশিষ্ট্য এবং ইন্টারফেস
প্রকল্প বৈশিষ্ট্য এবং ইন্টারফেস

প্রকল্প বৈশিষ্ট্য:

1. নিয়ন্ত্রণের দুটি পদ্ধতি; মোবাইল অ্যাপ এবং আসল বোতাম।

2. আলোর জন্য মসৃণ অন-অফ ট্রানজিশন। এটি একজন ভোক্তার চোখের জন্য স্বাস্থ্যকর। এটি আরও বিলাসবহুল অনুভূতি দেয়, যা হোটেল এবং অন্যান্য পরিষেবা শিল্পের কাছে আকর্ষণীয়।

3. স্লিপ মোড বৈশিষ্ট্য। এটি এই অ্যাপ্লিকেশনের জন্য একটি অতিরিক্ত মান হবে। যখন ব্যবহারকারী এই মোডটি সক্রিয় করে, 10 মিনিটের মধ্যে হালকা উজ্জ্বলতা ধীরে ধীরে হ্রাস পায়। এটি এমন ব্যক্তিদের সাহায্য করে যারা অনিদ্রায় ভোগেন। এটি বাচ্চাদের শয়নকক্ষ এবং খুচরা দোকানগুলির জন্যও দরকারী (বন্ধ হওয়ার সময়)।

প্রকল্প ইন্টারফেস

প্রকল্প ইন্টারফেসে চারটি পুশ বোতাম রয়েছে, যা গ্রিনপ্যাক ইনপুট হিসাবে ব্যবহৃত হয়:

অন / অফ: লাইট অন / অফ করুন (সফট-স্টার্ট / স্টপ)।

ইউপি: আলোর মাত্রা বাড়ান।

নিচে: আলোর মাত্রা হ্রাস করুন।

স্লিপ মোড: স্লিপ মোড সক্রিয় করে, 10 মিনিটের সময় হালকা উজ্জ্বলতা ধীরে ধীরে হ্রাস পায়। এটি ব্যবহারকারীকে ঘুমানোর আগে সময় দেয় এবং গ্যারান্টি দেয় যে আলো সারা রাত ধরে থাকবে না।

সিস্টেমটি একটি PWM সিগন্যাল আউটপুট করবে, যা একটি বহিরাগত LED এবং স্লিপ মোড LED নির্দেশককে প্রেরণ করা হবে।

গ্রিনপাক ডিজাইন 4 টি প্রধান ব্লক নিয়ে গঠিত। প্রথমটি একটি UART রিসিভার, যা ব্লুটুথ মডিউল থেকে ডেটা গ্রহণ করে, অর্ডার বের করে এবং একটি নিয়ন্ত্রণ ইউনিটে পাঠায়। দ্বিতীয় ব্লক হল একটি কন্ট্রোল ইউনিট, যা UART রিসিভার বা বাইরের বোতাম থেকে আসা অর্ডার গ্রহণ করে। কন্ট্রোল ইউনিট প্রয়োজনীয় কর্মের সিদ্ধান্ত নেয় (চালু/বন্ধ, বৃদ্ধি, হ্রাস, স্লিপ মোড সক্ষম করে)। এই ইউনিটটি LUT ব্যবহার করে বাস্তবায়িত হয়।

তৃতীয় ব্লক CLK জেনারেটর সরবরাহ করে। এই প্রকল্পে, একটি FSM কাউন্টার PWM নিয়ন্ত্রণ করতে ব্যবহৃত হয়। FSM এর মান 3 ফ্রিকোয়েন্সি (উচ্চ, মাঝারি এবং নিম্ন) দ্বারা প্রদত্ত আদেশ অনুসারে পরিবর্তিত হবে (উপরে, নিচে)। এই বিভাগে তিনটি ফ্রিকোয়েন্সি উৎপন্ন হবে এবং প্রয়োজনীয় CLK প্রয়োজনীয় ক্রম অনুসারে FSM- এ যাবে; অপারেশন চালু/বন্ধ করার সময়, উচ্চ ফ্রিকোয়েন্সি এফএসএম থেকে নরম শুরু/স্টপে চলে যায়। ডিমিংয়ের সময়, মাঝারি ফ্রিকোয়েন্সি পাস হয়। কম ফ্রিকোয়েন্সি স্লিপ মোডে চলে যায় যাতে FSM মান আরও ধীরে ধীরে হ্রাস পায়। তারপরে, হালকা উজ্জ্বলতা ধীরে ধীরে হ্রাস পায়। চতুর্থ ব্লক হল PWM ইউনিট, যা বহিরাগত LEDs থেকে ডাল উৎপন্ন করে।

ধাপ 2: GreenPAK ডিজাইন

GreenPAK ব্যবহার করে একটি ডিমার তৈরির সর্বোত্তম উপায় হল 8-বিট FSM এবং একটি PWM ব্যবহার করা। SLG46620 এ, FSM1 এ 8 বিট রয়েছে এবং PWM1 এবং PWM2 এর সাথে ব্যবহার করা যেতে পারে। ব্লুটুথ মডিউল অবশ্যই সংযুক্ত থাকতে হবে, যার মানে SPI সমান্তরাল আউটপুট ব্যবহার করতে হবে। SPI সমান্তরাল আউটপুট বিট 0 থেকে 7 সংযোগগুলি DCMP1, DMCP2, এবং LF OSC CLK, OUT1, OUT0 OSC আউটপুটগুলির সাথে মিলিত হয়। PWM0 FSM0 (16 বিট) থেকে তার আউটপুট পায়। FSM0 255 এ থামে না; 16383 পর্যন্ত বৃদ্ধি পায় FSM1 একটি পয়েন্টার হিসাবে ব্যবহার করা হয় যখন কাউন্টার 0 বা 255 এ পৌঁছায়। FSM0 PWM পালস তৈরি করতে ব্যবহৃত হয়েছিল। যেহেতু দুটি FSM- এর মান একই সময়ে পরিবর্তিত হওয়া আবশ্যক, তাই নকশাটি একটু জটিল হয়ে ওঠে যেখানে উভয় FSM- তে পূর্বনির্ধারিত, সীমিত, নির্বাচনযোগ্য CLK থাকে। CNT1 এবং CNT3 উভয় FSM- তে CLK পাস করার জন্য মধ্যস্থতাকারী হিসাবে ব্যবহৃত হয়।

নকশাটি নিম্নলিখিত বিভাগগুলি নিয়ে গঠিত:

- UART রিসিভার

- নিয়ন্ত্রণ ইউনিট

- CLK জেনারেটর এবং মাল্টিপ্লেক্সার

- পিডব্লিউএম

ধাপ 3: UART রিসিভার

UART রিসিভার
UART রিসিভার

প্রথমত, আমাদের HC06 ব্লুটুথ মডিউল সেট আপ করতে হবে। HC06 যোগাযোগের জন্য UART প্রোটোকল ব্যবহার করে। UART মানে ইউনিভার্সাল অ্যাসিঙ্ক্রোনাস রিসিভার / ট্রান্সমিটার। UART সমান্তরাল এবং সিরিয়াল ফরম্যাটের মধ্যে ডাটাকে সামনে পেছনে রূপান্তর করতে পারে। এটি একটি সিরিয়াল টু প্যারালাল রিসিভার এবং সিরিয়াল কনভার্টারের সমান্তরাল যা উভয়ই আলাদাভাবে ক্লক করা আছে। HC06 এ প্রাপ্ত তথ্য আমাদের GreenPAK ডিভাইসে প্রেরণ করা হবে। পিন 10 এর জন্য নিষ্ক্রিয় অবস্থা উচ্চ। পাঠানো প্রতিটি অক্ষর একটি লজিক LOW স্টার্ট বিট দিয়ে শুরু হয়, তারপরে কনফিগারযোগ্য সংখ্যক ডেটা বিট এবং এক বা একাধিক লজিক হাই স্টপ বিট।

HC06 1 স্টার্ট বিট, 8 ডেটা বিট এবং একটি স্টপ বিট পাঠায়। এর ডিফল্ট বাড রেট 9600। আমরা HC06 থেকে ডাটা বাইট গ্রিনপাক SLG46620V এর SPI ব্লকে পাঠাবো।

যেহেতু এসপিআই ব্লকে স্টার্ট বা স্টপ বিট কন্ট্রোল নেই, সেই বিটগুলি পরিবর্তে এসপিআই ক্লক সিগন্যাল (এসসিএলকে) সক্ষম এবং নিষ্ক্রিয় করতে ব্যবহৃত হয়। যখন পিন 10 কম হয়ে যায়, আইসি একটি স্টার্ট বিট পেয়েছে, তাই আমরা যোগাযোগের শুরু চিহ্নিত করতে PDLY পতনশীল প্রান্ত আবিষ্কারক ব্যবহার করি। সেই পতনশীল প্রান্ত আবিষ্কারক ঘড়ি DFF0, যা এসসিএলআই সিগন্যালকে এসপিআই ব্লক ঘড়িতে সক্ষম করে।

আমাদের বড রেট প্রতি সেকেন্ডে 9600 বিট, তাই আমাদের এসসিএলকে সময়কাল 1/9600 = 104 µs হওয়া প্রয়োজন। অতএব, আমরা OSC ফ্রিকোয়েন্সি 2 MHz এ সেট করেছি এবং CNT0 কে ফ্রিকোয়েন্সি ডিভাইডার হিসাবে ব্যবহার করেছি।

2 MHz - 1 = 0.5 µs

(104 µs / 0.5 µs) - 1 = 207

অতএব, আমরা চাই CNT0 কাউন্টার ভ্যালু 207। ডেটা যাতে মিস না হয় তা নিশ্চিত করার জন্য, SPI ঘড়িতে আধঘড়ি চক্র বিলম্ব যোগ করা হয় যাতে SPI ব্লক সঠিক সময়ে ক্লক করা হয়। এটি CNT6, 2-বিট LUT1 এবং OSC ব্লকের বহিরাগত ঘড়ি ব্যবহার করে সম্পন্ন করা হয়। DNTF0 ক্লক হওয়ার পর CNT6 এর আউটপুট 52 µs পর্যন্ত উচ্চ হয় না, যা আমাদের SCLK সময়ের 104 µs এর ঠিক অর্ধেক। যখন এটি উচ্চ হয়, 2-বিট LUT1 এবং গেট 2 MHz OSC সংকেতকে EXT- এ প্রবেশ করতে দেয়। CLK0 ইনপুট, যার আউটপুট CNT0 এর সাথে সংযুক্ত।

ধাপ 4: কন্ট্রোল ইউনিট

নিয়ন্ত্রণ ইউনিট
নিয়ন্ত্রণ ইউনিট

এই বিভাগে, UART রিসিভার থেকে প্রাপ্ত বাইট অনুযায়ী বা বাহ্যিক বোতামগুলির সংকেত অনুসারে কমান্ডগুলি কার্যকর করা হবে। পিন 12, 13, 14, 15 ইনপুট হিসাবে আরম্ভ করা হয় এবং বাহ্যিক বোতামগুলির সাথে সংযুক্ত থাকে।

প্রতিটি পিন অভ্যন্তরীণভাবে একটি OR গেট ইনপুটের সাথে সংযুক্ত থাকে, যখন গেটের দ্বিতীয় ইনপুটটি সংশ্লিষ্ট সংকেতের সাথে সংযুক্ত থাকে যা স্মার্টফোন থেকে ব্লুটুথের মাধ্যমে আসছে যা SPI প্যারালাল আউটপুটে প্রদর্শিত হতে চলেছে।

DFF6 স্লিপ মোড সক্রিয় করার জন্য ব্যবহৃত হয় যেখানে এর আউটপুট উচ্চতর পরিবর্তিত হয় 2-বিট LUT4 থেকে আসা প্রান্তের সাথে, যখন DFF10 আলোর স্থিতি বজায় রাখার জন্য ব্যবহৃত হয়, এবং এর আউটপুট নিম্ন থেকে উঁচুতে পরিবর্তিত হয় এবং প্রতিটি ক্রমবর্ধমান প্রান্তের সাথে বিপরীতভাবে পরিবর্তিত হয় 3-বিট LUT10 আউটপুট থেকে।

FSM1 একটি 8-বিট কাউন্টার; এটি তার আউটপুটে একটি উচ্চ পালস দেয় যখন এর মান 0 বা 255 এ পৌঁছে যায়। ফলস্বরূপ, এটি FSM0 (16-বিট) 255 মান অতিক্রম করতে বাধা দেয়, কারণ এর আউটপুট DFF রিসেট করে এবং এটি DFF10 স্ট্যাটাস চালু থেকে বন্ধ করে এবং তদ্বিপরীত যদি আলো বোতাম দ্বারা নিয়ন্ত্রিত হয় +, - এবং সর্বোচ্চ/সর্বনিম্ন স্তরে পৌঁছেছে।

FSM1 ইনপুটগুলির সাথে সংযুক্ত সিগন্যালগুলি, P11 এবং P12 এর মাধ্যমে FSM0 তে পৌঁছাবে এবং উভয় কাউন্টারে একই মান বজায় রাখবে।

ধাপ 5: CLK জেনারেটর এবং মাল্টিপ্লেক্সার

CLK জেনারেটর এবং মাল্টিপ্লেক্সার
CLK জেনারেটর এবং মাল্টিপ্লেক্সার

এই বিভাগে, তিনটি ফ্রিকোয়েন্সি উৎপন্ন করা হবে, কিন্তু শুধুমাত্র একটি FSM গুলি যে কোন এক সময়ে ঘড়ি হবে। প্রথম ফ্রিকোয়েন্সি হল RC OSC, যা ম্যাট্রিক্স 0 থেকে P0 এর মাধ্যমে আনা হয়। দ্বিতীয় ফ্রিকোয়েন্সি হল LF OSC যা 0 থেকে P1 পর্যন্ত ম্যাট্রিক্স থেকেও পাওয়া যায়; তৃতীয় ফ্রিকোয়েন্সি হল CNT7 আউটপুট।

3-বিট LUT9 এবং 3-বিট LUT11 3-বিট LUT14 আউটপুট অনুযায়ী একটি ফ্রিকোয়েন্সি পাস করতে দেয়। এর পরে, নির্বাচিত ঘড়িটি CNT1 এবং CNT3 এর মাধ্যমে FSM0 এবং FSM1 এ প্রেরণ করে।

ধাপ 6: PWM

PWM
PWM

অবশেষে, FSM0 মান PWM সিগন্যালে রূপান্তরিত হয় পিন 20 এর মাধ্যমে প্রদর্শিত হয় যা একটি আউটপুট হিসাবে আরম্ভ করা হয় এবং এটি বহিরাগত LEDs এর সাথে সংযুক্ত থাকে।

ধাপ 7: অ্যান্ড্রয়েড অ্যাপ

অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ
অ্যান্ড্রয়েড অ্যাপ

অ্যান্ড্রয়েড অ্যাপটিতে আসল ইন্টারফেসের মতোই একটি ভার্চুয়াল কন্ট্রোল ইন্টারফেস রয়েছে। এটিতে পাঁচটি বোতাম রয়েছে; অন / অফ, ইউপি, ডাউন, স্লিপ মোড এবং কানেক্ট। এই অ্যান্ড্রয়েড অ্যাপ্লিকেশনটি বোতাম প্রেসগুলি একটি কমান্ডে রূপান্তর করতে সক্ষম হবে এবং ব্লুটুথ মডিউলে কমান্ডগুলি পাঠাতে হবে।

এই অ্যাপটি MIT App Inventor দিয়ে তৈরি করা হয়েছে, যার জন্য কোন প্রোগ্রামিং অভিজ্ঞতার প্রয়োজন নেই। অ্যাপ আবিষ্কারক ডেভেলপারকে প্রোগ্রামিং ব্লক সংযুক্ত করে ওয়েব ব্রাউজার ব্যবহার করে অ্যান্ড্রয়েড ওএস ডিভাইসের জন্য একটি অ্যাপ্লিকেশন তৈরি করতে দেয়। আপনি আমার কম্পিউটার থেকে প্রজেক্ট -> আমদানি প্রকল্প (.aia) এ ক্লিক করে এবং এই অ্যাপ নোটের সাথে থাকা.aia ফাইল নির্বাচন করে আমাদের অ্যাপটি এমআইটি অ্যাপ ইনভেন্টারে আমদানি করতে পারেন।

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

আমরা বোতাম যুক্ত করার পরে, আমরা প্রতিটি বোতামের জন্য একটি সফ্টওয়্যার ফাংশন বরাদ্দ করতে যাচ্ছি। আমরা বোতামগুলির অবস্থা উপস্থাপন করতে 4 টি বিট ব্যবহার করতে যাচ্ছি। প্রতিটি বোতামের জন্য একটি বিট, অতএব, যখন আপনি বোতাম টিপবেন, একটি নির্দিষ্ট নম্বর ব্লুটুথের মাধ্যমে শারীরিক সার্কিটে পাঠানো হবে।

এই সংখ্যাগুলি সারণি 1 এ দেখানো হয়েছে।

উপসংহার

এই নির্দেশযোগ্য একটি স্মার্ট ডিমারের বর্ণনা দেয় যা দুটি উপায়ে নিয়ন্ত্রিত হতে পারে; একটি অ্যান্ড্রয়েড অ্যাপ এবং আসল বোতাম। GreenPAK SLG46620V এর মধ্যে চারটি পৃথক ব্লকের রূপরেখা রয়েছে যা একটি আলোর PWM বৃদ্ধি বা হ্রাসের জন্য প্রক্রিয়া প্রবাহ নিয়ন্ত্রণ করে। অতিরিক্তভাবে, একটি স্লিপ-মোড বৈশিষ্ট্যটি অ্যাপ্লিকেশনটির জন্য উপলব্ধ অতিরিক্ত মড্যুলেশনের উদাহরণ হিসাবে বর্ণিত হয়েছে। দেখানো উদাহরণ হল কম ভোল্টেজ, কিন্তু উচ্চ ভোল্টেজ বাস্তবায়নের জন্য পরিবর্তন করা যেতে পারে।

প্রস্তাবিত: