Skip to content

Real-time Deneyap Kart (ESP32) and Node.js web system for controlling four servo motors via a Socket.IO-powered web interface.

Notifications You must be signed in to change notification settings

kaansrflioglu/WebServoControl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deneyap Kart 4 Servolu Web Kontrolü

Bu proje, Deneyap Kart mikrodenetleyicisi ile Node.js tabanlı bir web arayüzü üzerinden 4 adet servo motorun kontrol edilmesini sağlar. Kullanıcı, web arayüzündeki kaydırma çubukları (slider) aracılığıyla servo motorların açılarını gerçek zamanlı olarak ayarlayabilir. Deneyap Kart, belirli aralıklarla sunucudan servo açılarını çekerek motorları günceller.

🚀 Proje Yapısı

1. Frontend (HTML + Socket.IO):
Kullanıcı, tarayıcı üzerinden servo açılarını sürgülerle değiştirir. Değerler, Socket.IO aracılığıyla anlık olarak sunucuya gönderilir.

2. Backend (Node.js + Express + Socket.IO):
Sunucu, gelen açı değerlerini saklar ve /servo endpoint’i üzerinden Deneyap Kart’a JSON formatında sunar.

3. Deneyap Kart (C++ / ESP32 / Arduino):
Deneyap Kart, belirli aralıklarla Node.js sunucusuna HTTP isteği göndererek servo açılarını alır ve motorları günceller.

🧠 Kullanılan Teknolojiler

  • Node.js – Sunucu tarafı çalıştırma ortamı
  • Express.js – Web sunucusu oluşturmak için
  • Socket.IO – Gerçek zamanlı iletişim için
  • Deneyap Kart IDE – Mikrodenetleyici platformu
  • Deneyap_Servo Kütüphanesi – Servo motor kontrolü için
  • ArduinoJson – JSON veri işleme
  • HTML, CSS, JavaScript – Web arayüzü

⚙️ Kurulum ve Çalıştırma

1️⃣ Node.js Sunucusunu Başlat

Gereksinimler:
Node.js ve NPM kurulu olmalıdır.
Kontrol etmek için:

node -v
npm -v

Kurulum Adımları:

git clone https://github.com/kaansrflioglu/WebServoControl.git
cd WebServoControl
npm install

Sunucuyu Başlat:

npm start

Sunucu çıktısı:

Server is running at http://192.168.x.x:3000

📌 Deneyap Kart kodundaki serverUrl değişkenini bu IP adresine göre güncellemelisiniz.


2️⃣ Deneyap Kart Tarafı

Deneyap Kart IDE veya Arduino IDE kullanarak aşağıdaki ayarları yapın:

Wi-Fi bilgilerinizi girin:

const char* ssid = "WiFi_ADINIZ";
const char* password = "WiFi_SIFRENIZ";
const char* serverUrl = "http://192.168.x.x:3000/servo";

Servo pinlerini ayarlayın (örnek):

servo1.attach(D15);
servo2.attach(D14, 1);
servo3.attach(D13, 2);
servo4.attach(D12, 3);

🌐 Web Arayüzü

Tarayıcıdan sunucu adresine gidin:

http://192.168.x.x:3000

Buradan servo açılarını anlık olarak değiştirebilirsiniz.
Reset butonu, tüm motorları varsayılan açılara döndürür.

🧩 Proje Özellikleri

  • Gerçek zamanlı servo kontrolü (Socket.IO ile)
  • Deneyap Kart’ın HTTP üzerinden açı verilerini alması
  • Basit ve modern web arayüzü
  • Otomatik IP algılama (Node.js sunucu tarafında)
  • Hata durumunda seri monitörde hata çıktısı

🧰 Geliştirici Notları

  • Servo motorlar 0–180° aralığında, 5°’lik adımlarla kontrol edilir.
  • Daha gelişmiş uygulamalarda, Deneyap Kart'ın doğrudan MQTT veya WebSocket bağlantısı kullanılarak anlık veri aktarımı sağlanabilir.
  • İstenirse Deneyap_Servo kütüphanesi yerine standart Servo.h kütüphanesi uyarlanabilir.
  • Web sunucusu, cihazın IPv4 adresi üzerinden başlatıldığı için aynı ağa bağlı tüm cihazlar, bu IP adresini tarayıcıya yazarak sunucuya erişebilir ve servo motorları kontrol edebilir.

Geliştirici: Kaan Şereflioğlu
📧 İletişim: kaansereflioglu@hotmail.com

About

Real-time Deneyap Kart (ESP32) and Node.js web system for controlling four servo motors via a Socket.IO-powered web interface.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published