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

موضوع: ماژول انتقال بی سیم اطلاعات nrf905

  1. #1
    Senior Member
    تاریخ عضویت
    Mar 2013
    محل سکونت
    Iran
    نوشته ها
    138

    Lightbulb ماژول انتقال بی سیم اطلاعات nrf905

    ماژول انتقال بی سیم اطلاعات NRF905
    nRF905 یک IC فرستنده و گیرنده رادیویی مشابه nRF24L01 است. با این تفاوت که در فرکانس های 433/898/915MHZ به جای فرکانس 2.4Ghz عمل می کند. این ماژول دارای گستره ی فرکانسی و پین های IO بیشتری به نسبت nRF24L01 می باشد.اگرچه نرخ دیتای nRF905 در هوا تنها 50Kbps است که در مقایسه با nRF24L01 که 2Mbps است کمتر می باشد. ماژول nRF905 دارای 511 کانال در محدوده 422.4MHz – 473.5MHz با گام 100KHz روی باند 433MHz و 844.8MHz – 947MHz با گام 200KHz روی باند 868/915MHz می باشد. اما به دلیل همپوشانی هر کانال بر روی کانال مجاور خود در مجموع تنها 170 کانال قابل استفاده میباشد. این ماژول با در اختیار داشتن چیپ رادیویی Nordic VLSI NRF905 و حساسیت 100dBm وضریب اطمینان بالا می تواند بطور گسترده در موقعیت های مختلف به همراه برد های آردوینو در ارتباطات بیسیم مورد استفاده قرار گیرد.

    425236776_o.jpg

    کاربرد ها
    ریموت کنترل های صنعتی
    تجهیزات دستی بیسیم
    اندازه گیری های بیسیم
    سیستم های امنیتی
    سیستم های نظارتی
    مانیتورینگ آب و هوا
    روباتیک

    ویژگی ها
    مدولاسیون GFSK
    مدت زمان سویچینگ کانال کمتر از 650ms
    ولتاژ کاری: 1.9-3.6V
    برد : 200-300 متر (وابسته به شرایط محیط و تنظیمات نرخ baud ارتباط)
    جریان مصرفی پایین (Tx Out: 30mA< , RX in, 12.2mA, 433MHz)
    کنترل قدرت خروجی برای تمامی فرکانسهای پشتیبان تا +10dBm
    سازگاری با بردهای آردوینو

    مثال
    در مثال زیر با استفاده از ماژول nrf905 می توانید دو برد آردوینو را به هم ارتباط دهید و در پایان دریافت باید عبارات زیر را در Serial Monitor مشاهده کنید.
    Hi, Arduino 0
    Hi, Arduino 1
    Hi, Arduino 2


    example_with_arduino.jpg

    کد مربوط به فرستنده
    کد:
    #include <NRF905.h> #include <SPI.h> #define BUF_LEN 32 #define CONF_LEN 10 #define NRF905_CSN 10 unsigned char tx_buf[BUF_LEN]= "Hi, Arduino \r\n"; unsigned char read_config_buf[CONF_LEN]; byte tx_address[4]= {0xcc,0xcc,0xcc,0xcc}; void setup() { unsigned char i; pinMode(NRF905_CSN,OUTPUT); //to make sure SPI works nrf905=NRF905(NRF905_CSN); nrf905.init(); /** default configuration, need to specify frequency choose Z-Wave frequency band, support : US 908.42Mhz EUROPE 868.42MHz AFRICA 868.42MHz CHINA 868.42MHz HK 919.82MHz JAPAN 853.42MHz AUSTRALIA 921.42MHz NEW_ZEALAND 921.42MHz BRASIL 921.42MHz RUSSIA 896MHz */ nrf905.write_config(US); nrf905.read_config(read_config_buf); Serial.begin(9600); for(i=0; i<10; i++) { Serial.print(read_config_buf[i],HEX); Serial.print(' '); } tx_buf[12] = '0'; } void loop() { /** transmit data packet with default TX Address */ nrf905.TX(tx_buf); /** transmit data packet with specified TX Address */ // nrf905.TX(tx_buf, tx_address); // NOTE: TX_Address and RX_Address must be the same /** Count Sending times */ tx_buf[12]++; if(tx_buf[12] == 0x3A){ tx_buf[12] = '0'; } delay(50); }
    کد مربوط به گیرنده
    کد:
    #include <NRF905.h> #include <SPI.h> #define BUF_LEN 32 #define CONF_LEN 10 //NRF905 nrf905; unsigned char rx_buf[BUF_LEN]= {0}; unsigned char read_config_buf[CONF_LEN]; unsigned char rx_address[4]= {0xcc,0xcc,0xcc,0xcc}; void putstring(unsigned char *str) { while(*str){ Serial.write(*str++); } } void setup() { char i; pinMode(10,OUTPUT); nrf905=NRF905(10); /** pin/port configuration */ nrf905.init(); /*************************************************** default configuration, need to specify frequency choose Z-Wave frequency band, support : US 908.42Mhz EUROPE 868.42MHz AFRICA 868.42MHz CHINA 868.42MHz HK 919.82MHz JAPAN 853.42MHz AUSTRALIA 921.42MHz NEW_ZEALAND 921.42MHz BRASIL 921.42MHz RUSSIA 896MHz */ nrf905.write_config(US); /*********************************************************** read register configuration, check register value written */ nrf905.read_config(read_config_buf); /** serial communication configurate */ Serial.begin(9600); /** test configuration */ for(i=0; i<CONF_LEN; i++){ Serial.print(read_config_buf[i],HEX); Serial.print(' '); } } void loop() { /** recieve data packet with default RX address */ nrf905.RX(rx_buf); /** recieve data packet with specified RX address */ // nrf905.RX(rx_buf, rx_address ); // NOTE: TX_Address and RX_Address must be the same /** send recieved data to PC through serial port */ putstring(rx_buf); delay(1); }
    مرجع:
    nRF905 AVR/Arduino Library/Driver
    http://www.electrodragon.com/w/index.php?
    title=NRF905_Transceiver_433MHz-Wireless_Module


    جهت سفارش این کالا، به این بخش در فروشگاه آفتاب رایانه مراجعه نمایید.
    فایل های پیوست شده فایل های پیوست شده
    ویرایش توسط hesam.time : 11-02-2013 در ساعت 07:59 PM

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

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

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

SEO by vBSEO