README.design

changeset 0
033898178630
child 18
395833e20f88
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.design	Sat Aug 04 21:19:15 2018 +0200
@@ -0,0 +1,82 @@
+Centrale daemon 'bmsd' regelt de dagelijkse berichten tussen MQTT en de
+database. Om deze berichten betrouwbaar af te handelen is MQTT er tussen
+gezet.
+Alle sensoren en controllers communiceren uitsluitend via MQTT.
+
+Sensoren en controllers:
+
+  1.  Vergisting controllers.
+  2.  Temperatuur loggen.
+  3.  Hergisting drukmeters. (druk + temp).
+  4.  Brouw controllers.
+  5.  Ispindel.
+
+
+Stappen:
+
+  1.  Importeren oude vergisting en brouw logs.  DONE.
+  2.  Thermferm moet DLOG berichten gaan sturen, per wijziging en per 5 minuten.  DONE.
+  3.  bmsd moet deze DLOG berichten verwerken. Versie 0.0.2. Bier producten in database. DONE.
+  4.  Versie 0.0.2 handmatig installeren op productie. DONE.
+  5.  Thermferm uitbreiden met vergisting stage. DONE.
+  6.  Brouw controller uitbreiden met MQTT.
+  7.  bmsd uitbreiden met brouw controller berichten.
+  8.  bmsd productie platform upgraden, versie 0.0.3
+
+
+Web interface bouwen met jqwidgets, breeze en knockout.
+
+
+Database:
+
+  1.  Recepten opslaan in json formaat omdat dit flexibel is.
+  2.  Brouwsels zijn recepten plus extra gegegevens. json formaat.
+  3.  Inventaris ingredienten in json. Voorraad historie is extra arrays.
+  4.  Export naar beerxml.
+  5.  Import van brouwhulp xml met sync vanuit backup locatie.
+  6.  Brouwerij configuratie voornamelijk in json.
+
+
+MQTT structuur volgens Sparkplug model.
+
+mbv1.0/fermenters/[NBIRTH,DBIRTH]/<hostname>/
+mbv1.0/fermenters/DDATA/<hostname>/<unitalias>/
+
+---------------------------------------------------------------------------
+
+namespace/group_id/message_type/edge_node_id/{device_id}
+
+namespace is de root, "mbv1.0"
+
+group_id oa: fermenters, brewcontrol, env_sensor
+
+message_type:	NBIRTH	- Birth certificate for MQTT EoN nodes.
+		NDEATH	- Death certificate for MQTT EoN nodes.
+		NCMD	- Node command message.
+		DBIRTH	- Birth certificate for devices.
+		DDEATH	- Death certificate for devices.
+		NDATA	- Node data message.
+		DDATA	- Device data message.
+		DLOG	- Device data logging.
+		DCMD	- Device command message.
+		STATE	- Critical application state message.
+
+NCMD:	reboot (application restart)
+	rebirth
+
+DCMD:	fermenter state change + temperature settings.
+	fermenter profile install.
+	fermenter load product.
+	fermenter set stage
+
+
+Product: code en naam.
+	BIRTH date
+	Recept.
+	Locatie: Plan - Wacht - Brouw - Vergisting - Verpakken - Hergisting - Rijpen - Proeven - Afgesloten.
+	                          |         |            |           |
+	                          |         |            |           +--------	Log/rapport
+	                          |         |            +--------------------	rapport/etiketten
+	                          |         +---------------------------------	Log/rapport
+	                          +-------------------------------------------	Log/rapport
+

mercurial