সুচিপত্র:

আরডুইনো: স্টেপার মোটরের জন্য যথার্থ লিবি: 19 টি ধাপ
আরডুইনো: স্টেপার মোটরের জন্য যথার্থ লিবি: 19 টি ধাপ

ভিডিও: আরডুইনো: স্টেপার মোটরের জন্য যথার্থ লিবি: 19 টি ধাপ

ভিডিও: আরডুইনো: স্টেপার মোটরের জন্য যথার্থ লিবি: 19 টি ধাপ
ভিডিও: স্টেপার মোটর সম্পর্কে বেসিক ধারণা | Introduction to Stepper Motor 2024, জুলাই
Anonim
Image
Image
গ্লোবাল ভেরিয়েবলস
গ্লোবাল ভেরিয়েবলস

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

এই লাইব্রেরির একটি গুরুত্বপূর্ণ বৈশিষ্ট্য হল এটি আপনাকে আপনার নিজস্ব CNC মেশিন তৈরি করতে দেয়, যা অগত্যা শুধু X, Y নয়, বরং একটি বিভাগ সুইচও, উদাহরণস্বরূপ, কারণ এটি একটি প্রস্তুত GRBL নয়, বরং প্রোগ্রামিং যে আপনাকে আপনার জন্য আদর্শ মেশিন তৈরি করতে দেয়।

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

ধাপ 1: স্টেপড্রাইভার লাইব্রেরি

এই লাইব্রেরিটি বাজারে তিনটি সবচেয়ে সাধারণ চালকের ধরনকে অন্তর্ভুক্ত করে: A4988, DRV8825, এবং TB6600। এটি চালকদের পিনগুলি কনফিগার করে, তাদের স্লিপ মোডে রিসেট এবং প্লেসমেন্ট করার অনুমতি দেয়, সেইসাথে সক্ষম পিনে সক্রিয় মোটর আউটপুটগুলি সক্রিয় এবং নিষ্ক্রিয় করে। এটি ড্রাইভারের মাইক্রো-স্টেপ পিনের ইনপুট সেট করে এবং সুইচ এবং তাদের সক্রিয়করণের স্তর (উচ্চ বা নিম্ন) সীমিত করে। এটিতে মিমি / সেকেন্ডে ক্রমাগত ত্বরণ, মিমি / সেকেন্ডে সর্বোচ্চ গতি এবং মিমি / সেকেন্ডে সর্বনিম্ন গতি সহ মোটর চলাচলের কোড রয়েছে।

যারা অ্যাকসিলারেশন এবং এন্ড অফ স্ট্রোক সহ স্টেপ মোটর ভিডিওর ১ এবং ২ অংশ দেখেছেন তাদের জন্য এই নতুন লাইব্রেরিটি আজই ডাউনলোড করুন, কারণ আমি প্রথম ফাইলটিতে কিছু পরিবর্তন করেছি যার ব্যবহার সহজতর করার জন্য।

ধাপ 2: গ্লোবাল ভেরিয়েবলস

গ্লোবাল ভেরিয়েবলের প্রত্যেকটির জন্য আমি ঠিক কি দেখাই।

ধাপ 3: ফাংশন - ড্রাইভার পিন সেট করা

কার্যাবলী - ড্রাইভার পিন সেট করা
কার্যাবলী - ড্রাইভার পিন সেট করা

এখানে, আমি কিছু পদ্ধতি বর্ণনা করি।

আমি আউটপুট হিসাবে Pinout সেটিং এবং Arduino পিন সেট করেছি।

ধাপ 4: ফাংশন - ড্রাইভারের প্রাথমিক কাজ

কার্যাবলী - চালকের মৌলিক কাজ
কার্যাবলী - চালকের মৌলিক কাজ

এই অংশে, আমরা ড্রাইভারের কনফিগারেশন এবং এর মৌলিক ফাংশন নিয়ে কাজ করি।

ধাপ 5: কার্যাবলী - মোটর ধাপ সেটিং

কার্যাবলী - মোটর স্টেপ সেটিং
কার্যাবলী - মোটর স্টেপ সেটিং
কার্যাবলী - মোটর স্টেপ সেটিং
কার্যাবলী - মোটর স্টেপ সেটিং

কোডের এই ধাপে, আমরা প্রতি মিলিমিটারে ধাপের পরিমাণ কনফিগার করি যা মোটরকে চালাতে হবে।

ধাপ 6: ফাংশন - মোটর স্টেপ মোড সেট করা

কার্যাবলী - মোটর স্টেপ মোড সেট করা
কার্যাবলী - মোটর স্টেপ মোড সেট করা
কার্যাবলী - মোটর স্টেপ মোড সেট করা
কার্যাবলী - মোটর স্টেপ মোড সেট করা
কার্যাবলী - মোটর স্টেপ মোড সেট করা
কার্যাবলী - মোটর স্টেপ মোড সেট করা

এই টেবিলটি মোটর স্টেপ মোডের সেটিংস দেখায়। এখানে কিছু উদাহরণঃ.

ধাপ 7: ফাংশন - সীমা সুইচ সেট করা

কার্যাবলী - সীমা সুইচ সেট করা
কার্যাবলী - সীমা সুইচ সেট করা

এখানে, আমাকে সম্পূর্ণ এবং বুলিয়ান মানগুলি পড়তে হবে। সর্বাধিক এবং সর্বনিম্ন সীমা এন্ডপিন সেট করার সময় সক্রিয় কীটি উপরে বা নিচে কিনা তা নির্ধারণ করা প্রয়োজন।

ধাপ 8: ফাংশন - সীমা সুইচ পড়া

কার্যাবলী - সীমা সুইচ পড়া
কার্যাবলী - সীমা সুইচ পড়া
কার্যাবলী - সীমা সুইচ পড়া
কার্যাবলী - সীমা সুইচ পড়া
কার্যাবলী - সীমা সুইচ পড়া
কার্যাবলী - সীমা সুইচ পড়া

এই অংশটি গত সপ্তাহে আমি যে লিবটি উপলব্ধ করেছি তার থেকে আলাদা। আমি কেন এটি পরিবর্তন করেছি? ঠিক আছে, আমি অন্যদের প্রতিস্থাপন করার জন্য ই -রিড তৈরি করেছি। এখানে, eRead LVL, digitalRead (pin) পড়বে এবং TRUE ফিরিয়ে দেবে। এই সব উচ্চ সঞ্চালন করা প্রয়োজন। সক্রিয় কী সহ নিম্নলিখিত কাজটি নিম্ন স্তরে হবে। আমি আপনাকে এটি "সত্য" টেবিল দেখানোর জন্য ব্যবহার করব।

কোডের ছবিতে, আমি একটি ডায়াগ্রাম স্থাপন করেছি যা বুঝতে সাহায্য করবে যে, সোর্স কোডের এই অংশে, আমি আরোহণের দিকে অগ্রসর হচ্ছি এবং এখনও কোর্সের শেষের দিকে আঘাত করিনি।

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

শেষ পর্যন্ত, আমি একই আন্দোলন দেখাই, কিন্তু বিপরীত দিকে।

এখানে, আপনি ইতিমধ্যেই কোর্সের শেষ সুইচ সক্রিয় করেছেন।

ধাপ 9: ফাংশন - মোশন সেটআপ

ফাংশন - মোশন সেটআপ
ফাংশন - মোশন সেটআপ

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

ধাপ 10: ফাংশন - মুভমেন্ট ফাংশন

ফাংশন - মুভমেন্ট ফাংশন
ফাংশন - মুভমেন্ট ফাংশন

এই ধাপে, আমরা যে কমান্ডটি মাইক্রোসেকেন্ডে একটি সময়ের মধ্যে কাঙ্ক্ষিত দিকের দিকে একটি পদক্ষেপ নিয়ে যায় তা বিবেচনা করি। আমরা চালকের দিকনির্দেশ পিন, বিলম্বের সময় এবং সীমা সুইচগুলির দিকনির্দেশও সেট করি।

ধাপ 11: ফাংশন - মুভমেন্ট ফাংশন - ভেরিয়েবল

ফাংশন - মুভমেন্ট ফাংশন - ভেরিয়েবল
ফাংশন - মুভমেন্ট ফাংশন - ভেরিয়েবল

এই অংশে, আমরা এমন সব ভেরিয়েবলগুলি কনফিগার করি যা সর্বাধিক এবং সর্বনিম্ন গতি, গতিপথের দূরত্ব এবং অন্যদের মধ্যে গতিপথকে ব্যাহত করার জন্য প্রয়োজনীয় পদক্ষেপগুলি অন্তর্ভুক্ত করে।

ধাপ 12: ফাংশন - আন্দোলন ফাংশন - ত্বরণ

ফাংশন - মুভমেন্ট ফাংশন - ত্বরণ
ফাংশন - মুভমেন্ট ফাংশন - ত্বরণ
ফাংশন - মুভমেন্ট ফাংশন - ত্বরণ
ফাংশন - মুভমেন্ট ফাংশন - ত্বরণ

এখানে, আমি কিভাবে ত্বরণ ডেটাতে এসেছি সে সম্পর্কে কিছু বিবরণ উপস্থাপন করছি, যা টরিসেলির সমীকরণের মাধ্যমে গণনা করা হয়েছিল, কারণ এটি ত্বরণকে কাজ করার জন্য স্থানগুলি বিবেচনা করে এবং সময় নয়। কিন্তু, এখানে এটা বোঝা গুরুত্বপূর্ণ যে এই সমীকরণটি কেবল কোডের একটি লাইন।

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

ধাপ 13: ফাংশন - মোশন ফাংশন - অবিচ্ছিন্ন গতি

ফাংশন - মোশন ফাংশন - ক্রমাগত গতি
ফাংশন - মোশন ফাংশন - ক্রমাগত গতি
ফাংশন - মোশন ফাংশন - ক্রমাগত গতি
ফাংশন - মোশন ফাংশন - ক্রমাগত গতি

এখানে আমরা ত্বরণে ব্যবহৃত ধাপের সংখ্যা রাখি, আমরা ক্রমাগত গতিতে চলতে থাকি এবং সর্বাধিক গতির সাথে রাখি, যা নীচের ছবিতে দেখা যাবে।

ধাপ 14: ফাংশন - আন্দোলন ফাংশন - হ্রাস

ফাংশন - মুভমেন্ট ফাংশন - বিলুপ্তি
ফাংশন - মুভমেন্ট ফাংশন - বিলুপ্তি
ফাংশন - মুভমেন্ট ফাংশন - বিলুপ্তি
ফাংশন - মুভমেন্ট ফাংশন - বিলুপ্তি

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

ধাপ 15: ফাংশন - মোশন ফাংশন - অবিচ্ছিন্ন গতি

ফাংশন - মোশন ফাংশন - ক্রমাগত গতি
ফাংশন - মোশন ফাংশন - ক্রমাগত গতি
ফাংশন - মোশন ফাংশন - ক্রমাগত গতি
ফাংশন - মোশন ফাংশন - ক্রমাগত গতি

আমরা গতিপথের দ্বিতীয়ার্ধে কাজ করার জন্য ক্রমাগত গতিতে ফিরে আসি, যেমনটি নীচে দেখা গেছে।

ধাপ 16: ফাংশন - মুভ ফাংশন - মুভ টার্নস

ফাংশন - মুভ ফাংশন - মুভ টার্নস
ফাংশন - মুভ ফাংশন - মুভ টার্নস

এই অংশে, আমরা ইঞ্জিনকে একটি নির্দিষ্ট সংখ্যক মোড়কে কাঙ্ক্ষিত দিকের দিকে নিয়ে যাই, মোড়গুলির সংখ্যাকে মিলিমিটারে রূপান্তর করি। অবশেষে, আমরা মোটরটিকে অনুরোধকৃত দিকে নিয়ে যাই।

ধাপ 17: মোশন চার্ট - অবস্থান বেগ

মোশন চার্ট - অবস্থান বেগ
মোশন চার্ট - অবস্থান বেগ

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

ধাপ 18: মোশন চার্ট - অবস্থান বনাম। অবস্থান

মোশন চার্ট - অবস্থান বনাম। অবস্থান
মোশন চার্ট - অবস্থান বনাম। অবস্থান

এখানে, আমরা ধাপ এবং গতিতে অবস্থান গ্রহণ করি এবং এটিকে মাইক্রোসেকেন্ডে পিরিয়ডে রূপান্তর করি। আমরা এই ধাপে লক্ষ্য করি যে সময়টি বেগের বিপরীত আনুপাতিক।

ধাপ 19: মোশন চার্ট - বেগ বনাম। মুহূর্ত

মোশন চার্ট - বেগ বনাম। মুহূর্ত
মোশন চার্ট - বেগ বনাম। মুহূর্ত

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

প্রস্তাবিত: