সুচিপত্র:

ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই: 8 টি ধাপ (ছবি সহ)
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই: 8 টি ধাপ (ছবি সহ)

ভিডিও: ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই: 8 টি ধাপ (ছবি সহ)

ভিডিও: ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই: 8 টি ধাপ (ছবি সহ)
ভিডিও: 125টি সবচেয়ে উদ্ভাবনী বৈদ্যুতিক যান এবং ব্যক্তিগত পরিবহন 2024, জুন
Anonim
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই
ডিজিটাল ইউএসবি সি চালিত ব্লুটুথ পাওয়ার সাপ্লাই

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

এই নির্দেশে আমি আপনাকে দেখাবো ঠিক কিভাবে এটি তৈরি করতে হয়: একটি ডিজিটাল পাওয়ার সাপ্লাই, যা ইউএসবি সি -তে চালিত হয়।

এই প্রকল্পটি আমার পূর্ববর্তী পাওয়ার সাপ্লাই এর একটি বিবর্তন, যা ব্যাটারি চালিত ছিল এবং এর একটি ডিসপ্লে এবং গাঁট ছিল। এখানে দেখুন! যাইহোক, আমি ছোট হতে চেয়েছিলাম, তাই আমি এটি তৈরি করেছি!

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

আমি পুরো নকশা প্রক্রিয়াটি দেখাব, এবং সমস্ত প্রকল্প ফাইলগুলি আমার গিটহাব পৃষ্ঠায় পাওয়া যাবে:

চল শুরু করি!

ধাপ 1: বৈশিষ্ট্য এবং খরচ

বৈশিষ্ট্য এবং খরচ
বৈশিষ্ট্য এবং খরচ

বৈশিষ্ট্য

  • ইউএসবি সি দ্বারা চালিত
  • ব্লুটুথের মাধ্যমে অ্যান্ড্রয়েড অ্যাপের মাধ্যমে নিয়ন্ত্রিত
  • ইউএসবি সি এর মাধ্যমে জাভার মাধ্যমে নিয়ন্ত্রিত
  • কনস্ট্যান্ট ভোল্টেজ এবং ধ্রুব কারেন্ট মোড
  • একটি কম শব্দ রৈখিক নিয়ন্ত্রক ব্যবহার করে, বিদ্যুৎ অপচয় কমানোর জন্য একটি ট্র্যাকিং প্রি -রেগুলেটর দ্বারা পূর্বে
  • ATMEGA32U4 দ্বারা চালিত, Arduino IDE দিয়ে প্রোগ্রাম করা
  • এটি পোর্টেবল করার জন্য একটি ইউএসবি সি ব্যাটারি ব্যাংক দ্বারা চালিত হতে পারে
  • ইউএসবি সি এবং অ্যাপল চার্জার সনাক্তকরণ
  • BNC অ্যাডাপ্টারের সাথে সামঞ্জস্যের জন্য 18 মিমি ফাঁকা কলা প্লাগ

স্পেসিফিকেশন

  • 0 - 1A, 1 mA এর ধাপ (10 বিট DAC)
  • 0 - 25V, 25 mV এর ধাপ (10 বিট DAC) (সত্য 0V অপারেশন)
  • ভোল্টেজ পরিমাপ: 25 এমভি রেজোলিউশন (10 বিট এডিসি)
  • বর্তমান পরিমাপ: <40mA: 10uA রেজোলিউশন (ina219) <80mA: 20uA রেজোলিউশন (ina219) <160mA: 40uA রেজোলিউশন (ina219) <320mA: 80uA রেজোলিউশন (ina219)> 320mA: 1mA রেজোলিউশন (10 বিট ADC)

খরচ

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

ধাপ 2: কর্মপরিকল্পনা ও তত্ত্ব

কর্মপরিকল্পনা এবং অপারেশনের তত্ত্ব
কর্মপরিকল্পনা এবং অপারেশনের তত্ত্ব

সার্কিটের ক্রিয়াকলাপ বুঝতে, আমাদের পরিকল্পিতভাবে দেখতে হবে। আমি এটিকে কার্যকরী ব্লকে বিভক্ত করেছি, যাতে এটি বোঝা সহজ হয়; আমি এইভাবে ধাপে ধাপে অপারেশন ব্যাখ্যা করব এই অংশটি বেশ গভীরভাবে এবং একটি ভাল ইলেকট্রনিক্স জ্ঞান প্রয়োজন। আপনি যদি কেবল সার্কিটটি কীভাবে তৈরি করতে চান তা জানতে চান তবে আপনি পরবর্তী ধাপে যেতে পারেন।

প্রধান ব্লক

অপারেশনটি LT3080 চিপের উপর ভিত্তি করে তৈরি: এটি একটি লিনিয়ার ভোল্টেজ রেগুলেটর, যা কন্ট্রোল সিগন্যালের ভিত্তিতে ভোল্টেজ নামাতে পারে। এই নিয়ন্ত্রণ সংকেত একটি মাইক্রোকন্ট্রোলার দ্বারা উৎপন্ন হবে; কিভাবে এটি করা হয়, বিস্তারিতভাবে পরে ব্যাখ্যা করা হবে।

ভোল্টেজ সেটিং

LT3080 এর চারপাশে সার্কিটরি উপযুক্ত নিয়ন্ত্রণ সংকেত তৈরি করে। প্রথমে, আমরা কিভাবে ভোল্টেজ সেট করা হয় তা একবার দেখে নেব। মাইক্রোকন্ট্রোলার থেকে ভোল্টেজ সেটিং হল একটি PWM সংকেত (PWM_Vset), যা লোপাস ফিল্টার (C23 & R32) দ্বারা ফিল্টার করা হয়। এটি একটি এনালগ ভোল্টেজ তৈরি করে - 0 থেকে 5 V এর মধ্যে - ওয়ান্টেড আউটপুট ভোল্টেজের সমানুপাতিক। যেহেতু আমাদের আউটপুট পরিসীমা 0 - 25 V, তাই আমাদের এই সংকেতকে 5 এর গুণক দিয়ে বাড়িয়ে তুলতে হবে। সেট পিনের লাভ R31 এবং R36 দ্বারা নির্ধারিত হয়। ত্রুটিগুলি কমানোর জন্য এই প্রতিরোধকগুলি 0.1% সহনশীল। R39 এবং R41 এখানে কোন ব্যাপার না, কারণ তারা প্রতিক্রিয়া লুপের অংশ।

বর্তমান সেটিং

এই সেট পিনটি দ্বিতীয় সেটিং এর জন্যও ব্যবহার করা যেতে পারে: বর্তমান মোড। আমরা বর্তমান ড্র পরিমাপ করতে চাই, এবং আউটপুট বন্ধ যখন এটি চেয়েছিলেন বর্তমান অতিক্রম। অতএব, আমরা মাইক্রোকন্ট্রোলার দ্বারা উৎপন্ন একটি PWM সিগন্যাল (PWM_Iset) দিয়ে আবার শুরু করি, যা এখন লো -পাস ফিল্টার করা হয়েছে এবং 0 - 5 V পরিসীমা থেকে 0 - 2.5 V পরিসরে যাওয়ার জন্য ক্ষয়প্রাপ্ত। এই ভোল্টেজটি এখন opamp U1B এর তুলনামূলক কনফিগারেশন দ্বারা বর্তমান ইন্দ্রিয় প্রতিরোধক (ADC_Iout, নীচে দেখুন) জুড়ে ভোল্টেজ ড্রপের সাথে তুলনা করা হয়েছে। যদি বর্তমান খুব বেশি হয়, এটি একটি নেতৃত্ব চালু করবে, এবং LT3080 এর সেট লাইনটি মাটিতে (Q1 এর মাধ্যমে) টানবে, এইভাবে আউটপুট বন্ধ করে দেবে। বর্তমানের পরিমাপ, এবং ADC_Iout সংকেত প্রজন্ম নিম্নরূপ করা হয়। আউটপুট কারেন্ট R22 এর মধ্য দিয়ে প্রবাহিত হয়। যখন এই প্রতিরোধকের মধ্য দিয়ে কারেন্ট প্রবাহিত হয়, তখন এটি একটি ভোল্টেজ ড্রপ তৈরি করে, যা আমরা পরিমাপ করতে পারি এবং এটি LT3080 এর আগে স্থাপন করা হয়, যেহেতু এটির মধ্যে ভোল্টেজ ড্রপ আউটপুট ভোল্টেজকে প্রভাবিত করতে পারে না। ভোল্টেজ ড্রপটি একটি ডিফারেনশিয়াল এম্প্লিফায়ার (U7B) দিয়ে 5 এর লাভের সাথে পরিমাপ করা হয়। এর ফলে 0 - 2.5 V এর ভোল্টেজ পরিসীমা হয় (পরবর্তীতে আরো), তাই কারেন্টের PWM সিগন্যালে ভোল্টেজ ডিভাইডার। বাফার (U7A) আছে নিশ্চিত করার জন্য যে, R27, R34 এবং R35 রোধকারীর মধ্যে প্রবাহিত বর্তমান সেন্স রেসিস্টরের মধ্য দিয়ে যাচ্ছে না, যা এর পড়াকে প্রভাবিত করবে। এছাড়াও মনে রাখবেন যে এটি একটি রেল-টু-রেল অপ্যাম্প হওয়া উচিত, কারণ ইতিবাচক ইনপুটে ইনপুট ভোল্টেজ সরবরাহ ভোল্টেজের সমান। নন ইনভার্টিং এম্প্লিফায়ার শুধুমাত্র কোর্স পরিমাপের জন্য যদিও, খুব সুনির্দিষ্ট পরিমাপের জন্য, আমাদের বোর্ডে INA219 চিপ রয়েছে। এই চিপ আমাদের খুব ছোট স্রোত পরিমাপ করতে দেয়, এবং I2C এর মাধ্যমে সম্বোধন করা হয়।

অতিরিক্ত জিনিস

LT3080 এর আউটপুটে আমাদের আরো কিছু জিনিস আছে। প্রথমত, একটি বর্তমান সিঙ্ক (LM334) আছে। এটি LT3080 কে স্থিতিশীল করতে 677 uA (রোধকারী R46 দ্বারা নির্ধারিত) এর একটি ধ্রুবক স্রোত টানে। তবে এটি মাটির সাথে সংযুক্ত নয়, কিন্তু VEE এর সাথে একটি নেতিবাচক ভোল্টেজ। LT3080 কে 0 V তে চালানোর অনুমতি দেওয়ার জন্য এটি প্রয়োজন। যখন মাটিতে সংযুক্ত থাকে, সর্বনিম্ন ভোল্টেজ প্রায় 0.7 V হবে। এটি যথেষ্ট কম মনে হয়, কিন্তু মনে রাখবেন এটি আমাদের পাওয়ার সাপ্লাই সম্পূর্ণভাবে বন্ধ করতে বাধা দেয়। দুর্ভাগ্যক্রমে, এই সার্কিটটি LT3080 এর আউটপুটে রয়েছে, যার অর্থ হল এর বর্তমান আউটপুট কারেন্টে আমরা অবদান রাখতে চাই। ভাগ্যক্রমে, এটি ধ্রুবক তাই আমরা এই স্রোতের জন্য ক্যালিব্রেট করতে পারি। জেনার ডায়োড D7 আউটপুট ভোল্টেজকে ক্ল্যাম্প করতে ব্যবহৃত হয় যদি এটি 25 V এর উপরে চলে যায় এবং রেসিস্টার ডিভাইডার আউটপুট ভোল্টেজ পরিসীমা 0 - 25 V থেকে 0 - 2.5 V (ADC_Vout) এ নামিয়ে দেয়। বাফার (U7D) নিশ্চিত করে যে প্রতিরোধক আউটপুট থেকে কারেন্ট আঁকছে না।

