সুচিপত্র:

জেনেরিক সুইচ হাইজ্যাকার: 3 ধাপ
জেনেরিক সুইচ হাইজ্যাকার: 3 ধাপ

ভিডিও: জেনেরিক সুইচ হাইজ্যাকার: 3 ধাপ

ভিডিও: জেনেরিক সুইচ হাইজ্যাকার: 3 ধাপ
ভিডিও: কোন সার্কিট ব্রেকারের কি কাজ? সার্কিট ব্রেকারের সমাহার । Circuit Breaker | 2024, জুলাই
Anonim
জেনেরিক সুইচ হাইজ্যাকার
জেনেরিক সুইচ হাইজ্যাকার

এই প্রবন্ধটি বর্ণনা করে কিভাবে একটি শক্ত অবস্থা মাইক্রোকন্ট্রোলার ডিভাইস তৈরি করা যায় যা শারীরিক সুইচ নিয়ন্ত্রণ করে। আপনার মাইক্রোকন্ট্রোলার প্রোগ্রামার আছে বলে ধরে নেওয়া (4 $ বা তার বেশি) তৈরি করা খুব সস্তা। সার্কিট নিজেই তুচ্ছ জটিলতার।

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

ধাপ 1: ডিজাইন এবং সার্কিট।

ডিজাইন এবং সার্কিট।
ডিজাইন এবং সার্কিট।

এই প্রকল্পের জন্য, আপনি প্রায় যেকোনো মাইক্রোকন্ট্রোলার, 5v ভোল্টেজ রেগুলেটর এবং NPN ট্রানজিস্টর ব্যবহার করতে পারেন। আমি ব্যবহার করতাম:

1x ATtiny26L-8PU (~ 2 $) 1x TL780 5v ভোল্টেজ রেগুলেটর (~ 0.7 $) 1x N2222 ট্রানজিস্টার (~ 0.07 $) 1x 9v ব্যাটারি, অথবা 12v রিমোট কন্ট্রোল ব্যাটারি স্থান বাঁচানোর জন্য … এবং অবশ্যই আমার বিশ্বস্ত STK500, এখন ZIF সকেট যোগ করা হয়েছে! মূল নকশাটি হল: মাইক্রোকন্ট্রোলার দুটি টাইমিং লুপ দিয়ে যায়। ডিভাইসটি কখন চালু করতে হবে তা নির্ধারণ করার জন্য একটি দীর্ঘ লুপ এবং কতক্ষণ ডিভাইসটি চালু রাখতে হবে তা নির্ধারণ করার জন্য একটি ছোট লুপ। যখন সমস্যা হওয়ার সময় হয়, মাইক্রোকন্ট্রোলার একটি লজিক হাই আউট পিন 14 (PORTA এর সর্বনিম্ন উল্লেখযোগ্য বিট) পাঠায়। এটি ট্রানজিস্টরকে জ্বালিয়ে দেয়। যদি আপনি একটি সুইচে লিডের সাথে ক্ল্যাম্প সংযুক্ত করে থাকেন, তাহলে এটি সুইচ জুড়ে প্রতিরোধকে হঠাৎ করে খুব উঁচু থেকে 1 ওম পর্যন্ত কমিয়ে দেয়, যা বেশিরভাগ ডিভাইসের জন্য সুইচ চালু করার জন্য যথেষ্ট। মনে রাখবেন যে ট্রানজিস্টরগুলিও ডায়োড, তাই যদি এটি কাজ না করে … ক্ল্যাম্পগুলির মেরুতা সম্ভবত ভুল, সেগুলি পরিবর্তন করুন! এছাড়াও, এই ডিভাইসের জন্য একটি শালীন 9v ব্যাটারি প্রয়োজন, বলুন 8v এরও বেশি সম্ভাবনা রয়েছে … এর বাইরে এটি বেশি শক্তি ব্যবহার করে না। অনেক অব্যবহৃত পিন আছে, তাই অবশ্যই আপনি আরো বিশৃঙ্খলার জন্য আরো সুইচ নিয়ন্ত্রণ করতে তাদের ব্যবহার করতে পারেন, কিন্তু এটি আমার উদ্দেশ্যে যথেষ্ট ছিল। পরবর্তী ধাপ হল সোর্স কোড যা আমি লিখেছিলাম এই জিনিসটি চালু করার জন্য। "চালু" এবং "বন্ধ" অবস্থার জন্য ডিফল্ট দৈর্ঘ্য যথাক্রমে প্রায় 10 সেকেন্ড এবং 13 মিনিট। এই মানগুলি কীভাবে পরিবর্তন করা যায় সে সম্পর্কে কোডে মন্তব্য রয়েছে। অবশেষে, দয়া করে টাইমারগুলিকে টুইক করার জন্য "nop" ফাংশনের ব্যাপক ব্যবহার (এটি একটি CPU চক্র কিছুই করে না) ব্যয় করে। এটি অপ্রয়োজনীয় কারণ এটি rjmp ফাংশনটি ভেঙে দিতে পারে যদি আপনি কতগুলি ব্যবহার করেন সে সম্পর্কে সতর্ক না হন!

ধাপ 2: সোর্স কোড

শুরু করুন:

. INCLUDE "tn26def.inc"; সংজ্ঞা ফাইল। এর জন্য গুগল যদি আপনার একটি অনুলিপি প্রয়োজন হয়। clr r30 clr r29 clr r28 clr r27 ldi r28, 0b00000000 ldi r27, 0b11111111 ldi r26, 0b00000000 clr r25 আউট DDRA, r27 out PORTA, r28 TIMER: inc r30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop cpi r30, 0b11111111 breq TIMER2 rjmp TIMER TIMER2: nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc no r29 cpi r29, tb r r11 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop inc no rop cpi r25, 0b11111111; এই সংখ্যাটি কমিয়ে "অফ" টাইম ব্রেক FUNC rjmp টিমার FUNC: nop nop cpi, 0x00 breq FUNC2 ডিসেম্বর r28 CLR R30 CLR r29 CLR r25 আউট Porta, r28 rjmp টাইমার FUNC2: nop nop Inc r28 আউট Porta, r28 CLR r25 CLR R30 CLR r29 rjmp TIMER4 TIMER4: Inc R30 nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop nop np cpi r30, 0b11111111 breq TIMER5 rjmp TIMER4 TIMER5: nop nop nop nop nop nop nop nop nop nop nop nop inc r29 cpi r29, 0b11111 111 breq TIMER6 rjmp TIMER4 TIMER6: inc r25 cpi r25, 0b00000011; টাইম ব্রেক FUNC rjmp TIMER4 এ "অন" বাড়াতে এই সংখ্যাটি বাড়ান

ধাপ 3: চূড়ান্ত নোট

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

প্রস্তাবিত: