সুচিপত্র:
- ধাপ 1: উপকরণ
- পদক্ষেপ 2: পরিকল্পনা
- ধাপ 3: 3 ডি প্রিন্ট
- ধাপ 4: সমাবেশ - LEDs সরান
- ধাপ 5: সমাবেশ - হোল হেডারের মাধ্যমে যোগ করুন
- ধাপ 6: সমাবেশ - LEDs সংযুক্ত করুন
- ধাপ 7: সমাবেশ - PhidgetIR সংযুক্ত করুন
- ধাপ 8: সমাবেশ - বোতাম যোগ করা
- ধাপ 9: সমাবেশ - সবকিছু একত্রিত করা
- ধাপ 10: সফটওয়্যার - কোড
- ধাপ 11: সফটওয়্যার - CIR কমান্ড
- ধাপ 12: প্রোগ্রাম চালানো
- ধাপ 13: ফলাফল
ভিডিও: আপনার দাদার জন্য প্রযুক্তি: 13 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:02
আপনি কতবার আপনার দাদা -দাদির বাড়িতে গিয়েছেন একটি "প্রযুক্তিগত সমস্যা" যা একটি আনপ্লাগড পাওয়ার ক্যাবল, একটি ডেড রিমোট ব্যাটারি বা তাদের টিভিতে সোর্স স্যুইচ করতে না পেরে শেষ হয়ে গেছে? আমি জানি যে আমার জন্য, এটি প্রায়শই ঘটে। যদিও তাদের বেশিরভাগ সমস্যার সমাধান কেবল কিছু নতুন AA এর জন্য দোকানে দৌড়ানোর মাধ্যমে করা যেতে পারে, কখনও কখনও তারা আরও কাস্টমাইজড সমাধান থেকে উপকৃত হতে পারে।
উদাহরণস্বরূপ, আমার গার্লফ্রেন্ডের দাদা একটি নতুন টেলিভিশন পেয়েছেন এবং আমরা তাকে শেখানোর চেষ্টা করেছি কিভাবে উৎস পরিবর্তন করতে হয় যাতে তিনি ডিভিডি এবং টিভির মধ্যে স্যুইচ করতে পারেন - কিন্তু তিনি তা বুঝতে পারেননি। তিনি ব্যর্থ দৃষ্টিশক্তি নিয়েও কাজ করছেন এবং জটিল প্রক্রিয়াগুলি মনে রাখার চেষ্টা করতে খুব বেশি আগ্রহী নন, তিনি যখন চান তখন তার শো দেখতে চান। অনেক সাফল্য ছাড়াই আমাদের শেষ সফরের সময় শান্তভাবে পদক্ষেপগুলি ব্যাখ্যা করার চেষ্টা করার পরে, আমি সিদ্ধান্ত নিয়েছিলাম যে আমি তাকে কেবল তার নিজের দুটি বোতামের রিমোট কন্ট্রোল তৈরি করব। এটি তাকে তার টেলিভিশনের ইনপুট উৎসকে যন্ত্রণাহীনভাবে পরিবর্তন করার অনুমতি দেবে, তার প্রিয় ম্যাটলক ডিভিডি এবং প্রাইসের মধ্যে স্যুইচ করা সহজ।
ধাপ 1: উপকরণ
- PhidgetIR
- PhidgetSBC4 (অথবা রাস্পবেরি পাই এর মত কোন একক বোর্ড কম্পিউটার)
- তাতাল
- সাইড কাটার
- তারের স্ট্রিপার
- জাম্পার তার
- USB তারের
- ফিডগেট কেবল
- ঘের
- থ্রু-হোল হেডার
- তাপ সঙ্কুচিত টিউবিং
পদক্ষেপ 2: পরিকল্পনা
রিমোট তৈরির জন্য, আমার টেলিভিশনে কনজিউমার ইনফ্রারেড (CIR) কমান্ড পাঠানোর ক্ষমতা দরকার ছিল। আমি এই কাজের জন্য PhigetIR ব্যবহার করার সিদ্ধান্ত নিয়েছি। PhidgetIR হল একটি USB নিয়ন্ত্রিত ডিভাইস যা CIR কমান্ড প্রেরণ এবং গ্রহণ উভয়ই করার ক্ষমতা রাখে। আমি কয়েকটি কারণে এটি বেছে নিয়েছি:
- আমি যত তাড়াতাড়ি সম্ভব এই প্রকল্পটি শেষ করতে চাই এবং এটি ব্যবহার করতে চাই, তাই আমার অসিলোস্কোপ এবং ব্রেডবোর্ড ভাঙার চিন্তা আকর্ষণীয় ছিল না। এছাড়াও, আমার হাতে বিক্রিত সার্কিটগুলি এখনও এক বা দুই বছরের মধ্যে কাজ করবে তা কতটা সম্ভব?
- PhidgetIR- এর CIR কমান্ডগুলি "শেখার" ক্ষমতা রয়েছে যা উন্নয়নকে অত্যন্ত সহজ করে তোলে।
- আপনি PhidgetIR এর সাথে প্রায় যে কোন মূলধারার প্রোগ্রামিং ভাষা ব্যবহার করতে পারেন। এর অর্থ আমি জাভা ব্যবহার করতে পারি এবং জিনিসগুলি দ্রুত শেষ করতে পারি।
- অবশেষে, আমি Phidgets এর জন্য কাজ করি, তাই আমি API- এর সাথে স্বাচ্ছন্দ্যবোধ করি এবং সবসময় অতিরিক্ত যন্ত্রপাতি থাকে।
কারণ আমি PhidgetIR ব্যবহার করা বেছে নিয়েছি, এটি বন্ধ করার জন্য আমার একটি কম্পিউটার দরকার। আমি চেয়েছিলাম যে এই প্রকল্পটি একটি স্বতন্ত্র অ্যাপ্লিকেশন হতে পারে, অনেকটা সাধারণ রিমোটের মতো, তাই একটি ডেস্কটপ বা ল্যাপটপ বন্ধ ছিল। আমি একটি PhidgetSBC4 (ডেবিয়ান লিনাক্স চালানো একটি একক-বোর্ড কম্পিউটার) ব্যবহার করা বেছে নিয়েছি, কারণ এটি আমাকে কোন অতিরিক্ত হার্ডওয়্যার ছাড়াই উভয় পুশ বোতাম দিয়ে ইন্টারফেস করার অনুমতি দেয়। এগুলি কেবল অন্তর্নির্মিত ভিন্ট হাবের সাথে সরাসরি সংযুক্ত করা যেতে পারে। দ্রষ্টব্য: আপনি এই প্রকল্পের জন্য একটি রাস্পবেরি পাই ব্যবহার করতে পারেন। অবশেষে, কার্যকরীভাবে সুস্থ থাকার পাশাপাশি, আমি চেয়েছিলাম এই প্রকল্পটি দুর্দান্ত দেখাবে, তাই আমি সিদ্ধান্ত নিয়েছি যে একটি 3D মুদ্রিত ঘের প্রয়োজন হবে।
ধাপ 3: 3 ডি প্রিন্ট
এই প্রকল্পের জন্য, জিওমেজিককে ঘেরের মডেল করার জন্য ব্যবহার করা হয়েছিল। PhidgetIR এবং PhidgetSBC4 উভয়ের জন্য 3D স্টেপ ফাইল পাওয়া যায় যা প্রক্রিয়াটিকে সহজ করে। ঘরের আকার এবং কার্যকারিতা সম্পর্কে এই পদক্ষেপের সময় কিছু সিদ্ধান্ত নেওয়া হয়েছিল:
- PhidgetIR- এ দুটি IR LED আছে যা কমান্ড পাঠানোর জন্য টিভির দিকে নির্দেশ করা প্রয়োজন। PhidgetIR বোর্ডের চারপাশে ঘেরের নকশা করার পরিবর্তে, IR LEDs নিক্ষেপ করা যেতে পারে এবং ঘেরের পাশের গর্তে আঠালো করা যেতে পারে। PhidgetIR বোর্ড তারপর এলইডি থেকে দূরে মাউন্ট করা যেতে পারে, খালি জায়গা ব্যবহার করে।
- PhidgetSBC4 এর VINT হাব সংযোগকারীগুলিকে উপরের দিকে বাঁকানো যেতে পারে, যা এখনও পুশবাটন সংযোগের জন্য অ্যাক্সেসের অনুমতি দেবে এবং একটি বড় ঘের তৈরি করতেও বাধা দেবে।
আমি বোতামগুলির জন্য একটি লেবেল এবং একটি লেবেল যুক্ত করার সিদ্ধান্ত নিয়েছি যা নির্দেশ করা উচিত যে দিকটি মুখোমুখি হওয়া উচিত যাতে আইআর এলইডিগুলি সঠিক দিকে নির্দেশ করা হয়। আমি কালো ABS প্লাস্টিকের বাইরে ঘেরটি স্থানীয়ভাবে মুদ্রিত করেছি।
ধাপ 4: সমাবেশ - LEDs সরান
IR LEDs অবশেষে ঘেরের পাশে গর্তে আঠালো হবে। এর মানে হল যে তাদের প্রথমে নির্বাসিত করা দরকার।
ধাপ 5: সমাবেশ - হোল হেডারের মাধ্যমে যোগ করুন
পরবর্তীতে, যেখানে এলইডি ব্যবহার করা হত সেখানে থ্রু-হোল হেডার যুক্ত করা হয়েছিল, যা তাদের 4-পিন জাম্পার ওয়্যার ব্যবহার করে সংযোগ করা সহজ করে তুলেছিল। দুর্ঘটনাজনিত যোগাযোগ রোধ করতে তাপ-সঙ্কুচিত টিউবিং ব্যবহার করুন।
ধাপ 6: সমাবেশ - LEDs সংযুক্ত করুন
এলইডিগুলিকে ঘেরের পাশে আঠালো করুন।
ধাপ 7: সমাবেশ - PhidgetIR সংযুক্ত করুন
ঘেরের সাথে PhidgetIR সংযুক্ত করুন, এবং LEDs সংযুক্ত করুন।
ধাপ 8: সমাবেশ - বোতাম যোগ করা
ধাক্কা বোতামগুলিকে PhidgetSBC- এ অন্তর্নির্মিত VINT হাবের সাথে সংযুক্ত করা দরকার, তাই আমি একটি Phidget Cable কে অর্ধেক কেটে দিলাম এবং প্রান্তগুলিকে বোতামগুলিতে বিক্রি করলাম। মনে রাখবেন যে শুধুমাত্র সাদা তারের (সংকেত) এবং কালো (স্থল) প্রয়োজন।
ধাপ 9: সমাবেশ - সবকিছু একত্রিত করা
সবকিছু একত্রিত করার জন্য কিছু তারের ব্যবস্থাপনা প্রয়োজন ছিল, তবে, ঘেরটি ভালভাবে কাজ করেছিল।
ধাপ 10: সফটওয়্যার - কোড
এই প্রকল্পের জন্য শুধুমাত্র একটি জাভা ফাইল প্রয়োজন যা আপনি এখানে খুঁজে পেতে পারেন। প্রোগ্রাম একটি PhidgetIR বস্তু, এবং দুটি DigitalInput বস্তু ব্যবহার করে। আপনি এই মত বস্তু তৈরি করতে পারেন:
PhidgetIR ir = নতুন PhidgetIR ();
DigitalInput tvButton = নতুন DigitalInput (); DigitalInput otherButton = নতুন DigitalInput ();
ডিজিটাল ইনপুট অবজেক্টগুলি ভিন্ট হাবের একটি ফিজিক্যাল পুশবাটনে ম্যাপ করা হয়। সংযুক্ত করুন, বিচ্ছিন্ন করুন, ত্রুটি, এবং রাষ্ট্র পরিবর্তন ইভেন্টগুলিতেও সদস্যতা নেওয়া হয়:
tv.setIsHubPortDevice (সত্য);
tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); tvButton.open (); otherButton.setIsHubPortDevice (সত্য); otherButton.setHubPort (5); otherButton.addAttachListener (onAttachListener); otherButton.addDetachListener (onDetachListener); otherButton.addErrorListener (onErrorListener); otherButton.addStateChangeListener (onStateChangeListener); otherButton.open ();
উপরে উল্লিখিত রাষ্ট্র পরিবর্তন শ্রোতা এই মত দেখাচ্ছে:
Privatestatic DigitalInputStateChangeListener onStateChangeListener = new DigitalInputStateChangeListener () {@OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {
DigitalInput ch = (DigitalInput) disce.getSource (); চেষ্টা করুন {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActivated = true;} if (ch.getHubPort () == 5 && disce.getState () == true) {otherButtonActivated = true;}} ধরা (PhidgetException ex) {System.out.println ("Error:"+ ex.getDescription ());}}};
যখন একটি বোতাম সক্রিয় হয়, তখন ইভেন্ট কোডটি কার্যকর হবে এবং একটি পতাকা সেট করবে। এই পতাকাগুলিকে রেফারেন্স করা হবে এবং মূল লুপে পুনরায় সেট করা হবে। প্রধান লুপ কেবল বোতামের অবস্থার পরিবর্তনের জন্য অপেক্ষা করে, এবং তারপর ট্রান্সমিট ফাংশন ব্যবহার করে আইআর কমান্ড পাঠায় যা ফিজগেটআইআর এপিআই থেকে পাওয়া যায়।
while (true) {if (tvButtonActivated) {
tvButtonActivated = মিথ্যা; Log.log (LogLevel. INFO, "চেঞ্জিং সোর্স - টিভি"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (rightButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} যদি (otherButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "চেঞ্জিং সোর্স - ডিভিডি"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (leftButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}
ধাপ 11: সফটওয়্যার - CIR কমান্ড
এখানে একটি কমান্ড কিভাবে তৈরি করা যায় তার একটি উদাহরণ (এই ক্ষেত্রে একটি ভলিউম আপ কমান্ড):
// আইআর কোড
IRCodeInfo sourceButtonCI = নতুন IRCodeInfo (); স্ট্রিং volumeUp = "77e1d0f0"; // সোর্স বোতাম sourceButtonCI.bitCount = 32 সেট আপ করুন; sourceButtonCI.encoding = IRCodeEncoding. SPACE; sourceButtonCI.gap = 108921; sourceButtonCI.trail = 549; sourceButtonCI.zero = newint [2]; sourceButtonCI.zero [0] = 549; sourceButtonCI.zero [1] = 627; sourceButtonCI.one = newint [2]; sourceButtonCI.one [0] = 549; sourceButtonCI.one [1] = 1755; sourceButtonCI.header = newint [2]; sourceButtonCI.header [0] = 9084; sourceButtonCI.header [1] = 4600; sourceButtonCI.repeat = newint [3]; sourceButtonCI.repeat [0] = 9084; sourceButtonCI.repeat [1] = 2308; sourceButtonCI.repeat [2] = 549; sourceButtonCI.length = IRCodeLength. CONSTANT;
এই কমান্ডের জন্য তথ্য পেতে, আমি কেবল PhidgetIR উদাহরণটি ব্যবহার করেছি যা Phidget লাইব্রেরির সাথে আসে। রিমোটকে PhidgetIR এর দিকে নির্দেশ করার পর এবং ভলিউম আপ বাটন চেপে ধরে, IR কোডটি "শিখে", এবং উদাহরণটি তৈরি করে।
ধাপ 12: প্রোগ্রাম চালানো
জাভা ফাইল একটি বহিরাগত কম্পিউটারে লেখা এবং সংকলিত করা যেতে পারে। PhidgetRemote.java এবং phidget22.jar একই ফোল্ডারে রাখুন এবং নিম্নলিখিত কমান্ডটি চালান:
Windowsjavac -classpath।; Phidget22.jar PhidgetRemote.java
macOS/Linuxjavac -classpath।: phidget22.jar PhidgetRemote.java
কম্পাইল করার পর, জেনারেটেড ক্লাস ফাইলগুলিকে PhidgetSBC4 এ কপি করুন, এবং বুট চালানোর জন্য কনফিগার করুন।
ধাপ 13: ফলাফল
যখন আমি আমার বান্ধবীর দাদাকে রিমোটটি দিয়েছিলাম এবং তাকে কিভাবে এটি ব্যবহার করতে হয় তা দেখিয়েছিলাম, তখন তিনি কতটা সহজ ছিল তা দেখে অবাক হয়েছিলেন। এটিকে কার্যকরী দেখতে ভিডিওটি দেখুন!
রিমোট কন্ট্রোল প্রতিযোগিতায় তৃতীয় পুরস্কার 2017
প্রস্তাবিত:
আপনার ওয়াই-ফাই রাউটারের জন্য আপটাইমের ঘন্টা পেতে স্টিম পাঙ্ক আপনার ইউপিএস: 4 টি ধাপ (ছবি সহ)
আপনার ওয়াই-ফাই রাউটারের জন্য কয়েক ঘন্টা আপটাইম পেতে আপনার ইউপিএসকে স্টিম পাঙ্ক করুন: আপনার ইউপিএস এর 12V ডিসি ব্যাটারি পাওয়ারকে 220V এসি পাওয়ারে রূপান্তর করার বিষয়ে মৌলিকভাবে দ্বিমত আছে যাতে আপনার রাউটার এবং ফাইবার ওএনটি চালিত ট্রান্সফরমারগুলি এটিকে আবার রূপান্তর করতে পারে 12V ডিসি! আপনি [সাধারণত
আপনার আরডুইনোকে আইপি নেটওয়ার্কের সাথে সংযুক্ত করার জন্য কীভাবে আপনার নিজের ওয়াইফাই গেটওয়ে তৈরি করবেন?: 11 টি ধাপ (ছবি সহ)
আপনার Arduino কে IP নেটওয়ার্কের সাথে সংযুক্ত করার জন্য আপনার নিজের ওয়াইফাই গেটওয়ে কিভাবে তৈরি করবেন? আমি একটি রোবট নিয়ে কাজ করছি যা স্থায়ীভাবে একটি সার্ভারের সাথে সংযুক্ত হওয়া প্রয়োজন যা এআর চালায়
MakeyMakey W/ Scratch ব্যবহার করে কথা বলার অসুবিধার জন্য সহায়ক প্রযুক্তি: 4 টি ধাপ
MakeyMakey W/ Scratch ব্যবহার করে বক্তৃতা অসুবিধার জন্য সহায়ক প্রযুক্তি: আমার সহায়ক প্রযুক্তি ডিভাইসটি বাক প্রতিবন্ধী এবং বা সীমিত বাক্যে সাহায্য করতে ব্যবহৃত হয়। এটাই. শেখার প্রক্রিয়ায় সাহায্য করার জন্য
আপনার টাস্কের জন্য আপনার ছবি সংরক্ষণ করা: 4 টি ধাপ (ছবি সহ)
আপনার কাজের জন্য আপনার ছবি সংরক্ষণ করা: 1. একটি নতুন Google ডক খুলুন এবং আপনার ছবিগুলিকে নিরাপদ করতে এই পৃষ্ঠাটি ব্যবহার করুন। Ctrl (নিয়ন্ত্রণ) এবং " c " কপি করার চাবি। Ctrl (নিয়ন্ত্রণ) এবং " v " পেস্ট করার চাবি
সিটি কোস্টার - আপনার ব্যবসার জন্য আপনার নিজস্ব বর্ধিত বাস্তবতা কোস্টার তৈরি করুন (TfCD): 6 টি ধাপ (ছবি সহ)
সিটি কোস্টার - আপনার ব্যবসার জন্য আপনার নিজস্ব বর্ধিত বাস্তবতা কোস্টার তৈরি করুন (TfCD): আপনার কাপের নিচে একটি শহর! সিটি কোস্টার হল একটি প্রকল্প যা রটারডাম দ্য হেগ বিমানবন্দরের জন্য একটি পণ্য নিয়ে চিন্তা করে, যা শহরের পরিচয় প্রকাশ করতে পারে, বাড়তি বাস্তবতার সাথে লাউঞ্জ এলাকার ক্লায়েন্টদের বিনোদন দিতে পারে। এমন পরিবেশে যেমন