C# etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
C# etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

18 Ocak 2025 Cumartesi

Ubuntu'da CSharp Uygulaması Geliştirmek

 Merhaba, bu yazımda Ubuntu Linux sistemde C# program geliştirmeyi çalışacağım. Daha önceleri Windows uygulamaları geliştirmek için C# programlama dilini birçok kez kullandım. Ama şimdi yeni bir ihtiyaç doğdu, RaspberyPi benzeri bir sisteme ekran bağlayıp oluşturulan terminallerle veri toplamak. 

Amacımı gerçekleştirmek için daha önce duyduğum fakat hiç denemediğim Linux Mono kurulumu yaparak C# programlarımı Ubuntu sistem üzerinde çalıştırmayı deneyeceğim. Amacıma ulaşırken aynı programları hem Ubuntu hem de Windows üzerinde çalıştırarak her iki sistemde de çalıştığını görmek istiyorum.

Kurulumlarla başlayalım.



Ubuntu'da Mono Kurulumu

27 Eylül 2023 Çarşamba

C# Yeni Eklenen Property ile Veri Bağlama (Binding)

 Selam. Bu yazıda veri bağlama işlerini deşmeye devam edeceğim. Daha önce basit yollarını gördüğümüz işlemlerin şimdi daha kuralına uygun yapılmasını göreceğiz. Amacımız bir sınıfta Property (özellik) olarak tanımlanan bir değişkeni veri başlama işleminde kullanmak. Adım adım gidelim.

Öncelikle yeni bir WPF .Net masaüstü uygulaması üreterek başlayalım:

25 Ağustos 2023 Cuma

C#'ta Veri Bağlamak Zor (mu?)

 Selam, bu yazı kısa olacak. Hep kafama takılan bir soru, veri bağlama bu kadar uğraşma gerektirmeden Visual Studio kabiliyetlerini kullanarak yapılamaz mı? Mevcut iki kontrolün özelliklerini birbirine karşılıklı bağlayabiliyoruz. Ama "bir değişken olsun , ben de bu değişkene kontrolü bağlarsam onun özelliğini değiştirsin, arkaplan kodundan da değere müdahale edebileyim", deyince bir sürü iş çıkıyor başımıza. Yazılımcının iyisi tembel olanıdır deyip , bu işe kolay bir çözüm aradım ve aşağıda yazdıklarım çıktı ortaya. Hadi bakalım,

7 Mart 2023 Salı

C# Temelleri 5

 Merhaba direk bu sayfaya gelenler için belirteyim, bu yazı serinin beşinci yazısı. Önceki bölümler için 

https://ujk-ujk.blogspot.com/2023/01/c-temelleri-1.html ve 

https://ujk-ujk.blogspot.com/2023/02/c-temelleri-2.html ve

https://ujk-ujk.blogspot.com/2023/02/c-temelleri-3.html ve

https://ujk-ujk.blogspot.com/2023/02/c-temelleri-4.html

sayfalarına bakınız.


C# Bir Nesnenin Parametre Değeri Olarak Verilmesi

27 Şubat 2023 Pazartesi

C# Temelleri 4

  Merhaba direk bu sayfaya gelenler için belirteyim, bu yazı serinin dördüncü yazısı. Önceki bölümler için 

https://ujk-ujk.blogspot.com/2023/01/c-temelleri-1.html ve 

https://ujk-ujk.blogspot.com/2023/02/c-temelleri-2.html ve

https://ujk-ujk.blogspot.com/2023/02/c-temelleri-3.html

sayfalarına bakınız.


En son artık ağır konulara gireceğimizi belirtmiştik, hadi başlayalım.


C# Sınıf Tanımları (class)

19 Şubat 2023 Pazar

C# Temelleri 3

 Merhaba direk bu sayfaya gelenler için belirteyim, bu yazı serinin üçüncü yazısı. Önceki bölümler için 

https://ujk-ujk.blogspot.com/2023/01/c-temelleri-1.html ve 

https://ujk-ujk.blogspot.com/2023/02/c-temelleri-2.html

sayfalarına bakınız.

En son öğrendiklerimizi kullanarak uygulamalar yapıyorduk, devam edelim.



C# ile Bir Hesaplama Programı (Konsol Uygulaması)

11 Şubat 2023 Cumartesi

C# Temelleri 2

 Merhaba direk bu sayfaya gelenler için belirteyim, bu yazı serinin ikinci yazısı. İlk bölüm için 

https://ujk-ujk.blogspot.com/2023/01/c-temelleri-1.html

sayfasına bakınız. 

İlk bölümde gördüğümüz temellerden sonra şimdi biraz daha gelişmiş metodlar ve kodlama teknikleri ile devam ediyoruz.


C# Rastgele Sayı Üretmek

26 Ocak 2023 Perşembe

C# Temelleri 1

 Merhaba,

Uzun zamandan sonra yeni bir yazı ile karşınızdayım. Bu sefer masaüstü uygulamalar için kullandığım C# programlama dilinin temelleri ile karşınızdayım. Otomasyon projeleri yaparken artık sadece bir üretimin yapılmasını kontrol etmek yetmiyor. Endüstri 4.0 falan derken bir çok fabrika üretimin yapılmasını sağlamanın dışında üretimin takip edilmesi, kalitesinin kayıt altına alınması, üretim hatlarından alınan bilgilerin ticari sistemlere kaydı, yapılacak işlerin ticari sistemden girilen siparişlere göre yapılması gibi otomasyon sistemi ile yönetim takip uygulamalarının ilişki kurmasını gerektirecek istekler ve ihtiyaçlar oluşmaya başladı. Bu amaçla çoğunlukla C# programlama dilini ve Windows işletim sistemini kullanmak zorunda kalıyorum. Yıllardır biriken tecrübelerim beni masaüstü uygulamalar için en geniş alt yapıya sahip ve çok kolay yardım bulabildiğim C# programlama diline neredeyse mecbur bıraktı. 

21 Şubat 2022 Pazartesi

C# UWP KONTROLLER

 Önce yeni bir proje oluşturalım. Visual Studio açın ve Yeni bir proje oluştur seçin. Boş Uygulama (Evrensel Windows) seçip Sonraki butonuna tıklayın. Proje adına Kontroller1 yazın ve uygulamanın konacağı klasörü seçin. Oluştur butonuna tıklayarak gelen platform seçiminde default değerlerle Tamam butonuna tıklayın. Uygulamamız Genel Bakış sayfası ile açılacaktır. 

Proje ağacında MainPage.xaml dosyasını çift tıklayıp tasarım görüntüsünde açılmasını sağlayalım. Tasarım görünümünde boş sayfaya tıkladığımızda proje oluşurken sayfaya konan default Grid elemanı seçilecek ve Özellikler bölümüne bu Grid elemanının özellikleri gelecektir. 


16 Şubat 2022 Çarşamba

UWP Uygulamalarında Data Binding

 Binding (veriye bağlama) işlemi kullanarak gösterdiğimiz elemanların içeriklerini , stillerini vs değiştirerek bağlanan veriye göre görselimizi değiştirebiliriz. Şu isteklerimiz olabilir.

  • Bir nesnenin bulunulan andaki değerlerini göstermek isteyebiliriz. Bağlama anındaki değerler kullanılır, daha sonra o nesneye ne olduğu ile ilgilenilmez.
  • Nesnelerin en son değerlerini göstermek. Bu durumda bağlı nesne değiştikçe görsel de değişecektir.
  • Kullanıcıların kontrollerden yaptığı değişikliklerin hafızadaki bağlı nesneleri de değiştirmesini isteyebiliriz.
  • Görseldeki bazı kontrollerin görünümlerini görseldeki diğer kontroller ile değiştirmek isteyebiliriz.
  • Olay işleyicileri ve şablonları hafızadaki nesnelere göre değiştirmek isteyebiliriz.
  • Nesneleri sayfada gösterirken kullanıcının veride yaptığı değişikliklere göre görüntüsünün değişmesini isteyebiliriz.

18 Mayıs 2021 Salı

Bir HMI Uygulaması yapalım

 Merhaba bu yazımda tekrar otomasyon programlama üzerine çalışacağım. Daha önce http://ujk-ujk.blogspot.com/2017/12/s7-1200-plc-nettoplcsim-tia-portal.html yazısında C# üzerinden PLC'ye ulaşıp basit bir görsel yapmıştık. Şimdi biraz daha kapsamlı, HMI denilebilecek bir uygulamayı nasıl geliştiririz ona çalışacağız. Mesela şöyle bir uygulama ekranı hedefliyoruz.


PLC'ler için yazılmış HMI programları var tabi ama lisans ücretleri oldukça yüksek. Düşük bütçeli küçük projeler için burada göreceğimiz yöntemlerle basit HMI uygulamaları yapabiliriz. Tabi bunları geliştirip birçok HMI yazılımında olmayan özelliklere sahip bir uygulama yapmamız da mümkün. Özellikle ayrıntılı üretim ve kalite raporu istenen projelerde elimizin altında C#'ın bütün gücünün olması bize sınırsız imkanlar sağlar.

8 Aralık 2017 Cuma

S7-1200 PLC , NetToPLCsim , TIA Portal , S7NetPlus kütüphanesi ve C# ile PLC'ye Bağlanma

Uzun bir aradan sonra merhaba.

Bu yazıda yine endüstriyel otomasyon denemesi yapacağız. Örneğimiz bir otopark kapısının kontrolünü PLC üzerinden yapmak ve C# kullanarak S7-1200 PLC'ye bağlanarak bir HMI (Human Machine Interface) oluşturmak.

İlk adım tabiki bir akış diyagramı oluşturmak. Düşünelim bakalım otopark kapıları nasıl çalışıyor?