Hello,
for a sports club I would like to install lockers (12 locker boxes) which can be reserved for a certain time and be than accessed via an individual code provided. The Arduino validates the codes and opens the lockers.
I tried my self in the past weeks to get familiar with the Arduino world and tried first coding examples.
My idea:
Reservations are made online via a website and the reservation time (start, end), locker number and person are stored in a SQL database (hosted in the cloud e.g. AWS).
For each reservation the website generates a random code (which is also stored together with the reservation in the SQL database) and send to person via mail
Arduino downloads the SQL database from the cloud every 5min to also work incase of connection issues (optional)
Code entered via Arduino (number pad) and pulls the code according to the current time) via MQTT from SQL database
Arduino validates if entered code matches to the code in the SQL database and opens via a relais the correspnding locker.
What do you think about this setup? Do you have any other ideas to implement the lockersystem?
My issues are:
How to make the Arduino communicate to the SQL database and receive and handle the code via MQTT.
The system shall be cloud based and I tried AWS. But incase there are any opensource solutions I would appreciate more.
Thank you very much for your support and your feedback.
First out you will need a way to connect the Arduino to some (W)LAN. Otherwise you cannot connect to the database. You don't discuss your ideas to implement this in your post.
Next question: why use MQTT instead of SQL? MQTT requires some broker on top of the database itself. I am not familiar with the differences from the security perspective though.
What would you think of using RFID cards instead of keypads. Nobody could watch you entering the code and the user keeps control of some sort of key. You would only have to register a user's card for the period of time to the assigned locker.
if you were to reserve the locker, but did not attend the event, you would deprive the use to other atendees.
how do you accomidate locker #6 being reserved for Friday at 6:00
and then again on Saturday at 6:00 by someone else ?
then the Friday person leaving stuff in the locker for some reason ? the Saturday person, who made reservations, would not be able to use the locker.
Thank you for your feedback @1: RFID doens't work as the persons using the facilities change frequently. Hence it has to work without any hardware @2: Leaving stuff in the locker is no issue as you can only unse while your training and you have to predefine the lenght of your training prior. @3: Why do you think it's to big for Arduino?
as I see this project, the web would send a 12 values. the locker location and the unlock code
the local controller would display a menu
check in. post locker #
post unlock code
if it matches, then unlock said locker
Potential to also offer that there is an available un-reserved locker.
Since it is not horribley complicated the work is to try it and see how well it works.