آموزش راه اندازی مدباس با STM32

(دیدگاه کاربر 42)

تومان249,000

آموزش نحوه راه اندازی پروتکل MODBUS RTU بصورت SLAVE بر روی میکروکنترلر STM32 با استفاده از توابع HAL و نرم افزار cubeMX

5 نفر در حال مشاهده این محصول هستند!
توضیحات

در این آموزش نحوه راه اندازی پروتکل مدباس (MODBUS RTU)  بصورت SLAVE بر روی میکروکنترلر STM32 با استفاده از توابع HAL و نرم افزار cubeMX انجام شده است. در این آموزش از پایه پروتکل مدباس را توضیح داده و نحوه ارتباط آن با دیگر دستگاه های روی شبکه و پیاده سازی آن روی میکرو کنترلر STM32 با استفاده از یکی از کاملترین کتابخانه های مدباس برای سیستم های امبدد مینماییم.

این آموزش شامل 88 دقیقه اموزش ویدیویی به همراه مثال و فایل های متنی مورد استفاده در ویدیو میباشد.

مثال توضیح داده در آموزش روی میکروکنترلر STM32F217ZG پورت شده است اما در فایل آموزشی یک ویدیو جداگانه از نحوه پورت کردن روی همین میکرو از صفر توضیح داده شده تا بتوانید روی میکرو مورد نظر خود این کتابخانه را پورت نمایید.

فانکشن کدهای پشتیبانی شده در این کتابخانه (0X03 | 0X06 | 0X10 | 0X17 | 0X01 | 0X05 | 0X15)

فهرست مطالب ویدیو اول (مقدمات و نحوه کار)

  1. چرا مدباس
  2. نحوه ارتباطات master و slave در مدباس
  3. تفاوت پروتکل و لایه فیزیکی
  4. هر بخش از فریم چه کاری انجام میدهد
  5. تفاوت پروتکل و لایه فیزیکی
  6. توضیح دیاگرام ارتباطی master و بررسی حالت های مختلف
  7. توضیح دیاگرام ارتباطی slave و بررسی حالت های مختلف

  8. تعداد بایت های هر بخش از فریم ها
  9. اهمیت timing در فریم ها و میزان زمان مورد نیاز و محاسبه آن ها
  10. ارتباطات سخت افزاری روی خطوط rs485
  11. ارتباطات سخت افزاری روی خطوط rs422
  12. توضیح انواع فانکشن کدهای پرکاربرد (0X03 | 0X06 | 0X10 | 0X17 | 0X01 | 0X05 | 0X15)
  13. مثالی از فریمینگ یک فانکشن کد
  14. توضیح مختصر در رابطه با کتابخانه مورد استفاده در آموزش
  15. راه اندازی مثال همراه با محصول روی میکرو کنترلر
  16. ارتباط مدباس بین برد (SLAVE) و نرم افزار modbus pool به عنوان master
  17. تست ارتباط در فانکشن کد های (0X03 | 0X06 | 0X10 | 0X17 | 0X01 | 0X05 | 0X15)
  18. توضیح فریم های ارسالی و دریافتی بین نرم افزار و برد
  19. توضیح کاربرد هر قسمت از فریم در فانکشن 0x03 جهت مثال بخش قبل
  20. توضیح کاربرد هر قسمت از فریم در فانکشن 0x17 جهت مثال بخش قبل
  21. تست ارتباط ساده بین برد و نرم افزار HMI دلتا dopsoft در حالت شبیه سازی آنلاین
  22. شماتیک و نکات مهم در راه اندازی rs485
  23. تشریح برخی از قسمت های کتابخانه مدباس

فهرست مطالب ویدیو دوم (نحوه پورت کردن کتابخانه روی میکرو)

  1. دریافت کتابخانه
  2. انتخاب میکرو  و کانفیگ در cubeMX
  3. ساخت پروژه با keil v5
  4. وارد کردن کتابخانه مورد نیاز
  5. پورت کردن تایمر و پورت سریال به کتابخانه
  6. کانفیگ کتابخانه
  7. دانلود کد نوشته شده روی برد
  8. ارتباط با نرم افزار modbus pool به عنوان master

با استفاده از این آموزش میتوانید پروتکل modbus rtu را بصورت slave روی میکرو کنترلر stm32 خودتان پیاده سازی کرده و ارتباطات بین میکروکنترلر و دستگاه های متصل روی این شبکه ارتباط گرفته و تبادل داده انجام دهید.

