Name | Generalization | Documentation |
---|---|---|
acc_gyro | SHM_Module.Data | Holds acc_gyro data coming from the Arduino Uno Wifi Rev 2 microcontroller. |
Asset | An asset is considered as the physical asset which is to be monitored in the system. | |
Characteristic | The entity represents a Bluetooth characteristic. It holds information about the name and UUID of the characteristic. | |
ClientData | The ClientData entity holds a data string of unlimited length for sending sensor data from the devices to the server. | |
Data | The data Entity is the super entity for other data types that the database supports. It is possible for other data types to generalize (inherit) from this object and be connected with an Event. This object should have no data of any kind and should always be inherited. | |
DataType | The DataType entity is used to store the names of the data kinds that are present in the system. The key-sensitive name attribute refers to a specific entity in the domain model for triggering certain functionalities at runtime. This is a required component for the system and must be utilized correctly for the system to be deployed effectively. DataTypes can only be created by the administrator through the admin page. For further insight, see the Javascript or Java code. | |
Device | The Device entity represents a Bluetooth device, such as an Arduino microcontroller. It holds information about the name of the device. | |
Event | One Event entity is created for each logged characteristic. | |
EventBatch | One EventBatch entity is created for keeping track of the logged Events. The EventBatch can be associated with multiple Events. | |
EventSettings | The EventSettings is used to enter custom settings for the user. Currently, it holds the value of the biker's mass in order to use it as a part of the inverse method. | |
float32 | SHM_Module.Data | Holds 4 byte float data coming from the Arduino Uno Wifi Rev 2 microcontroller. |
grav_gyro | SHM_Module.Data | Holds acc_gyro data coming from the Arduino Uno Wifi Rev 2 microcontroller. |
inverse_data | Holds the inverse data which is associated to a specific acc_gyro. | |
Login | The Login Entity is used for storing user credentials when the user attemps to login. | |
Service | The Service entity represents a Bluetooth service. It holds information about the bluetooth service name and UUID. | |
strain_gauge | SHM_Module.Data | Holds strain gauge data coming from the Arduino Uno Wifi Rev 2 microcontroller. |
uint | SHM_Module.Data | Holds 2 byte uint data coming from the Arduino Uno Wifi Rev 2 microcontroller. |
Holds acc_gyro data coming from the Arduino Uno Wifi Rev 2 microcontroller.
SHM_Module.Data
Name | Type | Default value | Documentation |
---|---|---|---|
Timer | Decimal | 0 | The timestamp of when the sensor is read. |
acc_x | Decimal | 0 | Acceleration read from IMU in x direction. |
acc_z | Decimal | 0 | Acceleration read from IMU in z direction. |
gyro_y | Decimal | 0 | Pitch rate read from IMU in y direction. |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
inverse_data_acc_gyro | SHM_Module.inverse_data | One-to-one | The association keeps track of the inverse data that corresponds with a given acc_gyro entity. One inverse_data should refer to a single acc_gyro entity. |
An asset is considered as the physical asset which is to be monitored in the system.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (100) | The name of the asset. |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
Asset_User | System.User | One-to-many | This association is put in so that the user can only retrieve assets that themselves created. A user can be associated with multiple assets. |
The entity represents a Bluetooth characteristic. It holds information about the name and UUID of the characteristic.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (32) | The name of the bluetooth characteristic. | |
UUID | String (36) | The unique identifier for the characteristic. |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
Characteristic_DataType | SHM_Module.DataType | One-to-many | The association keeps track of a characteristic's data type. |
Characteristic_Service | SHM_Module.Service | One-to-many | A characteristic can only be linked to one Service. A Service can have many Characteristics. |
The ClientData entity holds a data string of unlimited length for sending sensor data from the devices to the server.
Name | Type | Default value | Documentation |
---|---|---|---|
data | String (unlimited) | Keeps hold of the data string which is being sent to the server. The data string holds the sensor values read by the microcontroller. |
The data Entity is the super entity for other data types that the database supports. It is possible for other data types to generalize (inherit) from this object and be connected with an Event. This object should have no data of any kind and should always be inherited.
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
Data_Event | SHM_Module.Event | One-to-many | The association is used to retrieve different data types from an Event. The association is inherited by the Data child entities, which results in a cleaner database. |
The DataType entity is used to store the names of the data kinds that are present in the system. The key-sensitive name attribute refers to a specific entity in the domain model for triggering certain functionalities at runtime. This is a required component for the system and must be utilized correctly for the system to be deployed effectively. DataTypes can only be created by the administrator through the admin page. For further insight, see the Javascript or Java code.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (50) |
The Device entity represents a Bluetooth device, such as an Arduino microcontroller. It holds information about the name of the device.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (100) | The name of the device. |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
Device_Asset | SHM_Module.Asset | One-to-many | A device can only be linked to one asset. An Asset can have many devices. |
One Event entity is created for each logged characteristic.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (20) | The name of the event. |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
Event_Asset | SHM_Module.Asset | One-to-many | An arbitrary amount of Assets can be logged in an event. |
Event_Characteristic | SHM_Module.Characteristic | One-to-many | |
Event_Device | SHM_Module.Device | One-to-many | An arbitrary amount of devices can be logged in an event. |
Event_EventBatch | SHM_Module.EventBatch | One-to-many | |
Event_Service | SHM_Module.Service | One-to-many | An arbitrary amount of Services can be logged in an event. |
One EventBatch entity is created for keeping track of the logged Events. The EventBatch can be associated with multiple Events.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (200) | EventName | The name of the event |
IsLogging | Boolean | false | Value to keep track of when the event is logged by the rider. When this is true, there is an ongoing event where the rider is logging sensor values from the bike. |
IsDeviceConnected | Boolean | false |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
EventSettings_EventBatch | SHM_Module.EventSettings | One-to-one | Settings for the eventbatch. |
The EventSettings is used to enter custom settings for the user. Currently, it holds the value of the biker's mass in order to use it as a part of the inverse method.
Name | Type | Default value | Documentation |
---|---|---|---|
Mass | Decimal | 0 | The mass of the bicycle rider |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
EventSettings_EventBatch | SHM_Module.EventBatch | One-to-one | Settings for the eventbatch. |
Holds 4 byte float data coming from the Arduino Uno Wifi Rev 2 microcontroller.
SHM_Module.Data
Name | Type | Default value | Documentation |
---|---|---|---|
Value | Decimal | 0 | Holds the value of the float 32. |
Holds acc_gyro data coming from the Arduino Uno Wifi Rev 2 microcontroller.
SHM_Module.Data
Name | Type | Default value | Documentation |
---|---|---|---|
Timer | Decimal | 0 | The timestamp of when the sensor is read. |
grav_x | Decimal | 0 | Gravitational acceleration in x direction read from IMU. |
grav_z | Decimal | 0 | Gravitational acceleration in z direction read from IMU. |
gyro_y | Decimal | 0 | Pitch rate read from IMU in y direction. |
Holds the inverse data which is associated to a specific acc_gyro.
Name | Type | Default value | Documentation |
---|---|---|---|
gauge1 | Decimal | 0 | |
gauge2 | Decimal | 0 | |
gauge3 | Decimal | 0 | |
gauge4 | Decimal | 0 | |
gauge5 | Decimal | 0 | |
gauge8 | Decimal | 0 |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
inverse_data_acc_gyro | SHM_Module.acc_gyro | One-to-one | The association keeps track of the inverse data that corresponds with a given acc_gyro entity. One inverse_data should refer to a single acc_gyro entity. |
The Login Entity is used for storing user credentials when the user attemps to login.
Name | Type | Default value | Documentation |
---|---|---|---|
Username | String (200) | Holds the username of the user who is attempting to login. | |
Password | String (200) | Holds the password of the user who is attempting to login. | |
ValidationMessage | String (unlimited) | Validation message to inform the user of login errors. |
The Service entity represents a Bluetooth service. It holds information about the bluetooth service name and UUID.
Name | Type | Default value | Documentation |
---|---|---|---|
Name | String (100) | The name of the service. | |
UUID | String (200) | The unique identifier for the bluetooth service. |
Name | Connected to | Multiplicity | Documentation |
---|---|---|---|
Service_Device | SHM_Module.Device | One-to-many | A service can only be linked to one device. A device can have many services. |
Holds strain gauge data coming from the Arduino Uno Wifi Rev 2 microcontroller.
SHM_Module.Data
Name | Type | Default value | Documentation |
---|---|---|---|
Timer | Decimal | 0 | The timestamp of when the sensor is read. |
gauge1 | Integer | 0 | Value of strain gauge 1 mounted on the Hardrocx bicycle. |
gauge2 | Integer | 0 | Value of strain gauge 2 mounted on the Hardrocx bicycle. |
gauge3 | Integer | 0 | Value of strain gauge 3 mounted on the Hardrocx bicycle. |
gauge4 | Integer | 0 | Value of strain gauge 4 mounted on the Hardrocx bicycle. |
gauge5 | Integer | 0 | Value of strain gauge 5 mounted on the Hardrocx bicycle. |
gauge8 | Integer | 0 | Value of strain gauge 8 mounted on the Hardrocx bicycle. |
Holds 2 byte uint data coming from the Arduino Uno Wifi Rev 2 microcontroller.
SHM_Module.Data
Name | Type | Default value | Documentation |
---|---|---|---|
Value | Integer | 0 | Holds the value of the uint. |
Name | Return type | Documentation |
---|---|---|
AddDevice | Creates a new device and associates it to the input asset. The device is commited and refreshed for the client. | |
AddEvent | Creates a new Event and associates it to the input EventBatch. The new Event is commited and refreshed for the client. | |
AddService | Creates a new Service and associates it to the input Device. The new Service is commited and refreshed for the client. | |
CalculateInverseData | Each time an acc gyro object is committed to the database, the microflow is executed. It performs the inverse method on the gathered data every four seconds. | |
CreateAsset | Creates an Asset, commits the Asset and updates the client. | |
CreateCharacteristic | Creates and returns a Characteristic Entity. | |
CreateEventBatch | Creates an EventBatch, an Event and returns the EventBatch. | |
ExitSetupEvent | Exits the event setup page by opening the home page and deleting the Event Batch. | |
GetAccGyroData | Returns a list of acc_gyro data. | |
GetAccGyroDataSorted | Returns a list of sorted acc_gyro data. | |
GetEvent | Gets the head of the events associated to an EventBatch. | |
GetEventSetting | Gets or creates the EventSettings from an EventBatch. | |
GetEventsReversed | Returns a list of events sorted by createdDate in descending order. | |
GetGravGyroDataSorted | Returns a list of sorted acc_gyro data. | |
GetInverseDataSorted | Returns a list of sorted inverse data in ascending order of the timer.. | |
GetStrainGaugeData | Returns a list of strain gauge data. | |
GetStrainGaugeDataSorted | Returns a list of sorted strain gauge data. | |
GetUserAssets | Retrieves a list of the Assets associated to the current user. | |
OpenEventStartPage | Opens the event start page. | |
OpenHomepage | This is the first microflow which is run as the client enters the web site. It executes a deep link and opens the sign in page whether the deeplink is executed or not. | |
RegisterUser_m | Registers a user. | |
SelectableCharacteristics | Retrieves a list of selectable characteristics given an event. | |
SelectableDevices | Retrieves a list of selectable devices given an event. | |
SelectableServices | Retrieves a list of selectable services given an event. | |
SendDataToServer | Sends a datastring to the server, parses, commits, and deletes the data. | |
SetAssetOwner | Sets the current user as the owner of the given Asset. |
Creates a new device and associates it to the input asset. The device is commited and refreshed for the client.
Name | Type | Documentation |
---|---|---|
Asset | SHM_Module.Asset | The asset which will be associated with the new device. |
Nothing
Creates a new Event and associates it to the input EventBatch. The new Event is commited and refreshed for the client.
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch | The EventBatch which will be associated with the new Event. |
Nothing
Creates a new Service and associates it to the input Device. The new Service is commited and refreshed for the client.
Name | Type | Documentation |
---|---|---|
Device | SHM_Module.Device | The Device which will be associated with the new Service. |
Nothing
Each time an acc gyro object is committed to the database, the microflow is executed. It performs the inverse method on the gathered data every four seconds.
Name | Type | Documentation |
---|---|---|
acc_gyro | SHM_Module.acc_gyro | The acc_gyro entity which holds the timer value to check whether 4 seconds of data is accumulated. |
Nothing
Creates an Asset, commits the Asset and updates the client.
Nothing
Creates and returns a Characteristic Entity.
Name | Type | Documentation |
---|---|---|
Service | SHM_Module.Service | The Service which will be associated with the new Characteristic. |
SHM_Module.Characteristic
Creates an EventBatch, an Event and returns the EventBatch.
SHM_Module.EventBatch
Exits the event setup page by opening the home page and deleting the Event Batch.
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch | EventBatch to be deleted. |
Nothing
Returns a list of acc_gyro data.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | Event used to get all associated acc_gyro entities. |
List of SHM_Module.acc_gyro
Returns a list of sorted acc_gyro data.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | Event used to get all associated acc_gyro entities. |
List of SHM_Module.acc_gyro
Gets the head of the events associated to an EventBatch.
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch | EventBatch used to get the assciated events. |
SHM_Module.Event
Gets or creates the EventSettings from an EventBatch.
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch | EventBatch used to get the associated EventSetting |
SHM_Module.EventSettings
Returns a list of events sorted by createdDate in descending order.
List of SHM_Module.EventBatch
Returns a list of sorted acc_gyro data.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | Used to get all associated grav_gyro entities. |
List of SHM_Module.grav_gyro
Returns a list of sorted inverse data in ascending order of the timer..
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | Used to get all associated acc_gyro entities. |
List of SHM_Module.inverse_data
Returns a list of strain gauge data.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | Used to get all associated strain_gauge entities. |
List of SHM_Module.strain_gauge
Returns a list of sorted strain gauge data.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | Used to get all associated strain_gauge entities. |
List of SHM_Module.strain_gauge
Retrieves a list of the Assets associated to the current user.
List of SHM_Module.Asset
Opens the event start page.
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch | Used to get the associated events. |
Nothing
This is the first microflow which is run as the client enters the web site. It executes a deep link and opens the sign in page whether the deeplink is executed or not.
Nothing
Registers a user.
Name | Type | Documentation |
---|---|---|
Login | SHM_Module.Login | The login object with the login information. |
Nothing
Retrieves a list of selectable characteristics given an event.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | The event that will be associated to the selected characteristic. |
EventBatch | SHM_Module.EventBatch | Used to retrieve the associated Events. |
List of SHM_Module.Characteristic
Retrieves a list of selectable devices given an event.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | The Event used to get the associated (selectable) devices. |
List of SHM_Module.Device
Retrieves a list of selectable services given an event.
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event | The Event used to get the associated (selectable) services. |
List of SHM_Module.Service
Sends a datastring to the server, parses, commits, and deletes the data.
Name | Type | Documentation |
---|---|---|
data | SHM_Module.ClientData | The data containing the datastring which will be stored at the server. |
Nothing
Sets the current user as the owner of the given Asset.
Name | Type | Documentation |
---|---|---|
Asset | SHM_Module.Asset | The targeted asset which will have the current user as the owner. |
Nothing
Name | Return type | Documentation |
---|---|---|
ACT_SignInUser | ||
ConnectToCharacteristic | Connects to all devices associated with an event. | |
ConnectToDevice | Either connects or disconnects to all services associated with a given event depending on whether the event IsLogging attribute is true or false. If false, the event starts logging, otherwise, the device is disconnected, and the event stops. | |
DSS_CreateLoginContext | ||
DSS_CreateLoginContext_web | ||
DSS_CreateRegisterContext | ||
DSS_CreateRegisterContext_web | ||
GetDeviceServices | ||
GetEventAssets | ||
GetEventCharacteristic | ||
GetEventDevice | ||
GetEventsByBatch | ||
GetEventService | ||
GetServiceCharacteristics | ||
nfGetEventsReversed | ||
RegisterUser | ||
RegisterUser_web |
Name | Type | Documentation |
---|---|---|
Login | SHM_Module.Login |
Nothing
Connects to all devices associated with an event.
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch | Context |
Nothing
Either connects or disconnects to all services associated with a given event depending on whether the event IsLogging attribute is true or false. If false, the event starts logging, otherwise, the device is disconnected, and the event stops.
Name | Type | Documentation |
---|---|---|
eventBatch | SHM_Module.EventBatch |
Nothing
SHM_Module.Login
SHM_Module.Login
SHM_Module.Login
SHM_Module.Login
Name | Type | Documentation |
---|---|---|
Device | SHM_Module.Device |
List of SHM_Module.Service
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event |
List of SHM_Module.Asset
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event |
List of SHM_Module.Characteristic
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event |
List of SHM_Module.Device
Name | Type | Documentation |
---|---|---|
EventBatch | SHM_Module.EventBatch |
List of SHM_Module.Event
Name | Type | Documentation |
---|---|---|
Event | SHM_Module.Event |
List of SHM_Module.Service
Name | Type | Documentation |
---|---|---|
Service | SHM_Module.Service |
List of SHM_Module.Characteristic
List of SHM_Module.EventBatch
Name | Type | Documentation |
---|---|---|
Login | SHM_Module.Login |
String
Name | Type | Documentation |
---|---|---|
Login | SHM_Module.Login |
String
Name | Return type | Documentation |
---|---|---|
computeInverseData | ||
dataParseCommit |
Name | Type | Documentation |
---|---|---|
acc_gyro_list | List of SHM_Module.acc_gyro | |
mass | Decimal |
Nothing
Name | Type | Documentation |
---|---|---|
dataString | String |
Nothing
Name | Return type | Documentation |
---|---|---|
BLECharacteristicSubscribe | Subscribes to a characteristic given a UUID and commits data to the server on every notification retrieved from the peripheral device. | |
BLEDeviceConnect | Pairs with a Bluetooth device with a given UUID. | |
BLEDeviceDisconnect | Disconnect from all Bluetooth devices. |
Subscribes to a characteristic given a UUID and commits data to the server on every notification retrieved from the peripheral device.
Name | Type | Documentation |
---|---|---|
characteristicUUID | String | |
dataType | String | |
eventBatch | SHM_Module.EventBatch | |
eventReference | SHM_Module.Event | |
serviceUUID | String |
String
Pairs with a Bluetooth device with a given UUID.
Name | Type | Documentation |
---|---|---|
eventBatch | SHM_Module.EventBatch | |
primaryServiceUUID | String |
Nothing
Disconnect from all Bluetooth devices.
Name | Type | Documentation |
---|---|---|
characteristicUUID | String | |
eventBatch | SHM_Module.EventBatch | |
serviceUUID | String |