2 istasyon şeklinde 20 d modeliyle veri alıp gönderebiliyorum hiçbir sorun yok. Ancak arduino nano her veri gönderdiğinde , kendisine bağlı olan servo motoru hareket ettiriyor. Tüm pinleri denedim aynı sonucu verdi.
Bağlantı şu şekilde = > Arduino nano – Servo motor(digital pins) besleme dışarıdan 5v – Lora 20d besleme nano’dan 5v.
Araştırdığım forum sitelerinde genelde 2 istemcinin de aynı kütüphaneyi kullanabileceğinden veya nano’nun veri gönderirken pwm pinine yanlış frekans göndermesinden kaynaklı olabilir denmiş, ancak servoyu pwm pininde dahi kullanmazken aynı sonucu alıyorum.
Sizce bu sorunu nasıl çözebilirim ? Zamanınız için teşekkür ederim.
Sorun dediğim gibi kütüphane de ortaya çıktı.
// this sketch cycles three servos at different rates #include "LoRa_E32.h" #include "ServoTimer2.h" // the servo library #include <SoftwareSerial.h> // define the pins for the servos #define rollPin 7 SoftwareSerial mySerial( 3 , 4 ); ServoTimer2 servoRoll; // declare variables for up to eight servos LoRa_E32 e32ttl( & mySerial); struct Signal { char type[ 15 ] = "Trying" ; byte temp[ 4 ]; } data; void setup() { Serial.begin ( 9600 ); servoRoll.attach(rollPin); // attach a pin to the servos and they will start pulsing e32ttl.begin(); delay ( 500 ); servoRoll.write(0); } // this function just increments a value until it reaches a maximum int i=0; void loop() { i=i+1; servoRoll.write(180); ResponseStatus rs = e32ttl.sendFixedMessage( 0 , 44 , 23 , & data, sizeof (Signal)); Serial.print(i); Serial.println (rs.getResponseDescription()); delay ( 2000 ); delay(10); }
Bu kod arduino içinde çalışırken, servo sürekli bir hareket sergilemiyor, ancak yine 30 saniyede bir veya 15 saniyede bir, bu sürekli değişiyor, o hareketi yine yapıyor.
Kütüphane link: https://codeload.github.com/nabontra/ServoTimer2/zip/refs/heads/master