কিভাবে পাইথন দিয়ে একটি Arduino প্রোগ্রাম এবং নিয়ন্ত্রণ করবেন

কিভাবে পাইথন দিয়ে একটি Arduino প্রোগ্রাম এবং নিয়ন্ত্রণ করবেন

পাইথন কোডিং জগতে ঝড় তুলেছে। এই নতুন ভাষার উত্থানের পাশাপাশি, DIY ইলেকট্রনিক্স দৃশ্যও সমৃদ্ধ হয়েছে। ডেভেলপমেন্ট বোর্ড এবং সিঙ্গেল বোর্ড কম্পিউটার যেমন কোম্পানি থেকে আরডুইনো এবং রাস্পবেরি পাই হোম ব্রাউড ইলেকট্রনিক্স তৈরির পদ্ধতি পরিবর্তন করেছে। আপনি যদি পাইথনের সাথে একটি আরডুইনো প্রোগ্রাম করতে পারেন তবে এটি দুর্দান্ত হবে না?





একটি ফ্ল্যাশ ড্রাইভের সাথে করণীয়

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





এই নিবন্ধটি আপনাকে দেখাবে কিভাবে পাইথন প্রোগ্রাম ব্যবহার করে কমান্ড লাইন থেকে একটি Arduino UNO (যদিও কোন Arduino সামঞ্জস্যপূর্ণ বোর্ড এখানে কাজ করতে পারে) সেট আপ করতে হবে। এই টিউটোরিয়ালটি উইন্ডোজ 10 এর জন্য লেখা, তবে ম্যাক এবং লিনাক্সের জন্যও কাজ করে। আপনি চূড়ান্ত ডাবল-ডাউন-ডিআইওয়াই অভিজ্ঞতার জন্য সরাসরি রাস্পবেরি পাই থেকে একটি আরডুইনো নিয়ন্ত্রণ করতে এই ওয়ার্কফ্লো ব্যবহার করতে পারেন।





পাইথনের জন্য আপনার Arduino সেট আপ করা হচ্ছে

আজকের প্রকল্পের জন্য আমরা পাইথন এর জন্য pyFirmata ইন্টারফেস সহ একটি Arduino Uno ব্যবহার করব। আপনি এর জন্য প্রায় যেকোনো Arduino- সামঞ্জস্যপূর্ণ বোর্ড ব্যবহার করতে পারেন, যদিও লেখার সময় শুধুমাত্র Arduino Uno, Mega, Due এবং Nano টিই PyFfirmata ইন্টারফেস দ্বারা সমর্থিত। আপনি যদি ইতিমধ্যেই একজন পাইথন গুরু হন, তাহলে আপনি pyfirmata- এ আপনার নিজের বোর্ড সমর্থন যোগ করতে পারেন - যদি আপনি করেন তবে তাদের GitHub আপডেট করতে ভুলবেন না!

আপনি যদি ইতিমধ্যে না করে থাকেন তবে Arduino IDE ইনস্টল করুন। আপনি যদি মাইক্রোকন্ট্রোলারের জগতে সম্পূর্ণ নতুন হন, আমাদের Arduino জন্য শিক্ষানবিস গাইড সবকিছু জায়গায় পেতে সাহায্য করবে।



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

পাইথন এবং কমান্ড লাইন কন্ট্রোল

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





একবার আপনি পাইথন ইনস্টল করলে, আমরা এটি আপনার সিস্টেমের PATH ভেরিয়েবলে যোগ করতে চাই। এটি আমাদের কমান্ড লাইন থেকে সরাসরি পাইথন কোড চালাতে দেবে, যে ডিরেক্টরিতে এটি ইনস্টল করা আছে সেখানে থাকা প্রয়োজন ছাড়া। আপনি এটি খোলার মাধ্যমে এটি করতে পারেন কন্ট্রোল প্যানেল , খুঁজছি পরিবেশ এবং ক্লিক করুন সিস্টেম পরিবেশ ভেরিয়েবল সম্পাদনা করুন । উইন্ডোর নীচে নির্বাচন করুন পরিবেশগত পরিবর্তনশীল । এটি এই উইন্ডোটি আনবে:

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





ম্যাজিক গ্রীস

পাইথন আমাদের Arduino এর সাথে সুন্দরভাবে কথা বলার জন্য আপনাকে ধাঁধার একটি চূড়ান্ত অংশের প্রয়োজন হবে। এটি একটি পাইথন ইন্টারফেস নামে পরিচিত pyFirmata । Tino de Bruijn দ্বারা নির্মিত এই ইন্টারফেসটি ডাউনলোড করার জন্য উপলব্ধ Github থেকে, যদিও আপনি টাইপ করে সরাসরি কমান্ড লাইন থেকে এটি ইনস্টল করতে পারেন:

pip install pyfirmata

সব ঠিক আছে, এটি ইনস্টল করা উচিত এবং এই মত দেখতে হবে:

যদি এটি ব্যর্থ হয়, তাহলে পাইথন যোগ করুন পরিবেশ সূচক বিভাগ এবং নিশ্চিত করুন যে আপনি আপনার পাইথন ডিরেক্টরিতে সঠিক পথ দিয়েছেন।

মেকিং ইট হ্যাপেন

এখন সবকিছু সেট আপ করা হয়েছে, এবং আপনি এটি পরীক্ষা করার জন্য আপনার Arduino এর জন্য একটি পাইথন প্রোগ্রাম তৈরি করতে পারেন। আপনার পছন্দের একটি IDE খুলুন। আমরা ব্যবহার করব গ্রহন আজ, কিন্তু আপনি সহজেই যেকোনো টেক্সট এডিটর, অথবা ক্লাউডে একটি IDE ব্যবহার করতে পারেন।

একটি নতুন স্ক্রিপ্ট তৈরি করুন, এবং এটি হিসাবে সংরক্ষণ করুন blink.py । স্ট্যান্ডার্ড ব্লিঙ্কিং এলইডি প্রোগ্রামের সাথে traditionতিহ্য ভঙ্গ করে, আপনি একটি প্রোগ্রাম তৈরি করতে যাচ্ছেন যা ব্যবহারকারীকে LED বহন করার আগে যতবার তারা ফ্ল্যাশ করতে চায় তার জন্য অনুরোধ করে। এটি একটি সংক্ষিপ্ত প্রোগ্রাম, যা আপনি করতে পারেন এখানে ডাউনলোড করুন যদি আপনি এটিতে সরাসরি যেতে চান তবে আসুন এটি ভেঙে ফেলি।

প্রথমত, আপনি যা প্রয়োজন তা আমদানি করতে চান pyFirmata মডিউল, স্ট্যান্ডার্ড পাইথন সহ সময় মডিউল

আইফোন 6 আইক্লাউডে ব্যাকআপ করবে না
from pyfirmata import Arduino, util
import time

এখন আপনি Arduino বোর্ড সেট আপ করতে চাইবেন। এই নিবন্ধটি ধরে নেয় আপনি একটি ব্যবহার করছেন Arduino uno বোর্ড, যদিও বেশ কয়েকটি Arduino বোর্ড সমর্থিত। বোর্ড সাপোর্টে বিস্তারিত জানার জন্য pyFirmata github দেখুন।

Arduino IDE তে আপনি কোন COM পোর্টটি ব্যবহার করছেন তা পরীক্ষা করুন এবং ভেরিয়েবল হিসাবে আপনার কোডে প্রবেশ করুন বোর্ড

board = Arduino('COM3')

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

loopTimes = input('How many times would you like the LED to blink: ')
print('Blinking ' + loopTimes + ' times.')

LED বারান্দা যথাযথ সংখ্যক বার করতে, আপনি a ব্যবহার করুন লুপের জন্য । যদি তুমি হও পাইথনে নতুন , ইন্ডেন্টেশনের সাথে যত্ন নিন, কারণ অন্যান্য ভাষার মতো স্পেসগুলি সিনট্যাক্সের অংশ। মনে রাখবেন যে পিন 13 হল আরডুইনো ইউনোর জন্য অনবোর্ড LED, আপনার বোর্ডটি ভিন্ন হলে আপনাকে এটি পরিবর্তন করতে হবে।

