ARDUINO DİJİTAL PİN KONTROLÜ

Slides:



Advertisements
Benzer bir sunumlar
Hazırlayan ve Sunan Ali Yasin Çakılcı HUNROBOTX
Advertisements

ŞAHİN AKDAĞ.
PLC.
3. EGITIM CNY 70 SHARP SENSÖRLER ULTRASONİK SENSÖRLER LDR.
Problemi Çözme Adımları
ÖĞRENME FAALİYETİ 3. PARAGRAF DÜZENLEME.
Dizi (ARRAY) Diziler grup halindeki değişkenler olarak tanımlanabilir. Dizi içersinde yüzlerce değişken olabilir. Dizi elemanları index adı verilen sıra.
HTML (HYPER TEXT MARKUP LANGUAGE) TEMEL ETİKETLERİ
5. EGITIM Mikrodenetleyiciler PIC16F628 – PIC16F877
SENSÖR VE TRANSDUSERLER
ARDUINO İLE ANALOG ÇIKIŞ VERMEK
16F628 TANIMLAMA KISMI Devrenizi çalıştırmak için 16F628 mikrodenetleyicisini programlarken kullanacağınız tanımlama kısmı verilmiştir. Defterinize not.
ARDUINO DİJİTAL PİN KONTROLÜ
Bilgisayar Programlama
Temel Kavramlar, İşlemler, Operatörler
Benzetim (Simulasyon)Tekniği
ARDUINO DİJİTAL GiRİŞ KONTROLÜ
ARDUINO RÖLE KONTROLÜ.
MİKRODENETLEYİCİ İLE DİJİTAL GİRİŞ KONTROLÜ
ARDUINO İLE SERVO MOTOR KONTROLÜ
DÖNGÜLER(Loop) while, for döngüleri Break ve continue işlevleri
SENSÖR VE TRANSDUSERLER
DİJİTAL ÇIKIŞ KOMUTLARI
MOSTEM Teknik Öğretmenleri
SAYI SİSTEMLERİ EĞİTİM ÖĞRETİM YILI ÖZEL MOSB ATL VE AML
Dijital Çıkış Mantığı.
CCS C İLE PIC PROGRAMLAMA DERS-2-
Şekil 13. 8B’de verici ve alıcı ayrı, ayrı yerlerdedir
CCS C İLE PIC PROGRAMLAMA DERS-3-
Seri Port ile İletişim.
ARDUINO SENSÖR KONTROLÜ
ARDUINO DİJİTAL GiRİŞ KONTROLÜ
ELEKTRİK MAKİNELERİ VE
ARDUINO İLE SAYAÇ UYGULAMASI
AB’15 Arduino ile sensörler dersi
Sensörler Ders2 Aslı Ergün.
Akış Diyagramları - 1. Akış Diyagramı  Algoritmalar doğal dille yazıldıklarında herkes tarafından aynı biçimde anlaşılmayabilir.  Ancak, akış diyagramlarında.
BASYS KARTININ TANITIMI. KARTIN GÖRÜNÜMÜ KARTIN ÖZELLİKLERİ 100,000 lojik kapılı Xilinx Spartan 3E FPGA; JTAG programlama bağlantı noktası FPGA biçimlendirme.
Mekatronik Mühendisliği
PWM (Pulse Width Modulation- Sinyal Genişlik Modülasyonu)
Bluetooth İle Haberleşme
EETE233 Mikrodenetleyiciler ArduIno ile Programlama
Ondalık Kesirler ● Paydası 10, 100, 1000… olan kesirlere ondalık kesir denir , , , , ● Yukarıdaki kesirler birer ondalık.
Motor Sürücü Devresi ile Kontrol
ARDUİNO Arduino Eğitimleri Bölüm 6 Analog Giriş – Çıkış İşlemleri
GAZİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
Arduino Uno R3 ile Merhaba Dünya Yrd. Doç. Dr. Deniz DAL
Arduino ve Gaz Sensörü.
Sensörler Ders 8 Aslı Ergün.
Doğu Akdeniz Üniversitesi Bilgisayar Ve Teknoloji Yüksek Okulu
MİkroİŞlemcİler ve programlanmasI Mekatronik Mühendisliği Bölümü
Doğu Akdeniz Üniversitesi Bilgisayar Ve Teknoloji Yüksek Okulu
Arduino Uno R3 ile Merhaba Dünya Yrd. Doç. Dr. Deniz DAL
EETE233 Mikrodenetleyiciler ArduIno ile Programlama
GAZİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
ARDUİNO Arduino Eğitimleri Bölüm 6 Analog Giriş – Çıkış İşlemleri
GAZİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
Arduino Eğitimleri Bölüm 5 Dijital Giriş – Çıkış İşlemleri
ARDUİNO Arduino Eğitimleri Bölüm 3 Programlama Dili Temelleri
MBLOCK ile Arduino ve Robotik Kodlama
ARDUİNO Arduino Eğitimleri Bölüm 2 Arduino’ya Giriş
GAZİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
MBLOCK ile Arduino ve Robotik Kodlama
MBLOCK ile Arduino ve Robotik Kodlama
Arduino Uno R3 ile Merhaba Dünya Dr. Öğr. Üyesi Deniz DAL
Bilişim Teknolojileri Öğrt.
Interrupts.
MBLOCK ile Arduino ve Robotik Kodlama
MBLOCK ile Arduino ve Robotik Kodlama
Sunum transkripti:

ARDUINO DİJİTAL PİN KONTROLÜ

Ne yapacağız ? Arduino kullanarak cihazları istediğimiz sıraya göre, istediğimiz zaman aralıklarına göre ayarlı çalıştıracağız. Video 1

