#include <WiFi.h>
#include "ThingSpeak.h"
const char* WIFI_NAME = "Wokwi-GUEST";
const char* WIFI_PASSWORD = "";
const int myChannelNumber =1942389 ;
const char* myApiKey = "4LA5HF66PO1NAF9B";
const char* server = "api.thingspeak.com";
int pirPin = 2; //pin sensor PIR pada arduino
int buzzerPin = 13;// ping buzzer pada arduino
int state = LOW; //awalnya LED mati
int val = 0; //nilai sensor
WiFiClient client;
void setup() {
pinMode(pirPin, INPUT); //pin sensor PIR sebagai input
pinMode(buzzerPin, OUTPUT); //pin buzzer sebagai output
Serial.begin(115200); //baud rate serial
//konek ke wifi
WiFi.begin(WIFI_NAME, WIFI_PASSWORD);
while (WiFi.status() != WL_CONNECTED){
delay(1000);
Serial.println("Wifi not connected");
}
Serial.println("Wifi connected !");
Serial.println("Local IP: " + String(WiFi.localIP()));
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client);
}
void loop() {
val = digitalRead(pirPin); //membaca data dari sensor PIR
ThingSpeak.setField(1,val);
if (val == HIGH) { //jika sensor mendeteksi gerakan
tone(buzzerPin,1000); //buzzer akan mengeluarkan suara dengan frekuensi 1000Hz
if (state == LOW) {
Serial.println("Gerakan terdeteksi!"); //tampilkan pesan pada serial monitor
state = HIGH;
}
} else {
if (state == HIGH){
noTone(buzzerPin);
Serial.println("Gerakan menghilang"); //tampilkan pesan pada serial monitor
state = LOW;
}
}
delay(10); //delay selama 10 ms
ThingSpeak.writeFields(myChannelNumber,myApiKey);
}