Kategori arşivi: Genel

Serial Port TextBox – Seri Kanal TextBox Kontrol

Bu yazımızda sizlere custom control olan seri kanal textbox User Kontrol geliştirme aşamalarından bahsedeceğiz

C# da yer alan SerialPort sınıfı, seri kanal haberleşmesi için sıklıkla kullanılan bir sınıftır. Çeşitli projelerde, RS232 haberleşmesi sırasında kullanılan, baudrate, dataBits, parity,… gibi özellikleri ayarlanabilen bu sınıfa ait örnek kullanım aşağıda verilmiştir.

serial port text box
serial port text box

Kullanıcı arayüzünde gerçekleştirilen seçimler ile, bağlantı özellikleri değiştirilerek bağlantı kurulduktan sonra, seri kanal kontrol ve haberleşmesi gerçekleştirilen uygulamalarda, her bir haberleşme özelliği için ayrı bir kontrol kullanmak yerine, SerialPortTextBox isimli bir User Control geliştireceğiz.

seri kanal textbox kullanıcı arayüzü tasarım
seri kanal textbox kullanıcı arayüzü tasarım

Fare’nin orta tuşunun ileri ve geri hareketinde ve klavyenin yukarı/aşağı ok tuşlarına basıldığında, bilgisayarda bulunan Seri Kanallar, seri kanallara ait haberleşme hızları, data rate, start bit gibi özelliklerini değiştirebilen, klavyedeki sağ ve sol ok tuşlarına basıldığında ise bu özellikler arasında gezinebilen bir seri kanal kontrol için textbox tasarlayacağız.

Amacımız, seri kanal haberleşme özellikleri için, tek bir kontrol kullanarak, normalde her bir özellik için ayrı TextBox kullanımının önüne geçerek, projelerde toolboxımıza ekleyebileceğimiz, kolay kullanımlı ve fazla kod yazma/kontrol kullanımının önüne geçen bir seri kanal textbox tasarlamaktır.

Burada, standart TextBox a, spin özelliği ekleyecek, her bir seri kanal özelliğini de “,” ile ayıracağız. Bu amaçla, textbox a ait aşağıdaki event ler içerisinde gerekli düzeltmeleri ve kodlamaları yapacağız.

seri kanal textbox event tasarım
seri kanal textbox event tasarım

Agilent VEE ile Cihaz Kontrolü

Agilent VEE Nedir?

Agilent Vee ile Cihaz Kontrolü ve test yazılımı geliştirme hakkındaki yazımıza başlamadan önce, VEE hakkında kısa bilgiler verelim. 1990 lı yıllarda oratya çıkmaya başlayan ilk ismi ile HP VEE(HP Visual Engineering Environment) olan grafiksel programlama dili, veri akışı temelli(data flow progamming) bir otomatik test geliştirme, veri analizi ve raporlama ortamıdır. Otomatizasyon gerektiren endüstrinin hemen her kolunda özellikle de askeri platformlar için test altyapıları geliştirme alanında sıklıkla kullanılmakta, gerek tasarım doğrulama, gerek üretim testleri gerekse doğrulama-geçerleme faaliyetleri konularında elektronik mühendislerinin tercihi olmaktadır.

Agilent Vee Nerelerde Kullanılır?

 

C/C++/Java/C# gibi Programlama dillerini bilmeye gerek kalmadan, Voltmetreler, osiloskoplar, güç kaynakları, spektrum analizörler, network anlizörler, logic analizörler gibi laboratuvar test cihazlarından hızlı bir şekilde ölçüm ve veri alınması, işlenmesi ve alınan verilerin sonrasında analiz edilmesi için sıklıkla kullanılmaktadır.

Agilent Vee ile Cihaz Kontrolü Nasıl Yapılır?

Agilent Vee ile Cihaz kontrolü, Direct IO, VXI Plug&Play driver, Panel Driver gibi cihaz kütüphanelerini kullanarak kolaylıkla gerçekleştirilmektedir. Direct IO haricindeki diğer iki yöntem ile, herhangi bir komut seti ve kütüphanesi kullanmadan cihazlarla haberleşilebilirken, Direct IO ile, test tasarımcısı kendi kütüphanelerini kendisi oluşturabilmekte ve cihaz ile daha karmaşık ve tüm kontrolü elinde bulunduran bir test yazılımı tasarlayabilmektedir.

Agilent Vee ile Cihaz Kontrolü
Agilent Vee ile Cihaz Kontrolü

Seri Kanal başta olmak üzere, GPIB, USB, Ethernet, VXI-11, SOCKET gibi haberleşme arayüzleri kullanarak, Keysight Vee ile cihazlarla haberleşebilir, otomatik test altyapıları geliştirebilirsiniz.

Bu amaçla, HP VEE, Agilent VEE veya Keysight VEE eğitimi derslerimize katılabilir, otomatik test altyapıları, test yazılımı geliştirme ve dokümantasyonu konularında danışmanlık hizmetlerimizden faydalanabilirsiniz.

C# ile cihaz kontrolü hakkındaki yazımızı okudunuz mu?

C# ile Güç Kaynağı Kontrol Test Yazılımı

Güç Kaynağı Kontrol Test Yazılımı Tasarımı

Keysight(eski ismi ile Agilent veya HP) cihazlarından olan ve Test ve Ölçüm sistemlerinde Güç Kaynağı olarak kullanılan Keysight E3631A DC Power Supply (DC Güç Kaynağı) için C# cihaz ve ölçüm kütüphanesi (c# instrument driver) kullanarak, güç kaynağını kontrol etmek, akım ve voltaj değerlerini ayarlamak ve bağlı bulunduğu kart-birim ve sistemin çektiği akımı okuma işlemlerini gerçekleştirmek için, Güç Kaynağı Kontrol Test Yazılımı hazırlayacağız.

Bu amaçla, C# kullanarak bir form tasarlayacağız, Güç kaynağı ayarlarının yapıldığı ve okunan değerlerin grafik nesnesine eklenerek çizdirildiği küçük bir uygulama yapacağız.

GucKaynagiTestOlcum isimli bir Windows Forms Uygulaması oluşturalım

C# ile cihaz kontrol yeni proje
C# ile cihaz kontrol yeni proje

Oluşturduğumuz projede, Ana formumuza, GucKaynagiTestOlcumAnaForm ismini verelim. Sonrasında, Ana Formumuza, Menu Strip ekleyip, aşağıdaki şekilde olduğu gibi MenuItem lar ekleyelim.

Güç Kaynağı Kontrol Test Yazılımı ana form
Güç Kaynağı Kontrol Test Yazılımı ana form

Test Ayarları Form Tasarımı

Güç Kaynağı Kontrol Test Yazılımı‘nda yer alan Test ayarları formumuzda, seri kanal üzerinden haberleşeceğimiz güç kaynağı için ayar kontrolleri yer alacak. Bu amaçla, yeni bir form oluşturarak, üzerine aşağıdaki gibi kontrollerimizi yerleştiriyoruz. Bağlan butonuna basıldığında, güç kaynağı ile eğer bağlantı kurulduğu durumda, butondaki ikon yeşil renkli, bağlanamadığında veya bağlantı kesildiğinde ise kırmızı ikon olcak şekilde gerekli olayları(events)tanımlayalım.
Güç kaynağı ile bağlantı hızımızı, hangi seri kanal üzerinden bağlandığımızı, seri kanal bilgilerini içeren bir text box üzerinden ayarlanabilir hale getirelim.

Senaryo:

Kullanıcı, Seri Kanal ayarları text box’ı üzerinden gerekli ayarlamaları yapar, bağlan butonuna basar ve güç kaynağı ile bağlantıyı gerçekleştirir. Unutulmaması gereken nokta, Test Ayarları kullanıcı arayüzü üzerinden yapılan seri kanal ayarlarının, Güç Kaynağı haberleşme ayarları ile aynı olması gerekmektedir. Ayrıca, haberleşme için kullanılacak olan seri kanal kablosu da çapraz kablo(2->3, 3->2, 4->6, 6->4, 7->8, 8->7, 9->9, 5->5) olmalıdır.

c# cihaz kontrol test ayarları form
c# cihaz kontrol test ayarları form

Güç Testleri Formu Tasarımı

