OpenRTM-aist
ওপেনআরটিএম-এইস্ট একটি সফ্টওয়্যার প্ল্যাটফর্ম যা আরটি মিডলওয়্যার স্ট্যান্ডার্ডের ভিত্তিতে তৈরি করা হয়েছে। ওপেনআরটিএম-এইস্ট ন্যাশনাল ইনস্টিটিউট অফ অ্যাডভান্সড ইন্ডাস্ট্রিয়াল সায়েন্স অ্যান্ড টেকনোলজি দ্বারা তৈরি করা হয়েছে যা আরটি-মিডলওয়্যার স্ট্যান্ডার্ডের সংজ্ঞাতেও অবদান রাখে। আরটি মিডলওয়্যারে, সমস্ত রোবোটিক প্রযুক্তিগত উপাদান, যেমন অ্যাকচুয়েটর এবং সেন্সর, আরটি-উপাদান (আরটিসি) হিসাবে বিবেচিত হয়। প্রতিটি আরটিসি অন্যান্য আরটিসির সাথে যোগাযোগের জন্য বন্দর সরবরাহ করে এবং ডেভেলপাররা আরটিসি হিসাবে তাদের নিজস্ব রোবোটিক্স প্রযুক্তি (আরটি) সিস্টেম প্রয়োগ করতে পারে। আরটি-মিডলওয়্যারকে এইভাবে একটি বণ্টিত নিয়ন্ত্রণ স্থাপত্য হিসাবে বিবেচনা করা যেতে পারে। আরটি-মিডলওয়্যার মূলত একটি প্ল্যাটফর্ম স্বাধীন মডেল (পিআইএম)। এই মডেলের বাস্তবায়নের মধ্যে রয়েছে কর্বা, এন্টারপ্রাইজ জাভাবিয়ান (ইজেবি) এবং. নেট ফ্রেমওয়ার্ক। ওপেনআরটিএম-এইস্ট কর্বা প্রযুক্তির উপর ভিত্তি করে এবং বর্ধিত আরটিসি নির্দিষ্টকরণ প্রয়োগ করে। ওপেনআরটিএম-এস্ট-এর অভিজ্ঞতাগুলি আরটি-মিডলওয়্যার স্ট্যান্ডার্ডাইজেশন প্রক্রিয়ায় ফিরিয়ে দেওয়া হবে। বৈশিষ্ট্য ওপেনআরটিএম-এিস্ট কিছু বর্ধিত আরটিসি বৈশিষ্ট্য প্রয়োগ করে এবং এতে আরটিসিকে পরিচালনা করতে সহায়তা করার জন্য একটি ম্যানেজার উপাদানও অন্তর্ভুক্ত রয়েছে। ওপেনআরটিএম-এ আরটিসি অনেক প্রোগ্রামিং ভাষা ব্যবহার করে প্রয়োগ করা যেতে পারে এবং বিভিন্ন ভাষায় প্রোগ্রাম করা আরটিসি একে অপরের সাথে যোগাযোগ করতে পারে। ন্যাশনাল ইনস্টিটিউট অফ অ্যাডভান্সড ইন্ডাস্ট্রিয়াল সায়েন্স অ্যান্ড টেকনোলজি এবং তাদের সহকর্মীদের দ্বারাও আরটিসি কারসাজি সহজ করার জন্য প্রচুর সরঞ্জাম প্রকাশ করা হয়েছে (কঠোর অর্থে, ওপেনআরটিএম-এস্ট নিজেই একটি গ্রন্থাগার এবং এই সরঞ্জামগুলি অন্তর্ভুক্ত করে না)। আরটি-উপাদান আরটি-উপাদান একটি কার্যকরী একক যা ওএমজি দ্বারা সংজ্ঞায়িত আরটি-উপাদান নির্দিষ্টকরণের সাথে সামঞ্জস্যপূর্ণ। ওপেনআরটিএম-এ, আরটিসিতে ডেটা পোর্ট, সার্ভিস পোর্ট এবং এক্সিকিউশন প্রসঙ্গ রয়েছে যা আরটিসির অবস্থা নিয়ন্ত্রণ করে। রাষ্ট্রীয় যন্ত্র আর. টি-উপাদানের মানদণ্ডে, আর. টি. সি-র অবশ্যই 4টি অবস্থা থাকতে হবে যেমন তৈরি, নিষ্ক্রিয়, সক্রিয় এবং ত্রুটি। যখন রাষ্ট্র পরিবর্তিত হয়, তখন সংশ্লিষ্ট ইভেন্ট-হ্যান্ডলারদের এক্সিকিউশন প্রসঙ্গ দ্বারা ডাকা হয় যা আরটিসির স্টেট মেশিন পরিচালনা করে। উদাহরণস্বরূপ, আর. টি. সি সক্রিয় হলে (আই. এন. এ. সি. টি. আই. ভি. ই থেকে অ্যাক্টিভ অবস্থায়) "অন _ অ্যাক্টিভেটেড" কলব্যাক ফাংশন বলা হয়। অন-অ্যাক্টিভেটেড কলব্যাকে, ইনিশিয়ালাইজেশন কোড প্রয়োগ করা হয়। অন্যদিকে, আরটিসি নিষ্ক্রিয় করা হলে "অন _ ডিএক্টিভেটেড" কলব্যাক ফাংশন বলা হয় (অ্যাক্টিভ থেকে আইএনএসিটিভিই অবস্থায়)। এই কলব্যাকে, চূড়ান্তকরণ কোডগুলি প্রয়োগ করা হয়। আরটিসি সক্রিয় অবস্থায় থাকলে পর্যায়ক্রমে "অন _ এক্সিকিউট" বলা হয়। এখানে, নিয়ন্ত্রণ বা কিছু ডিভাইস ম্যানেজমেন্ট (যেমন, পোলিং) ফাংশন বলা হয়। এই কলব্যাকগুলিকে "এক্সিকিউশন কনটেক্সট" অবজেক্ট দ্বারা ডাকা হয়। যদি বিশেষ এক্সিকিউশন প্রসঙ্গটি আরটিসির সাথে সংযুক্ত থাকে, কলিং পদ্ধতি বা নীতি সংশোধন করা হয় (এক্সিকিউশন প্রসঙ্গ বিভাগ দেখুন)। ডেটা পোর্ট হল অন্যান্য আর. টি. সি-র সঙ্গে যোগাযোগের একটি শেষ বিন্দু। ডেটা পোর্টগুলির নিজস্ব ধরন রয়েছে। একই ধরনের বন্দর একে অপরের সাথে সংযুক্ত করা যেতে পারে। ওপেনআরটিএম-এ, আদিম ডেটা প্রকারগুলি (যেমন "টাইমডলং", "টাইমড ডাবল" ইত্যাদি) প্রয়োগ করা হয়। উপরন্তু, ওপেনআরটিএম-এস্ট সংস্করণ 1 থেকে, রোবোটিক সিস্টেমে সাধারণত ব্যবহৃত হবে বলে আশা করা অতিরিক্ত ডেটা প্রকারগুলি এক্সটেন্ডেডডাটা টাইপ হিসাবে প্রকাশিত হয়েছিল (যেমন "টাইমডভেলোসিটি2ডি", "টাইমডপোজ2ডি" ইত্যাদি) ডেভেলপাররা আইডিএল ফাইল বর্ণনা করে তাদের নিজস্ব ডেটা প্রকারগুলি সংজ্ঞায়িত করতে পারে। সরঞ্জামগুলি আই. ডি. এল ফাইলটি বিশ্লেষণ করতে পারে এবং স্বয়ংক্রিয়ভাবে মূল ডেটা প্রকারের কঙ্কাল এবং স্টাব ফাইল তৈরি করতে পারে। সার্ভিস পোর্ট ডেটা পোর্টের তুলনায় অনেক বেশি নমনীয়ভাবে যোগাযোগের অনুমতি দেয়। ডেভেলপারদের তাদের আই. ডি. এল ফাইল তৈরি করে সার্ভিস পোর্ট ইন্টারফেসগুলি সংজ্ঞায়িত করা উচিত। এক্সিকিউশন প্রসঙ্গ এক্সিকিউশন প্রসঙ্গগুলি আরটি-উপাদানগুলির রাষ্ট্রীয়-মেশিন ক্রিয়াকলাপ পরিচালনা করে। ওপেনআরটিএম-এ, বিভিন্ন ধরনের এক্সিকিউশন প্রসঙ্গ সরবরাহ করা হয়। উদাহরণস্বরূপঃ পর্যায়ক্রমিক এক্সিকিউশন প্রসঙ্গ, সর্বাধিক ব্যবহৃতগুলির মধ্যে একটি, "অন _ এক্সিকিউটিভ" ইভেন্ট-হ্যান্ডলারের পর্যায়ক্রমিক কল সরবরাহ করে (সেন্সর অধিগ্রহণ বা অ্যাকচুয়েটর নিয়ন্ত্রণ সাধারণত সেখানে প্রয়োগ করা হয়); রিয়েল-টাইম এক্সিকিউশন প্রসঙ্গ, যা লিনাক্সের প্রি-এম্পটিভ কার্নেল ফাংশন ব্যবহার করে, আরটিসির রিয়েল-টাইম অপারেশনকে সমর্থন করে; অতিরিক্ত ট্রিগার এক্সিকিউশন প্রসঙ্গ ওপেনআরটিএম-এস্টের একটি গুরুত্বপূর্ণ বৈশিষ্ট্য। এটি ওপেন এইচ. আর. পি-3-এর মতো গতিবিদ্যার সিমুলেটরগুলির সঙ্গে সমন্বয় করার ক্ষমতা প্রদান করে। কনফিগারেশন কনফিগারেশন এমন একটি ফাংশন যা রান-টাইমের সময় আরটিসির পরামিতিগুলিকে গতিশীলভাবে পরিবর্তন করে। কনফিগারেশন সংখ্যাসূচক এবং স্ট্রিং হতে পারে। সমর্থিত অপারেটিং সিস্টেম ওপেনআরটিএম-অ্যাস্ট উইন্ডোজ, লিনাক্স এবং ম্যাকোসে চলে। উপরন্তু, ভিএক্সওয়ার্কস পরীক্ষামূলকভাবে সমর্থিত। যেহেতু ওপেনআরটিএম-অ্যাস্ট কর্বা প্রযুক্তির উপর ভিত্তি করে তৈরি, তাই এটি সি + +, জাভা, পাইথন এবং এরলাং (অনানুষ্ঠানিক) সহ বেশ কয়েকটি প্রোগ্রামিং ভাষা সমর্থন করে। টুলস আরটিসি নির্মাতা আরটিসি নির্মাতা কঙ্কাল-কোড উৎপাদনের জন্য একটি সরঞ্জাম। এটি গ্রহণ বিকাশমূলক পরিবেশে চালু করা হয়। ওপেনআরটিএম-এইস্ট আরটিসি-টেমপ্লেটকেও সমর্থন করে যা একটি কমান্ড-লাইন টাইপ স্কেলেটন-কোড জেনারেশন টুল। আরটি সিস্টেম এডিটর আরটি সিস্টেম এডিটর আরটিসি পরিচালনার জন্য একটি সরঞ্জাম। আর. টি. সিস্টেম এডিটর নিম্নলিখিত পরিষেবাগুলি প্রদান করেঃ আর. টি. সি-র 'স্টেটস কানেক্টিং আর. টি. সি' পোর্টগুলি কনফিগার করা আর. টি. সি-কে সক্রিয়/নিষ্ক্রিয়/পুনরায় সেট করা আর. টি. সি-কে সংরক্ষণ/পুনরুদ্ধার করা আর. টি. শেল একটি কমান্ড-লাইন টুল যা নিম্নলিখিত পরিষেবাগুলি প্রদান করেঃ আর. টি. সি-র 'স্টেটস কানেক্টিং আর. টি. সি' পোর্টগুলি উল্লেখ করা আর. টি. সি-কে সক্রিয়/নিষ্ক্রিয়/পুনরায় সেট করা আর. টি. সি-র আর. টি-সিস্টেম লগ আউটপুট পুনরুদ্ধার ডেটাপোর্টস আর. টি. সি ডিবাগার আর. টি. সি ডিবাগার আর. টি. সি ডিবাগার আর. টি. সি-র জন্য একটি ডিবাগিং টুল। আরটিসি ডিবাগার হল একটি ইক্লিপস প্লাগ-ইন। লাইসেন্স ওপেনআরটিএম-এইস্ট জিএনইউ লেসার জেনারেল পাবলিক লাইসেন্সের (এলজিপিএল) অধীনে লাইসেন্সপ্রাপ্ত। আরও দেখুন রোবট ওপেন-সোর্স রোবোটিক্স মিডলওয়্যার নিউ এনার্জি অ্যান্ড ইন্ডাস্ট্রিয়াল টেকনোলজি ডেভেলপমেন্ট অর্গানাইজেশন ন্যাশনাল ইনস্টিটিউট অফ অ্যাডভান্সড ইন্ডাস্ট্রিয়াল সায়েন্স অ্যান্ড টেকনোলজি অবজেক্ট ম্যানেজমেন্ট গ্রুপ জাপান রোবট অ্যাসোসিয়েশন রেফারেন্স এক্সটার্নাল লিঙ্ক আরটি মিডলওয়্যার প্রজেক্ট (জাপানি ভাষায়) রোবোটিক্স স্যুট