int buttonPin = 9; // kiri depan
int buttonPin1 = 8; // kanan depan
int buttonPin2 = 10; // kiri blkng
int buttonPin3 = 12; // kanan blkng
int buttonPin4 = 11; // bagasi
bool buttonState = false;
bool buttonState1 = false;
bool buttonState2 = false;
bool buttonState3 = false;
bool buttonState4 = false;
// PIN BUZZER
//const int buzzer = 11;
// PIN LED
byte lampumalam = 3;
byte airradiator = 2;
byte kipasmobil = 6;
// PINLED RADIATOR
byte led = 13;
byte led1 = 4;
byte led2 = 5;
byte led3 = 7;
int nilai;
int nilai1;
int nilai2;
int Astate = 0;
float temp;
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
lcd.init();
lcd.init();
lcd.backlight();
//pin
pinMode(buttonPin4, INPUT);
pinMode (led, OUTPUT);
pinMode (led1, OUTPUT);
pinMode (led2, OUTPUT);
pinMode (led3, OUTPUT);
//pinMode(ledPin, OUTPUT); // LED pin as an output.
pinMode(buttonPin, INPUT); // Button pin as an input.
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
pinMode(buttonPin3, INPUT);
pinMode (A1, INPUT);
pinMode (A0,INPUT);
pinMode (kipasmobil, INPUT);
pinMode (airradiator, INPUT);
pinMode (lampumalam, INPUT);
Serial.begin(9600);
// AWAL START
lcd.setCursor(3, 0);
lcd.print("__ALTIS__");
lcd.setCursor(3, 1);
lcd.print("T 1148 BN");
delay(2000);
lcd.clear();
lcd.setCursor(6,0);
lcd.print("OLEH");
lcd.setCursor(2,1);
lcd.print("DWI HARTANTO");
delay(2000);
lcd.clear();
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led3, LOW);
}
void loop() {
if(buttonState == HIGH && buttonState1 == HIGH && buttonState2 == HIGH && buttonState3 == HIGH && buttonState4 == HIGH){
digitalWrite (led1,LOW);
}
else{
digitalWrite(led1,HIGH);
}
// menampiklan tegangan aki
//-------------------------------------------------------------------------
//int sensorValue = analogRead(A0);
buttonState = digitalRead(buttonPin);
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
buttonState4 = digitalRead(buttonPin4);
nilai1 = digitalRead(lampumalam);
//--------------------------------------------------
if(nilai1==1){
//digitalWrite(led1, HIGH);
Serial.println("malam");
lcd.noBacklight();
lcd.noDisplay();
}
else {
//digitalWrite(led1,LOW);
Serial.println("SIANG");
lcd.backlight();
lcd.display();
}
//-----------tampilkan voltase------------------
int sensorValue = analogRead(A0);
lcd.setCursor(5, 0);
lcd.print("VOLTAGE");
float voltage = sensorValue * (5.0 / 1023.0);
Serial.println(sensorValue);
Serial.println(voltage);
lcd.setCursor(4, 1);
lcd.print(voltage);
lcd.setCursor(9, 1);
lcd.print("Volt");
//--------kiri depan--------------------------------
if(buttonState==HIGH){
lcd.setCursor(0,0);
lcd.print("C");
}
else {
lcd.setCursor(0,0);
lcd.print("O");
}
//----------kanan depan------------------------------------------
if(buttonState1==HIGH ){
lcd.setCursor(15,0);
lcd.print("C");
}
else{
lcd.setCursor(15,0);
lcd.print("O");
}
//----------kiri belakang--------------------------------
if(buttonState2==HIGH ){
lcd.setCursor(0,1);
lcd.print("C");
}
else{
lcd.setCursor(0,1);
lcd.print("O");
}
//-----------kanan belakang-------------------------------
if(buttonState3==HIGH ){
lcd.setCursor(15,1);
lcd.print("C");
}
else{
lcd.setCursor(15,1);
lcd.print("O");
}
delay(1000);
lcd.clear();
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led3, LOW);
//-----------------------------------------------------------
//----------------------------------------------------------
//------AIR RADIATOR-----------------------------------------------------
// air radiator * JIKA KELUARAN SENSOR POSITIF
//-------------------------------------------
//--------kiri depan--------------------------------
buttonState = digitalRead(buttonPin);
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
buttonState4 = digitalRead(buttonPin4);
nilai1 = digitalRead(lampumalam);
if(buttonState == HIGH && buttonState1 == HIGH && buttonState2 == HIGH && buttonState3 == HIGH && buttonState4 == HIGH){
digitalWrite (led1,LOW);
}
else{
digitalWrite(led1,HIGH);
}
if(nilai1==1){
//digitalWrite(led1, HIGH);
Serial.println("malam");
lcd.noBacklight();
lcd.noDisplay();
}
else {
//digitalWrite(led1,LOW);
Serial.println("SIANG");
lcd.backlight();
lcd.display();
}
if(buttonState==HIGH){
lcd.setCursor(0,0);
lcd.print("C");
}
else {
lcd.setCursor(0,0);
lcd.print("O");
}
//----------kanan depan------------------------------------------
if(buttonState1==HIGH ){
lcd.setCursor(15,0);
lcd.print("C");
}
else{
lcd.setCursor(15,0);
lcd.print("O");
}
//----------kiri belakang--------------------------------
if(buttonState2==HIGH ){
lcd.setCursor(0,1);
lcd.print("C");
}
else{
lcd.setCursor(0,1);
lcd.print("O");
}
//-----------kanan belakang-------------------------------
if(buttonState3==HIGH ){
lcd.setCursor(15,1);
lcd.print("C");
}
else{
lcd.setCursor(15,1);
lcd.print("O");
}
//delay(1000);
//digitalWrite(led3, HIGH);
//delay(50);
//digitalWrite(led3, LOW);
//delay(1000);
//lcd.clear();
nilai = digitalRead(airradiator);
if (nilai == 0) {
digitalWrite(led, HIGH);
Serial.println("di tekan");
lcd.setCursor(2, 0);
lcd.print("AIR RADIATOR");
lcd.setCursor(5, 1);
lcd.print("KOSONG");
delay(1000);
lcd.clear();
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led3, LOW);
}
else {
digitalWrite(led, LOW);
lcd.setCursor(2, 0);
lcd.print("AIR RADIATOR");
Serial.println("di lepas");
lcd.setCursor(4, 1);
lcd.print(" PENUH");
delay(1000);
lcd.clear();
}
//-------sensor temperature----------------------------------------
//--------------------------------------------------
//--------kiri depan--------------------------------
buttonState = digitalRead(buttonPin);
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
buttonState4 = digitalRead(buttonPin4);
nilai1 = digitalRead(lampumalam);
if(buttonState == HIGH && buttonState1 == HIGH && buttonState2 == HIGH && buttonState3 == HIGH){
digitalWrite (led1,LOW);
}
else{
digitalWrite(led1,HIGH);
}
if(nilai1==1){
//digitalWrite(led1, HIGH);
Serial.println("malam");
lcd.noBacklight();
lcd.noDisplay();
}
else {
//digitalWrite(led1,LOW);
Serial.println("SIANG");
lcd.backlight();
lcd.display();
}
if(buttonState==HIGH){
lcd.setCursor(0,0);
lcd.print("C");
}
else {
lcd.setCursor(0,0);
lcd.print("O");
}
//----------kanan depan------------------------------------------
if(buttonState1==HIGH ){
lcd.setCursor(15,0);
lcd.print("C");
}
else{
lcd.setCursor(15,0);
lcd.print("O");
}
//----------kiri belakang--------------------------------
if(buttonState2==HIGH ){
lcd.setCursor(0,1);
lcd.print("C");
}
else{
lcd.setCursor(0,1);
lcd.print("O");
}
//-----------kanan belakang-------------------------------
if(buttonState3==HIGH ){
lcd.setCursor(15,1);
lcd.print("C");
}
else{
lcd.setCursor(15,1);
lcd.print("O");
//delay(2000);
//lcd.clear();
}
Astate = analogRead(A1);
temp=(Astate-799)/(-11.5);
Serial.print("temperature mesin:");
//Serial.println(Astate);
Serial.println(temp);
//lcd.setCursor(7, 1);
//lcd.print(Astate);
lcd.setCursor(3,0);
lcd.print("SUHU MESIN");
lcd.setCursor(5, 1);
lcd.print(temp);
//557=21k+b
//684=10k+b
//k=(684-557)/(-11)=-11.5 b=799
delay(1000);
lcd.clear();
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led3, LOW);
//-------CHECK KONDISI KIPAS PENDINGIN ----
//--------------------------------------------------
//--------kiri depan--------------------------------
if(buttonState == HIGH && buttonState1 == HIGH && buttonState2 == HIGH && buttonState3 == HIGH && buttonState4 == HIGH){
digitalWrite (led1,LOW);
}
else{
digitalWrite(led1,HIGH);
}
buttonState = digitalRead(buttonPin);
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
buttonState4 = digitalRead(buttonPin);
nilai1 = digitalRead(lampumalam);
if(nilai1==1){
//digitalWrite(led1, HIGH);
Serial.println("malam");
lcd.noBacklight();
lcd.noDisplay();
}
else {
//digitalWrite(led1,LOW);
Serial.println("SIANG");
lcd.backlight();
lcd.display();
}
if(buttonState==HIGH){
lcd.setCursor(0,0);
lcd.print("C");
}
else {
lcd.setCursor(0,0);
lcd.print("O");
}
//----------kanan depan------------------------------------------
if(buttonState1==HIGH ){
lcd.setCursor(15,0);
lcd.print("C");
}
else{
lcd.setCursor(15,0);
lcd.print("O");
}
//----------kiri belakang--------------------------------
if(buttonState2==HIGH ){
lcd.setCursor(0,1);
lcd.print("C");
}
else{
lcd.setCursor(0,1);
lcd.print("O");
}
//-----------kanan belakang-------------------------------
if(buttonState3==HIGH ){
lcd.setCursor(15,1);
lcd.print("C");
}
else{
lcd.setCursor(15,1);
lcd.print("O");
}
nilai2 = digitalRead(kipasmobil);
if(nilai2==1){
digitalWrite(led2, HIGH);
Serial.println("kipas nyala");
lcd.setCursor(5,0);
lcd.print("KIPAS");
lcd.setCursor(6,1);
lcd.print("-ON-");
delay(1000);
lcd.clear();
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led3, LOW);
}
else {
digitalWrite(led2,LOW);
Serial.println("kipas mati");
delay(50);
lcd.setCursor(5,0);
lcd.print("KIPAS");
lcd.setCursor(5,1);
lcd.print("-OFF-");
delay(1000);
lcd.clear();
digitalWrite(led3, HIGH);
delay(50);
digitalWrite(led3, LOW);
}
if(buttonState == HIGH && buttonState1 == HIGH && buttonState2 == HIGH && buttonState3 == HIGH && buttonState4 == HIGH){
digitalWrite (led1,LOW);
}
else{
digitalWrite(led1,HIGH);
delay(1000);
lcd.clear();
}
// bagasi
lcd.setCursor(2,0);
lcd.print("PINTU BAGASI");
buttonState4 = digitalRead(buttonPin4);
if(buttonState4 == HIGH){
lcd.setCursor(4,1);
lcd.print("TERTUTUP");
delay(1000);
lcd.clear();
}
else{
lcd.setCursor(4,1);
Serial.println("buka");
lcd.print("TERBUKA");
delay(1000);
lcd.clear();
}
}