Difference between revisions of "RICM4 2017 2018 - Ruche Connectee / SRS"
Line 57: | Line 57: | ||
* document external interfaces, |
* document external interfaces, |
||
* describe system functionality and performance |
* describe system functionality and performance |
||
− | * specify logical database requirements |
+ | * specify logical database requirements |
− | * design constraints, |
||
* emergent system properties and quality characteristics. |
* emergent system properties and quality characteristics. |
||
− | ==3.1 Requirement 1(in Structured Natural Language)== |
+ | == 3.1 Requirement 1(in Structured Natural Language) == |
'''Function''': |
'''Function''': |
||
− | Access to sensors' |
+ | Access to sensors' measurement. |
'''Description''': |
'''Description''': |
||
− | At any time, the beekeeper must be able to |
+ | At any time, the beekeeper must be able to knows the most recent measurements, and any other |
prior to that. |
prior to that. |
||
Line 74: | Line 73: | ||
'''Source''': |
'''Source''': |
||
− | Sensors -> SX1272 -> SX1276(Gateway LoRa) -> RaspberryPi -> Node-red -> InfluxDB -> Graphana |
+ | Sensors -> SX1272 -> SX1276(Gateway LoRa) -> RaspberryPi -> Node-red -> InfluxDB -> Graphana |
'''Outputs''': |
'''Outputs''': |
||
Line 82: | Line 81: | ||
'''Action''': |
'''Action''': |
||
− | Measurements on screen, he |
+ | Measurements on screen, he can also set a date to display measurements from that day. |
'''Non functional requirements''': |
'''Non functional requirements''': |
||
Line 91: | Line 90: | ||
'''Side-effects''': Must not bother bees |
'''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= |
=4. Product evolution= |
Revision as of 16:00, 5 March 2018
Version | Date | Authors | Description | Validator | Validation Date | |
---|---|---|---|---|---|---|
1.0 | 05/02/18 | BESNIER - LEVESQUE - WEILL | Starting | TBC | TBC |
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
- Add more sensors.
- More commands to control the emitter with the reciever (change measurement frequency,...)