analog okunan degerleri nrf24l01 ile baska bir arduino da monitorleme
  • selam herkese,
    umarim dogru yerde konu acmisimdir yanlis ise duzeltilirse cok sevinirim. bu benim ilk postum boyle bir forum ile sorunlara cozum bulmaniz muhtesem ve simdiden cok tesekkur ederim.

    bir suredir nrf24l01 ile ugrasiyorum tek derdim uzaktan kumandali birseyler yapmak 0 dan kendi basima. bir uno bir nano 2 nrf24l01 2 potansiyometre 10k 2 motor ve bir l298n kullanarak bir sistem kurmaya calisiyorum. potansiyometreler unoya bagli analog, nrf24l01 ile potansiyometre degerlerini yayinliyorlar. nano da degerleri okuyup monitorde gosterip aldigi degerleri l298n e bagladigim dc motorlara verilen guc seviyesini ayarlayarak yon ve hiz ayarlamak niyetindeyim.

    karsilastigim problemler ise kutuphane problemi yasadim cogunlukla. her kutuphane en azindan farkli pin kullaniyor baska neleri farkli hayal bile edemiyorum. sonunda duzgun bir kutuphane ve ornek bulup denemelere koyuldum.
    kodlarin calistigina ornek kod ile sahit oldum calisiyorlar yalniz problemleri output sadece monitorde 1 kere gosteriliyordu. bende kodlara baka baka kendi kodumu yazmayi denedim. ayni sekilde calisiyor ve ayni sonucu aliyorum sadece bir data monitorleniyor. ayni kod uzerinden nrf24l01 komutlarini sildigimde normal haline donup loop tekrarlaniyor olmasi gerektigi gibi.
    Yani nrf24l01 kullanirken loop 1 kere tekrarlanip kaliyor. nrf komutlarini silince de olmasi gerektigi gibi tekrarlanmaya devam ediyor. bu problemi nasil asabilirim?

    Simdiden cok tesekkurler yazdigim kodu da ekliyorum;

    #include
    #include
    #include


    //sck-13 miso-12 mosi-11 csn-8 ce-7
    RF24 radio(7,8);
    byte addresses[][6] = {"1Node"}; // Create address for 1 pipe. "2Node"

    int firstMove = A0; // x axis joystick
    int secondMove = A1; // y axis joystick
    int val;

    int myData[2];


    void setup() {
    // put your setup code here, to run once:

    Serial.begin(9600);
    pinMode(A0, INPUT);
    pinMode(A1, INPUT);

    radio.begin();
    radio.setChannel(108);
    radio.setDataRate(RF24_250KBPS);
    radio.setPALevel(RF24_PA_MIN);
    radio.openWritingPipe(addresses[0]);

    }

    void loop() {
    // put your main code here, to run repeatedly:
    myData[0]= analogRead(A0);
    myData[1] = analogRead(A1);


    Serial.print("x axis= ");
    Serial.println(myData[0]);
    Serial.print("y axis= ");
    Serial.println(myData[1]);

    radio.write( &myData, sizeof(myData) );

    delay(5);

    }

  • ornek kodlar ile 2 modulun de calistigini gordum indirdigim kutuphane ile hayirlisi ile transieveri halledip recievera gecmek istiyorum artik
  • bu videomda nrf24l01 modülü ile alakalı herşeyi anlattım diğer videomdada uzaktan kumandalı araç yaptım anlattıklarımla
  • Cok tesekkur ederim hemen deniyorum cok guzel aciklamissin
  • seymentemir cok tesekkur ediyorum tekrar video icin. ancak calismiyor hala nedeni hakkinda en ufak bir fikrim yok harfiyen uyguladim soylediklarini pinler dogru kutuphane dogru. senden farkli olarak sadece 2 adet 10k potansiyometre kullandim joystick yerine. joystickte 10k oldugundan problem olmamasi gerek. unodan nanoya yapiyorum yayini. uno degerleri okuyor onu gorebiliyorum fakat nanodan hicbir ses yok. aklima gelen ihtimal kutuphaneler artik bende fazla karisti. bir goz gezdirirsen gercekten cok memnun olurum.

    VERICI;

    include
    include "nRF24L01.h"
    include "RF24.h"

    int mesaj[2];

    RF24 verici(9,10);
    const uint64_t kanal = 0xE8E8F0F0E1LL;
    int first = A0;
    int second = A1;

    void setup(void)
    {
    Serial.begin(9600);
    verici.begin();
    verici.openWritingPipe(kanal);
    }

    void loop(void)
    {
    int firstdata = analogRead(first);
    int seconddata = analogRead(second);
    Serial.print("first data= ");
    Serial.println(firstdata);
    Serial.print("second data= ");
    Serial.println(seconddata);

    mesaj[0] = firstdata;
    mesaj[1] = seconddata;
    verici.write(mesaj, sizeof(mesaj));

    }

    ALICI;

    include
    include "nRF24L01.h"
    include "RF24.h"

    int mesaj[2];

    RF24 alici(9,10);
    const uint64_t kanal = 0xE8E8F0F0E1LL;

    void setup(void)
    {
    alici.begin();
    alici.openReadingPipe(1,kanal);
    alici.startListening();
    Serial.begin(9600);
    }

    void loop(void)
    {
    if (alici.available())
    {
    alici.read(mesaj, sizeof(mesaj));
    Serial.print(mesaj[0]);
    hareket(mesaj[0],mesaj[1]);
    }
    }
    void hareket(int firstone, int secondone){

    Serial.print("left engine =");
    Serial.println(firstone);
    Serial.print("right engine =");
    Serial.println(secondone);


    }

    kutuphaneleri belki de okuyamiyordur diye import ederekte denedim su sekilde;

    include
    include
    include


    kutuphanelerde # olmamasi yaniltmasin forumda gozukmuyor diye # leri sildim.
    gercekten anlamadim yarin baska bir arduino ile kullanmayi deneyecegim belki benim arduino yaziliminda gercekten de kutuphaneler delirdi fikirleriniz cok degerli benim icin.
  • simdi de son bir kez joystick ile denedim sonuc ayni neden cozemedim
  • acaba haberlesen modullerin ayni mi olmasi gerekiyor ornegin nano ile nano uno ile uno

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.