ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 8 از 8

موضوع: UltraSonicWIthmotorDc

  1. #1
    2015/10/27
    5
    0

    Question UltraSonicWIthmotorDc

    با سلام.
    من میخوام وقتی رباتم مانع دید؛ از حرکت بایستد.

    در ابتدا ماژول التراسونیک را بدون موتور تست کردم و اندازه های معقولی میداد(برای تست سالم بودن قطعه)
    مشکل1:
    اما وقتی با موتور تست کردم و سریال مانیتور رو دیدم (مثلا مانع در 10 cm هس در بین کار یهو یه عدد 2cm میده )

    مشکل 2:
    موتور هام وقتی مانع میزارم جلوش توقف نمیکنه ( برنامه ای که نوشتمم گذاشتم)
    واقعا گیر کردم تا ربات مسیر یابم کامل شودلطفا در صورت امکان جواب مشخص وکامل بدین.. اگه مشکل از برنانمم نیس از چی میتونه باشه؟؟
    با تشکر

    [/CPP][/FONT][/COLOR]

    int Trigerpin=13
    [FONT=Yekan]int Echopin=2[/FONT];
    unsigned long duration,cm;
    int EnA=3;
    int In1=4;
    int In2=5;
    //=============================== Motor 1


    int EnB=6;
    int In3=7;
    int In4=8;


    void setup() {
    // put your setup code here, to run once:
    pinMode(In1,OUTPUT);
    pinMode(In2,OUTPUT);
    pinMode(In3,OUTPUT);
    pinMode(In4,OUTPUT);
    pinMode(Echopin,INPUT);
    pinMode(Trigerpin,OUTPUT);
    Serial.begin(9600);
    }
    void loop() {
    // put your main code here, to run repeatedly:
    analogWrite(EnA,100);
    analogWrite(EnB,100);
    digitalWrite(In1,HIGH);
    digitalWrite(In2,LOW);
    digitalWrite(In3,HIGH);
    digitalWrite(In4,LOW);


    digitalWrite(Trigerpin,LOW);
    delayMicroseconds(2);
    digitalWrite(Trigerpin,HIGH);
    delayMicroseconds(10);
    digitalWrite(Trigerpin,LOW);
    duration=pulseIn(Echopin,HIGH);
    cm=Micro_Cm(duration);
    Serial.print(" Cm = ");
    Serial.println(cm);
    if(cm<6){
    analogWrite(EnA,0);
    analogWrite(EnB,0);
    }
    delay(500);
    }


    unsigned long Micro_Cm(unsigned long MicroS){
    return (MicroS/2)*0.0344;
    [COLOR=#333333][FONT=IRANSans-engilsh][COLOR=#222222][FONT=Yekan] }[/FONT][/COLOR][/FONT][/COLOR]

  2. #2
    2018/02/22
    1,096
    689

    پاسخ : UltraSonicWIthmotorDc

    درود . امکان بستن مدار رو ندارم اما یک پیشنهاد کد نویسی میکنم تست کنید . بیاید اندازه گیری رو داخل تابع مجزا انجام بدید و یا از کتابخونه استفاده کنید . بعد در لوپ اصلی مقدار رو چک کنید و کنترل موتور *. اون تاخیر ۵۰۰ و دو خط آخر رو دلیل استفاده شده رو متوجه نمیشم .
    وسط برنامه هم سریال پرینت رو حذف کنید .
    ببینید نتیجه چیه
  3. #3
    2015/10/27
    5
    0

    پاسخ : UltraSonicWIthmotorDc

    درود و ممنون از جوابتون
    2 خط اخر که واسه تبدیل duration به Cm هس.
    اون delay هم واسه این که میخواستم سریال مانیتور را ببینم گذاشتم
    از چه کتابخونه ای استفاده کنم؟
  4. #4
    2016/10/10
    166
    96

    پاسخ : UltraSonicWIthmotorDc

    نقل قول نوشته اصلی توسط nightshade

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    از چه کتابخونه ای استفاده کنم؟
    کتابخونه newping خیلی خوبه. ,ورژن آخرش 1.9.1 رو نصب کن
  5. #5
    2018/02/22
    1,096
    689

    پاسخ : UltraSonicWIthmotorDc

    کتابخونه ultrasonic مجزا هم داریم . کاری نمیکنه فقط همین دستورات پینگ و تریگر و طول پالس تبدیل به یک دستور میشه برای سادگی کار.
    یک مورد رو هم بررسی کنید ، ببینید این فاصله غیر عادی که وسط اندازه گیری ها یکباره ارسال میشه ، به استارت و استاپ موتور ربط داره ؟ نویز موتور روی التراسونیک منظورم هست .
  6. #6
    2015/10/27
    5
    0

    پاسخ : UltraSonicWIthmotorDc

    از کتابخونه هم استفاده کردم بازم نشد
    انگار اصلا وارد شرطم نمیشه نمیدونم چرا
  7. #7
    2018/08/16
    80
    12

    پاسخ : UltraSonicWIthmotorDc

    میتونی از سنسور IR استفاده کنی (فرستنده و گیرنده ) که وقتی چیزی بهش نزدیک شد سنسور گیرنده IR تشخیصش میده
  8. #8
    2015/10/27
    5
    0

    پاسخ : UltraSonicWIthmotorDc

    نقل قول نوشته اصلی توسط mehdi.dehghani

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    میتونی از سنسور IR استفاده کنی (فرستنده و گیرنده ) که وقتی چیزی بهش نزدیک شد سنسور گیرنده IR تشخیصش میده
    باید با الترا بسازم .. محدودیت دارم
نمایش نتایج: از 1 به 8 از 8

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •