آموزش رزبری پای اینترنت اشیا IOT خانه هوشمند رزبری پای سخت افزار پروژه رزبری پای

راه اندازی سروو موتور بدون برنامه نویسی با برد Raspberry pi

راه اندازی سروو موتور بدون برنامه نویسی با برد Raspberry pi دیجی اسپارک
نوشته شده توسط پریسا پوربلورچیان

سروو موتورها در صنعت کاربری های منحصر به فردی دارند. گونه های مختلف سروو موتور بر اساس زاویه دوران شافت و جنس گیربکس دسته بندی می شوند. از هدایت نازل CNC پرینتر سه بعدی، مدیریت حجم بطری در خطوط تولید نوشابه، گیمبال پهپاد و… کاربرد دارند. مهمترین پارامتر در یک سروو موتور زاویه دوران شافت می باشد. در سیستم‌های هوشمند و اینترنت اشیا IOT هم بسیار پرکاربرد ظاهر شده‌اند. به عنوان مثال برای قطع شبکه گاز ساختمان نیاز نیست که حتما از شیر برقی استفاده شود. یک سروو موتور با قدرت مناسب میتواند به شافت والف گاز متصل شده و عملیات قطع گاز را به صورت مکانیکی و با قابلیت اطمینان بیشتری انجام دهد. در ادامه با وب سایت تخصصی اینترنت اشیا  IOT  دیجی اسپارک همراه باشید.

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

 

وسایل مورد نیاز

در این آموزش همانطور که در عنوان ذکر شده است بدون نیاز به برنامه نویسی با نرم افزار نود رد Node Red شیوه‌ی کنترل سروو موتور با نود رد Node Red را آموزش خواهم داد. چنانچه با نود رد آشنایی ندارید پیشنهاد میکنم پست آشنایی با نرم افزار Node Red را مطالعه کنید. در غیر اینصورت به ادامه آموزش توجه کنید.

 

راه اندازی NODE RED در برد رزبری پای Raspberry Pi

در ابتدا وارد منو رزبری پای ، Programing شده و Node Red را فعال میکنیم. این پروسه با توحه به سرعت اینترنت شما چند دقیقه طول خواهد کشید. سپس وارد ترمینال رزبری پای شده و با دستور ifconfig آی پی رزبری را به دست می آوریم. حال با توجه به IP Addrress رزبری پای ، وارد مرورگر شده و آدرس ip را وارد می‌کنیم. محیط نرم افزار node red در دسترس شما است. با توجه به تصویر زیر نودهای slider و rpi gpio و gauge را وارد محیط نود رد میکنیم. حال از نود slider از طریق drag  & drop به نود rpi gpio متصل کرده و سپس نود gauge را انتخاب نموده و به نود slider اتصال میدهیم.

مدیریت سروو موتور با Node-RED-digispark

اتصال پین‌های GPIO برد رزبری پای Raspberry Pi

برای مدیریت سروو موتور به طور معمول به سه پایه از gpio نیاز داریم. یکی پایه GND که در این آزمایش به پین شماره ۳ رزبری پای متصل شده است. برای تغذیه سروو موتور نیاز به ولتاژ ۵ ولت داریم. همانطور که میدانید برد رزبری پای دارای ۲ پایه ی ۵ولت gpio می باشد. در این آزمایش از پایه ی شماره یک استفاده کرده ایم. پایه سوم در سروو موتور توسط موج مربعی یا PWM فرمان می‌گیرد. به این منظور از پایه ی ۱۳ برد رزبری پای استفاده میکنیم.

 

تنظیمات Node-RED

برای تنظیمات اسلایدر، ابتدا روی آن دبل کلیک میکنیم. در پنجره ای که باز میشود همانند تصویر زیر مقادیر MAX , MIN را بین ۰ تا ۸۰ تغییر دهیم.

تنظیمات سروو موتور در رزبری پای- digispark

برای تنظیمات PWM ایتدا بر روی نود rpi gpio کلیک می‌کنیم. در پنجره‌ای که باز می‌شود همانند تصویر زیر در سطر دوم گزینه type را روی حالت PWM output تنطیم می‌کنیم. سپس از گزینه اول gpio را انتخاب می‌کنیم. در این آزمایش از gpio 13 استفاده شده است.

تنظیمات pwm در برد رسپبری پای - digispark

برای تنظیمات حالت گرافیکی یا UI از طریق نود gauge اقدام می‌کنیم. ابتدا بر روی آن دبل کلیک کرده سپس در پنجره ای که باز می‌شود همانند تصویر زیر عمل می‌کنیم. حال در سطر آخر مقادیر MAX , MIN را بین ۰ تا ۱۰۰ تنظیم می‌کنیم.

تنظیمات حالت گرافیکی در برد رسپبری پای - digispark

 

فرمان به سروو موتور در محیط گرافیکی UI

با تنظیماتی که در بالا انجام دادیم، در محیط گرافیکی یک نوار کشویی خواهیم داشت. با جابجا کردن آن شافت سروو حرکت می‌کند. برای ورود به محیط گرافیکی کافیست آی پی محیط نرم افزار Node-RED را کپی کرده در انتهای آن /UI اضافه می‌کنیم (http://192.168.0.104:1880/ui)

محیط گرافیکی نرم افزار Node-RED-digispark

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

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۵۴ دیدگاه

  • سلام میدونم جاش نیس ولی یه درخواست

    میشه آموزش اتصال فن سی پی یو به برد آردینو رو بزارید البته بطوری که بتونه با کمترین تا ماکسیموم سرعت بچرخه

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

  • سلام خانم پور بلورچیان ، طبق برنامه که گفتید میخاستم node-red رو اپدیت کنم ولی پاک شد و دیگه به هیچ وجه دوباره نصب نشد وسیستم عامل رزبین رو دوباره نصب کردم ولی بعد از اون دیگه کد sudo pip install telebot در ترمینال عمل نکرد و اررو داد

    ممنون میشم اگر کمک کنید

  • سلام
    اول از همه بابت آموزش هاتون تشکر میکنم. سوالی که دارم، با توجه به آموزش شما میشود که به سروو موتور زاویه چرخش داد؟ مثلا تعیین کنیم با تحریک یک کلید شافت موتور ۹۰ درجه بچرخد.
    ممنونم

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

      • سلام
        آیا راهی وجود دارد که یک رقم در دماسنج رو حذف کرد و عدد دقیق به ما بدهد.مثلا دماسنج ما در رزبری پای در محیط نودرد داره نمایش میده ۲۵٫۳۵۹ میشه اون ۹ آخر رو کلا حذف کرد که فقط نشون بده ۲۵٫۳۵ کلا هر چی دما تغییر کرد کلا اینطوری نشون بده.ممنون

        • سلام
          بله امکان پذیر مى باشد. باید از نود جداکننده یعنى splite استفاده کنید و متن و عدد و هر کاراکترى که نیاز به حذف و عدم نمایش آن را دارید ، در این نود وارد کنید. ممنون میشم سوالات مرتبط با آموزش را بپرسید.

  • سلام. خانم پوربلورچیان یه ID تلگرام برای سایت بسازین اونجا هم زود تر میشه باهاتون تماس گرفت هم میشه عکس براتون راح ت تر بفرسیم

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

  • سلام
    خانم پور بلور چیان من چه با نصب node-red روی pc و چه روی raspberry pi نتونستم slider node و gauge node رو نصب کنم ممنوم میشم که به ایدی تلگرام من ی پیام بدین که از طریق vnc ویا team viewer زحمت بکشین و ی چک بفرمایین

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

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

      • من روی سه مدل کار میکنم sg92r,mg995,mg996 که برق رو از کاهنده میگیره و پالس رو از طریق یکی از پایه های پالس Gpio که معمولا یا ۱۶ یا ۳۳ یا ۲

        • تمامی این سه مدل نیاز به جریان بیش از ۵۰۰ میلی آمپر نیاز دارند که برای برد رزبری پای مقدار زیادی است.چنانچه اتصالات درست برقرار نکرده باشید، سیستم حفاظت ولتاژی برد رزبری پای مدار را ریست میکند و مشکل شما فقط از اتصالات است.

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

      • بازم ببخشید مشکل من نویز حاصل از پین های gpio هست جایی خونده بودم به دلیل سیستم عامل هستش و چون اردوینو سیستم عامل نداره این مشکل اتفاق نمیفته خواستم ببینم به نظر شما این دلیل درست هست یا نه و اصلا میشه کاری کرد که از پین های gpio بدون نویز استفاده کرد یا نه
        ممنون

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

  • سلام
    من موتور سروو Mg 995 360 درجه رو خریدم فقط این سروه درجه پذیر نیست که به کنار و برای من مهم نیست ولی من نمیتونم اونو چپ گرد کنم فقط در جهت راست کار میکند لطفا کمک کنید ؟؟

    • سلام
      منظورتان را از درجه پذیرى دقیق‌تر بیان کنید. و اینکه با چه بردى راه اندازى میکنید؟

      • اگر درمورد موتور سروو mg995 با درجه ۳۶۰ جستوجو کنید میفهمید که درجه پذیر نیستند یعنی نمیشه با برنامه نویسی تعیین کرد در درجه خاصی بایستد. و فقط سرعت و جهت قابل کنترل هست تو این سروو ها ولی من سرعت رو میتونم کنترل کنم جهت رو اصلا نمیتونم و در یک جهت ساعت گرد میچرخد از طریق برد مگا

        • حلش کردم .
          این نوع سروو ها حساس به پهنای پالس ورودی هستند به شدت با ایجاد یک پالس ۵۰ هرتز با پهنای ۰٫۷میلی ثانیه چپ گرد و ۱٫۷ میلی ثانیه راستگردش کردم .

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

        • سلام مجدد
          این آموزش با رزبری پای و نرم افزار Node-Red انجام شده است. در مورد آردوینو باید همکاران و کاربرانی که در این زمینه کار کرده اند و تخصص دارند، نظر بدهند.

  • سلام خانم بلورچیان تشکر از آموزش هاتون میشه اتصالات سخت افزاری همین پروژه راه اندازی سروو موتور با رزبری پای رو هم بزارید .یعنی اینکه کابل های سروو موتور به کدام پین های رزبری وصل میشن

    • سلام
      از توجه شما ممنونم.
      در متن آموزش کامل گفته شده است لطفا با دقت آموزش ها را مطالعه نمایید. همانطور که در قسمت اتصال پین‌های GPIO برد رزبری پای Raspberry Pi گفته شده است، پایه سیگنال سرو موتور را به پایه ۱۳ یا GPIO33 متصل کنید که حتما باید روی حالت PWM باشد. دو پایه ی دیگر هم GND و VCC است که به رزبری پای باید متصل کنید.

      • تشکر از پاسخگویی شما خانم بلورچیان
        اتصالات را انجام دادم و کارهم کرد ولی مشکلی که برایم به وجود آمده این است که وقتی سروو موتور رو با اون اسلایدر به حرکت در می آرم برد رزبری خاموش میشود و دوباره روشن میشه اگه در این مورد هم راهنمایی کنید ممنون میشم

        • سلام
          با توجه به اینکه پین های رزبری پای طبق اطلاعات گفته شده در مورد پایه ها تا محدوده ۵۰ میلی آمپر تحمل جریان را دارد، سرو مورد استفاده شما طبق دیتاشیت در ولتاژ ۴٫۸ ولت تا ۲۵۰ میلی آمپر جریان میکشد و در ولتاژ ۶ ولت به مرز ۳۰۰ میلی آمپر خواهد رسید. پس ریست رزبری پای کاملا طبیعی است و ممکن است به برد آسیب جدی برساند. مدلی که من در این آموزش استفاده کرده ام، جریان کمتری مصرف میکند.

          • میشه نوع سرو موتوری که استفاده کردید یا سرو موتوری که مناسب باشد رو معرفی کنید(با اطلاعات کامل)

              • سلام خانم بلورچیان ببخشید باز مزاحم شدم پروژه ای که من میخوام انجام بدم اینه که یه سنسور دما(DS18B20) روی رزبری پای راه اندازی کنم که دمای محیط رو سنس کنه بعد مثلا اگر مقدار دما ۲۵درجه بود سروو موتور رو راه اندازی کنه حالا قسمت راه اندازی سروو موتور رو حل کردم الان میخوام روی سنسور دما کارکنم آیا میشه این کار رو با node red پیاده کرد اگه راهنمایی کنید ممنون میشم بازم از پاسخگوییتون کمال تشکر رو دارم

                • حالا حتما سنسور دما DS18B20 نیست اگه شما با سنسور دیگه ای هم پیاده کردید ممنون میشم بگید

                  • سلام مجدد
                    برای نود رد Node-RED در قسمت manage palette کلید واژه DS18B20 را سرچ کنید. نود های مختلفی برای اجرای DS18B20 وجود دارد. پس از نصب نود در شاخه Raspberry pi قرار میگیرد و باید تنظیم کنید. بنده تست نکرده ام و در آینده آموزش های آن را منتشر خواهم کرد.

                • سلام
                  با توجه به اینکه در نود رد نود مخصوص دما مانند DHT وجود دارد، ولی تا چند ماه پیش قابل نصب نبود و این مشکل برای تمامی کاربران یکسان بود. پیشنهاد می‌شود از ترکیب پایتون و نود رد برای راه اندازی سنسور های دما استفاده کنید و درواقع یک اسکریپت از کد پایتون برای دما اجرا کنید. منتظر باشید تا در نسخه جدید نود رد مجددا تست و بررسی کنم و نتیجه را اعلام خواهد کرد.

  • سلام و با تشکر از آموزش خوبتون
    من میخوام بجای اسلایدر از طریق ربات تلگرام یک عدد ارسال کنم و سپس سروو با توجه به اون عدد به حرکت در بیاد
    میشه لطف کنید راهنماییم کنید چطور میتونم اینکارو انجام بدم ؟

    • سلام
      از توجه شما ممنونم.
      در این خصوص باید با استفاده از نود function و نود مخصوص تلگرام این کار را انجام دهید. چند آموزش متفاوت برای کار با نود تلگرام و ارسال کامند برای فعال شدن خروجی ارائه شده است که می‌توانید از آن ها استفاده کنید. آموزش کار با بخش سوم نرم افزار Node-RED مشابه با درخواست شما است و می‌توانید از آن ایده بگیرید و تغییرات را اعمال نمایید. در صورت هرگونه سوال و مشکل از این طریق اقدام کنید تا راهنمایی کنم.

      آموزش های نود رد Node-RED

  • سلام تشکر بابت پاسخگوییتون
    یه سوال داشتم
    شما میدونید ای سی که توی سروموتور sg90 استفاده شده چیه؟؟
    میخوام یک سروموتور بسازم.
    اگ امکانش هست راهنماییم کنید.ممنون

    • با سلام
      خواهش می‌کنم.
      در این خصوص بایستی دیتاشیت کالا را بررسی کنید. تا جایی که بنده اطلاع دارم از تراشه AA51880 استفاده شده است.

  • درود فراوان،سرکارخانم مهندس،باعث افتخار چنین سایتی راه اندازی شده برای راهنمایی وکمک به علاقه مندان الکترنیک، نمره این سایت از ۱۰ در همه موار(سؤال،جواب،راهنمایی و…) ۱۰هست. سؤال درمورد راه اندازی یه CNN کوچک هست. درایورها ، استپ موتورها و منابع تغذیه برای راه اندازی (البته بدون قطعات و المان های مکانیکی) منظور من بردهای آردینو و درایورهای استپ موتور ۵آمپری از ۰تا۱۰۰ قطعات و بردهای الکترونیکی رو بفرمایید متشکر میشم . با آرزوی توفیق روز افزون جنابعالی

  • سلام
    بردی که برای این پروژه استفاده شده آیا رزبری ۳ هست؟
    چون گفته شده که پین شماره ۳ به عنوان زمین به کار رود ولی پایه ۳ در نسخه سوم، پایه gpio 2 هست
    همین مورد برای پایه pwm و پایه ۵ ولت که شماره ان ها ۱۳ و ۱ نیست صدق می کند
    این آموزش رو من قدم به قدم اجرا کردم اما بعد از deploy هیچ چیز در ui نمایش داده نمیشه
    در صورت اشتباه بنده، ممنون میشم راهنمایی بفرمایید

    • با سلام
      تفاوتی در پایه های GPIO رزبری پای وجود ندارد. پایه های GND و ۵ ولت که بر روی برد مشخص است. برای اتصال سرو از پایه های PWM استفاده کنید مانند GPIO13

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