চার্জ পাম্প

আমরা আগে উল্লিখিত নেতিবাচক ভোল্টেজ একটি কৌতূহলী ছোট সার্কিট দ্বারা উত্পন্ন হয়: চার্জ পাম্প। এটি মাইক্রোকন্ট্রোলারের 50% PWM (PWM) দ্বারা খাওয়ানো হয়।

বুস্ট কনভার্টার

আসুন এখন আমাদের প্রধান ব্লকের ইনপুট ভোল্টেজটি দেখুন: VCC। আমরা দেখি যে এটি 5 - 27V, কিন্তু অপেক্ষা করুন, USB সর্বোচ্চ 5 V দেয়? প্রকৃতপক্ষে, এবং এজন্যই আমাদের একটি তথাকথিত বুস্ট রূপান্তরকারী সহ ভোল্টেজ বাড়াতে হবে। আমরা সর্বদা ভোল্টেজকে 27 V তে উন্নীত করতে পারি, আমরা কোন আউটপুট চাই না কেন; যাইহোক, এটি LT3080 তে প্রচুর শক্তি অপচয় করবে এবং জিনিসগুলি গরম হয়ে উঠবে! সুতরাং এটি করার পরিবর্তে, আমরা ভোল্টেজকে আউটপুট ভোল্টেজের চেয়ে কিছুটা বেশি বাড়িয়ে তুলব। প্রায় 2.5 V উচ্চতর উপযুক্ত, বর্তমান অনুভূতি প্রতিরোধক এবং LT3080 এর ড্রপআউট ভোল্টেজের ভোল্টেজ ড্রপের জন্য। বুস্ট কনভার্টারের আউটপুট সিগন্যালে প্রতিরোধক দ্বারা ভোল্টেজ সেট করা হয়। ফ্লাইতে এই ভোল্টেজ পরিবর্তন করতে, আমরা একটি ডিজিটাল পোটেন্টিওমিটার, MCP41010 ব্যবহার করি, যা SPI এর মাধ্যমে নিয়ন্ত্রিত হয়।

ইউএসবি সি

এটি আমাদের আসল ইনপুট ভোল্টেজের দিকে নিয়ে যায়: ইউএসবি পোর্ট! ইউএসবি সি ব্যবহার করার কারণ (ইউএসবি টাইপ 1.১ সঠিক হতে হবে, ইউএসবি সি শুধু কানেক্টর টাইপ) কারণ এটি ৫ এ 3A এর কারেন্টের অনুমতি দেয়, যা ইতিমধ্যে বেশ কিছু শক্তি। কিন্তু একটি ধরা আছে, ডিভাইসটি এই বর্তমানটি আঁকতে এবং হোস্ট ডিভাইসের সাথে 'আলোচনা' করার জন্য সঙ্গতিপূর্ণ হতে হবে। অনুশীলনে, এটি দুটি 5.1k পুলডাউন প্রতিরোধক (R12 এবং R13) CC1 এবং CC2 লাইনের সাথে সংযুক্ত করে করা হয়। ইউএসবি 2 সামঞ্জস্যের জন্য, ডকুমেন্টেশন কম স্পষ্ট। সংক্ষেপে: আপনি যতটুকু বর্তমান চান তা আঁকুন, যতক্ষণ হোস্ট এটি সরবরাহ করতে পারে। ইউএসবি বাস ভোল্টেজ পর্যবেক্ষণ করে এটি পরীক্ষা করা যেতে পারে: একটি ভোল্টেজ 4.25V এর নিচে নেমে যায়, ডিভাইসটি খুব বেশি কারেন্ট টানে। এটি তুলনাকারী U1A দ্বারা সনাক্ত করা হয়েছে এবং আউটপুট নিষ্ক্রিয় করবে। এটি মাইক্রোকন্ট্রোলারকে সর্বোচ্চ স্রোত সেট করার জন্য একটি সংকেত পাঠায়। বোনাস হিসেবে আপেল এবং স্যামসাং চার্জারের চার্জার আইডি সনাক্তকরণের জন্য প্রতিরোধক যুক্ত করা হয়েছে।

5V নিয়ন্ত্রক

Arduino এর 5 V সরবরাহ ভোল্টেজ সাধারণত USB থেকে সরাসরি আসে। কিন্তু যেহেতু ইউএসবি ভোল্টেজ ইউএসবি স্পেক অনুযায়ী 4.5 এবং 5.5 V এর মধ্যে পরিবর্তিত হতে পারে, এটি যথেষ্ট সুনির্দিষ্ট নয়। অতএব, একটি 5V নিয়ন্ত্রক ব্যবহার করা হয়, যা নিম্ন এবং উচ্চতর ভোল্টেজ থেকে 5V উৎপন্ন করতে পারে। তবুও, এই ভোল্টেজটি ভীষণভাবে সুনির্দিষ্ট নয়, তবে এটি একটি ক্রমাঙ্কন পদক্ষেপের মাধ্যমে সমাধান করা হয় যেখানে PWM সংকেতের দায়িত্ব চক্র সেই অনুযায়ী সামঞ্জস্য করা হয়। এই ই ভোল্টেজটি R42 এবং R43 দ্বারা গঠিত ভোল্টেজ বিভাজক দ্বারা পরিমাপ করা হয়। কিন্তু যেহেতু আমার আর কোন ফ্রি ইনপুট ছিল না, তাই আমাকে একটি পিন পুল ডবল ডিউটি করতে হয়েছিল। যখন পাওয়ার সাপ্লাই বুট হয়, এই পিনটি প্রথমে ইনপুট হিসেবে সেট করা হয়: এটি সাপ্লাই রেল পরিমাপ করে এবং নিজেই ক্যালিব্রেট করে। পরবর্তী, এটি একটি আউটপুট হিসাবে সেট করা হয় এবং এটি পটেন্টিওমিটারের চিপ সিলেক্ট লাইন চালাতে পারে।

2.56 V ভোল্টেজ রেফারেন্স

এই ছোট্ট চিপটি খুব নির্ভুল 2.56 V ভোল্টেজ রেফারেন্স প্রদান করে। এটি এনালগ সংকেত ADC_Vout, ADC_Iout, ADC_Vbatt- এর রেফারেন্স হিসেবে ব্যবহৃত হয়। এই কারণেই আমাদের এই সংকেতগুলিকে 2.5 V এ নামানোর জন্য ভোল্টেজ ডিভাইডারের প্রয়োজন ছিল।

এফটিডিআই

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

ব্লুটুথ

ব্লুটুথ অংশটি খুবই সহজ: একটি অফ-দ্য-শেলফ ব্লুটুথ মডিউল যোগ করা হয়েছে এবং আমাদের জন্য সবকিছুর যত্ন নেয়। যেহেতু এর লজিক লেভেল 3.3V (মাইক্রোকন্ট্রোলারের জন্য VS 5V) একটি ভোল্টেজ ডিভাইডার সিগন্যাল লেভেল শিফট করতে ব্যবহৃত হয়।

এবং যে সব এটা আছে!

ধাপ 3: পিসিবি এবং ইলেকট্রনিক্স

পিসিবি এবং ইলেকট্রনিক্স
পিসিবি এবং ইলেকট্রনিক্স
পিসিবি এবং ইলেকট্রনিক্স
পিসিবি এবং ইলেকট্রনিক্স
পিসিবি এবং ইলেকট্রনিক্স
পিসিবি এবং ইলেকট্রনিক্স

এখন যেহেতু আমরা বুঝতে পেরেছি কিভাবে সার্কিট কাজ করে, আমরা এটি নির্মাণ শুরু করতে পারি! আপনি কেবল আপনার প্রিয় প্রস্তুতকারকের কাছ থেকে অনলাইনে PCB অর্ডার করতে পারেন (আমার খরচ প্রায় $ 10), গারবার ফাইলগুলি আমার গিটহাব থেকে পাওয়া যাবে, উপকরণ বিলের সাথে। পিসিবিকে একত্রিত করা মূলত সিল্কস্ক্রিন এবং উপকরণের বিল অনুসারে উপাদানগুলি সোল্ডার করার বিষয়।

যদিও আমার আগের পাওয়ার সাপ্লাইতে কেবলমাত্র গর্তের উপাদান ছিল, আমার নতুনটির জন্য আকারের সীমাবদ্ধতা এটিকে অসম্ভব করে তুলেছিল। বেশিরভাগ উপাদান এখনও ঝালাই করা তুলনামূলকভাবে সহজ, তাই ভয় পাবেন না। একটি দৃষ্টান্ত হিসাবে: আমার একজন বন্ধু যিনি আগে কখনও বিক্রি করেননি এই ডিভাইসটি তৈরি করতে!

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

2 টি কলা জ্যাক ব্যতীত সমস্ত উপাদান বিক্রি করা যেতে পারে, যা আমরা পরবর্তী ধাপে মাউন্ট করব!

ধাপ 4: কেস এবং সমাবেশ

কেস এবং সমাবেশ
কেস এবং সমাবেশ
কেস এবং সমাবেশ
কেস এবং সমাবেশ
কেস এবং সমাবেশ
কেস এবং সমাবেশ

পিসিবি তৈরি করে, আমরা কেসটিতে যেতে পারি। আমি বিশেষভাবে একটি অ্যালুমিনিয়াম 20x50x80mm কেস (https://www.aliexpress.com/item/Aluminum-PCB-Instr…) এর চারপাশে PCB ডিজাইন করেছি, তাই অন্য কেস ব্যবহার করার পরামর্শ দেওয়া হয় না। যাইহোক, আপনি সবসময় একই মাত্রা সহ একটি কেস 3D ছাপাতে পারেন।

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

এখন কিছু সিল্ক প্যাড যোগ করা, এবং সুপার আঠালো একটি ছোট ড্রপ সঙ্গে তাদের জায়গায় রাখা একটি ভাল ধারণা। এগুলি LT3080 এবং LT1370 এবং কেসের মধ্যে তাপ স্থানান্তরের অনুমতি দেবে। তাদের ভুলে যাবেন না!

আমরা এখন সামনের প্যানেলে ফোকাস করতে পারি, যা ঠিক জায়গায় স্ক্রু করে। উভয় প্যানেলের জায়গায় আমরা এখন কেসটিতে অ্যাসেম্বলি ertুকিয়ে সব বন্ধ করে দিতে পারি। এই মুহুর্তে হার্ডওয়্যারটি সম্পন্ন হয়েছে, এখন কেবল সফটওয়্যারের সাহায্যে কিছু জীবনকে উড়িয়ে দেওয়া বাকি আছে!

ধাপ 5: Arduino কোড

Arduino কোড
Arduino কোড

এই প্রকল্পের মস্তিষ্ক হল ATMEGA32U4, যা আমরা Arduino IDE দিয়ে প্রোগ্রাম করব। এই বিভাগে, আমি কোডের মৌলিক ক্রিয়াকলাপের মধ্য দিয়ে যাব, বিস্তারিত কোডের ভিতরে মন্তব্য হিসাবে পাওয়া যাবে।

কোডটি মূলত এই ধাপগুলির মাধ্যমে লুপ করে:

  1. অ্যাপে ডেটা পাঠান
  2. অ্যাপ থেকে ডেটা পড়ুন
  3. ভোল্টেজ পরিমাপ করুন
  4. বর্তমান পরিমাপ করুন
  5. পোল বাটন

ইউএসবি ওভার কারেন্ট একটি ইন্টারাপ্ট সার্ভিস রুটিন দ্বারা পরিচালিত হয় যাতে এটি যতটা সম্ভব প্রতিক্রিয়াশীল হয়।

ইউএসবি -তে চিপটি প্রোগ্রাম করার আগে, বুটলোডার বার্ন করা উচিত। এটি একটি ISP প্রোগ্রামারের মাধ্যমে ISP/ICSP পোর্টের (3x2 পুরুষ হেডার) মাধ্যমে করা হয়। বিকল্পগুলি হল AVRISPMK2, USBTINY ISP বা ISP হিসাবে একটি arduino। বোর্ড পাওয়ার পায় তা নিশ্চিত করুন এবং 'বার্ন বুটলোডার' বোতাম টিপুন।

ইউএসবি সি পোর্টের মাধ্যমে কোডটি এখন বোর্ডে আপলোড করা যাবে (যেহেতু চিপে বুটলোডার আছে)। বোর্ড: Arduino মাইক্রো প্রোগ্রামার: AVR ISP / AVRISP MKII এখন আমরা Arduino এবং PC এর মধ্যে মিথস্ক্রিয়া দেখে নিতে পারি।

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

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

আমরা এখন একটি সম্পূর্ণরূপে কার্যকরী পাওয়ার সাপ্লাই আছে, কিন্তু এখনও এটি নিয়ন্ত্রণ করার কোন উপায় নেই। খুবই বিরক্তিকর. তাই আমরা ব্লুটুথের মাধ্যমে পাওয়ার সাপ্লাই নিয়ন্ত্রণ করতে একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করব।

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

অ্যাপটি ব্যবহার করতে, তালিকা থেকে একটি ব্লুটুথ ডিভাইস নির্বাচন করুন: এটি HC-05 মডিউল হিসাবে প্রদর্শিত হবে। সংযুক্ত হলে, সমস্ত সেটিংস পরিবর্তন করা যেতে পারে এবং পাওয়ার সাপ্লাইয়ের আউটপুট পড়া যাবে।

ধাপ 7: জাভা কোড

জাভা কোড
জাভা কোড

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

আমরা বোতাম, টেক্সটফিল্ড ইত্যাদি দিয়ে একটি উইন্ডো তৈরি করে শুরু করি; মৌলিক GUI উপাদান।

এখন মজার অংশ আসে: ইউএসবি পোর্ট যোগ করা, যার জন্য আমি jSerialComm লাইব্রেরি ব্যবহার করেছি। একবার একটি পোর্ট নির্বাচন করা হলে, জাভা যেকোনো ইনকামিং ডেটার জন্য শুনবে। আমরা ডিভাইসে ডেটা পাঠাতে পারি।

উপরন্তু, সমস্ত ইনকামিং ডেটা একটি সিএসভি ফাইলে সংরক্ষণ করা হয়, পরবর্তী ডেটা চিকিৎসার জন্য।

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

যদিও প্রোগ্রামটি বেশ মৌলিক, এটি একটি পিসির মাধ্যমে এটি নিয়ন্ত্রণ করা এবং এর ডেটা লগ করা খুব উপকারী হতে পারে।

ধাপ 8:

ছবি
ছবি
ছবি
ছবি
ছবি
ছবি

এই সমস্ত কাজের পরে, আমাদের এখন সম্পূর্ণরূপে কার্যকরী পাওয়ার সাপ্লাই রয়েছে!

আমরা এখন আমাদের নিজস্ব বাড়িতে তৈরি পাওয়ার সাপ্লাই উপভোগ করতে পারি, যা অন্য অসাধারণ প্রকল্পে কাজ করার সময় কাজে আসবে! এবং সবচেয়ে গুরুত্বপূর্ণ: আমরা পথে অনেক কিছু শিখেছি।

আপনি যদি এই প্রকল্পটি পছন্দ করেন, দয়া করে পকেট সাইজ এবং মাইক্রোকন্ট্রোলার প্রতিযোগিতায় আমাকে ভোট দিন, আমি সত্যিই এটির প্রশংসা করব!

প্রস্তাবিত: