সুচিপত্র:

ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান: 8 টি ধাপ (ছবি সহ)
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান: 8 টি ধাপ (ছবি সহ)

ভিডিও: ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান: 8 টি ধাপ (ছবি সহ)

ভিডিও: ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান: 8 টি ধাপ (ছবি সহ)
ভিডিও: Royal+ Wi-Fi RGB strip led light price bd.পাইকারি দরে কিনুন।Smart app music sync led light price bd. 2024, ডিসেম্বর
Anonim
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান
ওয়াইফাই-নিয়ন্ত্রিত LED স্ট্রিপ সহ লো-পলি আয়রন ম্যান

এই ইন্টারেক্টিভ ওয়াল আর্ট পিসটি প্রায় 39 "লম্বা এবং 24" চওড়া। আমি লেমস ক্লেমসন ইউনিভার্সিটির স্টুডেন্ট মেকারস্পেসে কাঠ কাটলাম, তারপর আমি সব ত্রিভুজ হাতে আঁকলাম এবং এর পিছনে লাইট লাগিয়েছি। এই নির্দেশনাটি কীভাবে আমি এই সঠিক অংশটি তৈরি করেছি তা দিয়ে চলবে, আশা করি এর ধারণা অন্য কাউকে তাদের নিজস্ব শিল্পকলা তৈরি করতে অনুপ্রাণিত করবে। এটি একটি ESP8266 মাইক্রোকন্ট্রোলার ব্যবহার করে যেখানে ঠিকানাযোগ্য WS2812B LED স্ট্রিপ লাইট এবং নিয়মিত RGB LED স্ট্রিপ লাইট রয়েছে।

যন্ত্রাংশ এবং উপকরণ

  • 1/4 "কাঠ - 40" 28 "(আমাদের লেজার কাটার জন্য সর্বোচ্চ মাত্রা)
  • 1/8 "অস্বচ্ছ এক্রাইলিক - TAPPlastics (আমি লাইটিং হোয়াইট ব্যবহার করি, 69%)
  • ব্যাটারি প্যাক - ট্যালেন্টসেল 12V/5V ব্যাটারি প্যাক (আমি 12V/6000mAh প্যাক ব্যবহার করেছি)
  • RGB LED স্ট্রিপ - 6ft ish (স্ট্যান্ডার্ড 4 ওয়্যার, 5050 ভার্সন যেখানে RGB লাইট সব এক মডিউলে আছে)
  • অনেক লাইটের PWM নিয়ন্ত্রণের জন্য TIP122 ট্রানজিস্টর
  • WS2812B LED স্ট্রিপ - 2ft ish (আমি সংস্করণটি 144 LED এর প্রতি মিটার ব্যবহার করেছি)
  • ESP8266 NodeMCU মাইক্রোকন্ট্রোলার
  • সলিড কোর 22 গেজ সংযোগকারী তার (link1 - link2 - link3 - link4)
  • কিছু 300Ω ish প্রতিরোধক
  • পেইন্ট ব্রাশ
  • পেইন্ট - আমি বেশিরভাগই ক্রাফট প্রিমিয়াম পেইন্ট ব্যবহার করতাম। পেইন্টিং ধাপে বিস্তারিত

সরঞ্জাম

  • একটি লেজার কাটারের অ্যাক্সেস (আমি ক্লেমসনে একটি ব্যবহার করেছি)
  • তাতাল
  • গরম আঠালো বন্দুক (এটি অপরিহার্য)
  • ওয়্যার কাটার/স্ট্রিপার
  • অ্যাডবি ইলাস্ট্রেটর
  • ধৈর্য

ধাপ 1: ইলাস্ট্রেটরে ডিজাইন করুন

ইলাস্ট্রেটরে ডিজাইন
ইলাস্ট্রেটরে ডিজাইন
ইলাস্ট্রেটরে ডিজাইন
ইলাস্ট্রেটরে ডিজাইন

সোর্স ইমেজ হল উইলিয়াম টিলের একটি দৃষ্টান্ত, অনুগ্রহ করে তার পোর্টফোলিওটি তার অন্যান্য দুর্দান্ত কাজের জন্য দেখুন: https://www.behance.net/tealeo93 (আমি মনে করি এটি তার - আমি GoogleImages, Pinterest এর খরগোশ গর্ত অনুসরণ করেছি, গ্রাফিক ডিজাইন জংশন, Behance)

আমি "লো-পলি আয়রন ম্যান" বা "জ্যামিতিক আয়রন ম্যান ওয়ালপেপার" এর জন্য একটি গুগল অনুসন্ধান থেকে উত্স চিত্রটি খুঁজে পেয়েছি। আমি ছবিটি ডাউনলোড করে এডোব ইলাস্ট্রেটরে খুলেছি।

এরপরে, আমি চিত্রের প্রতিটি লাইন ম্যানুয়ালি আঁকতে ইলাস্ট্রেটারে কলম সরঞ্জামটি ব্যবহার করেছি। আমি এই কাজটি করেছি যাতে লেজার কাটার সমগ্র ইমেজের উপর রাস্টার করার পরিবর্তে ভেক্টর কাটকে কম শক্তিতে সেট করে ভিতরের সমস্ত লাইন খনন করতে পারে। এটি করতে কয়েক ঘন্টা সময় লেগেছে (স্কুলে প্রায় 3 টি ক্লাস পিরিয়ড)

একবার ছবিটি পুরোপুরি রূপরেখার পরে আমি সেই সমস্ত লাইনগুলিকে একত্রিত করেছি এবং তারপরে হাত, বুক এবং চোখের জন্য আকার আঁকলাম। আমি এই সবগুলিকে একটি গোষ্ঠীতে রেখেছি এবং তাদের ভরাট রঙ নীল করার জন্য সেট করেছি যাতে আমি সহজেই তাদের আলাদা করতে পারি। আমি এক্রাইলিক কাটার জন্য সেগুলিকে একটি পৃথক ফাইলে অনুলিপি করেছি।

এক্রাইলিক অংশের জন্য আমি আমার এক্রাইলিক টুকরার দক্ষতা সর্বাধিক করতে চেয়েছিলাম তাই আমি এটি https://svgnest.com/ এই ওয়েবসাইটে আপলোড করেছি এবং কেবল এক্রাইলিক কাটা টুকরো দিয়ে একটি ফাইল আপলোড করেছি এবং এটিকে অংশগুলি "বাসা" করতে দিয়েছি। এটি কিছু পুনরাবৃত্তি এবং শীতল অ্যালগরিদম ব্যবহার করে বর্জ্য কমানোর জন্য শীটে আপনার অংশগুলির সবচেয়ে কার্যকর বিন্যাস নির্ধারণ করে। এটি IronManAcrylic.ai ফাইলের কনফিগারেশন আউটপুট করে।

ধাপ 2: লেজার কাটিং

Image
Image

কাঠ কাটার আগে আমি প্রাইমার দিয়ে পেইন্ট করে স্প্রে করেছি এবং তারপর মসৃণভাবে শুরু করার জন্য হালকাভাবে বালি দিয়েছি। আমি এটি করেছি যাতে পেইন্টটি পরে আরও সমানভাবে বেরিয়ে আসে।

যখন আমি কাঠের মাধ্যমে রূপরেখাটি কেটে ফেলি তখন আমি ক্লেমসন মেকারস্পেসে আমাদের 60W Epilog Fusion M2 40 এ 100% শক্তি 6% গতি (আমার মনে হয়) ব্যবহার করেছি। এটি এর বেশিরভাগের জন্য কাজ করেছিল, কিন্তু কাঠটি একটি কোণে খুব বিকৃত ছিল তাই আমাকে আসলে সেই কোণটির জন্য লেজারটি পুনরায় ফোকাস করতে হয়েছিল এবং কাটা অংশটি আবার চালাতে হয়েছিল।

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

1/8 এক্রাইলিক আমি প্রথমে 100% শক্তি এবং 8% গতিতে কেটেছিলাম যা একটু বেশি শক্তিশালী ছিল এবং অরক্ষিত অ্যাক্রিলিকের উপর কিছু ঝলসানো চিহ্ন রেখেছিল, তাই আমি এটি 14% গতিতে করেছি এবং এটি একটি আকর্ষণের মতো কাজ করেছে।

ধাপ 3: পেইন্টিং

পেইন্টিং
পেইন্টিং
পেইন্টিং
পেইন্টিং
পেইন্টিং
পেইন্টিং

তাই। অনেক। পেইন্টিং। আমি অনুমান করতাম এটি প্রায় 20 ঘন্টা পেইন্টিং ছিল।

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

আমি এই আঁকা হিসাবে টুকরা প্রতিটি ত্রিভুজ রূপরেখা FrogTape পেইন্টার টেপ ব্যবহার। কোন টেপ সীমানা ছাড়াই হাত দিয়ে প্রতিটি ত্রিভুজ পূরণ করার আমার প্রাথমিক প্রচেষ্টার চেয়ে এটি আমাকে অনেক বেশি সামঞ্জস্যপূর্ণ ফলাফল দিয়েছে।

FrogTape সাদা বা নীল পেইন্টার টেপের চেয়ে অনেক বেশি খসখসে লাইন দেয়। আপনার সময় এবং বিবেক সম্পূর্ণরূপে অতিরিক্ত $ 2/টেপ রোল মূল্য। আপনি যদি এটি চর্মসার হতে চান তবে আপনি টেপের উপরের কয়েকটি স্তরকে আরও ছোট স্ট্রিপগুলিতে কাটাতে একটি সঠিক ছুরি ব্যবহার করতে পারেন যাতে আপনি যখন একটি ত্রিভুজের রূপরেখা তৈরি করেন তখন এটি অনেক প্রতিবেশী ত্রিভুজকে আবৃত করে না।

আমি সস্তা এবং পেইন্টিং নিয়ে তেমন অভিজ্ঞতা নেই তাই আমি মাইকেল বা হবি লবি থেকে পেইন্টের 2 ওজ বোতল ব্যবহার করেছি। আমি দেখতে পেলাম যে ক্রাফট স্মার্ট প্রিমিয়াম লাইন মোটামুটি ভালভাবে আচ্ছাদিত, এবং CraftSmart প্রিমিয়াম ধাতব উৎসব লাল রং ব্যবহার করে সাদা বা কালো মিশিয়ে আমার 95% লাল শেড তৈরি করে। হলুদ ছিল শুধু ক্র্যাফট স্মার্ট প্রিমিয়াম হলুদ, যাতে সামান্য স্বর্ণ slightlyেলে দেওয়া হয় যাতে এটি একটু চকচকে হয়।

যদি আপনি একটি সস্তা -ইশ পেইন্ট সম্পর্কে জানেন যা আরও ভালভাবে আচ্ছাদিত হয় - দয়া করে আমাকে মন্তব্যগুলিতে জানান !! আমাকে প্রায়ই দুই কোট পেইন্ট করতে হত যাতে নীচের সাদাগুলির মধ্যে কোনটিই না দেখায় এবং আমি এমন কিছু সুন্দর পেইন্ট পেতে পছন্দ করি যা এটি এড়াবে।

একবার এটি সব আঁকা ছিল (কিন্তু এক্রাইলিক টুকরা মধ্যে gluing আগে) আমি একটি চকচকে পরিষ্কার কোট স্প্রে ব্যবহার করে পেইন্ট রক্ষা এবং এটি সব চকচকে করতে।

ধাপ 4: এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট

এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট
এক্রাইলিক টুকরা এবং এক্রাইলিক ব্যাকলাইট

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

আমি প্রতিটি এক্রাইলিক টুকরা জন্য একটি পৃথক হালকা মডিউল তৈরি। প্রথমে আমি 1/4 কালো ফোম বোর্ডের একটি টুকরো প্রয়োজনের চেয়ে একটু বড় আকারে কাটলাম এবং তার উপর এক্রাইলিক টুকরোর একটি রূপরেখা আঁকলাম। তারপর আমি সেই টুকরোটির জন্য LED স্ট্রিপগুলিকে এমনভাবে কাটলাম এবং টেপ করলাম যেটা বেশিরভাগই এক্রাইলিককে coveredেকে রেখেছিল এলাকা

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

সোল্ডারটি আসলেই চ্যালেঞ্জিং ছিল কারণ সেই সোল্ডার প্যাডগুলি কত ছোট ছিল। সৌভাগ্যবশত আমার সমস্ত পাওয়ার এবং গ্রাউন্ড প্যাডের জন্য দুটি সুযোগ ছিল কারণ প্রতিটি স্ট্রিপকে উভয় প্রান্তে বিদ্যুৎ সরবরাহ করা যেতে পারে। আমি স্ট্রিপগুলি বিছিয়ে দিয়েছিলাম যাতে ডেটা তার একটি সর্পিন প্যাটার্নে প্রবাহিত হয়। আমি সামঞ্জস্যযোগ্য তাপমাত্রার সাথে একটি সোল্ডারিং লোহা ব্যবহার করি এবং আমি দেখেছি যে আমি তাপমাত্রা পরিসীমা রঙের সবুজের উপরের প্রান্তে থাকতে পছন্দ করি - আমি সম্ভবত এটি গরম পছন্দ করি কারণ আমি বছরের পর বছর ধরে যে সোল্ডারিং লোহা ব্যবহার করতাম তা সস্তা ছিল এবং কোন তাপমাত্রা নিয়ন্ত্রণ ছিল না এবং গরম দৌড়ে।

একবার সবকিছু সোল্ডার হয়ে গেলে, আমি ফ্যাক্ট বোর্ডের স্ট্রিপগুলি কাটা এবং ব্লিড-থ্রু কমাতে একটি সঠিক ছুরি (একটি তাজা ব্লেড সহ) ব্যবহার করেছি। আমি কালো রঙের পরিবর্তে সাদা ব্যবহার করেছি কারণ আমার কাছে এটির লম্বা স্ট্রিপ ছিল এবং আসলে এটি একটি ভাল জিনিস ছিল কারণ এটি আমাকে সহজেই পিছনের দিক থেকে দেখতে দেয় যদি LED স্ট্রিপগুলির এই অংশটি তারের সমস্ত পরীক্ষা করার ধাপে চালু করা হয়।

ধাপ 5: বাকি ইলেকট্রনিক্স

বাকি ইলেকট্রনিক্স
বাকি ইলেকট্রনিক্স
বাকি ইলেকট্রনিক্স
বাকি ইলেকট্রনিক্স
বাকি ইলেকট্রনিক্স
বাকি ইলেকট্রনিক্স

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

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

স্ট্যান্ডার্ড আরজিবি এলইডি স্ট্রিপগুলি নিয়ামক থেকে একটি পিডব্লিউএম সংকেত দ্বারা নিয়ন্ত্রিত হয়। যাইহোক, মাইক্রোকন্ট্রোলার নিয়ন্ত্রকের উপর নির্ভর করে শুধুমাত্র প্রতি পিনের 20mA-50mA কারেন্ট সরবরাহ করতে পারে। স্ট্রিপের প্রতিটি LED এর জন্য প্রায় অনেক শক্তি প্রয়োজন, তাই আমাদের স্ট্রিপগুলি নিয়ন্ত্রণ করার জন্য এক ধরণের ট্রানজিস্টর ব্যবহার করতে হবে। গুগল সার্চে উঠে আসা কয়েকটি জায়গা টিআইপি 122 ট্রানজিস্টর প্রস্তাব করেছে যা 5 এমপিএস বা 40W শক্তি স্যুইচ করতে পারে - আমাদের অ্যাপ্লিকেশনের জন্য যথেষ্ট বেশি। এগুলি আসলেই রুটিবোর্ডে ফিট করার জন্য ডিজাইন করা হয়নি, তবে আপনি যদি প্রতিটি তারের 90 side পাশের দিকে ঘুরিয়ে দেন তবে এটি রুটিবোর্ডের স্লটে ফিট হবে। আমি প্রথমে প্রত্যেকের জন্য একটি ছোট হিটসিংক স্ক্রু করার পরিকল্পনা করেছি, কিন্তু কিছু পরীক্ষার পরে আমি নির্ধারণ করেছি যে এটি প্রয়োজনীয় হওয়ার জন্য যথেষ্ট গরম হয় না। আমি PWM আউটপুটের জন্য নির্ধারিত ESP8266 এ একটি পিনে প্রতিটি ট্রানজিস্টার ইনপুট তারযুক্ত করেছি

আরজিবি এলইডি স্ট্রিপগুলি যা আমার কাছে "জল প্রতিরোধী" রাবার লেপ ছিল এবং এর ফলে আমি যেমন চাই তেমনি কাঠের সাথে লেগে থাকবে না। একটি কার্যকারিতা হিসাবে, আমি ফেনা বোর্ডের ছোট টুকরো কেটে ফোমের টুকরোটি কাঠের সাথে আঠালো করেছিলাম এবং তারপরে LED স্ট্রিপটি তাদের সাথে আঠালো করেছিলাম।

ধাপ 6: প্রোগ্রামিং ওভারভিউ

এই প্রকল্পটি বিভিন্ন লাইব্রেরি ব্যবহার করে যাতে এটি ব্লাইঙ্ক নামক একটি ফোন অ্যাপ থেকে নিয়ন্ত্রণ করা যায়, একটি অ্যামাজন ইকো থেকে চালু/বন্ধ করা যায় এবং কোডটি ওয়াইফাইয়ের মাধ্যমে আপডেট করা যায়। ব্যবহৃত কিছু লাইব্রেরি নিচে দেওয়া হল

Blynk -

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

OTA (ওভার দ্য এয়ার) আপডেট- ESP8266 এর সাথে ডিফল্ট লাইব্রেরি অন্তর্ভুক্ত

আলেক্সা ওয়েমো এমুলেটর-https://github.com/witnessmenow/esp8266-alexa-wemo…

আমাজন প্রতিধ্বনিটি এই ভেবে যে আপনার প্রকল্পটি একটি ওয়েমো লাইট সুইচ। কোডটি আপনাকে একটি ফাংশন সংজ্ঞায়িত করার অনুমতি দেয় যখন অ্যালেক্সা "টার্ন অন" সিগন্যাল পাঠায় এবং টার্ন অফ সিগন্যালের জন্য একটি আলাদা ফাংশন পাঠায়। আপনি একক নিয়ামক দিয়ে একাধিক ডিভাইস (10 পর্যন্ত) অনুকরণ করতে পারেন যা আরও বেশি নমনীয়তার অনুমতি দেয়। আমার কোডটি সেট আপ করা হয়েছে যাতে ইকো "আয়রন ম্যান" এবং "নাইট লাইট" নামে দুটি ডিভাইস খুঁজে পায়। তারা এই প্রকল্প এবং এই নিয়ামক উভয়ই, কিন্তু যদি আমি "নাইট লাইট" চালু করি তবে এটি ধূসর সাদা আলো দিয়ে একটি ফাংশন চালাবে, যেখানে "আয়রন ম্যান" চালু করার ফলে বাইরের LED স্ট্রিপগুলিকে লাল এবং এক্রাইলিক টুকরোকে সাদা করে দেয় ।

VMicro ব্যবহার করে ভিজ্যুয়াল স্টুডিওতে Arduino সম্পাদনা

আমি এখন কয়েক মাস ধরে ভিসুয়াল স্টুডিও ব্যবহার করছি এবং আমি এটিতে নির্মিত সমস্ত স্বয়ংসম্পূর্ণ সরঞ্জামগুলি পছন্দ করি, তাই কিছু অনুসন্ধানের পরে আমি দেখতে পেলাম যে আমি আসলে সাধারণ আরডুইনো আইডিই এর পরিবর্তে ভিজ্যুয়াল স্টুডিও ব্যবহার করতে পারি। একটি একক কম্পিউটার vMicro লাইসেন্স ছাত্রদের জন্য $ 15 খরচ করে, যা আমার মতে সম্পূর্ণ মূল্যবান যদি আপনি Arduino কোড প্রোগ্রামিং করতে কয়েক ঘন্টার বেশি সময় ব্যয় করতে যাচ্ছেন।

FastLED বনাম Neopixel

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

ধাপ 7: প্রোগ্রামিং টিপস

সামগ্রিক কাঠামো

আমি আমার চাকরির একজন কন্ট্রোল ইঞ্জিনিয়ার এবং আমরা প্রায়ই পিএলসি প্রোগ্রামিং নামে একটি প্রোগ্রামিং স্টাইল ব্যবহার করি। এই প্রকারটি Arduino এর অনুরূপ যে এটিতে একটি লুপ রয়েছে যা প্রতি কয়েক মিলিসেকেন্ডে ক্রমাগত চলে এবং ইনপুট/আউটপুট নিয়ে কাজ করে, কোডের বিভিন্ন "রাজ্যের" মধ্যে ঝাঁপিয়ে পড়ে। উদাহরণস্বরূপ, কোডটি একটি পরিবাহকের সাথে কাজ করতে পারে এমন একটি ধাপে আঘাত করতে পারে যেখানে যদি পরিবাহকের উপর একটি ট্রে থাকে তবে এটি 45 রাজ্যে চলে যাবে, কিন্তু যদি কোন ট্রে না থাকে তবে এটি 100 রাজ্যে এগিয়ে যাবে। এই প্রোগ্রামিং স্টাইলটি আমার কোডকে অনুপ্রাণিত করেছিল, যদিও আমি কিছু পরিবর্তন করেছি যাতে আমি একটি রাষ্ট্রীয় সংখ্যার পরিবর্তে একটি স্ট্রিং পড়তে পারি।

আমি একটি বৈশ্বিক পরিবর্তনশীল (কমান্ডস্ট্রিং) ব্যবহার করি যা প্রকল্পটি কোন হাল্কা অবস্থায় আছে তার উপর নজর রাখতে। উপরন্তু, আমি "অ্যানিমেট" নামে একটি বুলিয়ান ব্যবহার করি তাও নির্ধারণ করে যে এটি একটি ফাংশন থেকে বেরিয়ে আসবে কি না। সুতরাং যখন আপনি ব্লাইঙ্কে "ক্লাসিক মোড" বোতাম টিপবেন তখন আমার কোডটি অ্যানিমেটকে মিথ্যাতে সেট করবে (যাতে এটি বর্তমান ফাংশন থেকে বেরিয়ে আসে) এবং কমান্ডস্ট্রিংকে "রানক্লাসিক" এ সেট করবে। প্রতিটি ফাংশন ক্রমাগত "চেকইনপুট" ফাংশন চালিয়ে Blynk, Alexa এবং OTAUpdate থেকে ইনপুট চেক করে।

গ্লোবাল ভেরিয়েবলস

আমি আমার প্রকল্পে কিছু সেটিংস ট্র্যাক রাখতে গ্লোবাল ভেরিয়েবল ব্যবহার করি। এই ভেরিয়েবলগুলি আমার সেটআপ কোডের আগে আরম্ভ করা হয়, যা তাদের আমার কোডের যেকোনো ফাংশনে অ্যাক্সেসযোগ্য করে তোলে।

  • গ্লোবাল ব্রাইটনেস (0-255)
  • globalSpeed - যে কোন অ্যানিমেটেড ফাংশনের অ্যানিমেশন গতি। এই প্রকল্পে শুধু বিবর্ণ রংধনু আছে
  • GlobalDelayTime - FastLED- এর প্রতিটি LED- তে তথ্য লেখার জন্য প্রায় 30 মাইক্রোসেকেন্ড প্রয়োজন, তাই আমি এই পরিবর্তনশীলকে NUM_LEDS * 30/1000 + 1 এ সেট করেছি; তারপর বিলম্ব যোগ করুন (globalDelayTime) বেশিরভাগ সময় আমি FastLED.show () করি যাতে কমান্ডটি ব্যাহত না হয়
  • _r, _g, _b - বৈশ্বিক RGB মান। এইভাবে বিভিন্ন রঙের স্কিম বোতামগুলি বিশ্বব্যাপী r/g/b মানগুলি পরিবর্তন করতে পারে এবং শেষ পর্যন্ত একই ফাংশনকে কল করতে পারে

Arduino OTA আপডেট কন্ট্রোলারের নামকরণ

ওভার এয়ার আপডেট ফাংশন ব্যবহার করে কন্ট্রোলারের নাম কিভাবে দেওয়া যায় তা বের না করা পর্যন্ত এটি আমার জন্য একটি বিরক্তিকর পরিমাণ অনুসন্ধান করেছে। আক্ষরিকভাবে "ArduinoOTA.onStart (" - এর আগে আপনার কোডের সেটআপ বিভাগে এই লাইনটি অন্তর্ভুক্ত করুন -

ArduinoOTA.setHostname ("IronMan");

ভিজ্যুয়াল স্টুডিও টিপস সহ vMicro

কখনও কখনও ভিজ্যুয়াল স্টুডিও স্ট্যান্ডার্ড সি ++ ফাইলের মতো গভীর ফাইলগুলির সাথে কিছু সমস্যা সনাক্ত করে এবং কিছু ত্রুটি ফেলে দেয়। বিভিন্ন ধরণের ত্রুটির বার্তা চালু/বন্ধ করার চেষ্টা করুন যতক্ষণ না আপনার খোলা প্রকল্পে ত্রুটি থাকে এবং কোনও সমর্থনকারী ফাইল না থাকে। আপনি Arduino IDE এ কোডটি খুলতে পারেন এবং দেখতে পারেন যে এটি সেখানে সংকলিত হবে বা এটি আরও সহায়ক ত্রুটি কোড দেবে কিনা।

FastLED

এই নির্দেশযোগ্য কয়েক সপ্তাহেরও বেশি সময় ধরে থাকলে আমাকে বার্তা পাঠান এবং আমি এখনও GitHub- এ আমার কাস্টম ফাংশনগুলি কীভাবে রাখব তা খুঁজে পাইনি।

FastLED ESP8266 এর সাথে সামঞ্জস্যপূর্ণ হিসাবে তালিকাভুক্ত, কিন্তু পিনের সংজ্ঞা সঠিক নাও হতে পারে। ফাস্টএলইডি -র ডকুমেন্টেশনে বলা হয়েছে যে আপনি #অন্তর্ভুক্ত করার আগে নিম্নলিখিত লাইনগুলির মধ্যে একটি অন্তর্ভুক্ত করার চেষ্টা করতে পারেন

  • //#FASTLED_ESP8266_RAW_PIN_ORDER সংজ্ঞায়িত করুন
  • //#FASTLED_ESP8266_NODEMCU_PIN_ORDER নির্ধারণ করুন
  • //#FASTLED_ESP8266_D1_PIN_ORDER সংজ্ঞায়িত করুন

যাইহোক, আমি তিনটি চেষ্টা করেছি এবং আমার সমস্ত পিন কখনও মিলিত হয়নি। বর্তমানে আমি শেষ লাইনটি ব্যবহার করছি এবং আমি স্বীকার করেছি যে যখন আমি FastLED কে পিন D2 ব্যবহার করতে বলি তখন এটি আসলে আমার নিয়ামক পিন D4 ব্যবহার করে।

যদিও আমার লাইটগুলি নিওপিক্সেলের সস্তা চীনা নকআফ, তবুও আমি ফাস্টএলইডি -কে বলি সেগুলোকে নিওপিক্সেল হিসাবে বিবেচনা করুন

  • FastLED.addLeds (leds, NUM_LEDS);
  • FastLED.setCorrection (TypicalLEDStrip);
  • //FastLED.setMaxPowerInVoltsAndMilliamps (5, maxMilliamps); // ব্যাটারি চালিত প্রকল্পের জন্য দরকারী
  • FastLED.setBrightness (globalBright);

ধাপ 8: চূড়ান্ত পণ্য

চূড়ান্ত পণ্য
চূড়ান্ত পণ্য
চূড়ান্ত পণ্য
চূড়ান্ত পণ্য
চূড়ান্ত পণ্য
চূড়ান্ত পণ্য

তা-দা!

বিনা দ্বিধায় মন্তব্য করুন অথবা আমাকে ইমেইল করুন - আমি এই জিনিসগুলি পছন্দ করি এবং অন্যান্য লোকদের দুর্দান্ত প্রকল্প করতে সাহায্য করতে পছন্দ করি। আমার করা অন্যান্য কিছু প্রকল্প এবং আমার কিছু ফটোগ্রাফির জন্য আমার ওয়েবসাইট দেখুন: www.jacobathompson.com

প্রস্তাবিত: