Visual Studio C# ile Arduino PWM kontrolü

Bilgisayar üzerinden Arduino UNO’ya bağlı led,motor vs araçları PWM ile kontrol etmek için Visual Studio C# ile bir arayüz paylaşacağım. Serial port üzerinden arduinoya bağlanan herhangi bir araca 0-255 sayıları arasında değişken değerler göndererek kullandığımız araca göre istediğimiz aydınlık ya da istediğimiz hız değerini elde edebiliriz. Ayrıca bilgisayar üzerinden gerekli kalibrasyonlarla da bu araçların durumlarını geri bildirim alabiliriz.


Yaptığımız bu basit uygulamada Arduino UNO’ya bağladığımız bir ledin aydınlığını istediğimiz gibi değiştiriyoruz.  Öncelikle bu işlem için aşağıda devre şeması ve Arduino kodları verilmiştir.




Kodda serialden alınan değer, 6 nolu PWM pinine direk PWM değeri olarak yazılır.



Visual Studio C# da yazılan yukarıdaki PWM programının kodu aşağıdadır.
------------------------------------------------------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ArduinoPWM
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void connection_Click(object sender, EventArgs e)
        {
            serialPort1.PortName = "COM2";
            serialPort1.Open();
            label3.Text = "Bağlandı";
        }
        private void trackBar1_Scroll(object sender, EventArgs e)
        {
            if (serialPort1.IsOpen == true)
            {
                int PWM_deger = trackBar1.Value;
                label2.Text = trackBar1.Value.ToString();

                byte[] b = BitConverter.GetBytes(PWM_deger);
                serialPort1.Write(b, 0, 4);
            }
            else
            {
                label3.Text= "Önce Cihaza Bağlan !!";
            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
    }
}
-------------------------------------------------------------------------------------------------------------------------

Visual Studio C# da hazırlanan program da ise bir trackbar ile 0 – 255 arasında değerler serial porttan Arduino kartına gönderilir.  Bundan önce Arduino Bağlantısı yapılmalıdır. Aksi halde PWM değerlerini göndermeyecektir.  C# bilenlerin geliştirip farklı amaçlarda ve şekillerde kullanabilirler. İyi çalışmalar Kolay gelsin.

5 yorum

Click here for yorum
Adsız
admin
Şubat 26, 2017 ×

kardeş denedim ama olmadı bağlantı sağlanamıyo bağlandı ya da bağlanmadı gibi herhangi bir yazı falan da gelmiyo

Reply
avatar
mvaslan
admin
Şubat 26, 2017 ×

C# kodlarında Arduino COM portu "COM2" olarak yazılı, eğer sizin arduinonuz farklı bir COM portda ise bağlanamaz. Arduino COM port değerini programda ayarlayın. Yada Arduino COM portu müsait durumda ise COM2 yapın. Umarım sorun düzelir. Kolay gelsin.

Reply
avatar
Adsız
admin
Şubat 26, 2017 ×

onu değiştirdim zaten ama yinede olmadı hatta bi kaç oynama yaptım. bu konuya başlık açtım hatta bir bakabilir misin?
https://www.frmtr.com/c-/7083789-c-arayuz-ile-arduino-led-pwm-uygulamasi.html

Reply
avatar
Unknown
admin
Haziran 11, 2017 ×

merhabalar visual studio da çalıştıramadım kodlarınızı. 3 button 1 textboxla yapmaya çalıştım c tabanlı farklı program mı acaba

Reply
avatar
Unknown
admin
Mart 12, 2018 ×

Çok faydalı bir yazı olmuş.Emeğinize sağlık.

Reply
avatar