میانگین امتیاز این مقاله: 3.8 از 5
( تاکنون 16 نفر امتیاز داده‌اند )

‫در دنیای واقعی اتوماسیون صنعتی، ارتباطات مابین دستگاهها یعنی ‫ایجاد مکالمه و گفتگو بین دستگاه‌ها، به‌صورت هم‌زمان و ‫در بسیاری از موارد ‫در انواع شبکه‌های ارتباطی مختلف و به زبان‌های مختلف انجام می‌شود. در این مقاله به مودباس، یکی از شناخته شده ترین روش ارتباطی صنعتی میپردازیم.

ویدئوی آموزشی Modbus
در این ویدئو به درک خوبی از ماهیت و انواع پروتکل صنعتی مدباس دست می‌یابید

مودباس یک پروتکل عمومی است!

‫بسته به سازنده تجهیزات اتوماسیون صنعتی،‫ یک زبان خاص یا اختصاصی مورد استفاده قرار می‌گیرد؛ ‫یا ممکن است یک زبان، در قالب پروتکلهای عمومی در اختیار صنعت باشد. ‫بسیاری از تولیدکنندگان با این پروتکل‌های عمومی سازگار می‌شوند ‫تا محصولات‌شان به‌سادگی با بازار یکپارچه شوند.

مودباس پروتکل عمومی

‫یک پروتکل‌ باز یا عمومی در واقع مشخصات منتشر شده‌ای است که ‫هر کسی می‌تواند از آنها آزادانه یا با مجوز استفاده کند. ‫پروتکل‌های عمومی معمولاً توسط شرکت‌ها،‫ گروه‌های کاربری، جوامع حرفه‌ای و دولت‌ها حمایت می‌شوند. ‫این پروتکل‌ها امکان انتخاب گسترده‌تری از بین ‫دستگاه‌ها و سیستم‌های مختلف را برای کاربران فراهم می‌آورند ‫که برای کاربردهای خاص مورد استفاده قرار می‌گیرند.

‫مزایای پروتکل‌های عمومی عبارتند از: ‫

  • پشتیبانی شدن توسط چندین تولید کننده‌، ‫فروشندگان نرم‌افزار و سازمان‌های نصب/سرویس
  • ‫حمایت شدن از طرف گروه‌های اجتماعی فعال
  • ‫امکان ثابت نگه داشتن شرایط و افزودن امکانات بیشتر در آینده

‫امروزه، یکی از رایج‌ترین پروتکل‌های ارتباطی اتوماسیون ‫برای اتصال دستگاه‌های الکترونیکی، مودباس (Modbus) است.

مودباس (Modbus) چیست؟

‫پروتکل ارتباطی مودباس، قدیمی‌ترین ‫و محبوب‌ترین پروتکل اتوماسیون، ‫در زمینه خودکارسازی فرآیندها و سیستم SCADA ‫یا سامانه نظارت بر کنترل و اکتساب داده‌ها است.

مودباس چیست

‫آشنایی با راه‌اندازی ‫شبکه‌های مبتنی بر مودباس ‫برای هر تکنسین برق و مهندسانی که ‫در این حوزه کار می‌کنند، ضروری است. ‫توانایی یکپارچه‌سازی دستگاه‌های ‫ساخته شده توسط کارخانه‌های مختلف ‫یک مهارت پر تقاضا است ‫و باعث می‌شود در صنعت ‫فرد ارزشمندتری شوید.

‫مودباس یک پروتکل ارتباطی است که ‫که در سال 1979 توسط مادیکان، ‫برای استفاده در ‫کنترل کننده منطقی قابل برنامه‌ریزی یا PLC منتشر شد. ‫در حال حاضر، شرکت اشنایدر الکتریک مالک مادیکان است.

‫مودباس، یک زبان مشترک ‫برای برقراری ارتباط بین ‫دستگاه‌ها و تجهیزات با یکدیگر فراهم می‌کند. ‫به‌عنوان مثال، مودباس این امکان ‫را فراهم‌ می‌آورد که دستگاه‌ها در یک سیستم، ‫دما و رطوبت را بر روی یک شبکه واحد اندازه‌گیری ‌کنند و ‫نتایج را به یک کامپیوتر SCADA یا PLC انتقال دهند.

شبکه مودباس

‫توسعه و بروز‌رسانی پروتکل‌های مودباس ‫توسط سازمان مودباس مدیریت می‌شود. ‫سازمان مدباس، انجمنی است ‫که از کاربران و تأمین کنندگان ‫دستگاه‌های سازگار با مدباس تشکیل شده است.

انواع پروتکل مودباس 

‫چندین نسخه از پروتکل Modbus برای پورت سریال ‫و اترنت وجود دارد که رایج‌ترین آنها عبارتند از:

  1. Modbus RTU
  2. ‫Modbus ASCII
  3. Modbus TCP
  4. Modbus Plus

انواع مودباس

‫شرکت Modicon یک رابط مودباس ‫را برای یک شبکه مولتی دراپ مبتنی ‫بر معماری master/slave منتشر کرد. ‫ارتباط بین گره‌های مدباس، ‫با ارسال درخواست و خواندن پیام‌های پاسخ به دست می‌آید.

پروتکل مودباس و لایه فیزیکی آن

‫مودباس یک استاندارد عمومی است که ‫پیام‌های هر گفتگو را توصیف می‌کند. ‫

مدباس بین چندین نوع رسانه فیزیکی ‫ارتباط برقرار می‌کند:

  • RS-232
  • RS-485
  • RS-422
  •  اترنت (Ethernet)

لایه فیزیکی مودباس

‫رسانه فیزیکی را شما هنگام خرید دستگاهها انتخاب خواهید کرد. ‫رابط اصلی مودباس بر روی ارتباطات سریال RS-232 اجرا می‌شود، ‫اما بیشتر پیاده‌سازی‌های سطوح بعدی مودباس از RS-485 استفاده می‌کنند؛ ‫زیرا دارای مزایای زیر است:

  • پشتیبانی از مسافت طولانی‌تر
  • ‫سرعت بیشتر
  • امکان اتصال چندین دستگاه بر روی یک شبکه مولتی دراپ

مودباس بر بستر RS-485

‫ارتباط مودباس Master-Slave ‫بر روی رسانه فیزیکی سریال RS-485، ‫اتصالات دو سیمی فرستنده و گیرنده را نشان می‌دهد. ‫

ارتباطات دوسیمی rs-485

در رابط‌های ساده‌ای مانند RS-232 یا RS-485، ‫پیام‌های مودباس با فرم ساده در شبکه ارسال می‌شوند ‫و شبکه تنها به اتصال مودباس اختصاص داده می‌شود. ‫با این حال، اگر شبکه شما ‫به چندین دستگاه ناهمگن نیاز داشته باشد ‫که از یک شبکه چندمنظوره ‫مانند TCP/IP بر بستر اترنت استفاده کند، ‫پیام‌های مودباس در بسته‌های اترنت ‫با فرمت تعریف شده برای این رابط فیزیکی تعبیه می‌شود.

‫بنابراین در این حالت، مودباس و سایر پروتکل‌های ترکیبی، ‫می‌توانند هم‌زمان در یک رابط فیزیکی هماهنگ وجود داشته باشند. ‫

مودباس و اترنت

مقدمه ای بر ساختار پیامها در Modbus

ساختار اصلی پیام مودباس نقطه-به-نقطه است. ‫مودباس قادر است بر روی هر دو شبکه ‫نقطه-به-نقطه و مولتی دراپ اجرا شود. ‫

انواع شبکه ها در ساختار مودباس

ارتباط دستگاه‌های مدباس از ‫یک تکنیک master/slave یا client/server بر بستر اترنت استفاده می‌کند که ‫تنها یک دستگاه (Master یا سرور) می‌تواند تراکنش‌ها (یا درخواست‌ها) را آغاز کند.

‫دیگر دستگاه‌ها با ارائه داده‌های درخواستی به دستگاه master ‫یا با اجرای عمل درخواست شده در یک درخواست پاسخ می‌دهند.

‫دستگاه slave، یک دستگاه جانبی است، ‫مانند مبدل ورودی/خروجی، دریچه (والو)، راه‌انداز شبکه ‫یا دیگر انواع دستگاه‌های اندازه‌گیری که اطلاعات را پردازش می‌کنند؛ ‫و پیام پاسخ را با استفاده از ‫پروتکل مودباس به دستگاه master ارسال می‌کند.