for x in range(int(loopTimes)):
board.digital[13].write(1)
time.sleep(0.2)
board.digital[13].write(0)
time.sleep(0.2)

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

আপনার স্ক্রিপ্ট সংরক্ষণ করুন, এবং খুলুন কমান্ড প্রম্পট

ঝলকানো আলো এবং অন্যান্য প্রকাশ

সবকিছু যাওয়ার জন্য প্রস্তুত, আপনাকে যা করতে হবে তা হ'ল স্ক্রিপ্টটি কোথায় রয়েছে এবং এটি চালান। টাইপ করে এটি করুন সিডি [স্ক্রিপ্টের ডিরেক্টরিতে যাওয়ার পথ] এবং তারপর টাইপ করা পাইথন blink.py

সব ঠিক আছে, আপনার প্রোগ্রামটি একটু বিলম্বের সাথে শুরু হবে যেমন Arduino আরম্ভ করবে, আপনাকে একটি সংখ্যার জন্য অনুরোধ করবে, এবং তারপর অনবোর্ড LED ব্যবহার করে অনেকবার ফ্ল্যাশ করবে।

প্রোগ্রাম আউটপুট এই মত হওয়া উচিত:

যত তাড়াতাড়ি আপনি আপনার নির্বাচিত সংখ্যক ঝলকানি পরে এন্টার টিপুন, Arduino আপনার অর্ডার বহন করা উচিত।

ছোট শুরু

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

আপনি যদি a ব্যবহার করেন লিনাক্স সার্ভার বাড়িতে, Arduino বোর্ডের সাথে যোগাযোগের এই পদ্ধতিটি সার্ভারটিকে সম্পূর্ণরূপে DIY হোম অটোমেশন সিস্টেমে প্রসারিত করতে পারে। একটি DIY অটোমেশন সার্কিটের সাথে মাইক্রোকন্ট্রোলার নিয়ন্ত্রণকারী পাইথন স্ক্রিপ্টগুলিকে একত্রিত করে, আপনার NAS স্টোরেজ বক্সটি সম্পূর্ণ নতুন উপকারী ফাংশন নিতে পারে।

নিয়ামক xbox এক সাথে সংযোগ করবে না

এটি চূড়ান্ত DIY অভিজ্ঞতা করতে, কেন না আপনার নিজস্ব NAS বক্স তৈরি করুন এবং আপনার যন্ত্রপাতি নিয়ন্ত্রণ করতেও এটি ব্যবহার করুন? আপনার প্লেক্স সার্ভারে প্লে টিপুন এবং লাইটগুলি স্বয়ংক্রিয়ভাবে বন্ধ হয়ে গেলে কতটা শীতল হবে তা কল্পনা করুন!

আপনি কি ইতিমধ্যে পাইথন ব্যবহার করে আরডুইনো নিয়ন্ত্রণ করছেন? এমন আশ্চর্যজনক সমাধান আছে যা আমরা এখনও জানি না? নীচের মন্তব্য বিভাগে আমাদের জানান!

শেয়ার করুন শেয়ার করুন টুইট ইমেইল আপনার ভার্চুয়ালবক্স লিনাক্স মেশিনগুলিকে সুপারচার্জ করার 5 টি টিপস

ভার্চুয়াল মেশিন দ্বারা দেওয়া খারাপ পারফরম্যান্সে ক্লান্ত? আপনার ভার্চুয়ালবক্সের কর্মক্ষমতা বাড়ানোর জন্য আপনার যা করা উচিত তা এখানে।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • DIY
  • প্রোগ্রামিং
  • আরডুইনো
  • অধিবাস স্বয়ংক্রিয়তা
  • পাইথন
লেখক সম্পর্কে ইয়ান বাকলি(216 নিবন্ধ প্রকাশিত)

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

ইয়ান বাকলি থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন