This is an old revision of the document!


Remote controlled box

Introduction

This project revolves around a box that can be opened remotely over a Wi-Fi connection. The box hosts a server locally and waits for a message to transition from the CLOSED to the OPEN state, or OPEN to CLOSED if it has transitioned previously. This message will be sent over Wi-Fi, from a computer through a local webpage.

General description

Initially, the box is in the CLOSED state, where the motor isn't being acted upon, it's display has the “LOCKED” text, IP address and the box is considered closed. After it receives the specific Wi-Fi message, the box plays a sound, the motor activates to lift up the cover of the box and the displayed message changes to “UNLOCKED”. A second message will revert to the initial state.

Hardware Design

Hardware components

  • ESP32 Devkit with ESP-WROOM-32 XX5R69
  • Servo motor SG90
  • Active buzzer 3V
  • OLED 0.96” I2C Display
  • USB cable (for developing)
  • Breadboards
  • Dupont cables
  • Accumulator 3,7V - 5000 mAh

Bill of materials

Hardware functionalities

  • Microcontroller: WiFi, PWM, I2C, serial communication, low power (about 100 mA) and cheap, with breadboard ready pins.
  • Servomotor: Used with PWM at pin GPIO23 to lift the lid. Uses at most 500 mA but only when acted upon.
  • Display: Shows the IP of the server and also the state of the box. SDA is connected to GPIO21 and SCL TO GPIO22. Low power, uses less than 50 mA.
  • Active buzzer: Makes sound when the box is transitioning to the open state, connected to GPIO14 (any pin that can be set from low to high would do). Uses around 50mA.
  • Battery: Supplies the whole circuit. Has enough power so that the servo can function multiple times. It's also very efficient in the idle state, as only the display and microcontroller are active most of the time.

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2025/eradu/stefan.ungureanu03.1747323855.txt.gz · Last modified: 2025/05/15 18:44 by stefan.ungureanu03
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0