Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
2
Cevap
451
Tıklama
0
Öne Çıkarma
Ardunio MBlock Projesi İçin YARDIM
F
6 yıl
Onbaşı
Konu Sahibi

Arkadaşlar herkese merhaba. Mühendisliğe Giriş dersi projem için yardımınıza ihtiyacım var. Eğer projeyi Cuma sabahına yetiştiremezsem dersten kalacağım. Proje kısaca şu:

MBlock duvara karşı 1.5 metre uzaklıktan 20 derecelik açıyla bırakılacak. MBlock'un duvara çarpmadan durması gerekiyor(0-10 cm aralığında).

Lab'da kullandığımız örnek bir kod var. Bu kod geliştirilerek yapılabiliyor proje. Yardımcı olursanız çok memnun olurum.

Örnek Kod:


#include "MeOrion.h"

MeDCMotor motor(M1);
MeUltrasonicSensor ultraSensor(PORT_7);

void setup() {
Serial.begin(9600);
}

void loop() {
float distance = ultraSensor.distanceCm();
Serial.print("Distance : ");
Serial.print(distance);
Serial.print(" cm");
delay(100);
int motorSpeed = 255;

if(distance > 100){
motor.run(motorSpeed);}

if(distance > 80 && distance <=100) {
motor.run(motorSpeed-40);}

else if(distance > 60 && distance <=80){
motor.run(motorSpeed-80);}

else if(distance > 30 && distance <=60){
motor.run(motorSpeed-120);}

else if(distance > 10 && distance <=30){
motor.run(motorSpeed-160) ;}

else{
motor.run(-motorSpeed);}

}



Benim biraz geliştirdiğim kod :

#include "MeOrion.h"

MeDCMotor motor(M1);
MeDCMotor motor2(M2);

MeUltrasonicSensor ultraSensor(PORT_7);

void setup() {
Serial.begin(9600);
}

void loop() {
float distance = ultraSensor.distanceCm();
Serial.print("Distance : ");
Serial.print(distance);
Serial.print(" cm");
delay(100);
int motorSpeed = 255;
int motor2Speed = -255;


if(distance > 150){
motor.run(motorSpeed);
motor2.run(motor2Speed);
}

if(distance > 110 && distance <=150) {
motor.run(motorSpeed-40);
motor2.run(motor2Speed+40);
}

else if(distance > 70 && distance <=110){
motor.run(motorSpeed-80);
motor2.run(motor2Speed+80);
}

else if(distance > 30 && distance <=70){
motor.run(motorSpeed-120);
motor2.run(motor2Speed+120);
}

else if(distance > 10 && distance <=30){
motor.run(motorSpeed-160) ;
motor2.run(motor2Speed+160);
}

else {
motor.stop();
motor2.stop();
}


}



Proje :
< Resime gitmek için tıklayın >

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi FatihFurkanAK34,5 -- 19 Haziran 2019; 20:12:46 >

Z
6 yıl
Yarbay

Neden ters yöne dönen ikinci bir motor var anlamasam da kod genel hatlarıyla doğru, muhtemelen çalışacaktır.



< Bu ileti mini sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
H
6 yıl
Er

quote:

Orijinalden alıntı: zwanzig

Neden ters yöne dönen ikinci bir motor var anlamasam da kod genel hatlarıyla doğru, muhtemelen çalışacaktır.
Bir motor solda bir motor sağda olduğu için böyle olması gerek diye düşündüm hocam. Deniycem bugün kodu laba gidip. Çalışmazsa tekrar yazarım size.



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.