‫دستگاه‌های master می‌توانند ‫درخواست را به یک دستگاه slave خاص بفرستند، ‫یا ارسال درخواست گسترده را به تمام دستگاه‌های slave آغاز کنند. ‫دستگاه‌های slave، پاسخ تمام درخواست‌های ارسال شده را جداگانه ارسال می‌کنند، ‫اما به پیام‌های گسترده پاسخ نمی‌دهند.

‫دستگاه‌های slave آغاز کننده هیچ پیامی نیستند، ‫و تنها به پیام‌های ارسال شده ‫از طرف دستگاه‌های master پاسخ می‌دهند.

پاسخگویی دستگاههای Slave به Master

‫درخواست دستگاه master حاوی این موارد است:‫

  • آدرس دستگاه slave یا آدرس گسترده،
  • ‫یک کد عملکرد با دستور داده‌ای خواندن/نوشتن به دستگاه slave
  • داده مربوطه؛ مثلا در صورتی که دستور نوشتن توسط Master و در فیلد قبلی صادر شده باشد این بخش باید حاوی داده‌ای باشد که قرار است نوشته شود.
  • فیلد کنترل خطا

فیلد کنترل خطا، مقداری است که دستگاه master یا slave ‫در شروع فرآیند درخواست یا پاسخ ایجاد می‌کند ‫و هنگامی‌ که پیام دریافت شد، ‫برای تائید درستی محتوا آن را بررسی می‌کنند.

ساختار پیام ارسالی Master در مودباس

‫پاسخ دستگاه slave حاوی فیلدهای زیر است:

  • فیلدی که تایید میکند درخواست دریافت شده است
  • داده‌ای که باید برگردانده شود
  • فیلد کنترلی خطا CRC

‫اگر خطایی رخ نداده باشد، ‫پاسخ دستگاه slave حاوی داده درخواست شده خواهد بود. ‫اما اگر خطایی در درخواست پیام دریافت شده توسط دستگاه slave رخ داده باشد، ‫یا اگر دستگاه slave قادر نباشد ‫عملیات خواسته شده را اجرا کند، ‫دستگاه slave پیام خاصی را برخواهد گرداند.

پیام برگشتی Slave در مودباس

‫فیلد بررسی خطای فریم پیام دستگاه slave، ‫امکان تائید محتواهای پیام معتبر ‫را برای دستگاه master فراهم می‌آورد.

تایید داده ارسالی Slave توسط Master

جزئیات پروتکل مودباس

تا اینجا با پروتکل ارتباطی مودباس آشنا شدید ‫و انواع ارتباطات مدباس‫ مورد استفاده در صنعت را شناختید. اکنون میخواهیم با جزییات بیشتری ‫درباره چگونگی عملکرد پروتکل ارتباطی مودباس‫ بین دستگاه‌ها صحبت کنیم. پیشنهاد میکنیم ویدئوی زیر را نیز ببینید:

ویدئوی آموزشی جزییات پروتکل مودباس

ساختار پیامها در پروتکل Modbus

هر پیام مودباس ‫ساختار یکسانی دارد که ‫در هر پیام، ‫چهار بخش اصلی ارائه می‌شود. ‫توالی و ترتیب این عناصر، ‫برای همه پیام‌ها یکسان است. ‫این امر امکان تجزیه راحت ‫محتوای پیام مدباس را فراهم می‌آورد.

‫یک گفتگو در شبکه مدباس‫ همیشه با Master شروع می‌شود. ‫دستگاه Master یک پیام ارسال می‌کند؛ ‫با توجه به محتواهای پیام ‫دستگاه Slave پیام را ‫تفسیر کرده و پاسخ می‌دهد.

‫آدرس‌دهی فیزیکی Slave در هدر (header) هر پیام، ‫تعیین می‌کند که ‫کدام دستگاه باید به پیام پاسخ ‌دهد. ‫دیگر نودهای موجود در شبکه مودباس، ‫در صورتی که فیلد آدرس با آدرس خودشان ‫مطابقت نداشته باشد، این پیام را نادیده می‌گیرند.

آدرس دهی Slave در هدر پیام مستر

‫توابع مودباس، دستورات خواندن و نوشتن را ‫برای رجیسترهای حافظه داخلی slave اجرا می‌کنند ‫تا به این ترتیب، ورودی‌ها و خروجی‌های‫ دستگاه slave را پیکربندی، نظارت و کنترل کنند.

