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





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









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









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





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

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

موضوع: ماژول SRF485

  1. #1
    2014/05/27
    2
    0

    ماژول SRF485


    مسافت ياب ماوراء صوت SRF485
    مشخصات تكنيكي


    مشخصات
    ولتاژ – 12 vdc ( 8 – 14 ولت DC )
    جريان – 10 mA (آ* ميلي آمپر )
    مسافت – 30cm - 5 m ( متر )
    جبران دما - -30 تا +50 درجه سانتيگراد
    اندازه – 38 ميليمتر x 38 ميليمتر ( 1.5 اينچ x 1.5 اينچ )
    پايه نصب – 30.5 ميليمتر x 30.5 ميليمتر ( 1.2 اينچ x 1.2 اينچ )
    مبدل – 16 ميليمتر dia نصب شده در مركز

    مرور اجمالي
    SRF485 يك مسافت ياب ما فوق صوت ِ تك مبدل مي باشد كه مبتني بر طراحي اصلي SRF02 ما مي باشد. SRF485 از استاندارد RS485 براي مخابره كردن تا 127 مدول روي هر باس RS485 استفاده مي كند. SRF485 داراي يك رگولاتور توان 5 ولتي مي باشد كه مي تواند از 8 ولت dc تا 14 ولت dc تغذيه شود. هر دو سيگنال هاي توان و RS485 به وسيله ي يك كانكتور IDC با 10 پين به مدول تغديه مي شود، كه امكان سيم بندي تعداد زيادي مدول را به سادگي فراهم مي نمايد. برد SRF485 از 30 سانتي متر تا 5 متر مي باشد.
    مخابره ( ارتباطات ) RS485
    مدول هاي SRF485 با استفاده از باس RS485 متصل شده اند. مي توان تا 128 مبدل را به يك باس متصل نمود، لذا مي توان تا 127 مدول SRF485 به اضافه يك كنترلر را استفاده نمود. ديتاي پيوسته بر روي 38400 باود ( علامت در ثانيه ) 1 استارت،آ* 2 استاپ و هيچ بيت توازن تنظيم شده است. كنترل SRF485 با ارسال فريم هاي ديتا به مدول و گوش دادن به پاسخ انجام مي شود. هر SRF485 داراي يك ادري 24 بيتي منحصر به فرد مي باشد كه ما در طول فرايند توليد آن را برنامه ريزي مي نماييم و بر روي مدول نوشته شده است. فريم ديتا كه شما به SRF485 ارسال مي كنيد به اين صورت است:
    توقف ( انفصال) دستور ادرس H ادرس M ادرس L ديتا چك مجموع

    توقف ( انفصال ) – به عنوان يك low پيوسته با تناوب بيش از 22 بيت تعريف مي شود، كه به دنبال آن يك high با تناوب 2 بيت مي آيد. هر بيت 26 ميكرو ثانيه و با 38400 باود مي باشد، لذا 22* 26uS= 572 uS ، گر طولاني تر باشد مشكلي نيست.
    دستور ( فرمان )- يكي از چندين فرماني است كه SRF485 به آن پاسخ مي دهد. براي جزئيات بيشتر قسمت پايين را ملاحظه كنيد.
    آدرس H، M، L – آدرس 24 بيتي مدولي است كه شما مي خواهيد با آن ارتباط بر قرار نماييد.
    ديتا- همان ديتايي است كه مي خواهيد به مدول بفرستيد، برابر با صفر در زماني ( 0X00 ) كه در دستور چيزي نيامده باشد.
    چك مجموع – متمم 1 براي مجموع تمامي بيت هاي قبل ( بدون احتساب بيت وقفه يا انفصال ).

    مدول با استفاده از بيت هاي گوناگوني پاسخ خواهد داد، كه از 0 تا 4 متغير بوده و بستگي به دستور دارد، اما فريم انتقال همواره يكسان است، يك انفصال همراه با 6 بيت. براي دريافت جزئيات بيشتر بخش دستور را در قسمت زير ملاحظه كنيد.
    اتصالات
    اتصالات به SRF485 در شكل زير نشان داده شده است. 4 پين براي منبع تغذيه 12 ولت DC وجود دارد، اين پين ها بر روي PCB به يكديگر متصل شده اند. دو پين در وسط عبارت هستند از سيگنال هاي RS485 + نزديك ترين لبه PCB و – در داخل قرار گرفته اند. 4 پين آخر همان اتصال زمين 0 ولت مي باشد كه بر روي PCB به يكديگر متصل شده اند. يك كانكتور با 4 پين نيز وجوئ ئارد كه براي متصل كردن LED ها طراحي شده است. قطب مثبت يا آنود به پين Led(x) متصل شده و كاتود يا قطب منفي به زمين وصل مي شود. يك مقاومت 390 اهمي براي هر Led نيز روي PCB قرار دارد.



    دستورات
    براي ارسال دستورات به SRF485 ،آ* شما بايد يك فريم ديتا به صورتي كه كه در بالا توصيف شد، ارسال كنيد. سه دستور براي آغاز يك مسافت يابي وجود دارد ( 80 تا 82 ( ، براي اعلام نتيجه بر حسب اينچ، سانتي متر يا ميكرو ثانيه. اين سه دستور نتيجه را به كنترلر شما باز نمي گردانند. شما باشد 70 ميلي ثانيه صبر كرده و سپس از دستور 94 براي دريافت نتيجه ي مسافت يابي استفاده كنيد. مجموعه ديكري از سه دستور ( 83 تا 85 ) نيز وجود دارند كه همين كار را انجام مي دهند، همچنين نتيجه جبران دما را در مسافت يابي به كنترلر شما ارسال مي نمايد. در مجموع،آ* اين شش دستور ( 80 تا 85 ) به عنوان " حقيقي " ناميده مي شوند زيرا يك مسافت يابي كامل را ارائه مي دهند. مجموعه ي شش تايي ديگري از دستورات نيز وحود دارد ( 86 تا 91 ) كه به عنوان "آ* جعلي " ( غير واقعي ) ناميده مي شوند. اين دستورات همانند دستورات " واقعي " هستند به جز اين كه 8 سيكل پيام را ارسال نمي كنند. اين دستورات زماني مورد استفاده قرار مي گيرند كه پيام توسط يك سونار ِآ* ديگر منتقل ( مخابره ) شده است. اين به شما بستگر دارد كه دستورات را در دو سونار سنكرون نماييد. يك دستور ( 92 ) براي انتقال يا مخابره يك پيام بدون انجام مسافت يابي وجود دارد.
    دستور 93 براي دريافت نسخه ي SRF485 مورد استفاده قرار مي گيرد. اين دستور 4 بايت را باز مي گرداند:
    بيت 1 عبارتست از نوع مدول ، 0x01 براي SRF485.
    بيت 2 نسخه ي سخت افزار مي باشد، 0x03 براي PCB
    بيت 3 عبارتست از نسخه ي نرم افزار، در اين جا 10 مي باشد.
    بيت 4 شماره گروه مدول مي باشد، اين در محدوده ي 0x00 تا 0x7F ( 0-127 ) مي باشد.
    دستور 94 دو بيت را از آخرين مسافت يابي باز مي گرداند ( بيت high در ابتدا ). آن ها را در كنار هم بگذاريد تا يك نتيجه ي 16 بيتي حاصل شود.
    دستور بيتهاي بازگردانده شده عمل
    اعشار hex
    80 0x50 0 حالت مسافت يابي واقعي – نتيجه بر حسب اينچ
    حالت مسافت يابي واقعي نتيجه بر حسب سانتي متر
    حالت مسافت يابي واقعي – نتيجه بر حسب ميكر ثانيه
    حالت مسافت يابي واقعي- نتيجه بر حسب اينچ، به محض كامل شدن مسافت يابي مسافت TX به طور اتوماتيك به كنترلر باز مي گردد.
    حالت مسافت يابي واقعي – نتيجه بر حسب سانتي متر، به محض كامل شدن مسافت يابي مسافت TX به طور اتوماتيك به كنترلر باز مي گردد
    حالت مسافت يابي واقعي – نتيجه بر حسب ميكرو ثانيه به محض كامل شدن مسافت يابي مسافت TX به طور اتوماتيك به كنترلر باز مي گردد
    86 0x56 0 حالت مسافت يابي غير واقعي – نتيجه بر حسب اينچ
    حالت مسافت يابي غير واقعي – نتيجه بر حسب سانتي متر
    حالت مسافت يابي غير واقعي – نتيجه بر حسب ميكرو ثانيه
    حالت مسافت يابي غير واقعي – نتيجه بر حسب اينچ، به محض كامل شدن مسافت يابي مسافت TX به طور اتوماتيك به كنترلر باز مي گردد
    حالت مسافت يابي غير واقعي – نتيجه بر حسب سانتي متر به محض كامل شدن مسافت يابي مسافت TX به طور اتوماتيك به كنترلر باز مي گردد
    حالت مسافت يابي غير واقعي – نتيجه بر حسب ميكرو ثانيه به محض كامل شدن مسافت يابي مسافت TX به طور اتوماتيك به كنترلر باز مي گردد
    92
    93
    94 0x5C
    Ox5D
    0x5E 0
    4
    2 مخابره ي پيام 8 سيكل 40 كيلوهرتزي
    دريافت نسخه – ارسال 4 بايت به كنترلر
    دريافت مسافت غير جبراني، بازگشت دو بيت از آخرين مسافت يابي
    100

    101

    102 0x64

    0x65

    0x66
    1

    0

    0 يا 1
    ست Led – بيت 0 كنترل كننده Led 1 – بيت ست شود و Led روشن مي شود. بيت 1 كنترل كننده Led2 .بيت 2 كنترل كننده Led3.
    ست حالت جستجو – مورد استفاده براي جستجوي SRF485 روي باس
    كم تر از- مورد استفاده براي جستجوي SRF485 روي باس

    ست گروه- تنظيم شماره گروهي كه اين سونار متعلق به آن است ( 0 تا 127 ).
    دريافت دما – بازگرداندن دما بر حسب درجه سانتيگراد به شكل عبارت 16 بيتي ، بيت high در ابتدا
    دريافت محدوده جبراني دما، بازگردانده دو بيت از آخرين مسافت يابي ( بيت high در ابتدا ).



    در زير مثالي از ارسال يك دستور مسافت يابي را به يك SRF485 مشاهده مي كنيد كه در آدرس 0189AB مشاهده مي كنيد.
    وقفه دستور آدرس H آدرس M آدرس L ديتا چك مجموع
    600 ميكرو ثانيه LOW
    50 ميكرو ثانيه High 0x51 0x01 0x89 0xAB 0x00 0x79

    دستور SET LEDS يك بيت را باز خواهد گرداند 0x01، كه به عنوان تاييد مي باشد.
    آدرس دهي
    هر SRF485 داراي يك آدرس 24 بيتي منحصر به فرد مي باشد كه در زمان توليد در آن برنامه نويسي شده است. اين ادرس بر روي مدول نوشته شده است و همچنين با انجام يك جستجو يافته شود، قسمت زير را مشاهده كنيد و تعدادي آدرس وجود دارد كه دستورات انتخاب شده به آن ها پاسخ مي دهند. اين آدرس ها عبارتند از:
    آدرس منحصر به فرد، SRF485 اغلب دستورات را به آدرس خودش پاسخ مي دهد. آدرس 0x000000، زماني استفاده مي شود كه شما مايل هستند تا تمام SRF485 به يك دستور پاسخ دهد، مانند آغاز مسافت يابي، يا تنظيم حالت جستجو آدرس 0x000001 زماني استفاده مي شود كه مي خواهد تمام SRF485هاي متعلق به يك گروه به يك دستور پاسخ دهند، مانند آغاز مسافت يابي، هر آدرس، تنها دستور كمتر از به اين آدرس پاسخ مي دهد، و تنها در صورتي كه آدرس داخلي آن كم تر از چيزي باشد كه شما ارسال كرده ايد.

    گروه ها
    در صورتي كه به مشخصه ي گروه نيازي نداريد مي توانيد از مشخصه ي گروه صرف نظر كنيد.
    هر سونار SRF485 مي تواند متعلق به يك گروه باشد. هدف اين است كه يك محدوده انتخابي از SRF485 ها همگي در يك زمان واحد شروع به مسافت يابي نمايند. اين مشابه با ارسال دستور مسافت يابي به آدرس صفر مي باشد، كه موحب مي شود تا تمام SRF485 ها شروع به مسافت يابي نمايند. يك مساله ي بالقوه در مورد اين روش آن است كه اگر SRF485 بيش از اندازه به يكديگر نزديك باشند، ممكن است با يكديگر تداخل نمايند. با آرايش دادند SRF485 ها به گونه اي كه هر يك در يك گروه متفاوت قرار گيردند، شما مي توانيد به عنوان مثال، گروه هاي 1و 3 و 5 و 7 و غيره را داشته باشيد كه در آن واحد مسافت يابي مي نمايند و در مرحله ي بعدي واحد هاي 2 و 4 و 6 و 8 مسافت يابي را انجام مي دهند.
    حتي اگر SRF485 هاي شما آن قدر نزديك نيستند كه تداخل داشته باشند، گروه بندي اين مزيت را دارد كه بتوانيد مسافت يابي را در يك گروه انجام دهيد، در حالي كه مسافت ها را از گروه قبلي دريافت مي كنيد، كه كار برد موثر تري را از پهناي باند باس ها تضمين خواهد نمود. براي تنظيم شماره ي گروه، دستور SET _ GROUP ( 0x67 ) را به آدرس واقعي SRF485 بفرستيد. شماره ي گروه در EEPROM ذخيره مي شود، و لازم است تنها يك بار فرستاده شود. در اين مثال شماره ي گروه سونار را در آدرس 0x0189AB به 0x01 تنظيم مي نماييم.
    وقفه دستور آدرس H آدرس M آدرس L ديتا چك مجموع
    600 ميكرو ثانيه LOW
    50 ميكرو ثانيه High 0x67 0x01 0x89 0xAB 0x01 0x62

    براي راه اندازي تمام SRF485 ها در گروه 0x01 و شروع مسافت يابي، دستور انتخابي ِ مسافت يابي خود را به آدرس 0x000001 بفرستيد همراه با شماره ي گروه در بيت ديتا،آ* به اين صورت :
    وقفه دستور آدرس H آدرس M آدرس L ديتا چك مجموع
    600 ميكرو ثانيه LOW
    50 ميكرو ثانيه High 0x51 0x00 0x00 0x01 0x01 0xAC

    پيش فرض شماره گروه عبارتست از 0x00، لذا توصيه مي نمايم كه از استفاده از آن در عمليات خود اجتناب نماييد.
    جستجوي باس RS485 براي سونار
    دستور SET_ SEARCH ( 0x65 ) براي قرر دارد تمامي SRF485 ها روي حالت جستجو مي باشد، و براي انجام اين كار بايد در آدرس صفر مورد استفاده قرار گیرد ( 0x000000 ).تنها SRF485 هايي كه در حالت جستجو هستند به دستور LESS_ THAN ( كمتر از ) پاسخ مي دهند. در ادامه تمامي SRF485 ها را در حالت جستجو قرار مي دهيم.
    وقفه دستور آدرس H آدرس M آدرس L ديتا چك مجموع
    600 ميكرو ثانيه LOW
    50 ميكرو ثانيه High 0x65 0x00 0x00 0x00 0x00 0x9A

    دستور LESS THAN براي جستجو و يافتن آدرس هاي تمامي SRF485 هاي موجود روي باس است. هر SRF485 كه آدرس داخلي منحصر به فرد ِ آن كمتر از آدرس ارائه شده در دستور باشد، با ارسال يك تك بيت پاسخ خواهد داد ( 0x00 ). آن ها اين كار را در آن واحد انجام مي دهند،آ* لذا شما تنها يك بيت دريافت خواهيد نمود. آن SRF485 هايي كه آدرس آن ها مساوي با بزرگ تر از آدرس ارائه شده در دستور باشد، پاسخ نخواهد داد و براي مثال اگر اين فريم دستوري را ارسال كنيد :
    وقفه دستور آدرس H آدرس M آدرس L ديتا چك مجموع
    600 ميكرو ثانيه LOW
    50 ميكرو ثانيه High 0x66 0x80 0x00 0x00 0x00 0x19

    در اين صورت تمامي SRF485 هايي كه آدرس داخلي آن ها در محدوده ي 0x000000 تا 0x7FFFFF مي باشد، بيت پاسخ را ارسال خواهند نمود. ارزش بيت پاسخ آ*0x00 مي باشد، اما اين خارج از موضوع كنوني مي باشد. چيزي كه اهميت دارد وجود داشتن و يا عدم پاسخ مي باشد. پاسخ، در صورتي كه وجود داشته باشد، فوري و بلا فاصله خواهد بود لذا اگر پس از 2 ميلي ثانيه چيزي دريافت نكرديد، پس از اين مدت زمان نيز دريافت نخواهيد كرد. اطمينان يابيد كه در روال دريافت وقفه ايجاد نماييد.
    پس چطور از اين روش براي يافتن تمامي SRF485 ها روي باس استفاده مي كنيد؟
    ابتدا، دستور SET_SEARCH بايد به آدرس oxoooooo ارسال شود لذا تمامي SRF485 ها در حالت جستجو قرار مي گيرند.
    در اين مرحله است كه ادامه كمي مشكل تر مي شود:
    دستور LESS_THAN را با آدرس 0x800000 ارسال كنيد. اگر پاسخي دريافت كرديد در اين صورت يك يا چند SRF485 داريد كه آدرس آن ها بين 0x000000 و 0x7FFFFF مي باشد. اكنون مي توانيد بيشتر باريك شويد و دستور LESS_THAN را با آدرس 0x400000 ارسال كنيد. اگر پاسخي دريافت كرديد در اين صورت مي دانيد كه يك يا چند SRF485 وجود دارند كه بين آدرس هاي 0x000000 و 0x3FFFFF مي باشند. اگر پاسخي دريافت نكرديد در اين صورت آدرس بايد بين 0x400000 و 0x7FFFFF باشد. اگر پاسخي دريافت كرديد، مجددا اين كار را انجام دهيد و اين بار آدرس 0x200000 را بدهيد. در غير اين صورت آدرس 0x600000 را بدهيد. اين مشابه با روشي است كه يك مبدل آنالوگ به ديجيتال كار مي كند، با تقريب هاي متوالي. با استفاده از اين تكنيك هر آدرسي مي تواند در 24 مرحله پيدا شود.SRF485 يافت شده بايد SRF485 با پايين ترين آدرس باشد. زماني كه يافت شد، بايد نسخه ي مربوط به آن SRF485 را با استفاده از دستور GET_VER بخوانيد. اين كار موجب ريست حالت جستجو براي آن SRF485 مي شود، لذا اين SRF485 ديگر در فرايند جستجو شركت نخواهد كرد.
    اكنون شما مي توانيد فرايند را تكرار كنيد تا SRF485 بعدي را بيابيد و الي آخر...
    بيان كردن ِ اين مطلب از انجام دادن آن مشكل تر است، كد مذكور بسيار ساده مي باشد. در اين جا به روال اصلي براي انجام اين كار اشاره مي شود كه به زبان إ¾C نوشته شده است. در اين جا فرض مي شود كه دستور SET_SEARCH از پيش فرستاده شده است.




    long Find_SRF485(void)
    {
    long Walk = 0x800000; // used as a bit walker to calc next address to search
    long Addr = 0x800000; // start by looking for 0-7fffff range
    char x;

    do {
    SendFrame(LESS_THAN, Addr, 0); // All SRF485's whose address is less than Addr, will respond
    x = serin485(); // this times out after 1mS and returns 0xFF
    if(x==0) Addr ^= Walk; // Must be greater or equal to Walk, so merge
    Walk >>= 1; // shift the bit walker
    Addr |= Walk; // and generate next test address
    }
    while(Walk); // repeat until the full address of SRF485 is found

    SendFrame(GET_VER, Addr, 0); // Get the version of this SRF485 to reset its search mode.
    serin485(); // module id - just get and discard these.
    serin485(); // hardware version
    serin485(); // software version
    serin485(); // group number
    return Addr; // Return the SRF485's address, it will be 0xFFFFFF if none found
    }

    همچنين مثالي داريم براي PC كه به زبان VC++V6 نوشته شده است. براي استفاده از آن به مدول USB-RS485 نياز خواهيد داشت.
  2. #2
    2013/08/02
    40
    0

    پاسخ : ماژول SRF485

    سلام دوستان
    نظرتون راجع به این ماژول چیه؟ ایا میتونم تو محیط صنعتی که گرد و خاکه استفاده کنم؟
نمایش نتایج: از 1 به 2 از 2

موضوعات مشابه

  1. اتصال همزمان میکرو به ماژول و ماژول esp8266 enc28j60
    توسط p_ersian در انجمن میکروکنترلرهای AVR
    پاسخ: 1
    آخرين نوشته: 2015/10/20, 21:05
  2. آیا ماژول hmr میتونه اطلاعات ارسالی ماژول hmtr رو دریافت کته
    توسط gmaissam در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2014/10/17, 00:28
  3. اطلاعات جامع از ماژول RFM12bp (ساختار داخلی ماژول و طرز config)
    توسط STSTSTSTST در انجمن ماژول های RF - ISM Band و بلوتوث
    پاسخ: 2
    آخرين نوشته: 2013/06/01, 14:17
  4. ارتباط avr و srf485 از طريق rs485
    توسط soroosh.strife در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2013/05/20, 15:07
  5. سوال راجع به ماژول T35i محصول Siemens و مقايسه آن با SIM300C ( ماژول GPS )
    توسط majid_teh2005 در انجمن ماژول های GPS - GSM - GPRS
    پاسخ: 8
    آخرين نوشته: 2011/06/18, 21:01

کاربرانی که این تاپیک را مشاهده کرده اند: 0

هیچ عضوی در لیست وجود ندارد.

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

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

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

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

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