در دنیای امروز، PLC بهعنوان مغز سیستمهای اتوماسیون صنعتی شناخته میشود. از خطوط بستهبندی مواد غذایی تا رباتهای جوشکار در خودروسازی و حتی فرآیندهای عظیم پالایشگاهی، تقریباً هیچ صنعتی نیست که بدون PLC بتواند با دقت و سرعت کافی فعالیت کند. یکی از مهمترین مفاهیم در عملکرد PLC، پارامتری به نام اسکن تایم (Scan Time) است؛ زمانی که PLC برای خواندن ورودیها، اجرای برنامه و بهروزرسانی خروجیها صرف میکند.
اسکن تایم در واقع مانند ضربان قلب یک سیستم کنترلی است. هرچه این ضربان سریعتر و منظمتر باشد، واکنش PLC به تغییرات سریعتر خواهد بود و سیستم با دقت بیشتری کار میکند. اگر اسکن تایم بیش از حد طولانی شود، تأخیر در تصمیمگیری ایجاد میشود و این موضوع میتواند در برخی صنایع خسارتهای جدی بهدنبال داشته باشد. بهعنوان نمونه، در یک خط تولید بطری، اگر PLC با تأخیر فرمان پرکردن را صادر کند، محصول معیوب یا ناقص خواهد شد.
این مقاله قصد دارد صفر تا صد اسکن تایم PLC را بررسی کند؛ از تعریف و عوامل مؤثر بر آن، تا روشهای اندازهگیری و بهینهسازی و در نهایت مثالهای واقعی از صنایع مختلف. هدف این است که نشان دهیم چرا درک و مدیریت اسکن تایم برای مهندسان برق و اتوماسیون یک مهارت حیاتی است.
اگر به مبحث اسکن تایم PLC علاقهمند هستید، پیشنهاد میکنیم در دوره آموزش پروژه محور اتوماسیون زیمنس شرکت کنید تا صفر تا صد کار با PLC را بهصورت عملی یاد بگیرید.
تعریف و اهمیت اسکن تایم در PLC
در سیستمهای اتوماسیون صنعتی، وقتی درباره عملکرد PLC صحبت میکنیم، یکی از واژههایی که بسیار پرکاربرد و حیاتی است، اسکن تایم (Scan Time) میباشد. اسکن تایم در واقع مدت زمانی است که یک PLC برای اجرای یک چرخه کامل پردازش صرف میکند. این چرخه شامل سه مرحله اصلی است:
- خواندن ورودیها (Input Scan)
- اجرای برنامه منطقی کاربر (Program Execution)
- بهروزرسانی خروجیها (Output Update)
به بیان ساده، PLC مانند یک مغز صنعتی عمل میکند. این مغز باید دائماً وضعیت سنسورها را بخواند، منطق برنامهریزیشده را اجرا کند و سپس فرمانها را به عملگرها بفرستد. مدت زمانی که این سه مرحله طول میکشد، همان اسکن تایم است
برای درک بهتر موضوع، توصیه میکنیم ابتدا مقالهی PLC چیست و چه مزایا و انواعی دارد را مطالعه کنید تا با این کنترلکننده صنعتی بیشتر آشنا شوید.
چرا اسکن تایم PLC مهم است؟
اسکن تایم، در واقع تعیینکننده سرعت واکنش PLC به تغییرات محیطی است. اگر اسکن تایم خیلی طولانی باشد، سیستم در تشخیص سریع رویدادها دچار تأخیر میشود و این موضوع میتواند در صنایع حساس مانند تولید دارو، خودروسازی یا خطوط مونتاژ دقیق، مشکلات بزرگی ایجاد کند. برای مثال، تصور کنید در یک خط بستهبندی مواد غذایی، سنسور باید حضور بطری را تشخیص دهد و نازل دستگاه در همان لحظه مایع را پر کند. اگر اسکن تایم بیش از حد طولانی باشد، فرمان با تأخیر صادر میشود و نتیجه آن میتواند بطری خالی یا سرریز باشد.
عوامل مؤثر بر اسکن تایم PLC در صنعت
اسکن تایم به عوامل مختلفی بستگی دارد که در صنعت باید با دقت کنترل شوند:
- نوع CPU PLC: قدرت پردازشی CPU تأثیر مستقیم بر مدت اسکن دارد. PLCهای پیشرفته زیمنس یا آلن بردلی معمولاً اسکن تایم کمتری نسبت به PLCهای اقتصادی دارند.
- طول و پیچیدگی برنامه: هرچه تعداد خطوط کد بیشتر باشد، اجرای آن زمان بیشتری میگیرد. برای مثال یک برنامه ۲۰۰۰ خطی طبیعتاً اسکن تایم بیشتری نسبت به یک برنامه ۲۰۰ خطی دارد.
- برای نمونه، در یک PLC زیمنس S7-1200 مدل 1214C اگر برنامه حدود ۵۰۰ خط کد ساده داشته باشد، اسکن تایم در حدود ۲ تا ۳ میلیثانیه اندازهگیری میشود. اما همین CPU اگر برنامهای با بیش از ۲۰۰۰ خط شامل توابع محاسباتی پیچیده اجرا کند، اسکن تایم میتواند تا ۱۰ میلیثانیه هم افزایش پیدا کند.
- تعداد ورودی و خروجیها: هر ورودی یا خروجی فیزیکی باید در هر سیکل خوانده و بهروزرسانی شود، بنابراین افزایش تعداد I/O باعث افزایش اسکن تایم میشود.
- شبکههای ارتباطی: اگر PLC در یک شبکه صنعتی مانند Profibus یا Ethernet/IP داده دریافت یا ارسال کند، زمان پردازش ارتباطات هم به اسکن تایم اضافه میشود.
- استفاده از توابع سنگین: دستوراتی مانند PID کنترلر یا محاسبات پیچیده ریاضی میتوانند بهطور محسوس زمان اسکن را افزایش دهند.
محدودههای معمول اسکن تایم PLC در کاربردهای مختلف
در صنعت، PLCها معمولاً اسکن تایمی بین ۱ تا ۲۰ میلیثانیه دارند. البته این مقدار بسته به کاربرد متفاوت است. مثلاً در رباتهای صنعتی نیاز به اسکن تایم زیر ۱ میلیثانیه داریم، اما در صنایع آب و فاضلاب یک اسکن تایم ۵۰ میلیثانیه هم قابل قبول است.
البته باید توجه داشت که اسکن تایم یک مقدار کاملاً ثابت نیست و میتواند بسته به شرایط تغییر کند. برای مثال، اگر بار شبکه افزایش یابد یا کدهای پیچیدهتری به برنامه اضافه شوند، زمان چرخه طولانیتر خواهد شد. به همین دلیل مهندسان باید همیشه در پروژههای واقعی، اسکن تایم لحظهای را زیر نظر داشته باشند.
روشهای اندازهگیری اسکن تایم PLC (TIA Portal، RSLogix و …)
پس از آنکه مفهوم کلی اسکن تایم در PLC را شناختیم، نوبت به این میرسد که روشهای دقیق برای اندازهگیری و سپس راهکارهای بهینهسازی آن بررسی شود. اهمیت این موضوع در صنعت بسیار بالاست، زیرا اگر مهندسی نداند که سیستم او در هر چرخه چه زمانی را صرف میکند، نمیتواند مطمئن باشد که فرآیند صنعتی بهموقع واکنش نشان میدهد یا خیر.
برای انتخاب یک PLC مناسب، مطالعهٔ مقالهی «۸ عامل موثر در انتخاب PLC مناسب» را توصیه میکنیم. این مقاله به شما کمک میکند معیارهایی مثل پردازش، ورودی/خروجی، قیمت و قابلیت توسعه را دقیقتر بشناسید تا تصمیمگیری بهتری داشته باشید.
روشهای اندازهگیری اسکن تایم
اولین و رایجترین روش، استفاده از امکانات داخلی نرمافزارهای برنامهنویسی PLC است. تقریباً تمام سازندگان بزرگ، مثل زیمنس، امرون یا آلن بردلی، امکان مشاهدهی اسکن تایم لحظهای را در محیط توسعه فراهم کردهاند. برای مثال، در زیمنس TIA Portal میتوان به کمک بلوکهای تشخیصی، زمان هر چرخه را بررسی کرد.
بهعنوان نمونه، در یک پروژه صنعتی با PLC زیمنس S7-1200، زمانی که برنامهای با حدود ۳۰۰ ورودی/خروجی و ۸۰۰ خط کد اجرا شد، در بخش Diagnostics TIA Portal مقدار میانگین اسکن تایم حدود ۴.۵ میلیثانیه ثبت گردید. این عدد کمک کرد تا مهندس پروژه بفهمد که هنوز در محدودهی امن واکنش سیستم قرار دارد. در آلن بردلی RSLogix و Studio 5000 نیز ابزاری به نام Task Monitor وجود دارد که دقیقاً همین کار را انجام میدهد. امرون هم در CX-Programmer بخشی به نام Cycle Time نمایش میدهد که به مهندس امکان میدهد عملکرد لحظهای سیستم را زیر نظر داشته باشد.

