مشاوره
کاری ، تحصیلی ، مهاجرت

پی ال سی وان ، آموزش PLC با پروژه های صنعتی

صفحه اصلی / آموزش PLC رایگان پی ال سی وان / آموزش زیمنس / STEP7-300 Siemens / آموزش PLC زیمنس ، 25 ، شیفت رجیستر Shift Register

آموزش PLC زیمنس ، 25 ، شیفت رجیستر Shift Register

آموزش PLC زیمنس ، شیفت رجیستر ، Shift word ، پی ال سی SIEMENS

در ادامه آموزش PLC زیمنس ، با نرم افزار سیماتیک منیجر پروژه ای با شیفت رجیستر پیاده سازی می کنیم .

وقتی ما بخواهیم با اتفاقی که در حال حاضر می افتد در چند بازه زمانی جلوتر برنامه عملکرد هایی از خود نشان دهد

از Shift Register استفاده می کنیم .

برای مثال اگر الان سنسور قطعه رو ببیند ، در سیکل و حرکت بعدی عمل پرس ، در مرحله بعدی جوش نقطه ای ، جک برچسب و … عمل کند .

به هیچ وجه نمی توان این برنامه را با کانتر پیاده سازی کرد .

چون باید برای هر قطعه چند کانتر تعریف کرد .

مشکل از جایی شروع میشود که پشت سر هم قطعه ها به دستگاه وارد میشوند و نمی توان مدام برای هر کدام چند شمارنده تعریف کنیم .

ولی با شیفت رجیستر به ازای هر قطعه یک بیت فعال ، وارد Byte یا Word می کنیم .

حالا کافیست در هر مرحله این یک را به سمت چپ یا راست شیفت دهیم .

حال اگر در مراحل بعد چند بیت جلوتر اگر یک شود ، باید کار خواسته شده را انجام دهد .

اگر در زمان مشخص ، سنسور قطعه را تشخیص ندهد ، صفر وارد بایت یا word میشود و

مراحل مربوط به قطعه وارد نشده تا آخر انجام نمیشوند .

در این پروژه از 4 بایت برای دستور شیفت به سمت راست و چپ استفاده کردیم .

از Shift Right Word برای شیفت به سمت راست و از Shift Left Word برای شیفت به سمت چپ استفاده می کنیم .

به جای word می توان Byte را شیفت داد .

اگر از حافظه word استفاده کنیم . مثلا MW10 در واقع در حال استفاده از حافظه های MB10 و MB11 هستیم .

از یک تایمر که خودش را SET و RESET می کند برای ایجاد پالس شیفت استفاده کردیم .

در تابع SHIF از N یک استفاده کردیم . به معنی که هر بار یک بیت شیفت پیدا کند .

نتیجه SHIF در همان MB ریخته میشود تا حرکت بیت ها مشخص شود .

اگر عددی در حافظه ریخته نشود و یا یکی به آن وارد نشود ، اعمال شیفت هیچ تغییری در حافظه صفر ایجاد نمیکند .

برای ورودی یک از سمت چپ برای شیفت به سمت راست باید عدد 128 را وارد کنیم .

از سمت راست هم کافیه عدد 1 را وارد کنیم .

بعد از به پایان رسیدن حرکت بیت 1 در هر بایت ، عدد شروع حافظه بعدی را ابتدا MOVE کرده و سپس شیفت انجام میشود .

برنامه طوری نوشته شده است که برای دو حافظه اول شیفت به سمت راست و دو حافظه بعدی شیفت به سمت چپ انجام شود و

این کار تا زمان فعال بودن استارت ادامه داشته باشد .

در سیمولیشن برای نمایش حرکت بیت ها ، کافیست از حافظه Memory Byte استفاده کنیم و آنرا بر روی حالت Bits قرار دهیم .

در هر مرحله برای اینکه move کردن عدد مورد نظر در لحظات بعد مزاحم عمل shift در نرم افزار SIMATIC Manager نشود

از Positive RLO Edge Detection یا لبه بالا رونده استفاده کردیم .

دانلود ویدیو

دانلود سورس برنامه


 

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *