RICM4 2017 2018 - Ruche Connectee / SRS

=1.  Introduction=

1.1 Purpose of the requirements document
This SRS (Software Requirements Specification) is a description of the project, containing all users and technologies characteristics.

1.2 Scope of the product
The project consists of building a connection between a hive and a beekeeper, to monitor the hive with some captors. We are twinned with an IESE group which is working on the captors and they'll give us the collected data.

1.3 Definitions, acronyms and abbreviations
LoRa: Long Range radio RF technology, can be use to 20km far.

1.4 References
Project's sheet : Project Wiki [FR]

Topic : Ruche connectée LoRa

1.5 Overview of the remainder of the document
Now we will detail the project, its purpose and charateristics. =2.  General description=

2.1 Product perspective
The aim of the project is basically to transmit data from serial link to a distance monitoring computer. This project can evolve in the future to connect hives from all around the metropolis to a central server. basically offering a way to monitor living insect colonies from afar.

2.2 Product functions
The product will have an overview of informations collected from the hive at anytime, and it'll be flexible in order to add others captors (or others hives). At the moment, the aim is to collect the weight and the inside's temperature of the hive.

2.3 User characteristics
There are two users:

-The beekeeper : He will have access to the database and any measurements at any time.

-The administrator : He will have control of everything, database, code, website infrastructure. Thos two persons can be the same.

2.4 General constraints

 * Radio occupation : We can only emit 1% of the time (36 second each hour in total)
 * Modularity : We must be able to easily add a new sensor.
 * Stability : We can't open the hive in winter, to avoid harming bees.

2.5 Assumptions and dependencies
=3.Specific requirements, covering functional, non-functional and interface requirements=
 * document external interfaces,
 * describe system functionality and performance
 * specify logical database requirements
 * emergent system properties and quality characteristics.

3.1 Requirement 1(in Structured Natural Language)
Function: Access to sensors' measurement.

Description: At any time, the beekeeper must be able to knows the most recent measurements, and any other prior to that.

Inputs: Measurements.

Source: Sensors -> SX1272 -> SX1276(Gateway LoRa) -> RaspberryPi -> Node-red -> InfluxDB -> Graphana

Outputs: Website displaying measurements (using Graphana).

Destination:

Action: Measurements on screen, he can also set a date to display measurements from that day.

Non functional requirements:

Pre-condition:

Post-condition:

Side-effects: Must not bother bees

3.2 Requirement 2(SX1276 -> RaspberryPi)
Function: Forwarding the LoRa packets received.

Description: All the packet received by the GateWay must by forwarded to the RapsberryPi in order to process them.

Inputs: LoraPacket.

Source: SX1276(Gateway LoRa) -> RaspberryPi

Outputs:

Destination: RaspberryPi

Action: Measurements on screen, he also can set a date to display measurements from that day.

Non functional requirements:

Pre-condition: Sensor data must have been send by the STM32 placed on the Hive

Post-condition: Rasberry Pi must have internet connection

Side-effects:

=4. Product evolution= =5. Appendices= =6. Index=
 * Add more sensors.
 * More commands to control the emitter with the reciever (change measurement frequency,...)