Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
2
Cevap
354
Tıklama
0
Öne Çıkarma
Servo Duraklıyor
C
9 yıl
Teğmen
Konu Sahibi

Merhabalar.
Alıcı verici modül ile Kızılötesinden gelen veriyi iletmeye çalışıyorum. Bu sırada Servo motor sensörü 15 ile 165 derecelik açılar arasında döndürüyor. Fakat sıkıntım şu ki servo motor arada 1-2 saniyelik duraklamalar yaşıyor. Sizce sebebi nedir? Kodlar şu şekilde:

#include <SPI.h> 
#include <nRF24L01p.h>
#include <String.h>
#include <Servo.h>.

nRF24L01p verici(10,9);
/* CSN - > 7, CE -> 8 olarak belirlendi */

const int trigPin = 14;
const int echoPin = 19;

long duration;
int distance;

Servo myServo;

float MESAFE;
static char veri[10];

void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
myServo.attach(9); // Servo motor sinyal pini

Serial.begin(9600);
SPI.begin();
SPI.setBitOrder(MSBFIRST);
/* SPI başlatıldı */
verici.channel(90);
verici.TXaddress("Hasbi");
verici.init();
/* Verici ayarları yapıldı */
}
void loop() {
// 15 derece ile 165 derece arasında dön
for(int i=15;i<=165;i++){ myServo.write(i); delay(30); distance = calculateDistance(); Serial.print(i); Serial.print(","); Serial.print(distance); Serial.print("."); } for(int i=165;i>15;i--){
myServo.write(i);
delay(30);
distance = calculateDistance();
Serial.print(i);
Serial.print(",");
Serial.print(distance);
Serial.print(".");
}
}

int calculateDistance(){

digitalWrite(trigPin, LOW);
delayMicroseconds(2);

digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance= duration*0.034/2;
return distance;


dtostrf(MESAFE,2, 3, veri);
/* float değerindeki sıcaklık stringe çevrildi */

verici.txPL(veri);
boolean gonderimDurumu = verici.send(FAST);
/* Sıcaklık bilgisi nRF24L01'e aktarıldı */
/* Eğer gönderim başarısız olursa gonderimDurumu'nun değeri false olacaktır */
if(gonderimDurumu==true){
Serial.println("mesaji gonderildi");
}else{
Serial.println("mesaji gonderilemedi");
}

delay(1000);
}



V
9 yıl
Teğmen

Kablosuz iletişimde bu tip sıkıntılar kodların sağlıklı çalışmamasından kaynaklanır. En altta ki 1sn lik beklemeyi azaltmayı denedin mi?



< Bu ileti tablet sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @Tuğkan.
C
9 yıl
Teğmen
Konu Sahibi

Denedim fakat sonuç aynı malesef.




Bu mesajda bahsedilenler: @valala6
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.