اطلاعیه مهم : در صورت نیاز به راهنمایی در رابطه با محصول و مطالب عنوان شده لطفا فقط در بخش کامنت ها سوال خود را مطرح کنید به طور معمول بین 2  تا حداکثر 24 ساعت پاسخ شما داده خواهد شد. همکاران ما در قسمت تماس با ما امکان راهنمایی فنی را ندارند لطفا فقط در قسمت کامنت ها سوال خود را مطرح نمایید.

این آموزش به صورت پروژه محور کار شده و ویدیویی که در بالا مشاهده میکنید قسمتی از ویدیو اصلی میباشد و در این آموزش دقیقا همان مطالب بیان شده در فهرست توضیح داده شده است.

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

توضیحات تکمیلی
نام محصول

راه اندازی پروتکل MODBUS RTU بصورت SLAVE

میکرو کنترلر

STM32

نوع آموزش

ویدیویی به همراه مثال

زمان آموزش

88 دقیقه

فانکشن کدهای استفاده شده

0X03

,

0X06

,

0X10

,

0X17

,

0X01

,

0X05

,

0X15

نرم افزارهای مورد استفاده

KEILV5

,

STM32 CUBEMX

,

MODBUS POOL

,

DOPSOFT

42 دیدگاه برای آموزش راه اندازی مدباس با STM32

  1. خریدار محصول احسان فرقانی (مالک تایید شده)

    سلام من از طریق ttl ارتباط رو تونستم برقرار کنم واسه حالت RS485 هم طبق جوابتون به یکی از پرسش های دوستان یک پین خروجی تعریف کردم و در محل مورد نظر که مربوط ب ارسال هست یک کردم و در حالت دریافت صفر.جواب نگرفتم.تاخیر هم ایجاد کردم که در همه حالات خطای تایم اوت دارم.این تست رو با دو برد مجزا انجام دادم

    • مدیر فروشگاه مدیر

      سلام نیاز به تعریف تاخیر ندارید. این قسمت از بحث این آموزش خارج هست اما طبق همان پاسخ، دوستان زیادی تونستند بخش 485 را راه اندازی کنند که داخل کامنتها مشخص هست و داخل پروژه های خودمان هم از همین روش استفاده کردیم. احتمالا مشکل از سمت سخت افزار 485 تان هست.

  2. hossein mirjalili

    سلام
    من این اموزش رو تهیه کردم و فیلم اموزش رو کامل دیدم العان سوالم اینه که RE و DE ایسی max485 رو شما به کجا وصل کردین
    و اینکه میشه لطف کنین یک توضیح برای اتصالات سیم کشی هم بدین ممنون

    • مدیر فروشگاه مدیر

      ابتدا داخل کیوب یک پین به صورت خروجی تعریف میکنید و در حالت 0 یا low قرار میدید
      پین کنترل دیتا برای ارتباط 485 باید در فانکشن ارسال مقدار دهی بشه. به صورت مشخص فانکشن xMBRTUTransmitFSM در فایل mbrtu.c وظیفه این کار را دارد که قبل از خط xMBPortSerialPutByte( ( CHAR )*pucSndBufferCur ); میتونید پین جهت دیتا حالت ارسال را انتخاب کنید و داخل همان فانکشن قبل از xNeedPoll = xMBPortEventPost( EV_FRAME_SENT ); میتونید جهت دیتا را به حالت دریافت تغییر بدید.

  3. Beigi

    با سلام خدمت شما .
    من می خواستم این محصول را خریداری ولی چند سوال قبل از خرید این محصول داشتم
    1. آیا با خرید این دوره آموزشی قادر به راه اندازی تمامی HMI های صنعتی که دارای مدباس هستند می باشد .
    2. من می خواهم با مدل HMI صنعتی دلتا سری 100 کار کنم آیا با خرید این آموزش می توانم با میکروکنترلر STM32 این HMI را راه اندازی کنم
    با تشکر از شما

    • مدیر فروشگاه حمیدرضا محبوب مقدم

      سلام وقت شما بخیر.
      1 هر hmi نرم افزار و تنظیمات خاص خودش را دارد اما استاندارد مدباس بین همه اینها یکی هست. اگر منظورتان از ارتباط با این استاندارد هست بله میتوانید.
      2 یک نمونه hmi دلتا شبیه سازی شده با استفاده از همین مثال اگر تنظیمات یکی باشند میتوانید مشابه این مثال را روی مدل مدنظرتان اجرا کنید.
      لطفا توجه داشته باشید که هدف این اموزش راه اندازی پروتکل مدباس با استفاده از STM32 هست و با استفاده از این اموزش نحوه عملکرد این پروتکل و پیاده سازی آن روی میکروکنترلرهای STM32 را خواهید اموخت. صرفا جهت مثال از نرم افزارهای مرتبط استفاده شده و در این فایل دوره هیچ آموزشی بر مبنای راه اندازی hmi ها به جز قسمتی کوچکی جهت مشاهده کاربرد اورده نشده است.

  4. خریدار محصول aram (مالک تایید شده)

    سلام روزتون بخیر .
    ببخشید ممکنه راهنمایی بفرماییداز چه کتابخانه ای برای راه اندازی مدباس به صورت master بر روی stm32 میتوان استفاده کرد.

  5. خریدار محصول فرشید شاهیوند (مالک تایید شده)

    با سلام و وقت بخیر
    بنده از میکرو کنترلر STM32F103C8t6 استفاده می کنم حواستم بدونم که آیا تنظیمات کلاک باید حتما مقدار مشخصی باشه؟
    چون بنده 72 مگ تعیین کردم کلاکرو ولی شما 25 مگ گذاشتین برای کلاک این برد 25 نمیشه تنظیم بشه

    • مدیر فروشگاه حمیدرضا محبوب مقدم

      سلام وقت بخیر
      خیر مشکلی ندارد. هر میزان کلاکی که دوست داشتید میتونید تنظیم کنید

  6. خریدار محصول فرشید شاهیوند (مالک تایید شده)

    سلام ممنون از شما بنده با stm32f1 راه اندازی کردم ، اما برای stm32g0 خطا میده ، تعداد خطا ها هم خیلی زیاده همه مراحلی که برای قیبی اجرا کردم برای این میکرو هم اجرا کردم ولی خطا میده ، به دستوراتی که داخلی پرت هستش خطا میده

    • مدیر فروشگاه حمیدرضا محبوب مقدم

      با سلام وقت بخیر. احتمالا خطا به خاطر عدم همخوانی رجیسترها داخل برنامه هست و احتمالا این عدم همخوانی مربوط به رجیستر DR هست که در سری های 0 با رجیستر RDR باید جایگذاری کنید.

  7. خریدار محصول فرشید (مالک تایید شده)

    سلام وقت بخیر
    خیلی ممنونم از راهنمایی شما، بنده با دو نوع میکرو این آموزش رو راه اندازی کردم، حالا بنده میخوام به پرت RS485 وصل کنم مدار رو همونطور که فرموین یک پین هم به عنوان خروجی تعریف کردم و زمانی که نیازه دریافت و ارسال میشه، فقط نکته ای که هستش اینه من یک مبدل 485 به سریال دارم که هنگامی که به نرم افزار MODBUS POLL وصل کنم اتصال برقرار نمیشه آیا چک کردن خروجی با مبدل صحیح هستش؟
    و اگر جواب نمده دلیلش چیه؟
    با تشکر

  8. amin nazari

    باسلام وخسته نباشید
    کاش این پروژه هارودرcubIDEپیاده سازی میکردین

    • مدیر فروشگاه حمیدرضا محبوب مقدم

      سلام وقت بخیر چون پروژه ها توسط کیوب تولید شده اند میتوانید خودتان به نسبت کامپایلر مد نظرتان تنظیم بفرمایید

  9. خریدار محصول www.hamedimani1998 (مالک تایید شده)

    سلام خسته نباشید.
    ببخشید یه سوال داشتم
    ما چه با مبدل rs485 یا مبدل rs422 و یا rs232 برد خودمون رو به لپتاپ و نرم افزار modbus poll وصل کنیم این کد و توابع مربوط به اون اجرا میشن یا نیازه که بخش خاصی از کد رو تغییر بدیم؟
    ممنون

    • مدیر فروشگاه حمیدرضا محبوب مقدم

      بله اجرا میشوند فقط برای حالت 485 به دلیل اینکه یک ارتباط نیمه دو طرفه هست باید تغییراتی که توی کامنت ها توضیح داده شده را بدهید اما توسط 422 و 232 مشکلی ندارید فقط بخش ای سی های مرتبط را درست پیاده سازی کنید. در ابتدا پیشنهاد میشود که از یک مبدل ttl معمولی استفاده کنید تا از بابت صحیح بودن ارتباط مطمئن شوید سپس لایه فیزیکی مد نظرتان را پیاده سازی کنید

  10. خریدار محصول www.hamedimani1998 (مالک تایید شده)

    سلام مجدد. در ادامه سوال خودم باید عرض کنم که من دارم از مبدل rs232 استفاده میکنم. میخواستم دونم تغییر خاصی باید به کد اعمال کنم یا به همین شکل جواب خواهم گرفت؟

    • مدیر فروشگاه حمیدرضا محبوب مقدم

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

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