Bicycle-Rent-Project, Arduino + ESP8266 + RFID donanımı ile çalışan bir bisiklet kiralama otomasyonudur. Kullanıcı RFID kartını okuttuğunda kiralama başlatılır; aynı kart tekrar okutulduğunda kiralama sonlandırılır ve ücret hesaplanarak veritabanına kaydedilir.
Bu proje iki ana parçadan oluşur:
- Donanım katmanı (Arduino/ESP8266): RFID kart UID bilgisini okuyup Wi‑Fi üzerinden backend API'ye gönderir.
- Backend katmanı (Flask + MySQL): Kullanıcı/kiralama kayıtlarını tutar, kiralama açma-kapama işlemlerini yönetir ve ödeme kaydı oluşturur.
- Arduino UNO (veya uyumlu kart)
- ESP8266
- MFRC522 RFID okuyucu
- RFID kart / anahtarlık
- Arduino C/C++
- Python (Flask, Flask-CORS)
- MySQL
- HTTP tabanlı API iletişimi
- Kullanıcı RFID kartını okutur.
- ESP8266, kart UID bilgisi ile backend'e istek gönderir.
- Backend ilgili kullanıcıyı bulur:
- Aktif kiralama yoksa yeni kiralama kaydı açar.
- Aktif kiralama varsa kiralamayı kapatır, süre/ücret hesabı yapar ve ödeme kaydı oluşturur.
- Veriler MySQL veritabanına yazılır.
arduino/arduino.inovearduino/esp8266.ino: Donanım tarafı kodlarıbackend/app.py: Flask API uçları ve kiralama mantığıbackend/db.py: MySQL bağlantı ayarlarıdatabase/: Veritabanı ile ilgili notlar/dokümanlar
cd backend
python -m venv .venv
source .venv/bin/activate # Windows için: .venv\Scripts\activate
pip install flask flask-cors mysql-connector-python