EVDEKİ 2 ODAYI KONTROL ETMEK
  • Merhabalar,

    Daha önceki konumda, bir odadaki bilgileri bluetooth ile android üzerinden kontrol ediyordum. ( http://forum.arduinoturkiye.com/index.php?p=/discussion/7097/arduino-evdeki-lambayi-duvardaki-anahtar-ile-paralel-acip-kapatabilmek-#Item_17 )



    Şimdiki projem ise;

    2 oda mevcut, her odada arduinoya bağlı olarak nem ve sıcaklık sensörü , 1 adet 220 v röle, 1 adet NRF24L01 var.

    bu iki odayı kontrol etmek için, evin ortasında bir bölgeye, 1 arduino(merkez diye adlandırıyorum) üzerinde NRF24L01,hc06,sensor shield v5.0, esp8266 var.

    Kullanılacak elemanlar;
    1. 3 adet arduino uno
    2. 3 adet NRF24L01 antenli
    3. 2 adet 220 v röle
    4. 1 adet esp8266 wireless module
    5. 1 adet hc06 bluetooth module
    6. 2 adet 16x2 lcd module
    7. 2 adet rtc module
    8. 1 adet 5v->3.3 v regulator
    9. 3 adet 9-12 adaptör
    10. 1 adet Sensor shield v5.0
    11. yeterinde jumper F-F , F-M, F-F kablo
    12. yeterince elektrik kablosu
    13. 3 adet breadboard


    Amaç;

    Merkez üzerinden hareket ile , internetten veya bluetooth ile android cihazdan, oda 1 ve oda 2 deki lamba(vavien sistemli) aç-kapat, nem ve sıcaklık bilgilerini alma gibi işlemleri yapmak.

    Android programının yapımında ise APP inventor 2 kullanıyorum.

    Gelişmeler oldukça kod ve görsel paylaşımı yapacağım.

    Sayg.
  • 2 senedir forum üyesiyim sıksıkta girer kontrol ederim. forumda ki soruların/topiclerin kalitesi ne kadar yükseldi değil mi? sizde farkettiniz mi?
  • eskiye göre iyi gidiyor evet.
  • Bilg. müh. olarak katkım oluyorsa ne mutlu :)
  • merhabalar,

    hc06 ile nrf24l01 aynı anda kullanınca problem olur mu ? hc06 yı çıkarınca nrf ler veri alıp veriyor. fakat aynı hc06 seriali çalışınca olmuyor. nasıl yapılabilir ?
  • başka konu başlıgı ıle sormusunuz orada cevapladım hc06 yı softserıal ıle kullanın nrf yı de zaten spiden kullanır sorun cıkmaması lazım
  • şuan bluetooth + nrf24l01 den diğer nrf24l01 ile röle aç kapat tamam. fakat anten olmasına rağmen. 4 metre mesafede çekmiyor. bu nasıl birşey?
  • VERİCİ;


    #include < SoftwareSerial.h>
    SoftwareSerial btserial(2, 3); // rx,tx bt
    #include < SPI.h>
    #include < nRF24L01.h>
    #include < RF24.h>
    char unChar;
    int ISINEMgonder;
    //Pins....
    #define CE_PIN 9
    #define CSN_PIN 10
    const uint64_t pipe = 0xE8E8F0F0E1LL; //channel identity
    RF24 radio(CE_PIN, CSN_PIN);
    int relay[1];
    String data;
    int relay1d;
    void setup() {
    // put your setup code here, to run once:
    btserial.begin(9600);
    radio.begin();
    radio.openWritingPipe(pipe);
    Serial.begin(9600);
    relay[0]=0;
    }

    void loop() {
    // put your main code here, to run repeatedly:




    //
    // relay[0]=1;
    // bool done1=radio.write( relay, sizeof(relay) ); //sending...
    //if(done1){}
    while (btserial.available())
    {

    unChar = btserial.read();
    data += unChar;
    delay(1);



    if (data == "fa") // röle 1 i fa komutu ile açar
    {

    relay[0]=1;


    Serial.println(data);
    delay(10);
    relay1d = 1;

    }

    if (data == "af") // röle 1 i af komutu ile kapatır
    {
    relay[0] = 0;

    Serial.println(data);
    }


    }
    Serial.println(relay[0]);
    bool done1=radio.write( relay, sizeof(relay) ); //sending...

    data = "";


    }
  • ALICI;

    #include < SPI.h>
    #include < nRF24L01.h>
    #include < RF24.h>





    #define CE_PIN 9 //nrf24l01 PINS
    #define CSN_PIN 10
    int role=4;

    const uint64_t pipe = 0xE8E8F0F0E1LL;
    RF24 radio(CE_PIN, CSN_PIN);

    int relay[1];

    void setup() {
    pinMode(role, OUTPUT);
    radio.begin(); //nrf24l01 started
    radio.openReadingPipe(1, pipe);
    radio.startListening();;

    Serial.begin(9600);
    }

    void loop() {


    if ( radio.available() ) //If signal available
    {
    radio.read( relay, sizeof(relay) );



    bool done = false;
    while (!done) { //listen till done become true
    done = radio.read(relay, 1);
    Serial.println(relay[0]);
    if (relay[0]==1) { //led
    digitalWrite(role, HIGH);}
    if(relay[0]==0)
    {digitalWrite(role,LOW);
    }
    }
    delay(10);
    }


    }


  • range sorunu bitrate teymiş. 250 kbps ye aldım. deli gibi çalışıyor 4 duvar ile :)

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook

Tagged

Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.