شکل ۱ – نمونه ای از Studio 5000 برای شبیه سازی PLC
روش دوم، نوشتن یک کد کوچک با استفاده از تایمر داخلی PLC است. در این حالت برنامهنویس زمان شروع یک سیکل و پایان همان سیکل را ذخیره میکند و اختلاف آن را محاسبه میکند. این روش ساده است اما دقت بالایی دارد، بهخصوص زمانی که بخواهیم تغییرات اسکن تایم را در طول یک بازه ثبت کنیم.
روش سوم، استفاده از ابزارهای خارجی مانند اسیلوسکوپ یا دیتالاگر است. در پروژههایی که سرعت بسیار حیاتی است، مثلاً در صنایع بستهبندی یا رباتیک، از این تجهیزات برای ثبت زمان واکنش خروجیها در برابر تغییر ورودیها استفاده میشود. این روش نسبت به روشهای نرمافزاری دقیقتر است، زیرا بهطور مستقیم پاسخ سختافزار را میسنجد.
فرمول محاسبه اسکن تایم PLC و اجزای آن
برای درک بهتر اجزای تشکیلدهنده اسکن تایم، میتوان آن را با یک فرمول ساده بیان کرد:
Tscan = Tinput + Tprogram + Toutput + Tcommunication
در این فرمول، Tinput به مدتزمان لازم برای خواندن ورودیها اشاره دارد. PLC در ابتدای هر چرخه باید وضعیت تمامی ورودیها، چه دیجیتال و چه آنالوگ، را از ماژولهای سختافزاری دریافت کند. سپس نوبت به اجرای برنامه میرسد که با Tprogram نشان داده میشود.
این بخش معمولاً بیشترین سهم از اسکن تایم را دارد، زیرا پیچیدگی کدها، حجم محاسبات و استفاده از دستوراتی مانند PID کنترلر یا توابع ریاضی، همگی بر آن اثر مستقیم میگذارند. پس از آن زمان بهروزرسانی خروجیها قرار دارد که با Toutput نمایش داده میشود. این زمان به توانایی پردازنده و تعداد ماژولهای خروجی وابسته است. در نهایت Tcommunication مدتزمانی است که PLC صرف برقراری ارتباط با سایر دستگاهها، HMIها یا شبکههای صنعتی مانند Profibus و Ethernet/IP میکند.
برای آشنایی با روشهای تبادل داده در اتوماسیون و شبکههای صنعتی، پیشنهاد میکنیم مقالهی انواع پروتکل های صنعتی را مطالعه کنید تا با انواع و کاربردهای آنها بیشتر آشنا شوید.

شکل ۲ – مفهوم پالس PLC در اسکن تایم
این تقسیمبندی به مهندسان کمک میکند تا دقیقتر بفهمند کدام بخش بیشترین تأثیر را بر اسکن تایم دارد و بنابراین تمرکز خود را برای بهینهسازی روی همان قسمت بگذارند.
عوامل مؤثر بر افزایش زمان چرخه PLC
هرچند فرمول بالا اجزای اصلی زمان چرخه را معرفی میکند، اما باید به عواملی که میتوانند باعث طولانی شدن آن شوند نیز توجه داشت. نکته مهم این است که اسکن تایم در عمل همواره مقدار ثابتی ندارد و حتی در یک پروژه مشخص هم ممکن است با تغییر بار پردازشی یا ارتباطی نوسان داشته باشد.
افزایش تعداد ورودی و خروجیها یکی از این عوامل است. همچنین طولانی بودن برنامه یا استفاده از دستورات حلقهای تکرارشونده میتواند بهشدت زمان اجرا را افزایش دهد. از سوی دیگر، ارتباطات گستردهی شبکهای، بهویژه زمانی که PLC دادههای حجیم را بهطور مداوم با چند دستگاه ردوبدل میکند، بخش قابلتوجهی از چرخه را به خود اختصاص میدهد. استفاده از بلوکهای پیچیده کنترلی مانند PID یا فیلترهای دیجیتال نیز باعث میشود پردازنده زمان بیشتری برای اجرای دستورات صرف کند.
روشهای بهینهسازی اسکن تایم PLC در پروژهها
برای کاهش اسکن تایم یا کنترل آن در محدودهی موردنظر، چند راهکار عملی وجود دارد. نخستین اقدام بهینهسازی کدنویسی است. بسیاری از مواقع مشاهده میشود که برنامهها شامل دستورات تکراری یا غیرضروری هستند که تنها پردازنده را درگیر میکنند. حذف این دستورات یا جایگزین کردن آنها با توابع بهینه میتواند تفاوت زیادی در زمان چرخه ایجاد کند.
روش دیگر، تقسیمبندی وظایف برنامه است. در PLCهای پیشرفته میتوان چند وظیفه یا Task تعریف کرد. بهعنوان مثال، در سیستم زیمنس میتوان یک بلوک با اولویت بالا و اجرای سریع برای حلقههای کنترلی حساس تعریف کرد و سایر منطقها را در بلوکهای کندتر قرار داد. به این ترتیب حلقههای کنترلی مهم، مانند کنترل فشار یا دما، همیشه در کوتاهترین زمان ممکن بهروزرسانی میشوند.
در برخی پروژهها ارتقاء سختافزار نیز اجتنابناپذیر است. اگر برنامه بسیار سنگین باشد، شاید تنها راهکار استفاده از CPUهای قدرتمندتر یا PLCهای سطح بالاتر باشد. همچنین در پروژههایی که بار شبکه زیاد است، کاهش حجم دادههای تبادلی میتواند مؤثر باشد. برای نمونه، اگر تعداد زیادی متغیر بین HMI و PLC ردوبدل میشود، میتوان زمان تازهسازی آنها را افزایش داد تا فشار کمتری بر چرخه ایجاد شود.
در نهایت باید به استفاده از وقفهها یا Interrupts اشاره کرد. در پروژههایی که واکنش سریع به تغییر ورودیها حیاتی است، میتوان بهجای تکیه صرف بر اسکن تایم از وقفههای سختافزاری استفاده کرد تا PLC خارج از چرخه عادی فوراً واکنش نشان دهد. این تکنیک بهویژه در خطوط پرسرعت یا تجهیزات ایمنی اهمیت دارد.
جدول مقایسه اسکن تایم PLC در صنایع مختلف
برای اینکه اهمیت موضوع روشنتر شود، بهتر است نگاهی به محدودههای معمول اسکن تایم در صنایع مختلف داشته باشیم:
| نوع صنعت | پیچیدگی برنامه | تعداد I/O | محدوده اسکن تایم مطلوب | توضیحات |
| بستهبندی پرسرعت | بالا | زیاد | ۱ تا ۵ میلیثانیه | سرعت واکنش بالا برای جلوگیری از خطای مکانیکی ضروری است. |
| صنایع خودروسازی (خط مونتاژ) | متوسط | متوسط | ۵ تا ۱۵ میلیثانیه | واکنش متوسط کافی است زیرا تغییرات سریع کمتر رخ میدهد. |
| صنایع آب و فاضلاب | پایین | کم | ۲۰ تا ۵۰ میلیثانیه | تغییرات فرآیندی کند است و نیازی به واکنش فوری نیست. |
| رباتیک صنعتی | بسیار بالا | زیاد | کمتر از ۱ میلیثانیه | کنترل دقیق حرکت بازوها نیازمند چرخه بسیار کوتاه است. |
| پتروشیمی و فرآیندی | متوسط | زیاد | ۱۰ تا ۳۰ میلیثانیه | حلقههای کنترلی PID بیشترین تأثیر را در تعیین زمان دارند. |
جدول ۱ – مقایسهای اسکن تایم
این جدول نشان میدهد که اسکن تایم مطلوب وابسته به ماهیت صنعت و فرآیند است. بنابراین نمیتوان یک مقدار ثابت برای همهی کاربردها در نظر گرفت.
کاربردها و مثالهای واقعی از اسکن تایم PLC در صنعت
اسکن تایم در ظاهر یک پارامتر ساده به نظر میرسد، اما در عمل میتواند تفاوت میان یک سیستم موفق و یک پروژهی پرهزینه و ناکارآمد باشد. اهمیت این موضوع زمانی روشنتر میشود که مثالهای واقعی از صنایع مختلف بررسی گردد.
مثال اول: صنایع بستهبندی پرسرعت
در خطوط بستهبندی مواد غذایی، سرعت دستگاهها به حدی بالاست که هر میلیثانیه تأخیر میتواند منجر به خطا شود. تصور کنید دستگاهی که بطریهای نوشابه را در جعبه قرار میدهد، با تأخیر تنها پنج میلیثانیهای در فرمان بازو مواجه شود. این تأخیر بهظاهر ناچیز باعث میشود بطری از محل دقیق خود عبور کند و کل بسته خراب شود. به همین دلیل در چنین صنایعی، اسکن تایم باید در محدودهی یک تا پنج میلیثانیه باقی بماند. مهندسان برای رسیدن به این هدف معمولاً از PLCهای قدرتمندتر و کدنویسی بسیار بهینه استفاده میکنند.