Güç testleri formumuzda, güç kaynağından seri kanal üzerinden okuduğumuz akım değerlerini çizdirdiğimiz bir grafik ekranı, testleri durdurup başlatabileceğimiz butonlar, formu kapatabileceğimiz bir buton yer alacak. Alınan verilerin sunumu için de, grafik nesnemizde bazı kozmetik iyileştirmeler yapalım. Güç kaynağından okuduğumuz veriler, üst sınır değerimizi geçtiği veya alt sınır değerimizin altında olduğundaki durumlar için, alt ve üst limit çizgileri çizelim.

c# cihaz kontrol güç testleri form tasarımı
c# cihaz kontrol güç testleri form tasarımı

Senaryo: Başla butonuna basıldığında, güç kaynağından okunan akım değerleri grafik nesnesine çizdirilecek, kapat butonuna basıldığında ise, Güç Testleri formu kapatılacak ancak ölçüm alınmaya devam edilecek. Ölçümü durdurma işlemi, Bitir butonuna basılarak gerçekleştirilecek.

Dosyaya Kayıt İşlemi

Alınan ölçüm sonuçlarının dosyaya kayıt işlemleri için ise, text işlemler yerine xml altyapısı kullanacağız. Bunun için bir xsd şeması oluşturup, elde edeceğimiz sonuçları testsonuc.xml dosyasına yazacağız.

C# ile Cihaz Kontrolü

C# ile cihaz kontrolü, maliyet etkin ve hataların en aza indirgendiği üretim tesislerinde sıkça kullanılan yöntemlerden birisidir.

Sayısal, analog, RF/Mikrodalga tasarım gibi Elektronik kart ve modül tasarımlarında DC Güç Kaynağı, Osiloskop, Logic Analizör, DC Yük, AC yük, AC Source Power Analyzer, Spektrum Analizör, Network Analizör gibi laboratuvar cihazları sıkça kullanılmaktadır. Tasarımı tamamlanan kart ve modüllerin test aşamalarında da gereksinim duyulan bu cihazlar, çeşitli programlama dilleri ve haberleşme arayüzleri kullanılarak otomatik olarak kontrol edilebilirler.

Tasarlanan elektronik kartların, rf/mikrodalga birimlerin sayısı arttıkça, test için ayrılan zaman da artacağından, ATE(Automated Test Equipments) dediğimiz otomatik test altyapılarının geliştirilmesi gerekli hale gelmektedir. Test Cihazları, özel test kartları ve test yazılımlarının bir arada çalışabildiği bu altyapılar, zamandan tasarruf sağladığı gibi, testler sırasında meydana gelebilecek hatalarıda en aza indirgemektedir.

Test Donanımları

Elektronik kartların testi gerçekleştirilirken, ürüne özel test altyapıları(hızlı veri işleme, veri depolama, I/O işlemleri)geliştirmek gerekebilir. Bu kapsamda tasarlanan kartlara test donanımları ismi verilmektedir.

Test Yazılımları

Test altyapılarında çalışan ve test cihazları, test donanımları, elektronik kart/birim/sistemlerle haberleşmeyi ve elektriksel özelliklerini otomatik test ederek, test sonuçlarını kaydetmeyi sağlayan, mimari tasarımlar çerçevesinde tasarımları gerçekleştirilen araçlara verilen isimdir. Java, C++, LabView, Agilent VEE, LabWindows/CVI ve C# bunlara birer örnek teşkil etmektedir.

Cihaz Kontrolü

Bu yazımızda bahsettiğimiz cihaz ve test donanımlarını, seri kanal(RS-232, RS-485…), GPIB(HPIB), USB, TCP/IP, UDP gibi haberleşme arayüzlerinden test yazılımları kullanarak kontrol etme işlemine cihaz kontrolü adını veriyoruz. Anlatımlarımız ve makalelerimiz, C# ile cihaz kontrolü temelinde olacaktır.  Bu kapsamda, cihaz ve ölçüm kütüphaneleri geliştrecek, kullanıcı arayüzleri tasarlayacağız. Bundan sonraki makalemiz, C# ile Güç kaynağı kontrolü olacaktır. Bir sonraki makalemizde görüşmek üzere hoşçakalın.