نمایش نتایج: از 1 به 10 از 10
Like Tree6 لایک
  • 1 Post By siib
  • 2 Post By Tiranoid
  • 1 Post By shobeir90
  • 1 Post By Tiranoid
  • 1 Post By samuela

موضوع: با خبر شدن از وجود مصرف کننده

  1. #1
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    5

    Talking با خبر شدن از وجود مصرف کننده

    سلام به همه دوستان !



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





    ممنون

  2. #2
    Senior Member
    تاریخ عضویت
    Nov 2015
    نوشته ها
    229
    نقل قول نوشته اصلی توسط samuela نمایش پست ها
    سلام به همه دوستان !



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





    ممنون
    علیک سلام
    به نظرم باید برای پین های مورد نظر مقاومت بذارین (به ظوری که با مصرف کننده سری بشن) و اختلاف پتانسیل دو سر مقاومت رو اندازه بگیرین ، اگه مصرف کننده وصل شده باشه و جریان داشته باشیم دو سر مقاومت اختلاف پتانسیل دارن و در عیر اینصورت هم پتانسیل هستن ، از پین های آنالوگ برای فهمیدن اختلاف پتانسیل ها استفاده کنین
    لایک کردن

  3. #3
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    5
    ممنون از جواب شما دوست عزیز ،


    تو این پروژه من تعداد 20 عدد خروجی دارم بعلاوه اینکه تعدادی از پایه ها رو هم باید به keypad و بقیه رو هم به lcd گرافیکی بدم .
    روشی وجود داره که بشه با کد و از همین ورودی/خروجی دیجیتال ها کار رو پیش ببرم ( آنالوگ ها محدودند )

  4. #4
    Member
    تاریخ عضویت
    Apr 2015
    محل سکونت
    ایران :|
    نوشته ها
    76
    پین رو بصورت ورودی Hi-Z (های ایمپدانس) تعریف کنید
    از این نظر های ایمپدانس چون معلوم نیست خروجی به مثبت وصل شده یا گراند.
    بعد میشه پین رو بخونی ببینی در فلان لحظه به وی سی سی یا گراند وصل شده یا نه
    اگه وصل شده بود بصورت آوتپوت بشه فورا
    میشه اینتراپت هم استفاده کرد براش.

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

  5. #5
    مدیر ویژه
    تاریخ عضویت
    Mar 2014
    نوشته ها
    586
    این قابلیت توی stm32f وجود داره که شما true-false میگیری از اجرای فرمانت ... ولی باز فکر نکنم بر قراری جریان رو تشخیص بده.

    ساده ترین روش بیا از این:
    ماژول آمپلی فایر و مقایسه گر خطی LM393

    یه مقاومت خیلی کم اهم مثلا 1 یا نهایتا 10 اهم سری کن با هر پینت.وقتی جریان از پین بر قرار شد do ماژول مقایسه گر فعال میشه.که می تونی باز با میکرویی چیزی بخونیش 0 و 1 ش رو ...
    لایک کردن

  6. #6
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    5
    ممنون از جواب شما


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


    بعد میشه پین رو بخونی ببینی در فلان لحظه به وی سی سی یا گراند وصل شده یا نه
    اتفاقا مشکل اصلی در خوندن و چک کردن همینه که :
    پین خروجی به گراند ( یا جایی )وصل هست یا خیر !؟ و بر اساس جواب همین سوال مابقی برنامه تصمیم گیری بشه .

  7. #7
    Member
    تاریخ عضویت
    Apr 2015
    محل سکونت
    ایران :|
    نوشته ها
    76
    تو مدارهای دیجیتال، ما سه نوع سطح منطقی داریم
    سطح منطقی Hi . یعنی هم سطح با تغذیه
    سطح منطقی low یعنی هم سطح با منفی تغذیه یا زمین
    سطح منطقی امپدانس بالا یعنی "در هوا" . یعنی به جایی وصل نیست. آزاد گذاشته شده.

    خیلی وقتا امپدانس بالا رو با سطح low یکی میگیرن و مشکلی هم "معمولا" پیش نمیاره. ولی فرق میکنن با هم.

    برای یه پین در میکروکنترلرهای AVR که تو آردویینو بکار رفته :

    اگر بصورت خروجی باشه : بصورت پیش فرض مثبت (پول آپ) یا بصورت پیش فرض گراند (پول داون) تنظیم میشه
    اگر بصورت ورودی تعریف بشه : بصورت پیش فرض گراند یا بصورت پیش فرض امپدانس بالا تنظیم میشه


    شما میخواید از وضعیت پین با خبر بشید، یعنی باید پین رو بخونید ، پس در ابتدا بصورت ورودی تنظیمش میکنید

    =================== تصحیح =======================

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

  8. #8
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    5
    البته من غیر از آردوینو uno یه آردوینو DUE هم دارم ، میتونم از اونم استفاده کنم البته اگه ARM Cortex A3 راه حلی واسه این موضوع داشته باشه .


    یه بار دیگه به زبون خودمونی تر مشکل رو توضیح میدم ، شاید موضوع رو درست توضیح ندادم قبلا :


    ببینید من یه آردوینو دارم ، UNO یا DUE
    یه پین رو خروجی کردم و بهش یه led روی برد بورد وصل کردم ، منفی led هم به گراند .
    حالا میخوام میکرو بفهمه هر وقت led رو از برد بورد جدا کردم یا اینکه هر وقت led رو وصل کردم .

  9. #9
    Junior Member
    تاریخ عضویت
    Nov 2016
    نوشته ها
    5

    Arrow

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



    کد:
    int led1 = 13;
    
    
    void setup() {
     
    Serial.begin(9600);
    
    
    
    }
    //------------------------------------
    void loop() {
    
    
    pinMode(led1,INPUT);
    
     if ( digitalRead(led1) == 0 ) {
    
     pinMode(led1,OUTPUT);
     digitalWrite(led1,1);
     Serial.println(" led is ON ... ");
    } else {
    
      Serial.println(" wire not connect ... ");
    }
    
    delay(10);
    
    
    }





    مشکل کجاست ؟
    لایک کردن

  10. #10
    Senior Member
    تاریخ عضویت
    Nov 2015
    نوشته ها
    229
    نقل قول نوشته اصلی توسط samuela نمایش پست ها
    با روش زیر یه جورایی مشکل حل شده اما نتیجه پایدار نیست .
    led ای که به پین 13 وصل میکنم ، نور پایدار نداره و مشخصه که با سرعت بالا روشن خاموش میشه . البته من از هیچ مقاومتی استفاده نکردم برا led



    کد:
    int led1 = 13;
    
    
    void setup() {
     
    Serial.begin(9600);
    
    
    
    }
    //------------------------------------
    void loop() {
    
    
    pinMode(led1,INPUT);
    
     if ( digitalRead(led1) == 0 ) {
    
     pinMode(led1,OUTPUT);
     digitalWrite(led1,1);
     Serial.println(" led is ON ... ");
    } else {
    
      Serial.println(" wire not connect ... ");
    }
    
    delay(10);
    
    
    }





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

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

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

SEO by vBSEO