شکل ۳ – صنایع بستهبندی
مثال دوم: صنایع خودروسازی
در خطوط مونتاژ خودرو، نیاز به هماهنگی میان صدها عملگر مکانیکی و حسگر وجود دارد. در اینجا اسکن تایم کمی بلندتر، مثلاً بین پنج تا پانزده میلیثانیه، قابلقبول است زیرا تغییرات به سرعت خطوط بستهبندی رخ نمیدهد. با این حال اگر اسکن تایم بیش از حد طولانی شود، هماهنگی میان بخشهای مختلف خط از بین میرود و خطاهای تجمعی در کیفیت محصول ایجاد میشود. شرکتهای خودروسازی معمولاً با تقسیم برنامه به چند Task و تخصیص اولویتهای متفاوت، این مشکل را حل میکنند.

شکل ۴ – صنایع خودروسازی
مثال سوم: صنایع فرآیندی مانند پتروشیمی
در واحدهای پتروشیمی یا پالایشگاه، بسیاری از فرآیندها ماهیت کند دارند. برای مثال تغییر دمای یک مخزن یا فشار یک خط لوله ممکن است چندین ثانیه طول بکشد. در چنین شرایطی اسکن تایم بیست یا سی میلیثانیهای کافی است. اما نکته مهم اینجاست که در همین صنایع هم برخی بخشها مانند حفاظتهای ایمنی نیازمند واکنش فوری هستند. بنابراین معمولاً ترکیبی از اسکن تایمهای مختلف و استفاده از وقفهها به کار گرفته میشود تا هم دقت فرآیندی و هم ایمنی تضمین شود.

شکل ۵ – صنایع نفت و گاز
مثال چهارم: رباتیک صنعتی
یکی از سختترین کاربردها مربوط به رباتهای صنعتی است. بازوهای رباتیک که در جوشکاری یا رنگکاری خودرو استفاده میشوند، نیازمند هماهنگی در سطح زیر میلیثانیه هستند. هر خطای زمانی کوچک میتواند مسیر حرکت بازو را تغییر دهد و باعث خطای تولید شود. در این کاربردها معمولاً از کنترلرهای خاص با قابلیت اجرای دستورات در کسری از میلیثانیه استفاده میشود و PLCهای عمومی پاسخگوی این سطح از نیاز نیستند.
برای ثبت نام در دوره آموزش PID در PLC کلیک کنید.
استانداردها و راهنماهای بینالمللی مرتبط با اسکن تایم PLC
در سطح بینالمللی استانداردهایی مانند IEC 61131 برای برنامهنویسی PLC و IEC 61508 برای ایمنی عملکردی مطرح هستند. این استانداردها الزام مستقیم بر مقدار اسکن تایم تعیین نمیکنند، اما چارچوبی ارائه میدهند که طبق آن مهندسان باید اسکن تایم را متناسب با نیاز فرآیند مشخص کنند. برای مثال، در پروژههای ایمنی سطح SIL2 یا SIL3، طراح موظف است نشان دهد که تأخیرهای کنترلی از حد مشخصی تجاوز نمیکند. این موضوع بهطور غیرمستقیم به طراحی اسکن تایم مربوط میشود.
اشتباهات رایج مهندسان در مدیریت اسکن تایم PLC
یکی از اشتباهات متداول این است که برنامهنویس بدون توجه به بار پردازشی، کد بسیار پیچیدهای مینویسد و انتظار دارد PLC همیشه در زمان کوتاهی آن را اجرا کند. درحالیکه هر CPU محدودیت خاص خود را دارد و ممکن است با این کار اسکن تایم بهطور ناخواسته افزایش یابد. اشتباه دیگر بیتوجهی به بار شبکه است. بسیاری از پروژهها حجم بالایی از دادهها را در هر سیکل بین PLC و HMI ردوبدل میکنند که عملاً زمان زیادی از چرخه را به خود اختصاص میدهد. اشتباه سوم، عدم استفاده از امکاناتی مانند Taskهای مجزا یا وقفههاست. این موضوع باعث میشود کل برنامه با یک سرعت یکنواخت و گاه ناکارآمد اجرا شود.
برای نمونه، در یکی از پروژههای واقعی، مهندسی حجم بالایی از دادهها (بیش از ۳۰۰ متغیر) را در هر سیکل بین HMI و PLC ردوبدل کرده بود. این کار باعث شد اسکن تایم از حدود ۵ میلیثانیه به بیش از ۲۵ میلیثانیه افزایش پیدا کند و در نتیجه دستگاه بستهبندی با تأخیر در فرماندهی روبهرو شود. این تجربه نشان میدهد که حتی جزئیاتی مانند نحوهی تبادل دادهها میتواند تأثیر چشمگیری بر عملکرد نهایی سیستم داشته باشد.
جمعبندی
بررسی مثالهای صنعتی نشان میدهد که اسکن تایم یک پارامتر انعطافپذیر است و بسته به نوع صنعت و حساسیت فرآیند باید مدیریت شود. در صنایع پرسرعت مانند بستهبندی یا رباتیک، کاهش اسکن تایم به حداقل ممکن اولویت دارد، در حالیکه در صنایع فرآیندی مانند آب و فاضلاب، افزایش چند ده میلیثانیهای تأثیری بر عملکرد نهایی ندارد. نکته اساسی این است که مهندسان باید نیاز واقعی فرآیند را درک کنند و بر اساس آن معماری سختافزار و نرمافزار را انتخاب کنند.
سؤالات متداول
۱. اسکن تایم PLC معمولاً چه محدودهای دارد؟
بسته به نوع PLC و کاربرد صنعتی، اسکن تایم میتواند از کمتر از یک میلیثانیه در رباتیک صنعتی تا چند ده میلیثانیه در صنایع کند مانند آب و فاضلاب تغییر کند.
۲. اگر اسکن تایم خیلی طولانی باشد چه اتفاقی میافتد؟
افزایش بیش از حد اسکن تایم باعث میشود ورودیها دیرتر خوانده شوند و خروجیها با تأخیر بهروزرسانی شوند. این موضوع میتواند منجر به خطاهای مکانیکی، کاهش کیفیت محصول یا حتی بروز شرایط ناایمن در فرآیند شود.
۳. آیا همیشه باید اسکن تایم را کوتاه نگه داشت؟
خیر. کوتاه بودن اسکن تایم همیشه ضروری نیست. در فرآیندهایی که تغییرات بسیار کند هستند (مانند تنظیم سطح مخزن)، اسکن تایم طولانیتر هیچ مشکلی ایجاد نمیکند. آنچه مهم است تناسب اسکن تایم با سرعت فرآیند است.
۴. چگونه میتوان اسکن تایم را بهینه کرد؟
با حذف دستورات غیرضروری، استفاده از Task یا بلوکهای مختلف با اولویتهای متفاوت، کاهش بار شبکه و در صورت نیاز ارتقاء سختافزار میتوان اسکن تایم را مدیریت و بهینه کرد.
۵. آیا نرمافزارهای PLC امکان مشاهده مستقیم اسکن تایم را دارند؟
بله. تقریباً تمام سازندگان معتبر مانند زیمنس، آلن بردلی و امرون امکان مشاهده یا ثبت اسکن تایم را در محیط نرمافزاری خود فراهم کردهاند.