دستگاههای شبکه مودباس

‫دستگاه‌های مودباس معمولاً ‫حاوی یک نقشه رجیستر (رجیستر مپ) هستند، ‫که مکان پیکره‌بندی و ‫خواندن/نوشتن ‫داده‌های ورودی و خروجی را مشخص می‌کند. ‫شما باید به رجیستر مپِ ‫دستگاه slave مرتباً مراجعه کنید تا ‫درک بهتری از عملیات کلی آن بدست آورید.

‫مدل داده‌های مدباس دارای یک ساختار ساده، ‫شامل چهار نوع داده اساسی است:

  • ‫ورودی‌های مجزا (Discrete Inputs)
  • خروجی‌های کویل (Coils Outputs)
  • ‫رجیسترهای ورودی (داده‌ ورودی)
  • ‫رجیسترهای نگهدارنده (داده‌ خروجی)

رجیستر مپ دستگاه slave

واحد داده پروتکل مدباس (PDU)

‫ناحیه درخواست سرویسِ پیام ‫یا واحد داده پروتکل مودباس (PDU)، ‫از کد عملکرد ‫و تعدادی بایت‌های داده درخواست شده ‫توسط دستگاه master تشکیل شده است.

ناحیه PDU در پیام Master

‫رجیسترهای حافظه مدباس یک دستگاه، ‫بر اساس چهار نوع ‫مرجع داده اساسی سازماندهی می‌شود. ‫و این نوع داده معمولاً، ‫توسط اولین عدد مورد استفاده در ‫آدرس حافظه دستگاه‌ها شناسایی می‌شود،

‫برای مثال:

  • عدد 0 در رجیستر ‫به پیامی جهت خواندن و نوشتن خروجی‌های مجزا یا کویل اشاره می‌کند
  • عدد 1 در رجیستر ‫به پیامی جهت خواندن ورودی‌های مجزا اشاره می‌کند
  • ‫و یا عدد 3 در رجیستر ‫به پیامی جهت خواندن رجیسترهای ورودی‌ اشاره می‌کند
  • ‫و عدد 4 در رجیستر ‫به خواندن یا نوشتن بر روی رجیسترهای خروجی یا نگهدارنده اشاره دارد

فیلد کد عملکرد در پیامهای Modbus

‫فیلد کد عملکرد مشخص می‌کند که ‫کدام گروه‌ داده‌ رجیستر، ‫از دستگاه slave می‌خواند یا ‫بر روی آن می‌نویسد. ‫

برای مثال، کد عملکرد 03 که ‫رجیسترهای نگهدارنده 40002-40001 را می‌خواند، ‫به عنوان رجیستر داده 0000، ‫در فیلد آدرس داده پیام ارسالی به slave آدرس‌دهی می‌شود.

‫کد عملکرد 03 بر روی این نوع رجیستر نگهدارنده (4xxxx) ‫در نقشه داده slave کار می‌کند؛ ‫زیرا درخواست، استفاده از ‫عملیات نوع داده رجیستر نگهدارنده را مشخص می‌کند. ‫و در درخواست هم به این نوع آدرس‌دهی 4xxxx اشاره می‌شود.

بخش کد عملکرد پیامهای مودباس

‫فیلدهای PDU به بایت‌های مختلف تقسیم شده و ‫سپس بر اساس عنوان فیلد گروه‌بندی می‌شوند. ‫پیام درخواست حاوی بخشهای زیر است:

  • آدرس دستگاه Slave، با 01
  • کد عملکرد 03 (خواندن از رجیسترهای نگهدارنده 4xxxx)
  • ‫آدرس شروع بایت‌های HI و LO به صورت 0000 که رجیستر ابتدایی را مشخص میکند.
  • تعداد آدرسهایی که باید از Slave خوانده شود، ‫با بایت‌های HI و LO رجیستر مقدار 0002 مشخص میشوند ‫و تعداد رجیسترهایی که باید از Slave خوانده شوند ‫را مشخص می‌کند.

ساختار PDU پیامهای مودباس

‫مثالی از یک درخواست برای ‫خواندن دو رجیستر اول در ناحیه رجیستر نگهدارنده، ‫از 0 تا 1 (رجیستر 40001 تا 40002) است و در تصویر زیر نمایش داده شده است.

خواندن رجیسترهای نگهدارنده

در تصویر فوق مشخص است که ‫رجیستر نگهدارنده 40108 در واقع، ‫به عنوان رجیستر 107 در ناحیه داده پیام PDU آدرس‌دهی می‌شود.

‫بسیاری از انواع داده‌ها بر اساس ‫کاربرد آن‌ها در رله‌های راه‌انداز نام‌گذاری می‌شوند. ‫برای مثال، یک خروجی فیزیکی تک بیتی، کویل نامیده‌ می‌شود، ‫و ورودی فیزیکی تک بیتی، ورودی مجزا یا کنتاکت نام‌گذاری می‌شود.

نامگذاری رجیسترهای حافظه

‫فیلد کد عملکرد پیام، ‫حاوی یک بایت است که‫ به دستگاه slave می‌گوید چه کاری انجام دهد.

‫کدهای عملکرد معتبر از محدوده 1 تا 255 هستند، ‫اما همه کدها به یک دستگاه slave خاص ارسال نمی‌شوند.

‫جدولی که در تصویر زیر مشاهده می‌فرمایید، زیرمجموعه‌ای از ‫توابع مودباس استاندارد را نشان می‌دهد.

توابع استاندارد پروتکل مودباس

فیلد داده در پیام مودباس

فیلد داده درخواست دستگاه Master، ‫اطلاعات اضافی مورد نیاز دستگاه Slave را فراهم می‌کند تا ‫عملیات مشخص شده توسط کد عملکرد در درخواست دستگاه Master را کامل کند.

‫این درخواست معمولاً شامل بخشهای زیر است:

  • آدرس رجیستر مپ Slave
  • تعداد رجیسترهای مورد نیاز در درخواست
  • هر دستور نوشتن از دستگاه Master

مدیریت خطا در پیام مدباس

‫پاسخ عادی Slave، به سادگی ‫کد عملکرد اصلی درخواست را منعکس می‌کند، ‫اما پاسخ خطای دستگاه Slave، ‫کدی معادل کد عملکرد اصلی ‫را با 1 کردن پرارزش ترین بیت بازمی‌گرداند.

‫به عنوان مثال، دستور خواندن رجیسترهای نگهدارنده، ‫دارای کد عملکرد 1 بایتی حاوی 8 بیت 0011 0000 (03 هگزادسیمال) است. ‫اگر دستگاه Slave درخواست را بدون خطا قبول کند، ‫همان کد را در پاسخ خود بازمی‌گرداند.

‫با این حال اگر خطایی رخ دهد، ‫دستگاه Slave، یک بایت حاوی 8 بیت ‫را در فیلد کد عملکرد به شکل 0011 1000 بازمیگرداند (پرارزش ترین بیت 1 شده) ‫و یک کد خاص به فیلد داده پیام پاسخ الحاق می‌کند، ‫که به دستگاه Master می‌گوید، ‫چه خطایی رخ داده است ‫یا علت خطا چیست؟

نمایش خطا در پیام پروتکل مودباس

‫پرکاربردترین کدهای عملکرد در Modbus

کد عملکرد 01، کد خواندن کویل، ‫برای خواندن رجیسترهای پیوسته 1 تا 2000 ‫مربوط به وضعیت کویل‌ها در یک دستگاه Slave استفاده می‌شود. ‫درخواست PDU، کد شروع آدرس حافظه دستگاه Slave اولین کویل و‫تعداد کویل‌هایی که باید از دستگاه Slave خوانده شوند‫ را مشخص می‌کند.

‫کد عملکرد 02، کد خواندن ورودی‌های مجزا، ‫برای خواندن حالت‌های پیوسته 1 تا 2000 ‫ورودی‌های مجزای یک دستگاه Slave در حالت ریموت استفاده می‌شود. ‫درخواست PDU، کد شروع آدرس ‫آدرس حافظه دستگاه Slave اولین ورودی ‫و تعداد کویل‌هایی که باید از دستگاه Slave خوانده شوند‫ را مشخص می‌کند. ‫

کد عملکرد 03، کد خواندن رجیسترهای نگهدارنده، ‫برای خواندن محتواهای یک بلوک متوالی ‫از رجیسترهای نگهدارنده در دستگاه Slave در حالت ریموت به کار‌ می‌رود. ‫درخواست PDU، آدرس رجیستر آغازین ‫و تعداد رجیسترهایی که باید از دستگاه Slave خوانده شوند‫ را مشخص می‌کند. ‫

کد عملکرد 04، کد خواندن رجیسترهای ورودی، ‫برای خواندن رجیسترهای ورودی پیوسته 1 تا 125 در یک دستگاه راه دور استفاده می‌شود. ‫درخواست PDU، آدرس رجیستر آغازین و تعداد رجیسترها را مشخص می‌کند.

‫کد عملکرد 05، کد خواندن یک کویل، ‫برای نوشتن یک خروجی یکتا به صورت ON یا OFF ‫در یک دستگاه Slave راه دور استفاده می‌شود.

‫کد عملکرد 06، کد نوشتن یک رجیستر، ‫برای نوشتن یک رجیستر نگهدارنده ‫در یک دستگاه Slave راه دور استفاده می‌شود. ‫درخواست PDU، آدرس رجیستر حافظه دستگاه Slave ‫که باید بر روی آن نوشته شود را تعیین می‌کند.

‫کد عملکرد 15، کد نوشتن چندین کویل، ‫برای نوشتن یک کویل در دنباله‌ای از کویل‌ها، ‫به صورت ON یا OFF در یک ‫دستگاه Slave راه دور استفاده می‌شود. ‫درخواست PDU، آدرس حافظه کویل‌ها ‫به صورت ON یا OFF را مشخص می‌کند.

کد عملکرد 15 شبکه مودباس

‫و در نهایت کد عملکرد 16، ‫نوشتن بر روی چندین رجیستر، برای نوشتن یک بلوک از رجیسترهای پیوسته، ‫از 1 تا 123 رجیستر در یک دستگاه Slave راه دور استفاده می‌شود.

‫از آنجایی که این کدهای عملکرد در مودباس، ‫نمایانگر رایج‌ترین توابع خواندن و نوشتن هستند، ‫بررسی دقیق مشخصات پروتکل مدباس برای مطالعه بیشتر، ‫کمک کننده خواهد بود.

‫برای مطالعه دقیق‌تر اطلاعات فنی پروتکل مودباس ‫لطفاً به آدرس Modbus.org مراجعه کنید.

نرم افزار شبیه ساز پروتکل Modbus

‫ارتباط با دستگاه‌های Slave یا PLCهای Master و یا کامپیوترها ‫می‌تواند با استفاده از نرم‌افزار شبیه‌ساز پروتکل مودباس ‫بر روی کامپیوتر شخصی اجرا شود.

‫اتصال می‌تواند به صورت سریال یا اترنت و در قالب دستگاه Master یا Slave باشد. ‫این نرم‌افزار امکان اجرای تمام ‫کدهای عملکرد ارتباطی پروتکل مدباس، ‫به‌ منظور خواندن یا نوشتن بر روی ‫دستگاه Slave موجود را فراهم می‌آورد.

‫شما به‌ راحتی می‌توانید یک کامپیوتر شخصی را‫ برای اجرای نرم‌افزار شبیه‌سازی دستگاه Slave، ‫و کامپیوتر دیگری را برای اجرای‫ نرم‌افزار شبیه‌سازی دستگاه Master به کار ببرید.

نرم افزار شبیه ساز Master و Slave مودباس

‫اتصال به یک Slave در ابتدا ‫با تنظیم پارامترهای ارتباطی برای پورت COM سریال، ‫سپس با وارد کردن آدرس Slave در فیلد شناسه دستگاه انجام میشود.

اتصال شبیه ساز از طریق پورت سریال COM

‫برای مثال 1، انتخاب کد عملکرد 01، ‫جهت خواندن وضعیت کویل دستگاه Slave، ‫در آدرس 0001 و خواندنی به طول 100 کویل انجام می‌شود.

نرم افزار شبیه ساز Slave مودباس

‫علاوه بر این، چندین شرکت ارائه دهنده محصولات و پشتیبانی ‫برای کمک به شما در استفاده از این پروتکل وجود دارد. ‫کمپانی ProSoft Technologies، ‫شرکت ارتباطات صنعتی HMS ‫و MOXA تعدادی از این شرکت‌ها هستند.

این مقاله چطور بود؟

میانگین امتیاز 3.8 / 5. تعداد آرا: 16

ارسال یک پاسخ

لطفا دیدگاه خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید