OpenModelica/C3/Block-Component-Modeling/Bengali
From Script | Spoken-Tutorial
Time | Narration |
00:01 | Block component modeling এর টিউটোরিয়ালে আপনাদের স্বাগত। |
00:06 | এখানে আমরা শিখব: blocks পরিভাষিত করা। |
00:12 | Blocks যুক্ত করা। |
00:15 | Modelica Library থেকে blocks ব্যবহার করা। |
00:19 | টিউটোরিয়ালটি রেকর্ড করতে ব্যবহার করছি: OpenModelica সংস্করণ 1.9.2 |
00:26 | আপনি নিম্ন যে কোনো অপারেটিং সিস্টেম ব্যবহার করতে পারেন। |
00:30 | টিউটোরিয়ালটি বুঝতে এবং অনুশীলন করতে Modelica তে component oriented modeling এর জ্ঞান দরকার। |
00:38 | পূর্বাবশ্যক টিউটোরিয়াল আমাদের ওয়েবসাইটে উল্লিখিত। সেগুলি দেখুন। |
00:44 | Blocks সম্পর্কে শিখি। |
00:48 | Block, Modelica তে একটি বিশেষ ক্লাস। |
00:52 | এটি কন্ট্রোল অ্যাপ্লিকেশনের জন্য দরকারী। |
00:56 | উদাহরণস্বরূপ, Modelica Library তে PI এবং PID কন্ট্রোলারের জন্য ব্লক রয়েছে যা প্রায়ই কেমিক্যাল ইঞ্জিনিয়ারিং কন্ট্রোল অ্যাপ্লিকেশনে দেখায়। |
01:08 | একটি ব্লক ক্লাসের ভ্যারিয়েবলের সঠিক কারণ হওয়া উচিত নয়তো ইনপুট বা আউটপুট। |
01:15 | Blocks কে connect স্টেটমেন্ট ব্যবহার করে যোগ করা যায়। |
01:19 | আমরা পূর্বের টিউটোরিয়ালে connect স্টেটমেন্ট সম্পর্কে শিখেছি। |
01:24 | Connectors, blocks এর মাঝে ইন্টারফেস হিসাবে কাজ করে। |
01:28 | সেটি মডেল ইনপুট এবং আউটপুট সিগন্যালের জন্য ব্যবহৃত হয়। |
01:33 | উদাহরণস্বরূপ, এটি block connector এর জন্য ঘোষিত যা real ইনপুট সিগন্যাল মডেল করে। |
01:41 | এখন একটি উদাহরণ দ্বারা block component modeling বোঝার চেষ্টা করি। |
01:47 | আমরা একটি ক্লাস লিখি যা নিম্ন কাজ সঞ্চালন করতে ব্লকগুলি ব্যবহার করে: ইনপুট এবং আউটপুট হিসাবে দুইবার ভিন্ন ভিন্ন সিগন্যাল নিন। |
01:59 | একটি সিগন্যাল ভিন্ন ভিন্ন ইনপুট হিসাবে নিন এবং কনস্ট্যান্ট দ্বারা এমপ্লিফাই করুন। |
02:05 | schematics ব্যবহার করে এই প্রব্লেম স্টেটমেন্ট সংজ্ঞায়িত করি। |
02:11 | এই চিত্রটি ব্লকের জন্য schematic দেখায় যা ইনপুট হিসাবে দুটি সিগন্যাল নিয়ে তাদের সমষ্টি ফেরৎ দেয়। |
02:19 | জিনিসগুলি সহজ করতে, সিগন্যাল 1 চয়ন করুন যা সময় দেখায়। |
02:26 | সিগন্যাল 2 কে 2 (times) t (squared) করুন। |
02:31 | এটি signal এর এমপ্লিফিকেশনের জন্য schematic. |
02:35 | এটি দুটি ইনপুট এবং এক আউটপুট সহ আগের কেসের অনুরূপ। |
02:41 | নিজের signal এর জন্য এক ইনপুট চয়ন করুন। |
02:46 | অন্য ইনপুট অর্থাৎ signal 2 হল কনস্ট্যান্ট K যা সিগন্যাল এম্পলীফাই করে। |
02:54 | এই দুটি inputs প্রোডাক্টের আউটপুট প্রয়োজন। |
02:59 | আমরা signal 2 চয়ন করেছি অর্থাৎ K হল 5 ইউনিট। |
03:06 | লক্ষ্য করুন উভয় সিগন্যাল এবং এমপ্লিফিকেশনের সমষ্টির 2 টি ইনপুট এবং 1 টি আউটপুট সহ ব্লক প্রয়োজন। |
03:16 | Modelica library তে ইতিমধ্যে একটি MISO ব্লক রয়েছে যা Multiple Input Single Output. |
03:24 | এটি Modelica.Interfaces.block প্যাকেজে উপলব্ধ। |
03:30 | এই ব্লক u এর জন্য ইনপুট ভেক্টর কারণ এটি ইনপুট হিসাবে একাধিক সিগন্যাল নিতে পারে। |
03:38 | y হল আউটপুট যা হল scalar. |
03:42 | এখন আলোচনা করি OMEdit দ্বারা আমাদের সমস্যা কিভাবে সমাধান করে। |
03:48 | Sum নামে একটি ব্লক বানাতে MISO ব্লক বিস্তৃত করুন। |
03:53 | আমরা আগের টিউটোরিয়ালে একটি ক্লাস বিস্তৃত সম্পর্কে শিখেছি। |
03:59 | Product নামে একটি ব্লক বানাতে MISO বিস্তৃত করুন। |
04:04 | main নামে ক্লাস বানান। |
04:08 | main ক্লাসে Sum এবং Product ব্লকের উদাহরণ বানান। |
04:14 | অবশেষে, ইনপুট এবং আউটপুট ভ্যারিয়েবল সম্পর্কিত প্রয়োজনীয় সমীকরণ প্রোগ্রাম করুন। |
04:22 | লক্ষ্য করুন Sum সিগন্যালের সমষ্টির সাথে মিল খায় যখনকি Product সিগন্যালের এমপ্লিকেশনের সাথে মিল খায়। |
04:32 | আমি ইতিমধ্যে আবশ্যক blocks বানিয়েছি এবং তাদের arithmeticOperationsUsingBlocks নামক ফাইলে প্যাকেজ করেছি। |
04:42 | এই ফাইলটি আমাদের সাইটে দেখে ডাউনলোড করতে পারবেন। |
04:46 | এখন OMEdit এ যান। |
04:49 | আমি প্রথমে arithmeticOperationsUsingBlocks প্যাকেজ দেখাবো এবং তারপর MISO ব্লকের সিনট্যাক্স দেখাবো। |
04:59 | আমি ইতিমধ্যে OMEdit এ arithmeticOperationsUsingBlocks প্যাকেজ খুলেছি। |
05:06 | আমি এটি Libraries Browser এ বিস্তৃত করি। |
05:10 | উল্লেখ্য, প্যাকেজে ব্লকের নাম Sum, Product এবং main ক্লাস। |
05:18 | তাদের সকলের উপর ডাবল ক্লিক করুন। |
05:24 | আমি MISO ব্লককেও Modelica Library তে খুলি। |
05:29 | Modelica library বিস্তৃত করুন। |
05:32 | Blocks → Interfaces এ যান। একটু নীচে স্ক্রোল করুন। |
05:39 | MISO তে ডাবল ক্লিক করুন। |
05:43 | ইন্টারফেস প্যাকেজে অন্য কয়েকটি ব্লকও রয়েছে যা কার্যকারিতাতে MISO এর অনুরূপ। |
05:51 | এখন ভাল দৃশ্যতার জন্য OMEdit উইন্ডোটি বাম দিকে সরাবো। |
05:57 | প্রথমে আমরা Sum ব্লক দেখি। |
06:01 | এটি Diagram View তে খোলা থাকলে Text View তে যান। |
06:05 | এটি block ঘোষণার করার জন্য সিনট্যাক্স। |
06:10 | এই স্টেটমেন্ট MISO block কে তার স্থান থেকে Modelica library তে পেতে প্রয়োগ করা হয়। |
06:16 | আমরা পূর্ববর্তী টিউটোরিয়ালে Class inheritance বা Class extension সম্পর্কে শিখেছি। |
06:23 | এখন আমি একটু পিছিয়ে যাই এবং MISO ব্লক দেখাই। |
06:29 | MISO ট্যাবে যান। Text View তে যান। |
06:35 | MISO একটি আংশিক ব্লক যার মানে এটি শুধুমাত্র ইনহেরিট করা যেতে পারে কিন্তু ইনস্টানসিয়েট করা যাবে না। |
06:43 | এটি Block class ইনহেরিট করে। |
06:46 | আপনি এটি Modelica library তে দেখানো পাথ ব্যবহার করে সনাক্ত করতে পারেন। |
06:51 | এখানে এই ক্লাস শুধুমাত্র Diagram View এর জন্য ব্যবহার করা হয় এবং তাই এর চর্চা করা উচিত নয়। |
06:58 | nin ইনপুট সংখ্যা প্রদর্শন করে। |
07:02 | এই প্যারামিটার তখন বদলানো যেতে পারে যখন ব্লক ইনহেরিট হয়। |
07:08 | RealInput একটি কনেক্টর যা স্পষ্টত একটি real ইনপুট সিগন্যাল দেখায়। |
07:14 | এই ক্ষেত্রে, ইনপুট হল ভেক্টর u যা আমরা ইতিমধ্যে আলোচনা করেছি। |
07:20 | একইভাবে, RealOutput একটি কনেক্টর যা real ইনপুট সিগন্যাল দেখায়। |
07:27 | এখানে, y রিয়েল ভ্যালু আউটপুট সিগন্যাল। |
07:31 | RealInput এবং RealOutput, Modelica Library এর একই প্যাকেজে MISO রূপে উপস্থিত। |
07:38 | এগুলি দেখুন। |
07:41 | এখন, MISO block এর Diagram View কেমন দেখায় তা দেখাই। |
07:46 | Sum ব্লকে ফিরে যান এবং যেখানে ছেড়ে ছিলাম সেখান থেকে শুরু করি। |
07:52 | ভ্যারিয়েবল y এবং u এই ব্লকের একটি অংশ কারণ এটি MISO ইনহেরিট করে। |
07:59 | যেমনকি আমরা আগের টিউটোরিয়ালে শিখেছি, Sum একটি array ফাংশন। |
08:05 | এটি ইনপুট হিসাবে array নেয় এবং তার এলিমেন্টের যোগফল দেয়। |
08:11 | Product ব্লকে যান। Text View তে যান। |
08:17 | এই ব্লক MISO কে ভালোমত ইনহেরিট করে। |
08:21 | যেমনকি আমরা আগের টিউটোরিয়ালে দেখেছি, Product একটি অ্যারে ফাংশন যা array কে ইনপুট হিসাবে নেয়। |
08:29 | এটি তার এলিমেন্টের প্রোডাক্ট ফেরৎ দেয়। |
08:33 | এখন আমি main ক্লাসে যাই। |
08:37 | Text View তে যান। |
08:39 | এই স্টেটমেন্ট Sum এবং Product ব্লকের ইন্সট্যানসিয়েশন দেখায়। |
08:44 | এই উদাহরণ OMEdit এর ড্র্যাগ এবং ড্রপে কার্যকারিতা ব্যবহার করেও বানানো করা যায়। |
08:51 | আমরা আগের টিউটোরিয়ালে এই বৈশিষ্ট্য নিয়ে আলোচনা করেছি। |
08:56 | nin, MISO তে ইনপুট ভেক্টর u এর মাত্রার জন্য একটি প্যারামিটার। |
09:03 | আমরা এই প্যারামিটারের জন্য 2 এর ভ্যালু নির্দিষ্ট করেছি। |
09:07 | এটি সমীকরণ সিগন্যালের Sum এর জন্য signal 1 এবং signal 2 এর ভ্যালু দেখায় যা স্লাইডে আলোচনা করেছি। |
09:17 | একইভাবে, এটি সিগন্যালের এমপ্লিফিকেশনের জন্য signal 1 এবং signal 2 এর ভ্যালু দেখায় যা স্লাইডে আলোচনা করেছি। |
09:29 | এখন ক্লাসটি সিমুলেট করি। Simulate বোতামে ক্লিক করুন। |
09:33 | পপ আপ উইন্ডো বন্ধ করুন। |
09:36 | Libraries Browser এ mySum বিস্তৃত করুন। y চয়ন করুন। |
09:43 | লক্ষ্য করুন এটি এমন একটি প্লট বানায় যা প্রদত্ত সিগন্যালের ভ্যালু অনুযায়ী হয়। |
09:51 | এর সাথেই আমরা টিউটোরিয়ালের শেষে এসেছি। |
09:54 | অনুশীলনী হিসাবে, RealInput, RealOutput, SI, SO এবং MIMO ব্লকের কোড দেখুন। |
10:04 | আপনি তাদের Modelica.Blocks.Interfaces প্যাকেজে দেখতে পারেন। |
10:10 | RealInput এবং RealOutput হল কনেক্টর যা ঘন ঘন ব্যবহৃত হয়। |
10:17 | তাই তাদের বোঝা জরুরী। |
10:21 | নিম্ন লিঙ্কে উপলব্ধ ভিডিওটি দেখুন। এটি প্রকল্পকে সারসংক্ষেপে দেখায়। |
10:27 | স্পোকেন টিউটোরিয়াল প্রকল্প দল কর্মশালার আয়োজন করে এবং প্রশংসাপত্র দেয়। আরো জানতে আমাদের লিখুন। |
10:33 | আপনার এই স্পোকেন টিউটোরিয়ালে কোন প্রশ্ন থাকলে নিম্ন সাইটে যান। |
10:40 | আমরা জনপ্রিয় বইগুলির সমাধানকৃত উদাহরণের কোডিং নির্দেশ করি। মানদণ্ড এবং সার্টিফিকেট দেই। আরো জানতে এই সাইটে যান। |
10:50 | আমরা কমার্শিয়াল সিমুলেটর ল্যাবগুলি OpenModelica তে মাইগ্রেট করতে সহায়তা করি। |
10:56 | Spoken Tutorial প্রকল্প ভারত সরকারের NMEICT, MHRD দ্বারা সমর্থিত। |
11:03 | আমরা OpenModelica উন্নয়ন দলকে তাদের সমর্থনের জন্য ধন্যবাদ জানাই। |
11:09 | আই আই টী বোম্বে থেকে আমি বিদায় নিচ্ছি। অংশগ্রহনের জন্যে ধন্যবাদ। |