This is an old revision of the document!
Mall Counter is a project that aims to count the number of people that entered a room using an analog sensor and the approximated time between sending wave and returning wave of some frequency. This provides valuable information that can be used to measure the degree of agglomeration, optimize the staff at peak hours, assess which offers were attractive. In order to do that, a counter for the people entering and a counter for the people leaving can be used to find the number of people in the room at a certain moment. I came with this idea after seeing at Parndorf Outlet that some shops have a guard that limits the number of people in a shop to improve the customers experience. The project uses I2C, ADC and GPIO.
Components list: DBGOLD 6F22 battery, HW-131 power supply platform, ESP8266 Wi-Fi microcontroller, Breadboard, Distance sensor GP2Y0A21YK0F, OLED GME12864-14, SD card, wires, resistors, USB/USB-C cable
Electrical Schema (KiCAD):
Signals (Canva):
Digital: SCK, SDA, CS, DC, RES, USB UART TX/RX, VIN
Analog: sensor_VO, A0
Mediu de dezvoltare:
- PlatformIO and Arduino on Visual Studio Code
- Board platform: Espressif 8266
- Program upload: USB
Libraries:
- adafruit/Adafruit GFX Library
- adafruit/Adafruit SSD1306
- Adafruit_GFX.h, Adafruit_SSD1306.h, Arduino.h
Algorithms and Data Structures:
- threshold distance for the counter
- basic interfaces for SPI, GPIO, ADC
- OLED number display
Pseudocode:
count = 0 while True: d = ADC_detect_with_low_delay() if d <= threshold: count++ SPI_display(count)
Repository link: https://github.com/TomaDumitrescu/MallCounter