جستجو برای:
سبد خرید 0
  • خانه
  • فروشگاه
    • دوره های آموزشی
    • پروژه
    • بسته های آموزشی
      • رباتیک
      • آردوینو
  • هوافضا
    • آموزش هوافضا
      • فیلم های آموزش هوافضا
      • PDF های آموزش هوافضا
    • محصولات هوافضایی
    • نرم افزار های هوافضا
    • تازه های هوافضا
  • رباتیک
    • آموزش رباتیک
      • فیلم های آموزش رباتیک
        • PDF های آموزش رباتیک
    • دیتاشیت فارسی
    • نرم افزار های رباتیک
    • تازه های رباتیک
    • تاریخ مسابقات
  • پروژه
    • پروژه های رایگان
    • پروژه های آماده
    • پروژه های آردوینو
    • پروژه های رزبری پای
    • پروژه های بدون میکروکنترلر
    • پردازش تصویر
    • سفارش پروژه
  • دوره های آموزشی
    • کلاس های آموزشی
    • فیلم های آموزشی
    • جلسه های آموزشی
      • آموزش آردوینو
      • آموزش رسپبری پای
      • آموزش STM32
      • ربات پرنده
      • رباتیک مقدماتی
  • تماس با ما
  • درباره ما
  • مقالات
شروع ثبت نام دوره تابستانی آوات روبو
فرصت تکرار نشدنی ثبت نام در دوره های حضوری با 20% تخفیف!
ساعت
دقیقه
ثانیه
مشاهده دوره های آموزشی
رباتیک و هوافضا
ورود
با ایمیل با شماره موبایل
گذرواژه خود را فراموش کرده اید؟
عضویت
با ایمیل با شماره موبایل
  • 09152556924
  • sup@avatrobo.ir
رباتیک و هوافضا
  • خانه
  • فروشگاه
    • دوره های آموزشی
    • پروژه
    • بسته های آموزشی
      • رباتیک
      • آردوینو
  • هوافضا
    • آموزش هوافضا
      • فیلم های آموزش هوافضا
      • PDF های آموزش هوافضا
    • محصولات هوافضایی
    • نرم افزار های هوافضا
    • تازه های هوافضا
  • رباتیک
    • آموزش رباتیک
      • فیلم های آموزش رباتیک
        • PDF های آموزش رباتیک
    • دیتاشیت فارسی
    • نرم افزار های رباتیک
    • تازه های رباتیک
    • تاریخ مسابقات
  • پروژه
    • پروژه های رایگان
    • پروژه های آماده
    • پروژه های آردوینو
    • پروژه های رزبری پای
    • پروژه های بدون میکروکنترلر
    • پردازش تصویر
    • سفارش پروژه
  • دوره های آموزشی
    • کلاس های آموزشی
    • فیلم های آموزشی
    • جلسه های آموزشی
      • آموزش آردوینو
      • آموزش رسپبری پای
      • آموزش STM32
      • ربات پرنده
      • رباتیک مقدماتی
  • تماس با ما
  • درباره ما
  • مقالات
شروع کنید
آخرین اطلاعیه ها
لطفا برای نمایش اطلاعیه ها وارد شوید
0

وبلاگ

رباتیک و هوافضا > مقالات > پروژه > پروژه کنترل موقعیت سروو موتور با آردوینو و سنسور نیرو به همراه کد

پروژه کنترل موقعیت سروو موتور با آردوینو و سنسور نیرو به همراه کد

اسفند 12, 1396
ارسال شده توسط mjavad
پروژه، پروژه های آردوینو، پروژه های رایگان
کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

به نام خدا

پروژه کنترل موقعیت سروو موتور با آردوینو و سنسور نیرو به همراه کد

 

کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

 

 

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

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

یک سروو موتور ترکیبی از موتور  DC،سیستم کنترل موقعیت  و دنده ها است . موقعیت محور موتور Dc به وسیله  کنترل های الکترونیکی  در سروو  ، بر پایه ی نسبت کار سیگنال  PWM به پایه سیگنال ،تنظیم شده است. به بیان ساده تر  کنترل الکترونیکی موقعیت محور به وسیله  کنترل موتور DC تنظیم شده است. این داده  با توجه به موقعیت محور از طریق پایه سیگنال (پین) فرستاده می شود. موقعیت داده ها (مختصات )به کنترل باید به صورت سیگنال PWM از طریق پایه سیگنال سروو  موتور فرستاده شود.

فرکانس سیگنال PWM (پالس عرضی مصنوعی ) می تواند خیلی وابسته به نوع سروو موتور باشد . مهم ترین چیز در اینجا نسبت کاری سیگنال PWM است . بر اساس نسبت کار، کنترل های الکترونیکی محور را تنظیم می کنیم.

-همانطور که در شکل زیر نشان داده شده است، برای حرکت محور به موقعیت در ساعت 9 باید ضریب آن به18ms،یعنی 1ms روشن و 17msخاموش، در یک سیگنال 18msعوض شود.

 

 

کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

 

برای حرکت محور به موقعیت ساعت 12 زمان روشنایی سیگنال  باید  1.5ms باشد و زمان خاموشی 16.5ms  باشد.

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

این PWM در اینجا به وسیله استفاده از آردوینو Uno تولید می شود .تا اینجا ما می دانیم که، ما می توانیم سروو  موتور را به وسیله نسبت کاری متفاوت سیگنال PWM تولید شده به وسیله Uno کنترل کنیم.حالا بیاید درباره سنسور نیرو یا سنسور نیرو صحبت کنیم: برای اتصال یک سنسور نیرو به آردوینو Uno ،از ویژگی ADC (تبدیل آنالوگ به دیجیتال) در آردوینوUno استفاده می کنیم.یک سنسور نیرو ،یک مبدل است که مقاومت را زمانی که فشار بر سطح وارد می شود تغییر می دهد .سنسور نیرو در شکل ها و سایز های مختلف در دسترس است.

در اینجا ما  از یک مدل  ارزان به این دلیل که به دقت زیاد  نیاز نداریم  استفاده می کنیم. FSR400 یکی از ارزان ترین سنسور های نیرو در بازار است. و تصویر آن در شکل زیر نشان داده شده است.اکنون مهم است که توجه داشته باشید که FSR400 در امتداد طول حساس است،  نیرو یا نیرو باید روی پیچ و خم وسط چشم سنسور متمرکز شود همانطور که در شکل نشان داده شده است.اگر نیرو به دفعات اشتباه به وسیله وارد شود می تواند خسارات دائمی ایجاد کند .مطلب مهم دیگری که باید بدانیم اینست که سنسور می تواند هدایت کند جریان های با اندازه بالا را بنابراین به خاطر داشته باشید هدایت جریان ها زمانی است که سنسور نصب شده باشد. همچنین سنسور یک محدودیت نیرویی دارد که 10N می باشد. بنابراین ما میتوانیم فقط یک کیلوگرم نیرو وارد کنیم .

اگر نیرو بالاتر از 1kg وارد شود سنسور ممکن است مقداری انحرافات  نشان دهد .  و اگر بیش از 3kg افزایش پیدا کند  سنسور ممکن است دچار آسیب جدی شود.

کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

 

همانطور که قبلا گفته شد این سنسور استفاده می شود تا تغییرات فشار را اندازه گیری کند ، بنابراین زمانی که نیرو بر روی سنسور نیرو وارد می شود ، مقاومت به شدت تغییر میکند . مقاومت FsR400 بالای نیرو نشان داده شده در گراف زیر است.

کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

همانطور که در شکل بالا می بینیم، مقاومت بین دو اتصال سنسور کاهش یافته یا نیرو یا ضریب هدایت (میزان رسانایی)بین دو اتصال سنسور افزایش یافته است.

مقاومت یک رسانای خالص  به وسیله ی  فرمول زیر بدست می آید :

formula

                        مقاومت ویژه رسانا=P                    طول رسانا=L                         سطح رسانا=A

اکنون یک رسانا با مقاومت R را در نظر بگیرید اگر مقداری فشار روی رسانا وارد شود، در نتیجه این فشار سطح رسانا کاهش و طول آن افزایش می یابد. بنابراین به وسیله فرمول مقاومت رسانا باید افزایش یابد، بنابراین  مقاومت R با سطح رابطه عکس و همچنین با طول رابطه مستقیم دارد.بنابراین  برای یک رسانای تحت فشار مقاومت رسانا را افزایش می دهند. اما این تغییر در مقایسه با مقاومت کلی کوچک است. برای یک تغییر قابل توجه تعدادی رسانا در کنار هم قرار می گیرند.اما در این مورد مقاومت کاهش خواهد یافت؛ زیرا مواد استفاده شده در اینجا  رسانای خالص نیست. FSR  پلیمر های زخیم  دستگاه های فیلم برداری یا (PTF) هستند. بنابراین  ابزار هایی با مواد رسانای خالص نیستند.

این تغییر در مقاومت می تواند خوب نباشد مگر اینکه ما بتوانیم  آنهارا بخوانیم. ما از مدار مقسم  ولتاژ استفاده می کنیم، که با آن ما می توانیم تغییرات مقاومت را به وسیله تغییرات ولتاژ هدایت کنیم.مقسم ولتاژ یک مدار مقاومتی است که در شکل نشان داده شده است . در این شبکه مقاومتی ما یک مقاومت ثابت و یک مقاومت متغییر داریم. همانطور که در شکل نشان داده شده است R1 در اینجا یک مقاومت ثابت است و R2 سنسور نیرو است که مانند یک مقاومت عمل می کند. نقطه میانی شاخه برای اندازه گیری گرفته می شود. به وسیله ی تغییر R2 ، ولتاژ خروجی را تغییر می دهیم. بنابراین ما یک ولتاژ متغییر با نیرو داریم.کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

ورودی به وسیله ی مبدل ADC (تبدیل آنالوگ به دیجیتال) که به کمی  50 میکرو آمپر است گرفته شده(اشغال شده)است.این اثر بارگذاری تقسیم ولتاژ مبتنی بر مقاومت بسیار مهم است زیرا جریان از ضریب تقسیم ولتاژ افزایش می یابد و درصد  خطا افزایش می یابد . فعلا ما نیازی نداریم تا درباره ی اثر بارگذاری نگران باشیم.اکنون زمانی که نیرو  بر سنسور نیرو وارد می شود ، ولتاژ در انتهای تقسیم تغییر می کند . این پایه به کانال ADC(تبدیل آنالوگ به دیجیتال) ازUno متصل است . این مقدار دیجیتال ADC برابر است با نسبت کار سیگنال PWM ،بنابراین ما کنترل موقعیت سرور در رابطه با نیروی وارد شده به سنسور را خواهیم داشت.

 

قطعات مورد نیاز کنترل موقعیت سروو موتور با آردوینو و سنسور نیرو :

آردوینوUno

منبع تغذیه 5v

خازن 1000µF

سه عدد خازن 100nF

مقاومت 100KΩ

سروو موتور (SG90)

مقاومت 220Ω

سنسور نیروی ُّFSR400،

 

شماتیک مدار  و طرز کار آن :

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

کنترل موقعیت سروو موتور به وسیله ی سنسور نیرو

ولتاژ در سراسر سنسور کاملا خطی نیست و دارای نویز خواهد بود . برای فیلتر کردن این نویز ،یک خازن درمیان هر مقاومت  قرار می دهیم .اینجا ما ولتاژ تولید شده توسط تقسیم کننده را می گیریم (ولتاژی که نشان دهنده ی نیرو  به صورت خطی است) و آنرا به وسیله ی یکی از کانال هایADC (تبدیل آنالوگ به دیجیتال) آردینوuno تغذیه می کنیم . بعد از تبدیل ما این مقدار دیجیتالی  را می گیریم  و آنرابه جای مقدار PWM قرار می دهیم و این سیگنال PWM  را به موتور سروو ارائه می دهیم.

حال بیایید درباره ی کنترل سروو موتور صبحت کنیم .یکی از ویژگی های آردوینوی   Uno این است که ما بوسیله ی گرفتن مقدار درجه قادر به کنترل موقعیت سروو می کند. هماطور که گفتیم اگر بخواهیم سروو  را به زاویه ی 300 ببریم  باید مستقیما مقدار  آنرا به برنامه بدهیم . فایل هدر سروو  از نسبت کاری محاسبه شده ی داخلی محافظت می کند. شما می توانید درباره ی کنترل سروو موتور در اینجا بیشتر یاد بگیرید. حال SG90 می تواند از 0 تا 180 درجه حرکت کند، ما نتیجه ADC (تبدیل آنالوگ به دیجیتال) 1024-0 را داریم بنابراین ADC تقریبا 6 برابر موقعیت سروو  موتور است.

دانلود کد برنامه کنترل موقعیت سروو موتور با آردوینو و سنسور نیرو:

[maxbutton id=”192″ url=”http://avatrobo.ir/wp-content/uploads/2018/03/کنترل-موقعیت-سروو-موتور-به-وسیله-ی-سنسور-نیرو.txt” ]

#include <Servo.h> //header for controller servo

Servo servo; //keeping name of servo SERVO itself

int sensorvalue =0;

void setup()

{

            pinMode(A0,INPUT); //force sensor value input

            pinMode(3,OUTPUT); //PWM output to servo

            servo.attach(3); //telling where signal pin of servo attached(must be a PWM pin)

}

 

void loop()

{

            sensorvalue = analogRead(A0); //read analog value from sensor

            servo.write(sensorvalue/6); //set servo position based on ADC result

}

 

 

 

 

برچسب ها: آردوینو یونوپروژه آردوینوپروژه ی کنترل موقعیت سروو موتور با آردوینو و سنسور نیرودانلود کد کنترل موقعیت سروو موتور با آردوینو و سنسور نیرودانلود کنترل موقعیت سروو موتور با آردوینو و سنسور نیروساخت کنترل موقعیت سروو موتور با آردوینو و سنسور نیروسنسورکنترل موقعیت سروو موتور با آردوینو و سنسور نیرو
قبلی پروژه ی دماسنج دیجیتال با آردوینو و سنسور دما LM335 به همراه کد
بعدی پروژه ی کامل شناسایی فرکانس رادیویی با آردوینو به همراه کد برنامه

پست های مرتبط

اردیبهشت 9, 1398

برنامه نویسی به زبان پایتون برای رزبری پای

mjavad
ادامه مطلب

اسفند 5, 1397

تشخیص رنگ با استفاده از رزبری پای

mjavad
ادامه مطلب

بهمن 10, 1397

راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت دوم

mjavad
ادامه مطلب

بهمن 10, 1397

راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت اول

mjavad
ادامه مطلب

بهمن 2, 1397

ساخت اسپیدکنترلر موتور براشلس 3 ( با سنسور )

Author Avatar
Admin
ادامه مطلب

دیدگاهتان را بنویسید لغو پاسخ

دسته های محصولات
آخرین دیدگاه‌ها
  • Admin در پروژه ی ساخت یک ریموت کنترل 2.4 گیگا هرتز برای 10 کانال
  • Admin در درباره ما
  • Admin در پروژه ی ساخت یک ریموت کنترل 2.4 گیگا هرتز برای 10 کانال
  • Admin در رادیوکنترل 4 کاناله با قابلیت افزایش تا 10 کانال
  • امیر در رادیوکنترل 4 کاناله با قابلیت افزایش تا 10 کانال
ژوئن 2026
ش ی د س چ پ ج
 12345
6789101112
13141516171819
20212223242526
27282930  
« آوریل    
فهرست 1
  • عضویت
  • ویرایش حساب کاربری
  • ورود
  • خانه
فهرست 2
  • حمایت مالی
  • تبلیغات
  • فروشنده
  • داشبورد فروشندگان
  • سفارش پروژه
  • تماس با ما
  • درباره ما
فهرست 3
  • ویرایش حساب کاربری
  • فراموشی رمز عبور
  • ثبت نام
  • ویرایش حساب کاربری
محل کد نماد...
جستجو برای:
محصولات
  • دوره کوادکوپتر سرعتی FPV دوره آموزش ساخت کوادکوپتر مسابقاتی FPV
    نمره 4.00 از 5

    4,830,000 
  • دوره هواپیما مقدماتی تا پیشرفته دوره آموزش ساخت پهپاد بال ثابت ( هواپیما ) - مقدماتی تا پیشرفته
    10,480,000 
  • دوره کوادکوپتر مقدماتی دوره آموزش مقدماتی ساخت مولتی کوپتر (کوادکوپتر، هگزاکوپتر و ...)
    2,490,000 
  • دوره کوادکوپتر فیلم بردار دوره آموزش ساخت پهپاد فیلم بردار ( مولتی کوپتر )
    8,970,000 
  • دوره هواپیمای مدل موتور کشی دوره آموزش ساخت هواپیمای موتور کشی
    2,030,000 
نوشته‌های تازه
  • برنامه نویسی به زبان پایتون برای رزبری پای
  • تشخیص رنگ با استفاده از رزبری پای
  • راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت دوم
  • راه اندازی ال سی 2 در 16 با استفاده رزبری پای قسمت اول
  • کنترل PID با آردوینو و دو موتور براشلس

درباره آوات روبو

 

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

دسترسی سریع

  • دوره های آموزشی
  • کیت
  • کلاس های حضوری
  • پروژه

کاوش

  • درباره ما
  • تماس با ما
  • مقالات

شبکه های اجتماعی

  • اینیستاگرام
  • یوتیوب
  • تلگرام

استفاده از مطالب سایت برای مقاصد غیر تجاری و با ذکر منبع بلامانع است. تمامی حقوق برای آوات روبو محفوظ است.