Craig Oates
3 years ago
3 changed files with 95 additions and 0 deletions
@ -0,0 +1,19 @@
|
||||
digraph overview { |
||||
node [fontname = Arial]; |
||||
l1 -> server; |
||||
l2 -> server; |
||||
server -> r1; |
||||
server -> r2; |
||||
r1 -> server; |
||||
r2 -> server; |
||||
l1 [label = "Light Meter 1", color = lightblue, style = filled]; |
||||
l2 [label = "Light Meter 2", color = orange, style = filled]; |
||||
r1 [label = "Relay 1", color = lightblue, style = filled]; |
||||
r2 [label = "Relay 2", color = orange, style = filled ]; |
||||
subgraph cluster0 { |
||||
style = filled; |
||||
color = lightgrey; |
||||
server; |
||||
} |
||||
server [label = "Midpoint (Server)", style = filled, color = white]; |
||||
} |
After Width: | Height: | Size: 24 KiB |
@ -0,0 +1,76 @@
|
||||
# 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/) |
||||
|
Reference in new issue