সুচিপত্র:
ভিডিও: Pwm2pwm: 4 টি ধাপ
2025 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2025-01-10 13:46
একটি এনকোডারের সাহায্যে ইনপুট PWM সিগন্যালকে অন্য PWM সিগন্যাল আউটপুটে পরিবর্তন করুন।
এই প্রকল্পের জন্ম যখন আমি আমার প্রথম লেজার কাটার কিনেছিলাম। আপনি যে উপাদানটি কাটতে চান সে অনুযায়ী প্রথমবার PWM পাওয়ার সেট করা সহজ নয়। তাই আমি কার্যকর করার সময় শক্তি পরিবর্তন করার জন্য একটি ছোট ডিভাইস তৈরি করতে চাই।
ধাপ 1: কম্পোনেট তালিকা
এই প্রকল্পের জন্য আপনার প্রয়োজন:
- 1 x Oled ডিসপ্লে, আমার ক্ষেত্রে I2C
- 1 x Arduino, আমার ক্ষেত্রে ছোট মাত্রার জন্য arduino মিনি প্রো।
- একটি বোতাম সহ 1 x ট্রিমার।
- 3 x 10k রোধকারী, 2 ট্রিমারের পুল-আপের জন্য এবং একটি টান-ডাউন করার জন্য।
এই ধাপের ছবিতে আপনি লেজার নামক আরেকটি Arduino মিনি প্রো দেখতে পাচ্ছেন, কারণ আমি এই Arduino দিয়ে লেজার কন্ট্রোলারের দক্ষতা (pwm সংকেত) অনুকরণ করেছি।
ধাপ 2: সংযোগ
এই পরিকল্পিতভাবে 3 টি প্রতিরোধক, পুল-আপ এবং পুল-ডাউন সংযোগ করতে ভুলবেন না।
প্রথমবারের জন্য, আমি আপনাকে সুপারিশ করছি যে দ্বিতীয় আরডুইনো (আগের ধাপে লেজার বলা হয়) সংযোগ করার জন্য কোড এবং সংযোগটি পাশাপাশি কাজ করে কিনা তা পরীক্ষা করার জন্য।
আপনি যদি পরিকল্পিত দৃশ্যের সাথে বেশি পরিচিত হন, তাহলে pwmTOpwm.svg খুলুন।
ধাপ 3: Arduino স্কেচ
আপনি GitHub পৃষ্ঠা থেকে আমার কোড অনুলিপি করতে পারেন:
এই কোডের প্রধান দক্ষতা হল "পালসইন" কমান্ডের ইন্টিগ্রেশন, আরো তথ্য:
যখন আপনি মাইক্রোকন্ট্রোলারে একটি PWM সিগন্যাল পরিমাপ করার চেষ্টা করেন তখন আপনাকে গণনা করতে হবে যে পিরিয়ডে কতক্ষণ সিগন্যাল উপরে (বা নিচে) থাকে। আপনি "pulseIn" কমান্ড ব্যবহার করতে পারেন।
যদি আপনি pulseIn সংকেত চক্রান্ত করার চেষ্টা করেন তবে আপনি অস্থির কিছু দেখতে পারেন।
এই সমস্যার সমাধানের জন্য আমাদের মধ্যবর্তী ফিল্টার ব্যবহার করতে হবে, আমার ক্ষেত্রে সূচকীয় চলমান গড় (EMA)।
আপনি এই উদাহরণ দিয়ে এই দুর্দান্ত এবং সহজ ফিল্টারটি চেষ্টা করতে পারেন:
চিন্তা করবেন না, ফিল্টারটি ইতিমধ্যে কোডে সংহত হয়েছে: p।
আপনি যদি দ্বিতীয় Arduino (লেজার) ব্যবহার করেন তাহলে আপনি সেই arduino এ এই উদাহরণটি আপলোড করতে পারেন:
ধাপ 4: পিসিবি
আমি কিক্যাডের সাথে এই প্রকল্পের জন্য একটি পিসিবি তৈরি করতে চাই এবং এটি ভাগ করে নিতে চাই।
যদি আমি পিসিবিতে পরিবর্তন করি তবে আমি সেগুলি গিটহাব পৃষ্ঠায় ভাগ করব।