Ardiuno Fabrika Otomasyonu

  • Konbuyu başlatan furkan966
  • Başlangıç tarihi

furkan966

Üye
Katılım
30 Kas 2020
Mesajlar
10
Puanları
1
Arduino’da kesme işlemleri kullanılarak bir fabrika otomasyon sistemi kurulmak isteniyor. Fabrika işleyişini temsilen bir DC motor kullanılmaktadır. DC motor çalışması şarta bağlanmıştır. Eğer üretim hattına izinsiz giren birisi sensör(Push_Buton olabilir) ile tespit edilirse, DC motorun çalışması duracak, ikaz ışıklarından kırmızı ışık yanacak ve ayrıca ikaz sirenleri (buzzer olabilir) 1’er saniye aralıkla çalacaktır. Üretim hattındaki ihlal ortadan kalması ile DC motor çalışmaya devam edecek, kırmızı yanan ışık sönecek, yeşil yanan ışık yanmaya başlayacaktır. Ayrıca, ikaz sirenleri susacaktır.
 

FakirMaker

Üye
Katılım
5 May 2009
Mesajlar
247
Puanları
33
Vay be bana lisede dönem ödevi olarak 2004 yılında asp kullanarak okula not sistemi öğrenci otomasyonu yazdırmışlardı, nerden nereye. Üstelik ben sadece kitaplardan okumak zorundaydım forum felan bilmiyorduk. Şimdiki çocuklar internetten bile aramıyor. Linke tıkla kardeşim oradan öğren ödevini kendin yap.

https://maker.robotistan.com/arduinoda-kesme-islemleri/
 

bolubeyi

Profesyonel Üye
Katılım
27 Eyl 2008
Mesajlar
1,042
Puanları
323
Konum
Trabzon
Bir yere kadar yapın. Takıldığınız yerde sorarsanız yardımcı olurum.
 
Konu Sah

furkan966

Üye
Katılım
30 Kas 2020
Mesajlar
10
Puanları
1
Bir yere kadar yapın. Takıldığınız yerde sorarsanız yardımcı olurum.
Hocam ben dersi hiç almadım bizde son sınıf dersi arduino kodlaması. Bir arkadaş atmış mühendislik öğrencisiyim diye yardım istemiş ben de bilmediğimden buraya attım yardımcı olabilmek için
 

bolubeyi

Profesyonel Üye
Katılım
27 Eyl 2008
Mesajlar
1,042
Puanları
323
Konum
Trabzon
youtubede ve robotistan sitesinde böyle örneklerle ilgili onlarca video var. Bir yerden başla. Bir arduino 2 buton 4 direnç bir kaç jumper kablo al. Led yakıp södürmek, buton kullanma. Bunlardan başla. 1 haftada kendi kendine kod yazmaya başlarsın. Uğraşmadan olmaz. Kimse uygulama yapmadan forumlardan öğrenmiyor.
 

FakirMaker

Üye
Katılım
5 May 2009
Mesajlar
247
Puanları
33
Hocam ben dersi hiç almadım bizde son sınıf dersi arduino kodlaması. Bir arkadaş atmış mühendislik öğrencisiyim diye yardım istemiş ben de bilmediğimden buraya attım yardımcı olabilmek için
Kardeşim arkadaşın kendisi üyelik alıp başlık açsın, nereye kadar geldiğini nerede takıldığını yazsın yardımcı olalım. Ismarlama ödev yapılmaz
 
Konu Sah

furkan966

Üye
Katılım
30 Kas 2020
Mesajlar
10
Puanları
1
Kod:
#define motor 10 // 10 numaralı pin "motor" değişkenine atanıyor

#define kled 11  // 11 numaralı pin "kled" değişkenine atanıyor

#define yled 12  // 12 numaralı pin "yled" değişkenine atanıyor

#define alarm 13 // 13 numaralı pin "alarm" değişkenine atanıyor

void setup() {

pinMode (motor, OUTPUT); // "motor" pini çıkış olarak belirleniyor

pinMode (kled, OUTPUT);  // "kled" pini çıkış olarak belirleniyor

pinMode (yled, OUTPUT);  // "yled" pini çıkış olarak belirleniyor

pinMode (alarm, OUTPUT); // "alarm" pini çıkış olarak belirleniyor

attachInterrupt(0, kesme, RISING); // kesme pini adı ve durumu belirleniyor

}

void loop() {

  //Normal durumda işleyiş belirleniyor

digitalWrite (motor, HIGH);

digitalWrite (yled, HIGH);

digitalWrite (kled, LOW);

digitalWrite (alarm, LOW);

}

void kesme()

{

  // Uyarı durumunda alarm verme çalışması belirleniyor

digitalWrite (motor, LOW);

digitalWrite (yled, LOW);

digitalWrite (kled, HIGH);

digitalWrite (alarm, HIGH);

delay(1000);

digitalWrite (alarm, LOW);

delay(1000);

}
Bu şekilde doğru mu hocam ?
 
Moderatör tarafında düzenlendi:

FakirMaker

Üye
Katılım
5 May 2009
Mesajlar
247
Puanları
33
Atmega 328 tabanlı uno ve nanolarda yalnızca 2 ve 3 numaralı dijital pinler kesme için kullanılabilir yani
#define alarm 13 yanlış
ayrıca kesme pininin INPUT_PULLUP olarak belirlenmesi lazım yani
pinMode (alarm, OUTPUT); yanlış.

Arduinonun resmi sitesinden aldığım kod şöyle:

Kod:
const byte ledPin = 13;
const byte interruptPin = 2;
volatile byte state = LOW;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(interruptPin, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(interruptPin), blink, CHANGE);
}

void loop() {
  digitalWrite(ledPin, state);
}

void blink() {
  state = !state;
}

Her buton basılışında ledin durumunu değiştirir.

https://www.arduino.cc/reference/en/language/functions/external-interrupts/attachinterrupt/
 

Forum istatistikleri

Konular
114,839
Mesajlar
808,401
Kullanıcılar
420,191
Son üye
pwppw

Yeni konular

Üst