সুচিপত্র:
- ধাপ 1: আইডিয়া অন্বেষণ
- ধাপ 2: হার্ডওয়্যার
- ধাপ 3: সমাবেশ
- ধাপ 4: নিয়ন্ত্রণ?
- ধাপ 5: এটা সহজ করা
- ধাপ 6: প্রথম পরীক্ষা
- ধাপ 7: রিয়েল-টাইম কন্ট্রোল
- ধাপ 8: উপসংহার
ভিডিও: ইন্টারেক্টিভ পরিবেষ্টিত আলো: 8 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:03
এটি আমার প্রথম নির্দেশযোগ্য! দয়া করে আমার সাথে সহ্য করুন যখন আমি সঠিক ইংরেজি লিখতে সংগ্রাম করি। আমার সঠিক নির্দ্বিধায়! 'লেট ইট গ্লো' প্রতিযোগিতা শুরু হওয়ার ঠিক পরেই আমি এই প্রকল্পটি শুরু করেছি। আমি চাই যে আমি আরও অনেক কিছু বানিয়েছি এবং যা তৈরি করতে চাই তা শেষ করেছি। কিন্তু স্কুল এবং কর্মক্ষেত্রের মধ্যে আমার যতটা ইচ্ছা ছিল ততটা সময় বাকি ছিল না। তা সত্ত্বেও, আমি এখানে আমার পরীক্ষা -নিরীক্ষার একটি প্রতিবেদন একটি নির্দেশযোগ্য হিসাবে রেখেছি, তাই যে কেউ চেষ্টা করতে পারে এবং আমি যা করেছি তা করতে পারি। এই নির্দেশনাটি গাইড হিসাবে পরিবেশন করার জন্য নয় এবং কীভাবে এই গর্ভনিরোধ করতে হয় তা শেখানোর জন্য নয়। এটি ইলেকট্রনিক্সে নতুনদের জন্য গাইড নয়। এটি এমন একটি ধারণা এবং উদ্দেশ্য ভাগ করার মতো যা আমি অনুসরণ করতে চাই। আপনি যদি ইলেকট্রনিক্সে শিক্ষানবিশ/সম্পূর্ণ অজ্ঞ হন এবং এরকম কিছু করতে চান, আমি দু sorryখিত! কিন্তু আমরা সবসময় আপনাকে সাহায্য করার চেষ্টা করতে পারি। শেষ ধাপ দেখুন। আমরা ইতিমধ্যে অনেক পরিবেষ্টিত আলো প্রকল্প দেখেছি। তাদের অধিকাংশই RGB LEDs ব্যবহার করে: - এক রঙের একটি ঘর আলোকিত করতে, আপনার মেজাজের সাথে মিল রেখে একটি বায়ুমণ্ডল স্থাপন করা - টিভি/মনিটরের রঙ বা অডিও থেকে হালকা প্রভাব তৈরি করতে। এমনকি কিছু আছে instructables.com সম্পর্কিত: DIY অ্যাম্বিয়েন্ট লাইট সিস্টেমলাইট বার অ্যাম্বিয়েন্ট লাইটিং আপনার নিজস্ব পরিবেষ্টিত রঙের আলো বার তৈরি করা এই প্রতিযোগিতাকে অজুহাত হিসাবে ব্যবহার করে, আমি একটি প্রকল্প শুরু করেছি যা কিছু সময়ের জন্য আমার মনে ছিল। আমি সবসময় এই পরিবেষ্টিত লাইটের অনুরূপ কিছু করতে চেয়েছিলাম এবং RGB LEDs দিয়ে আমার ঘরের দেয়াল পূরণ করতাম। কিন্তু, এটিকে আরও একধাপ এগিয়ে নিয়ে যাও, তাদের প্রত্যেককে নিয়ন্ত্রণযোগ্য করে তোলা। এই প্রকল্পটি আশাকরি শখ এবং ইলেকট্রনিক টিঙ্কারদের জন্য একটি ওপেন-সোর্স ইলেকট্রনিক্স কিট তৈরি করবে, যা হার্ডওয়্যার/সফটওয়্যার হ্যাকিং এবং সংবেদনশীল ইন্টিগ্রেশনের অনুমতি দেবে। আমি যা তৈরি করেছি তার একটি ছোট প্রিভিউ এখানে দেওয়া হল:
ধাপ 1: আইডিয়া অন্বেষণ
আমি আমার রুমের দেয়ালগুলো RGB LEDs দিয়ে পূরণ করতে চাই, প্রতিটি নেতৃত্বের জন্য রঙ এবং উজ্জ্বলতা নিয়ন্ত্রণ করতে চাই। দুর্ভাগ্যক্রমে আমি মাইক্রোকন্ট্রোলারগুলিতে পাওয়া কয়েকটি পিনের সাহায্যে শত শত LEDs নিয়ন্ত্রণ করতে পারি না। এমনকি অনেক এলইডির নিয়ন্ত্রণ কোড করাও কঠিন হবে তাই আমি সিদ্ধান্ত নিলাম যে আমি সমস্ত এলইডিগুলিকে কয়েকটি ছোট বারে বিভক্ত করব এবং প্রতিটি বারের জন্য আমি একটি মাইক্রোকন্ট্রোলার ব্যবহার করতে পারি। তারপর আমি তাদের মধ্যে তথ্য ভাগ করার জন্য মাইক্রোকন্ট্রোলারের যোগাযোগ ক্ষমতা ব্যবহার করব। এই তথ্য LEDs এর রঙ এবং উজ্জ্বলতা হতে পারে, রঙের প্যাটার্ন/সিকোয়েন্স এবং সংবেদনশীল তথ্য প্রতিটি বারের জন্য আমি 16 RGB LEDs ব্যবহার করার সিদ্ধান্ত নিয়েছি। এর ফলে একটি খুব বড় বা ছোট বার হয় না। এইভাবে আমি প্রতিটি নেতৃত্বের জন্য একটি গ্রহণযোগ্য সংখ্যক সম্পদ ব্যবহার করি, প্রতিটি বারের জন্য খরচ কমাতে যাইহোক, 16 RGB LEDs হল 48 LEDs (3*16 = 48) মাইক্রোকন্ট্রোলার নিয়ন্ত্রণের জন্য। খরচ মাথায় রেখে, আমি ব্যবহার করার সিদ্ধান্ত নিলাম সবচেয়ে সস্তা মাইক্রোকন্ট্রোলার যা আমি ব্যবহার করতে পারতাম। এর মানে হল যে মাইক্রোকন্ট্রোলারে শুধুমাত্র 20 I/O পিন থাকবে, 48 LEDs এর জন্য যথেষ্ট নয়। বিকল্প আমি ভাবতে পারি যে কোন ধরনের ল্যাচড শিফট রেজিস্টার ব্যবহার করা হচ্ছে!
ধাপ 2: হার্ডওয়্যার
আগের ধাপে বলা হয়েছে, আমি একটি ঘর আলোকিত করার জন্য বেশ কয়েকটি বার করতে চাই। এটি খরচের বিষয়টি মাথায় নিয়ে আসে। আমি চেষ্টা করতে যাচ্ছি এবং প্রতিটি বারকে সর্বাধিক সাশ্রয়ী উপায়ে সম্ভব করে তুলব। আমি যে মাইক্রোকন্ট্রোলারটি ব্যবহার করেছি তা ছিল একটি AVR ATtiny2313। এগুলি বরং সস্তা এবং আমার চারপাশে কয়েকজন মিথ্যা কথা বলেছিল। ATtiny2313 এর একটি ইউনিভার্সাল সিরিয়াল ইন্টারফেস এবং একটি USART ইন্টারফেস রয়েছে যা নিচের ধাপগুলোতে ভালো কাজে আসবে। আমার তিনটি MCP23016 ছিল - I2C 16bit I/O পোর্ট এক্সপেন্ডার চারপাশে পড়ে আছে, শুধু সঠিক গণনা! আমি 16 টি LEDs এর একটি রঙ নিয়ন্ত্রণ করতে প্রতিটি পোর্ট এক্সপেন্ডার ব্যবহার করেছি। LEDs … দুর্ভাগ্যবশত, আমি সবচেয়ে সস্তা ছিল। তারা 48 টি লাল, সবুজ এবং নীল ~ 10000mcd 5mm 20 ডিগ্রি কোণ সহ। এটি আপাতত গুরুত্বপূর্ণ নয়, যেহেতু এটি কেবল একটি প্রোটোটাইপ। এই সত্য সত্ত্বেও, ফলাফল বেশ চমৎকার! আমি 8 MHz এ মাইক্রোকন্ট্রোলার চালাচ্ছি। I2C বাস 400 kHz এ ক্লক করা হয়। LED সুইচিং ফ্রিকোয়েন্সি প্রায় 400 Hz। এইভাবে, যদি আমি 48 এলইডি সীমাবদ্ধ না করে চালাতে সক্ষম হই, তবে আমি পরে আরও অনেক কিছু করতে পারি!
ধাপ 3: সমাবেশ
সার্কিট ডিজাইন করার পরে, আমি এটি প্রোটোটাইপিং উদ্দেশ্যে, বেশ কয়েকটি ব্রেডবোর্ডে তৈরি করেছি। তারের কাটা এবং সার্কিট একত্রিত করার কয়েক ঘন্টা পরে, আমি এই ফলাফলটি পেয়েছি: 48 এলইডি এবং টন তারের একটি বিশাল রুটিবোর্ড!
ধাপ 4: নিয়ন্ত্রণ?
এই প্রকল্পের সবচেয়ে চ্যালেঞ্জিং অংশ আমি প্যাটার্ন/সিকোয়েন্স পরিচালনা এবং প্রতিটি LED এর উজ্জ্বলতা এবং রঙ নিয়ন্ত্রণের জন্য যথেষ্ট পরিমাণে একটি নিয়ন্ত্রণ অ্যালগরিদম তৈরি করতে চেয়েছিলাম। (1 বাইট = 8 বিট)। রঙের সাথে আইসি সংবাদদাতার ঠিকানা সহ একটি বাইট, "রাইট" কমান্ড সহ 1 বাইট এবং 16 বিট (এলইডি) এর মান সহ 2 বাইট। আইসি এলইডি -র সাথে "সিংক" হিসেবে যুক্ত থাকে, মানে, পিনে একটি লজিক ভ্যালু 0 এলইডি কে আলোকিত করবে। PWM ব্যাখ্যা করেছে @ উইকিপিডিয়া যদি আমি 50%LED এর উজ্জ্বলতা চাই, আমার PWM মান 50%। এর অর্থ হল LED, এক সময়ের মধ্যে, একই সময়ে বন্ধ থাকা উচিত। আসুন 1 সেকেন্ডের একটি সময় নিই। 50% এর PWM মানে এই 1 সেকেন্ডে, অন টাইম 0.5 সেকেন্ড এবং অফ টাইম 0.5 সেকেন্ড। 80%PWM? 0.2 সেকেন্ড বন্ধ, 0.8 সেকেন্ড চালু! সহজ, ঠিক? ডিজিটাল বিশ্বে: 10 ঘড়ি চক্রের সময়কালের সাথে, 50% মানে 5 চক্রের জন্য LED চালু আছে, এবং অন্য 5 চক্রের জন্য LED বন্ধ রয়েছে। 20%? 2 চক্র চালু, 8 চক্র বন্ধ। 45%? ঠিক আছে, আমরা সত্যিই 45%পেতে পারি না … যেহেতু সময়কাল চক্রের মধ্যে এবং আমাদের মাত্র 10 টি চক্র রয়েছে, তাই আমরা PWM কে মাত্র 10%ধাপে ভাগ করতে পারি। এর মানে হল পিনের বিবর্তন হওয়া উচিত, 50%এর জন্য: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0; অথবা এমনকি 1, 0, 1, 0, 1, 0, 1, 0, 1, 0; প্রোগ্রামিংয়ে আমরা একটি অ্যারে চালু এবং বন্ধ করার এই ক্রমটি তৈরি করতে পারি। প্রতিটি চক্রের জন্য আমরা পিনে আউটপুট ইনডেক্সের মান ছিল চক্র। আমি কি এতদূর বুঝতে পেরেছি?: 1, 1, 1, 1, 1, 0, 0, 0, 0, 0; LED1 পিন চালানোর জন্য: 2, 2, 0, 0, 0, 0, 0, 0, 0, 0; LED0 এর ফলাফল +LED0: 3, 3, 1, 1, 1, 0, 0, 0, 0, 0; পোর্ট এক্সপেন্ডার আইসিতে সংখ্যার এই ক্রমকে আউটপুট করলে আমরা LED0 50% উজ্জ্বলতা এবং LED1 20% সহ পেতে পারি !! 2 LEDs জন্য সহজ, ডান? এখন আমাদের এটি তৈরি করতে হবে 16 টি LEDs এর জন্য, প্রতিটি রঙের জন্য!
ধাপ 5: এটা সহজ করা
একটি সহজ সিকোয়েন্স তৈরির জন্য আগের ধাপটা অনেক বেশি কাজ… তাই আমি একটা প্রোগ্রাম বানানোর সিদ্ধান্ত নিলাম, যেখানে আমরা প্রতিটি এলইডির রংগুলো সিকোয়েন্সের এক ধাপে বলি এবং আমরা ধাপের তিনটি অ্যারে পাই। আমি সময় সীমাবদ্ধতার কারণে ল্যাবভিউতে এই প্রোগ্রামটি করেছি।
ধাপ 6: প্রথম পরীক্ষা
মাইক্রোকন্ট্রোলারে বেশ কয়েকটি ধাপ লোড হচ্ছে এবং আমরা এরকম কিছু পেয়েছি: ভিডিওগুলির নিম্নমানের জন্য দু Sorryখিত! আমি একটি ক্রমের সর্বাধিক ধাপ 8 সংখ্যায় সংজ্ঞায়িত করেছি, এবং PWM 20% লাফে সীমাবদ্ধ করেছি। এই সিদ্ধান্তটি আমি যে ধরনের নিয়ন্ত্রণ ব্যবহার করছি এবং ATTiny2313 এর কতটা EEPROM আছে তার উপর ভিত্তি করে। এই পরীক্ষায় আমি দেখতে চেষ্টা করেছি যে আমি কোন ধরনের প্রভাব ফেলতে পারি। আমি অবশ্যই বলব যে আমি ফলাফলে সন্তুষ্ট!
ধাপ 7: রিয়েল-টাইম কন্ট্রোল
পূর্ববর্তী ধাপে উল্লিখিত হিসাবে, আমি আমার ঘরে LEDs নিয়ন্ত্রণকারী সকল মাইক্রোকন্ট্রোলারের সাথে যোগাযোগ করতে চাই। তাই আমি ATtiny2313 এ উপলব্ধ USART ইন্টারফেস ব্যবহার করেছি এবং এটি আমার কম্পিউটারে সংযুক্ত করেছি। আমি LED বার নিয়ন্ত্রণের জন্য ল্যাবভিউতে একটি প্রোগ্রামও করেছি এই প্রোগ্রামে আমি মাইক্রোকন্ট্রোলারকে বলতে পারি যে সিকোয়েন্স কতটা দীর্ঘ, প্রতিটি LED এর রঙ এবং একটি সিকোয়েন্সের ধাপের মধ্যে সময়। পরবর্তী ভিডিওতে আমি আমি কিভাবে LEDs এর রঙ পরিবর্তন করতে পারি এবং ক্রমগুলি সংজ্ঞায়িত করতে পারি তা প্রদর্শন করুন।
ধাপ 8: উপসংহার
আমি মনে করি আমি আমার প্রকল্পের এই প্রথম পদ্ধতিতে সফল ছিলাম। আমি সামান্য সম্পদ এবং সীমাবদ্ধতা সহ 16 RGB LEDs নিয়ন্ত্রণ করতে সক্ষম। যেকোনো কাঙ্ক্ষিত ক্রম তৈরি করে প্রতিটি LED আলাদাভাবে নিয়ন্ত্রণ করা সম্ভব।
ভবিষ্যতের কাজ:
যদি আমি মানুষের কাছ থেকে ইতিবাচক প্রতিক্রিয়া পাই, তাহলে আমি এই ধারণাটি আরও বিকাশ করতে পারি এবং মুদ্রিত সার্কিট বোর্ড এবং সমাবেশ নির্দেশাবলী সহ একটি সম্পূর্ণ DIY ইলেকট্রনিক্স কিট তৈরি করতে পারি।
আমার পরবর্তী সংস্করণের জন্য আমি করবো: -এডিসির সাথে মাইক্রোকন্ট্রোলারটি পরিবর্তন করুন -অন্য কোন ধরনের সিরিয়াল -ইন প্যারালাল -আউট এর জন্য MCP23016 পরিবর্তন করুন যা LEDs থেকে আরও বেশি স্রোত ডুবে যেতে পারে -মাইক্রোকন্ট্রোলারের সাথে যোগাযোগের জন্য ওপেন -সোর্স সফটওয়্যার তৈরি করুন এবং এলইডি নিয়ন্ত্রণ করুন -বেশ কয়েকটি মাইক্রোকন্ট্রোলারের মধ্যে যোগাযোগ বিকাশ করুন।
আপনার কি কোন পরামর্শ বা প্রশ্ন আছে? অথবা একটি মন্তব্য করুন!
লেট ইট গ্লোতে ফাইনালিস্ট!
প্রস্তাবিত:
রাস্পবেরি পাই জিরো দিয়ে আপনার নিজস্ব পরিবেষ্টিত আলো তৈরি করুন: 5 টি ধাপ (ছবি সহ)
রাস্পবেরি পাই জিরো দিয়ে আপনার নিজস্ব পরিবেষ্টিত আলোকসজ্জা করুন: এই প্রকল্পে আমি আপনাকে দেখাব কিভাবে আপনার টিভিতে একটি পরিবেষ্টিত আলো প্রভাব যোগ করার জন্য রাস্পবেরি পাই জিরোকে কয়েকটি পরিপূরক অংশের সাথে একত্রিত করতে হবে যা দেখার অভিজ্ঞতা বাড়ায়। চল শুরু করি
রাস্পবেরি পাই - TSL45315 পরিবেষ্টিত আলো সেন্সর জাভা টিউটোরিয়াল: 4 টি ধাপ
রাস্পবেরি পাই - TSL45315 পরিবেষ্টিত আলো সেন্সর জাভা টিউটোরিয়াল: TSL45315 একটি ডিজিটাল পরিবেষ্টিত আলো সেন্সর। এটি বিভিন্ন ধরণের আলোর অবস্থার অধীনে মানুষের চোখের প্রতিক্রিয়া অনুমান করে। ডিভাইসগুলির তিনটি নির্বাচনযোগ্য ইন্টিগ্রেশন সময় রয়েছে এবং একটি I2C বাস ইন্টারফেসের মাধ্যমে সরাসরি 16-বিট লাক্স আউটপুট সরবরাহ করে। ডিভাইস সহ
বহিরাগত প্রদর্শনের জন্য প্রোগ্রামযোগ্য পরিবেষ্টিত আলো: 4 টি ধাপ
বহিরাগত প্রদর্শনের জন্য প্রোগ্রামেবল অ্যাম্বিয়েন্ট লাইট: এই প্রকল্পটি আপনাকে আপনার বাহ্যিক মনিটর বা টিভির জন্য পরিবেষ্টিত আলো সেটআপ করতে সাহায্য করে যা আপনাকে ওয়েব ব্রাউজার থাকা এবং আপনার রাউটারের সাথে সংযুক্ত যেকোনো ডিভাইসের আরাম থেকে নিম্নলিখিতগুলি নিয়ন্ত্রণ করতে দেয়। LED কালার ডিজে ইফেক্টসেট দেওয়ার জন্য ঝলকানি দেওয়ার ফ্রিকোয়েন্সি
রাস্পবেরি পাই - TSL45315 পরিবেষ্টিত আলো সেন্সর পাইথন টিউটোরিয়াল: 4 টি ধাপ
রাস্পবেরি পাই - TSL45315 পরিবেষ্টিত আলো সেন্সর পাইথন টিউটোরিয়াল: TSL45315 একটি ডিজিটাল পরিবেষ্টিত আলো সেন্সর। এটি বিভিন্ন ধরণের আলোর অবস্থার অধীনে মানুষের চোখের প্রতিক্রিয়া অনুমান করে। ডিভাইসগুলির তিনটি নির্বাচনযোগ্য ইন্টিগ্রেশন সময় রয়েছে এবং একটি I2C বাস ইন্টারফেসের মাধ্যমে সরাসরি 16-বিট লাক্স আউটপুট সরবরাহ করে। ডিভাইস সহ
PICO ব্যবহার করে বাড়ির পরিবেষ্টিত আলো: 9 টি ধাপ
পিকো ব্যবহার করে হোম অ্যাম্বিয়েন্ট লাইটিং: আপনি কি কখনো আলোর রঙ পরিবর্তন করে আপনার ঘরের মেজাজ পরিবর্তন করতে চাননি? ঠিক আছে, আজ আপনি শিখবেন কিভাবে ঠিক তা করতে হয়। কারণ, এই প্রকল্পের সাহায্যে আপনি একটি ব্লুটুথ নিয়ন্ত্রিত RGB পরিবেষ্টিত আলো ব্যবস্থা তৈরি করবেন যা আপনি যে কোন জায়গায় রাখতে পারেন