background image

Σχεδιασμός και υλοποίηση συστήματος IoT ασύρματου ελέγχου και μέτρησης ενέργειας 

 

43 

 

Field 

Type 

Required 

Unique 

Extra 

_id 

objectID 

true 

true 

auto- 

generated 

device 

objectID 

true 

false 

ref: devices 

name 

string 

true 

false 

 

description 

string 

false 

false 

 

group 

objectID 

false 

false 

ref: groups 

icon 

string 

true 

false 

 

color 

string 

true 

false 

 

user_id 

objectID 

true 

false 

 

date 

date 

false 

false 

default: creation datetime 

Πίνακας 4 : Πίνακας δομής μοντέλου Device Instance 

 

❖ 

Το  πεδίο  _id  είναι  τύπου  objectId,  το  οποίο  σημαίνει  πως  περιέχει:  μια  τιμή 

χρονικής  σήμανσης  (timestamp  -  η  στιγμή  της  δημιουργίας  του),    ένα  τυχαίο 
αλφαριθμητικό (string) και μία αυξανόμενη τιμή (auto-increment). Το πεδίο αυτό 
δημιουργείται αυτόματα για κάθε καταγραφή (document) και είναι μοναδικό. 

❖ 

Το πεδίο device είναι τύπου objectId και αναφέρεται στην μοναδική συσκευή από 

την συλλογή devices με την οποία σχετίζεται η κάθε καταγραφή. Είναι απαραίτητο 
αλλά όχι μοναδικό πεδίο. 

❖ 

Το πεδίο name είναι τύπου string. Είναι απαραίτητο αλλά όχι μοναδικό πεδίο και 

πρόκειται για το όνομα που έχει δώσει ο χρήστης στην συσκευή του. 

❖ 

Το  πεδίο  group  είναι  τύπου  objectId.  Δεν  είναι  απαραίτητο  ούτε  μοναδικό  και 
αποτελεί ξένο κλειδί του πίνακα groups. 

❖ 

Το πεδίο description είναι τύπου string. Δεν είναι απαραίτητο ούτε μοναδικό πεδίο 
και πρόκειται για την περιγραφή που έχει δώσει ο χρήστης στην συσκευή του. 

❖ 

Το πεδίο date είναι τύπου date. Δεν είναι απαραίτητο πεδίο και δεν είναι μοναδικό. 
Αποτελεί  την  στιγμή  της  δημιουργίας  της  καταγραφής  η  οποία  είναι  και  η 

προκαθορισμένη τιμή του. 

 
 

Η συλλογή groups 
 

Σε αυτή την συλλογή, βρίσκονται τα δεδομένα των ομάδων συσκευών. Ο Πίνακας 5 

παρουσιάζει τη δομή του αρχείου καταγραφής (document) μιας ομάδας.