Nasıl yapacağız ? Sadece basit bir elektronik devre ve birkaç komuttan oluşan basit bir yazılım yazacağız. Çalışması istenilen cihazları birer LED ile simgeleyeceğiz. İlerleyen haftalarda röle ve kontaktör kullanarak gerçek bir motoru kontrol edeceğiz.

Amacımız Arduino’daki dijital çıkış komut mantığını ve dijital çıkış komutlarının öğrenilmesini sağlamak. Arduino programı yazmaya giriş yapmak. pinMode ve digitalWrite komutlarının öğrenilmesini sağlamak.

pinMode(); Komutu Kullanılacak olan pinlerin, Giriş yada çıkış olarak tanımlanmasını sağlar. Örnekler: pinMode(13,OUTPUT); => 13 Nolu pin Çıkış olarak tanımlandı. pinMode(10,INPUT); => 10 Nolu pin Giriş olarak tanımlandı.

pinMode(); Komutu Eğer bir pinden LED, röle motor gibi bir çıkış elemanı kontrol edilecekse o pin ÇIKIŞ olarak tanımlanmalıdır. pinMode(x,OUTPUT); Buton veya sensör gibi bir giriş elemanı kontrol edilecekse, o pin GİRİŞ olarak tanımlanmalıdır. pinMode(x,INPUT); x= Pin numarası

digitalWrite(); Komutu Çıkış olarak tanımlanan pinlerden, Lojik1 veya Lojik0 çıkışı verilmesini sağlar. digitalWrite(7,HIGH); => 7 nolu pinden 5V çıkış verildi ! (Lojik-1) digitalWrite(9, LOW); => 9 nolu pinden 0V çıkış verildi ! (Lojik-0)

delay(); Komutu Parantez içerisinde belirtilen süre kadar bekleme yapılmasını sağlar. Komutlar arasında bekleme yapmak için kullanılır. 1 saniye için 1000 yazılır. Örnek: 5 saniye için 5000 yazılır. 7,5 saniye için 7500 yazılır.

delay(); Komutu delay(1000); => 1 saniye bekler. delay(500); => 0.5 (Yarım) Saniye bekler. delay(5000); => 5 saniye bekler. Delay(4500); => 4.5 saniye bekler.

Aksi takdirde derleme olmaz. Arduino komutları yazılırken, büyük/küçük harfe dikkat edilmeli, komutlar doğru şekilde yazılmalıdır. Aksi takdirde derleme olmaz.

Arduino Programlarında Genel Yapı void setup() { } void loop()

Arduino Programlarında Genel Yapı Program ayar kısmı ve döngü kısmı olmak üzere 2 bölümden oluşur. Ayar ( setup ) kısmında giriş/çıkış ayarları yapılır. Ayar kısmına yazılan tüm işlemleri arduino sadece 1 kez yapar. Tekrar etmez.

Arduino Programlarında Genel Yapı Döngü ( loop ) kısmına ise sürekli olarak yapılması istenilen işlemler yazılır. Ayar ve döngü kısımlarının başlangıçlarında { parantezi açılır, bitişlerinde } parantezi kapatılır.

Örnek Bir Program ve Çalışması void setup() { pinMode(3,OUTPUT); pinMode(4,OUTPUT); digitalWrite(3,HIGH); delay(500); digitalWrite(3,LOW); delay(500); } void loop() { digitalWrite(4,HIGH); delay(1000); digitalWrite(4,LOW); delay(1000); }

Örnek Bir Program ve Çalışması void setup() { 3 nolu pin çıkıştır. 4 nolu pin çıkıştır. 3 nolu pini aktif et. Yarım saniye bekle. 3 nolu pini pasif et. Yarım saniye bekle. } void loop() { 4 nolu pini aktif et. 1 saniye bekle. 4 nolu pini pasif et. 1 saniye bekle. } SADECE 1 KEZ YAPAR ! SÜREKLİ TEKRAR EDER !

Örnek Programın Devresi

Uygulama – 1 7 nolu pine bağlı LED 1 kez 1 saniye ışık verip sönecek daha sonra 10 nolu pine bağlı LED 1 saniye aralıklarla sürekli yanıp sönecektir.

Uygulama – 1 void setup() { pinMode(7,OUTPUT); pinMode(10,OUTPUT); digitalWrite(7,HIGH); delay(1000); digitalWrite(7,LOW); } void loop() { digitalWrite(10,HIGH); delay(3000); digitalWrite(10,LOW); delay(1000); }

Uygulama – 2 Bu soruda istenen tüm işlemler sürekli tekrar edecektir. - 3 nolu pine bağlı olan LED ışık verip 1 saniye sonra sönecek. - Söndüğü gibi 6 nolu pine bağlı olan LED ışık verecek ve 2 saniye sonra sönecektir. - 6’ya bağlı olan LED sönünce 1 saniye beklenecek, 4’e bağlı olan LED ışık verecek ve 3 saniye sonra sönecektir. Gerekli devreyi kurunuz, programı yazınız.

Uygulama – 3 Bu soruda istenen tüm işlemler sürekli tekrar edecektir. - 4’e bağlı olan LED ile 5’e bağlı olan LED aynı anda ışık verecek. 3 saniye sonra ikisi de sönecek. - Söndüğü gibi 6 ve 7’ye bağlı olan LED’ler aynı anda ışık verecekler. 2 saniye sonra sadece 6’daki sönecek. - 1 saniye sonra 7’deki de sönecektir. Gerekli devreyi kurunuz, programı yazınız.

Uygulama – 4 8 adet LED bağlayarak, sürekli olarak karaşimşek şeklinde ışık vermesini sağlayan devreyi kurunuz ve programı yazınız. (Pinleri kendiniz belirleyiniz.) (Bekleme süreleri 200ms ile 1 sn arasında olabilir.) Video 2