1. LabVIEW ile Programlama

Benzer belgeler
HSancak Nesne Tabanlı Programlama I Ders Notları

T.C. TRAKYA ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ

TEMEL BİLGİSAYAR. Ders Notları. Yrd. Doç. Dr. Seyit Okan KARA

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

Excel de çalışma alanı satır ve sütunlardan oluşur. Satırları rakamlar, sütunları ise harfler temsil eder. Excel çalışma sayfası üzerinde toplam

CJ-CP1H-CP1L PLCLERĐNDE FONKSĐYON BLOĞU OLUŞTURMA

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Yukardaki gibi sonsuz döngülü programlara Ctrl+Break tuş takımı ile müdahale edilmesi gerekir, aksi halde program sonsuz döngüye girer.

Kantar Otomasyonu Özellikler Kullanım Satış Kamyon Hareketleri Ağırlık Bilgisi... 9

2. Belgeye Metin Ekleme

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

EXCEL 2007 ELEKTRONİK ÇİZELGE

Fatura Dinamik Kodlama İyileştirmeleri

Açılan programın pencere görünümü aşağıdaki gibidir. 2. Araç Çubuğundan kaydet düğmesi ile

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

WINDOWS VE PARDUS İÇİN İMZAGER KURULUM TALİMATI

Kopyalama ve Taşıma konularıyla ilgili daha değişik uygulamalar yaparak bu konunun pekiştirilmesini sağlamanız yararınıza olacaktır.

ELEKTRONİK ÇİZELGE. Hücreleri Biçimlendirme. Formülleri Kullanma. Verileri Sıralama. Grafik Oluşturma 1) HÜCRELERİ BİÇİMLENDİRME

Windows 10 için Java JDK 8 ve NetBeans IDE 8.2 Kurulumu Detaylı Anlatım

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

HSancak Nesne Tabanlı Programlama I Ders Notları

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

POWER POINT SUNU PROGRAMI

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

Ekle sekmesindeki Tablolar grubundaki Tablo seçeneği ile tablo oluşturulur.

CAEeda TM. NACA0012 KANADI ÜZERİNDE FAPeda ÇÖZÜMÜ UYGULAMASI EĞİTİM NOTU. EDA Tasarım Analiz Mühendislik

PALET TEYİT EKRANI EĞİTİM NOTU

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu

Dinamik Kodlama. [X] [X] Yeni Fonksiyon

Algoritma ve Programlamaya Giriş

Metin İşlemleri, Semboller


Kets DocPlace LOGO Entegrasyonu

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Swansoft Fanuc OiT Kullanımı

Access e Nasıl Ulaşılır. Araç çubuklarını yeniden düzenlemek için Görünüm komutunun Araç çubukları seçeneği kullanılır.

Internet Programming II

Bu düğme tıklandığında karşınıza yandaki gibi bir diyalog kutusu daha gelecektir.

HĠTĠT ÜNĠVERSĠTESĠ REKTÖRLÜĞÜ BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI

MODÜL 4 HESAP TABLOSU UYGULAMALARI 2

ideal Sistem Tester Kullanım Klavuzu

JAVA DÖNGÜ DEYİMLERİ. For Döngüsü

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

BİLGİSAYAR PROGRAMLAMA DERSİ

PERSONEL BANKA IBAN BİLGİSİ DEĞİŞİKLİĞİ UYGULAMA KILAVUZU

Nesne Yönelimli Programlama

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

BİLGİSAYAR PROGRAMLAMA MATLAB

SQL Uyarı Programı Kurulum ve Kullanımı

Swansoft Fanuc OiM Kullanımı

CAEeda TM GENEL TANITIM. EDA Tasarım Analiz Mühendislik

JAL IN İNTERNET TEN İNDİRİLMESİ VE KURULMASI

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

DESTEK DOKÜMANI ANKET YÖNETİMİ. Kurum tarafından yapılacak anketlerin hazırlandığı, yayınlandığı ve sonuçların raporlanabildiği modüldür.

SM 100 Terazi Ayarları. Digi SM 100. SM 100 Terazi Ayarları

BEŞHEKİM GRUP AYBEL YAZILIM İBYS PROGRAMI KULLANIMI

PLS2 KOMUTU. Giriş PLS2 Komutunun Açıklanması Sonuç

UFRS ANALİZ DOKÜMANI

GÖRÜNTÜ SINIFLANDIRMA

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

1. MEVITAS MERKEZİ ELEKTRONİK VERİ İLETİM TOPLAMA ANALİZ SİSTEMİ GENEL İLKELERİ

EKOM WEB DESIGNER PROGRMI KULLANMA KILAVUZ. 1 - Web Sayfası Tasarımı Oluşturma / Var Olan Tasarımı Açma:

MapCodeX MapLand Kullanım Kılavuzu

Web Labaratuar Modulu

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

HSancak Nesne Tabanlı Programlama I Ders Notları

3. Aşağıdakilerden hangisi B5 hücresinin değerini getirir (Kopyalar)? a-) =B5 b-) B5 c-) =B(5) d-) =5B

BİLGİSAYAR PROGRAMLAMA DERSİ

KONTROL SİSTEMLERİ-1 LABORATUVARI DENEY -1. Öğr. Gör. Güzin ÖZMEN Arş. Gör. Fehmi SEVİLMİŞ

AVRASYA UNIVERSITY. Dersin Verildiği Düzey Ön Lisans (X ) Lisans ( ) Yüksek Lisans( ) Doktora( )

BİL-142 Bilgisayar Programlama II


PROGRAMLAMA ve YAZILIM. Sayısal Analiz Yrd.Doç.Dr. Zekeriya PARLAK

NB Macro Kullanımı Hakkında Genel Bilgiler

16. Kesit ve Cephe Aracı

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

Luca NET Kobi Ticari Yazılımında ilk yapılacaklar

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

ASP.NET ile Bir Web Sitesi Oluşturma

Diziler İndisli Değişkenler

Okul Web Sitesi Yönetim Paneli Kullanımı

Şekil 2.31: Proje yöneticisi penceresinden değişkenleri tanımlama

BİLGİSAYAR PROGRAMLAMA DERSİ

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI


KOCAELİ TEKNİK LİSESİ ELEKTRİK ELEKTRONİK BÖLÜMÜ OTOMASYON ATÖLYESİ EKTS (Elektrik Kumanda Teknikleri Simülatörü ) DERS NOTU. Kaynak :

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

iotech Ölçüm Sisteminin Bilgisayara Tanıtım Rehberi

NAZMİYE DEMİREL ORTAOKULU BİLİŞİM TEKNOLOJİLERİ DERSİ 1. DÖNEM 6. SINIFLAR DERS NOTU EXCEL 2007 DERS NOTLARI

PARÇA MODELLEMEYE GİRİŞ

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

-A Grubu- MKT103 Görsel Programlama 2015/2016 Güz Dönemi Final Sınavı

20. Detay Çıkartma. ArchiCAD 9 Prof. Dr. Salih Ofluoğlu

BMRD.exe dosyası ile yapılır (BMDE.EXE kurulumunda c:\byte\entegre\bmrd:exe olarak gelir.)

ALGORİTMA VE PROGRAMLAMA I

BİLGİ İŞLEM DAİRE BAŞKANLIĞI WEB GÜNCELLEME İŞLEMLERİ KILAVUZU

İzibiz E-Defter Son Kullanıcı Kullanım Klavuzu

13 Aralık Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

Transkript:

1. LabVIEW ile Programlama LabVIEW ile programlama mantığı, program kodu yazılan programlama mantığına benzemekle birlikte, kontrol adı verilen nesneler arasında veri yolu bağlantısı ile program akışı sağlanır. Kontroller içindeki veri elektrik kablosuna benzer çizgi üzerinden bağlı olduğu kontrole geçer. Labview de içinde veri bulunan üç çeşit nesne bulunur. Control : Kullanıcının program çalışırken veri girdiği nesnelerdir. Çeşitli şekilleri bulunur. Indicator : Kullanıcı program çalışırken veri giremez, hesaplama sonucu bulunur. Çeşitli şekilleri vardır. Constant : Sabit değerdir. Program çalışırken değiştirilemez. Control ve indicator birbirine benzerdir. Control isimli nesnelerde bulunan veri veri yolları üzerinden indicator isimli nesneye veya matematiksel sembollere doğru akar. Elektrikte iki farklı fazın birbirine bağlanması hata meydana getirir, benzer şekilde farklı controllara bağlı veri yolu bir birine bağlanmamalıdır. Bir kontrole ve indikatöre sadece bir veri yolu bağlanabilir. Elektrikte bir kablonun ortasına başka bir kablo bağlasak bu kabloda aynı voltta elektrik olur, aynı şekilde bir veri yolu kablosunun herhangi bir yerine başka bir veri yolu kablosu bağlasak, bu kabloda da aynı veri bulunur. Resim 1 LabVIEW genel görünümü 1

LabVIEW de iki pencere vardır. Görsel nesnelerin bulunduğu Front Panel, program akışının bulunduğu Block Diagram penceresi. Programlama block diagram penceresinden yapılır. Şekil 1 da örnek bir Labview programı bulunur. Burada x ve y control, z ise indicatordür. x ve y controllerindeki veri sembolden çıkan veri z indicatörüne girer. sembolü üzerine akar, bu Şekil 1 Örnek LabVIEW diyagramı Normal programlama mantığında, bir başlangıç vardır ve bir de sonu vardır yani bir yerde program akışı durur. LabVIEW de ise program akışı, en uzaktaki indicatöre gittiğinde yine başa döner yani tüm akış bir sonsuz döngü içindedir. Döngü sonsuz olduğu için, control içindeki verinin işlem görmesi için bir olay tanımına ihtiyaç yoktur. Bir controle veri girildiğinde, o veri doğrudan kablo üzerinden akar ve kablonun bağlı olduğu yere gider. Çok bilinen programlamada, programlar tek görevlidir. Yani bu programlar örneğin aynı anda iki sayıyı toplayamaz. Bu toplama işlemini sıralı olarak yaparlar. LabVIEW ise çok görevlidir yani aynı anda iki toplama işlemini yapar. Bütün işlemler paralel yürür. Her an veri yolu kablolarında veri vardır. LabVIEW de paralel çalışan birden fazla döngü bulunabilir. 1.1. LabVIEW veri tipleri Blok diyagramında nesnelerin iki görünümü vardır. ve görünümleridir. Labview sıfıra bölme hatası vermez. +inf : + ve inf : dur. Tablo 1 de çok kullanılan veri tipleri görülmektedir. 2

1.2. LabVIEW fonksiyonları LabVIEW de fonksiyonların sembolleri vardır. Bu sembollerin giriş ve çıkış terminalleri bulunur. Örneğin, sembolü bir toplama fonksiyonudur. İki girişi, bir de çıkışı vardır. Blok diyagramında fare sağ tuşuna tıklandığında, fonksiyonların listesi görünür. Bu listede fonksiyonlar görevlerine göre alt gruplara ayrılmıştır. Tablo 1 LabVIEW veri tipleri Control Indicator Veri Tipi Control Indicator Veri tipi Tek duyarlı ondalık sayı Çift duyarlı ondalık sayı Tek duyarlı kompleks sayı Çift duyarlı kompleks sayı Ekstra duyarlı ondalıklı Ekstra duyarlı kompleks sayı sayı 8 bit işaretli tamsayı 8 bit işaretsiz tamsayı 16 bit işaretli tamsayı 16 bit işaretsiz tamsayı 32 bit işaretli tamsayı 32 bit işaretsiz tamsayı 64 bit işaretli tamsayı 64 bit işaretsiz tamsayı Boolean (mantıksal) String (metin) Dizi (veri tipi belirlenmemiş) Enumerated tip Path Matris (çift duyarlı ondalıklı sayı) Kullanmak istediğimiz fonksiyon tıklanarak blok diyagramına yerleştirilir ve kablo bağlantısı yapılır. Yandaki şekilde fonksiyon grupları görülmektedir. Fonksiyon gruplarının sayısı yüklü modüllerin sayısına bağlıdır. Programming, bir VI için temel fonksiyonlar bulunur. Mathematics, matematiksel analiz için çok çeşitli platformlar sunar. Matematik algoritmalar, çeşitli pratik çözümler vardır. Resim 2 3

1.3. LabVIEW de diziler Front Panel de fare sağ tuşuna basıldığında kontrol listesi görülür. Bu kontrol listesinde sembolüne tıklanır. İçi boş bir dizi nesnesi oluşur. LabVIEW de dizi bir kontrol dizisidir. Diyelim ki biz sayı dizisi oluşturmak istiyoruz, yine sağ tuşa tıklayarak sayı kontrolünü seçeriz ve bu kontrolü boş olan dizinin içine yerleştiririz. Diziler varsayılan olarak tek boyutludur. Dizi nesnesi üzerinde fare sağ tuşuna basılarak, add dimension tıklanarak diziye yeni boyut eklenmiş olur. Diziler bir boyutlu ise vektör, iki boyutlu ise matris adını alır. Vektör ve matrisler üzerinde matematiksel işlem yapmak için özel fonksiyon yazmaya gerek yoktur çünkü toplama, çıkartma, ters matris bulma, devrik matris bulma gibi her türlü matematik fonksiyon mevcuttur. Resim 3 Matris foksiyonları Resim 4 Dizi fonksiyonları 4

1.4. Döngüler ve yapılar 1.4.1. For Döngüsü kez yani For döngüsü, görünümü aşağıdadır. Döngü içindeki alt diyagram, girilen değer kez çalıştırılır. Dışarıdan değer alan bir sayı ucu vardır. : Sayı ucudur. Bu uçtan döngünün kaç kez döneceğinin sayısı girilir. sayısı sayısına ulaştığında döngü sonlanır. : İterasyon ucudur. Döngünün iterasyon numarasıdır. Her zaman sıfırdan başlar. Sayı ve iterasyon uçları 32 bit işaretli tamsayıdır. 1.4.2. Mantıksal uç olan for döngüsü Yukarıdaki for döngüsü ile aynıdır. Döngüden erken çıkmak için kullanılır. Blok diyagramında, for döngüsü seçilerek fare sağ tuşuna basılır ve Conditional terminal tıklanır. Bu yapıda, bir koşula bağlı olarak döngüden çıkılabilir. : Bu uca true değer gönderildiğinde döngü durur. True değerin döngüyü devam ettirmesi istendiğinde, yani false değeri ile döngü durdurulmak istendiğinde bu sembol üzerinde fare sağ tuşuna basılır Continue if True tıklanır. : Bu uca false değer gönderildiğinde döngü durur. 1.4.3. While döngüsü 5

Metin tabanlı programlama dillerindeki while döngüsüne benzerdir. Koşul gerçekleştiğinde döngüden çıkılır. Aşağıdaki şekle benzerdir. Kontrol ucu yapısı for döngüsü ile aynıdır. veya uçları kontrol uçlarıdır. True ile veya false ile çıkılması isteğine göre biri seçilir. ise her zaman sıfırdan başlayan, iterasyon numarasını tutan nesnedir. 1.4.4. Case yapısı Duruma bağlı olarak çalışacak diyagram tanımı yapılır. Görünümü aşağıdadır. : kullanılan durumlar, buraya yazılır. Burada yazılı durum geldiğinde, case yapısı içindeki blok şeması çalışır.?: Bu uca, sayı, boolean, string ve enumerated tipi değerin koblosu bağlanabilir. Buradan gelen değere bağlı olarak, hangi bloğun çalışacağına karar verir. Şekil 2 Örnek while loop ve case yapısı 1.4.5. Shift Register Gelecek döngü iterasyonunda, iterasyonun kaldığı yerden devam etmesi istenebilir. Shift register döngü çerçevesinin yanına konur. sembolü shift registerdir. 6

Şekil 3 Shift register örneği Yukarıdaki şekilde shift registerin arasında Increment fonksiyonu vardır. Shift registere Numeric isimli nesne bağlıdır. Bu nesnenin değeri, increment fonksiyonu sayesinde sürekli bir artar aynı zamanda bu nesnenin değeri hiç başa dönmez. Program çalıştığı sürece sürekli artar. 1.4.6. Feedback Node Shift registerin benzeri işleve sahiptir. Farkı döngü yeniden başlayınca nesne ilk değerini alır. Görünümü aşağıdadır. Şekil 4 Feedback node örneği 1.4.7. MathScript Yapısı Görünümü aşağıdadır. Buradaki pencereye metin tabanlı script kodları yazılır. Matlab a benzer komutlar yazılabilir. Bu yapı LabVIEWin ek bir modülüdür. Script in çerçevesi üzerinde fare sağ tuşuna basıldığında gelen kısayol menüsünde Add Input tıklayarak giriş ucu, Add Output u tıklayarak çıkış ucu tanımlanır. Bu uçlara kablo bağlayarak veri gönderilir. 7

Şekil 5 MathScript penceresi 1.4.8. Matlab Script Yapısı MathScript e benzer yapıdadır. Matlab scriptini kullanabilmek için bilgisayara Matlab programı yüklü olmalıdır. Doğrudan matlabı kullanır. Bu nedenle matlaba ait tüm fonksiyonları, kendi fonksiyonu gibi kullanır. Görünümü aşağıdadır. Şekil 6 MATLAB Script penceresi 1.5. SubVI (Alt VI belgesi) Bir VI belgesi içinden başka bir VI çağrılabilir. Bir VI dosyası bir fonksiyon olarak kullanılabilir. Bu VI den yapılan fonksiyona parametre göndermek için aşağıdaki işlemler yapılır. Front Panel de sağ üst köşede VI dosyasının sembolü vardır. Bu sembol üzerinde fare sağ tuşuna basınız. Açılan kısayol menüsünden Show connector ü tıklayınız. Connector deki her bir hücre ye parametre ataması yapılır. Connector ün hücre yapısı değiştirilebilir. Değiştirmek için connector üzerinde fare sağ tuşuna basınız. Kısayol menüsünde Patterns i tıklayarak uygun hücre şeklini seçiniz. Connector hücresine, control ataması yapılır. o Önce atama yapılacak hücreye tıklayınız, 8

o Sonra bu hücreye atanacak controlü tıklayınız. Seçili hücreye control atanmıştır. Dosyayı kaydediniz. Yukarıdaki şekilde tanımlanmış bir VI dosyasını, başka bir VI dosyasına eklemek için aşağıdaki adımlar uygulanır. VI dosyasının Block Diagram sayfasına geçiniz. Fare sağ tuşuna tıklayınız. Fonksiyonlar kısa yolu açılacaktır. Select a VI.. tıklayınız. Ekleyeceğiniz VI dosyasını seçiniz. OK tıklayınız. Terminal uçlarına kablo bağlantılarını yapınız. Dosyayı kaydedip çalıştırınız. 1.6. LabVIEW Kablo Renkleri LabVIEW de taşıdığı veriye göre kablolar renklenmiştir. Tablo 2 LabVIEW kablo renkleri RefNum Ondalıklı Sayı Variant Hata hattı String Tamsayı Sayısal Cluster/ Analog Dalga Boolean Sayısal Dalga Express Dinamik veri Void Bozuk hat 9