Disusun Oleh :
Faris Alfianto 1918241039
2. Merubah nama com pada virtual port pair dengan nama COM1 dan COM2. Setelah itu
apply
Setting Visual Studio
1. Membuka program visual studio lalu membuat project baru
5. Mengetikkan program sesuai tiap komponen dan membuat rumus untuk fuzzynya yang
sudah dimasukkan pada halaman desain.
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 WindowsFormsApplication3
{
public partial class Form1 : Form
{
string data;
double a, b, nilai1, nilai2, BA, BB;
public Form1()
{
InitializeComponent();
radioButton1.Checked = true;
textBox1.Text = data;
if (radioButton2.Checked == true)
{
//fuzzifikasi variabel 1 - tingkat kelembaban
double uRendah, uTinggi;
{
BB = double.Parse(textBox3.Text);
BA = double.Parse(textBox2.Text);
uRendah = rumus.turun(BB, BA, nilai1);
uTinggi = rumus.naik(BB, BA, nilai1);
}
//fuzzifikasi variabel 2 - tingkat pencahayaan
double uRedup, uTerang;
{
BB = double.Parse(textBox5.Text);
BA = double.Parse(textBox6.Text);
uRedup = rumus.turun(BB, BA, nilai2);
uTerang = rumus.naik(BB, BA, nilai2);
}
if (z >= 600)
{
textBox4.BackColor = Color.Green;
serialPort1.WriteLine("1");
}
else
{
textBox4.BackColor = Color.Red;
serialPort1.WriteLine("0");
}
}
}
catch { }
}
}
}
public partial class rumus
{
//BB:Batas Bawah , BA:Batas Atas
public static double turun(double BB, double BA, double input)
{
double u;
if (input <= BB) { u = 1; }
else if (input >= BA) { u = 0; }
else { u = (BA - input) / (BA - BB); }
return u;
}
public static double naik(double BB, double BA, double input)
{
double u;
if (input <= BB) { u = 0; }
else if (input >= BA) { u = 1; }
else { u = (input - BB) / (BA - BB); }
return u;
}
}
}
Setting Proteus
1. Membuka proteus, lalu new project untuk membuat project baru.
2. Menambahkan komponen yang dibutuhkan seperti arduino uno, compim dan pothg lalu.
Menghubungkan setiap komponen yang sudah ditambahkan tersebut.
3. Pada komponen compim memilih port COM4 dan baudrate yang sama pada visual studio
4. Masuk ke arduino ide untuk memprogram arduino. Program arduinonya adalah sebagai
berikut ini.
void setup() {
Serial.begin(9600);
pinMode(4,OUTPUT);
}
void loop() {
int sensorValue1 = analogRead(A0);
int sensorValue2 = analogRead(A1);
Serial.print(sensorValue1);
Serial.print("-");
Serial.println(sensorValue2);
delay(100);
while (Serial.available())
{
char i = Serial.read();
if (i == '1') digitalWrite(4,HIGH);
if (i == '0') digitalWrite(4,LOW);
}
}
8. Memilih board arduino uno pada menu tools. Lalu pilih export compiled binary pada menu
skeetch maka ada file hex pada folder
9. Memasukkan file type hex tersebut ke arduino pada proteus dengan cara double klik lalu
pilih file yang tadi
G. HASIL
H. KESIMPULAN
Pada praktikum kali ini dapat disimpulkan bahwa komunikasi antara Arduino dengan visual
studio dapat digunakan untuk pengunaan program fuzzy logic.