|
|
|
# Return to Ritherdon: Midpoint
|
|
|
|
|
|
|
|
Midpoint is one of three smaller projects which make-up 'Personal
|
|
|
|
Flash in Real-Time' -- which is one artwork within the main 'Return to
|
|
|
|
Ritherdon' project. You should view the three smaller projects as one
|
|
|
|
project. And, for the purpose of this documentation, I will refer to
|
|
|
|
'Personal Flash in Real-Time' as a system instead of an artwork.
|
|
|
|
|
|
|
|
For more information on the 'Return to Ritherdon' project, use the
|
|
|
|
following link:
|
|
|
|
|
|
|
|
- [Return to Ritherdon Overview](https://git.abbether.net/return-to-ritherdon/rtr-docs)
|
|
|
|
|
|
|
|
## 'Personal Flash in Real-Time': Project Overview
|
|
|
|
|
|
|
|
The overall system ('Personal Flash in Real-Time') consists of three
|
|
|
|
separate/smaller projects. You should not view them as individual
|
|
|
|
pieces within the overall project. From an artwork point-of-view,
|
|
|
|
'Personal Flash in Real-Time' is one piece. The name of the software
|
|
|
|
projects are 'Light Meter' (which is this one), 'Midpoint' and
|
|
|
|
'Relay'. All three projects reside in their own git repositories. You
|
|
|
|
can find the repositories at the following links:
|
|
|
|
|
|
|
|
- [Light Meter](https://git.abbether.net/return-to-ritherdon/light-meter)
|
|
|
|
- [Mid-Point](https://git.abbether.net/return-to-ritherdon/midpoint)
|
|
|
|
- [Relay](https://git.abbether.net/return-to-ritherdon/relay)
|
|
|
|
|
|
|
|
The (technical) aim of the project is to turn a set of lights on at
|
|
|
|
the gallery when the welding machines are active in the welding booths
|
|
|
|
at Ritherdon. The solution we arrived at was a three-stage
|
|
|
|
process. The stages are as follows:
|
|
|
|
|
|
|
|
1. Monitor the light levels in the welding booths at Ritherdon and
|
|
|
|
send that information to a sever (Light Meter).
|
|
|
|
2. Receive the light readings and store them in a database and make
|
|
|
|
them available for others to access (Midpoint).
|
|
|
|
3. Have the lights installed at the gallery connected to wi-fi enabled
|
|
|
|
relays which request the latest light readings from the server. If
|
|
|
|
the readings are above a certain threshold, have the light in the
|
|
|
|
gallery turn on (otherwise, turn off). The relays are responsible
|
|
|
|
for turning the lights on and off (Relay).
|
|
|
|
|
|
|
|
Each step should require no human intervention.
|
|
|
|
|
|
|
|
For more information on how each project accomplishes its task, please
|
|
|
|
use the (repo.) links above. Otherwise, here is an diagram to help
|
|
|
|
explain the three stages mentioned above.
|
|
|
|
|
|
|
|
![Main Project Architecture](attachments/main-proj-architecture.png)
|
|
|
|
|
|
|
|
## Hardware Specifications
|
|
|
|
|
|
|
|
There are no specific hardware requirements. If you can get an machine
|
|
|
|
to run a server (E.G. Nginx or Apache), you should be good to
|
|
|
|
go. Unfortunately, the scope of the project meant the amount of
|
|
|
|
support for hardware and software is limited to an x86 Linux based
|
|
|
|
machine running Nginx. I decided to run a virtual machine on Amazon
|
|
|
|
Web Services.
|
|
|
|
|
|
|
|
- [Amazon Web Services](https://aws.amazon.com/)
|
|
|
|
|
|
|
|
## Software Requirements
|
|
|
|
|
|
|
|
I have set-up the server to run on Linux (I.E. Ubuntu) with an Nginx
|
|
|
|
server -- on an x86 machine. Any other variation on that
|
|
|
|
(I.E. Windows), you will be on your own. The reason why is because I
|
|
|
|
have not tested it. How you acquire the hardware is up to you. For the
|
|
|
|
intents of the project, I used a virtual machine on Amazon Web
|
|
|
|
Services. Links for various parts of the set-up are below:
|
|
|
|
|
|
|
|
- [https://ubuntu.com/](https://ubuntu.com/)
|
|
|
|
- [Nginx](https://www.nginx.com/)
|
|
|
|
- [Python Flask](https://flask.palletsprojects.com/en/2.0.x/)
|
|
|
|
- [SQLite Database](https://sqlite.org/index.html)
|
|
|
|
- [Swagger REST API](https://swagger.io/)
|
|
|
|
|