نمای کلی یک حلقه ی کنترلی ساده:
حلقهی کنترلی سادهی زیر را نظر بگیرید. اگرچه این حلقه ی کنترلی فیدبک دار یک تصور اولیه و ساده از یگ پلنت و کنترلر عمومی را بدست می دهد، اما برای پیاده سازی عملی آن باید به ابزار تست، اندازه گیری، مانتورینگ، عنواع سنسورها نیاز میباشد
در این حلقهی کنترلی بسته به اینکه سیگنال ورودی و خروجی چیست، سنسور مربوطه برای اندازهگیری کمیت فیزیکی مد نظر و سیستم کنترلی مربوطه را برای پیاده سازی بلوک کنترلی انتخاب میکنیم. فرض کنید هدف ما کنترل دور یک ماشین الکتریکی است. همانطور که میدانید ماشینهای الکتریکی انواع دارند، استپر موتورها، DC موتورها، سروو موتورها و … که هر یک از آنها کاربرد خود را دارد.
چنانچه یک DC موتور در دسترس باشد و بخواهیم بر اساس یک طراحی در لحظات به خصوصی در زاویههای مشخصی قرار گیرد طبعاً به دنبالهای از اعداد به عنوان سیگنال رفرنس در ورودی سیستم و یک سیستم کنترلی برای اعمال ولتاژ مشخص به موتور برای چرخیدن در جهت مربوط برای رسیدن به زاویهی مورد نظر دارد.
برای پیاده سازی این حلقهی کنترلی به نظر شما به چه چیزهایی نیاز داریم؟
بخش اول در اصل بخشی است که اندازهگیری را انجام میدهیم. بنابراین برای مثال خود ابتدا به یک انکدر به عنوان سنسور تعیین موقعیت موتور نیاز داریم تا بتوانیم سیگنال خروجی حلقهی کنترلی را اندازهگیری کنیم.
بخش دوم در اصل همان بلوک کنترلی ما میباشد. اگرچه در دروس کنترل در دانشگاه به این بلوک به دید ریاضیاتی نگاه میشود اما از لحاظ عملی این بخش از اجزای جداگانهای تشکیل شده است. به بیان ساده واحد کنترلی در یک طراحی از دو بخش پردازش و راهانداز تشکیل شده است.
در مثال ما واحد پردازش میتواند یک کامپیوتر، یک برد میکروکنترلری، یک سینگل برد کامپیوتر مثل رزبپریپای، بیگلبن، ارنجپای، یک پلتفرم آماده مثل آردواینو یا هر برد پردازشگر دیگری مثل مینیکامپیوترها یا پلتفورم myRIO یا در موارد صنعتیتر PLCها، کامپیوترهای صنعتی و یا تجهیزاتی مثل Compact RIOها میباشد.
یک نرم افزار بسیار قدرت مند به منظور دیتا لاگین، مانیتورینگ و کنترل فرایندهای صنعتی، بی شک نرم افزار لبویو میباشد. از این رو گروه فنی و مهندسی آرتوان اقدام به ارائه ی دوره آموزش لبویو LabVIEW در سایت خود به نشانی www.INeee.ir نموده است
در واقع در اینجاست که الگوریتم کنترلیمان رو به صورت یک برنامه مینویسیم و بر روی حافظهی داخلی آیسی پردازنده با حافظهی فلش جانبی بارگذاری میکنیم. طبعاً با توجه به میزان پردازش مورد نیاز و پیچیدگی الگوریتمهای کنترلی، همچنین شرایط محیطی اعم از میزان نویزی بودن محیط، محدودهی دمایی، میزان ارتعاشات موجود در محیط پیاده سازی، و سایر عوامل مثل اهمیت سرعت، دفت و میزان ایمنی مد نظر، انتخاب برد پردازنده میتواند از یک آردوینوی ساده شروع شده و تا یک کامپیوتر صنعتی ادامه پیدا کند. در مواردی که هدف پیاده سازی پروژه در یک خط تولید و به صورت Stand Alone نباشد، میتوان از کامپیوتر خانگی یا لبتاپ نیز استفاده کرد.
این برنامه باید به نحوی از طریق درایورها و عملگرها در دنیای واقعی به سیستم اصلی که در مثال ما همان DC موتور است، اعمال شود. به عنوان مثال میتوان به ماژول L298N اشاره کرد.
البته بسته به این که سیستم اصلی مکانیکی، الکتریکی، الکترودینامیکی یا هر نوع دیگری میباشد به درایورهای متناسب با آن سیستم، نیاز میباشد. وظیفهی درایور اولاً دریافت یک دنباله از سیگنالهایی است که سیستم پردازندهی ما تولید کرده است، و ثانیاً اعمال تحریکهای لازم بر روی سیستم بر اساس سیگنالهای دریافتی از برد پردازشگر یا کامپیوتر برای رسیدن به خروجی مدنظر میباشد.