doc/bms-ch2.sgml

Mon, 21 Jan 2019 20:45:18 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Mon, 21 Jan 2019 20:45:18 +0100
changeset 194
d202777ebae5
parent 0
033898178630
permissions
-rw-r--r--

Added design notes for the csv log format from fermenters. In bmsd configuration added the web_root entry. Switched fermenter DLOG messages to store the log in flat csv files instead of the database. This is much faster and the graphs look better.

<!-- 
  vim:syntax=docbksgml
-->

<chapter id="design">
<title>Architectuur.</title>
<para>
Het Brouwerij Management Systeem, afgekort <command>bms</command>, is een applicatie
server die luistert naar MQTT berichten in de <command>mbv1.0</command> basis van het
topic. Zie de <ulink url="https://en.wikipedia.org/wiki/MQTT">MQTT wiki</ulink> voor
meer informatie over het MQTT protocol.
</para>

<para>
Als bron dienen onder andere vergistings controllers. Deze sturen MQTT berichten naar
de MQTT server. Deze berichten komen dan in het bms systeem terecht die ze verwerkt.
De controllers hoeven niet eerst bekend gemaakt te worden, het protocol is zo ontworpen
dan controllers zichzelf aankondigen en opgenomen worden in de brouwerij. Dit gebeurt door
het sturen van 'node' berichten. Ongeacht de functie van een controller, iedere controller
stuurt 'node' berichten. Verder stuurt een vergisting controller een of meer
gistkasten. Voer iedere kast worden er 'device' berichten gestuurd.
</para>

<figure><title>BMS architectuur,</title>
<mediaobject id="bms-flow-config">
<imageobject>
<imagedata fileref="bms-flow.png" scale="80" format="png">
</imageobject>
</mediaobject>
</figure>

<para>
Vanuit de bms applicatie kunnen er via de MQTT server ook commando's naar de controllers worden
gestuurd. Van een vergisting kast kan bijvoorbeeld de temperatuur ingesteld worden, of kan
de controller aan of uit gezet worden.
</para>

</chapter>

mercurial