Çözüldü8.56K görüntülenmeLoraLora 20d
0

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.

Soru yeni cevaplara kapalıdır.
Mehmet En iyi cevap olarak seçildi Haziran 4, 2021
1

hocam geç cevap için kusura bakmayın

myservo.detach();

lora modülüne gönderim yapmadan önce bu kodu kullanıp sonra tekrar servoyu bağlayabilirsiniz. böyle yapınca sorun ortadan kalkıyor.

myservo.detach();
   ResponseStatus rs = e32ttl.sendFixedMessage(0, 44, 23, &data, sizeof(Signal));
  Serial.println(rs.getResponseDescription());

Mehmet En iyi cevap olarak seçildi Haziran 4, 2021
0

hocam video dan tam anlaşılmıyor ama sanki servo bağlantıları yanlış. kod ve bağlantı şemasını gönderebilir misin.

Servo bağlantısı şu şekilde olmalıdır.

Sarı =  Sinyal

Turuncu / Kırmızı = 5V

Kahverengi = ortak GND (yani harici besleme varsa arduinonun gnd si ile birleştirilmeli)

örnek bir yazı

14 – Servo Motor Kullanımı

Tolunay Akkoyun Yeni yorum gönderildi Haziran 4, 2021

Bağlantılarda bir hata yok @Mehmet bey acemi değilim 🙂 Sanırım kütüphane de bir sorun var servonun bir başka kütüphanesini deneyeceğim.

0

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

Tolunay Akkoyun Cevaplanan soru Mayıs 30, 2021
0

#include "LoRa_E32.h"
 #include <SoftwareSerial.h>
#include<Servo.h>
Servo servo1;
 SoftwareSerial mySerial( 3 , 4 );
 /*
 Pinler Arduino Nano Lora E32 433T20d
 */
 LoRa_E32 e32ttl( & mySerial);
 struct Signal {
 char type[ 15 ] = "Trying" ;
 byte temp[ 4 ];
 } data;
 void setup () {
 Serial.begin ( 9600 );
 e32ttl.begin();
 delay ( 500 );
servo1.attach(7);
 }
 void loop () {
 ResponseStatus rs = e32ttl.sendFixedMessage( 0 , 44 , 23 , & data, sizeof (Signal));
 Serial.println (rs.getResponseDescription());
 delay ( 2000 );
 }

Mehmet Yeni yorum gönderildi Mayıs 30, 2021

şu an yanımda servo yok. pazartesi aynı kodu çalıştırıp bakayım.

0

Sorunun
SoftwareSerial.h
Servo.h
Bu iki kütüphaneden kaynaklandığını düşünüyorum yabancı bazı kaynaklar da doğruluyor.Eve gelince tekrar deneyeceğim.

Tolunay Akkoyun Cevaplanan soru Mayıs 30, 2021
0

Merhaba @Mehmet bey tam olarak sorunun videosunu çektim

Videoda servonun gücünü arduino dan aldım ama normalde dışarıdan veriyorum yani besleme ile alakalı bir problem değil.
Streamable Video

Tolunay Akkoyun Cevaplanan soru Mayıs 29, 2021
0

acaba “servo Glitching/Jittering” probleminden mi bahsediyorsunuz, hareket ediyor derken. mümkünse kod, devre görseliniz ve eğer olursa hareket dediğiniz durumun videosunu atar mısın (youtube ekleyebilirsin)

şurada çözümle alakalı birvideo var incele istersen

Mehmet Cevaplanan soru Mayıs 29, 2021