measurements_environment
measurements_environment, accepted stream sırasında cihazdan gelen çevresel ölçüm segmentini ayrı bir tabloda saklar. Bu segment, konum verisinden hemen sonra çevre sensörlerinin yoğun alan setini tek kayıtta toplar.
Bu tablo ham payload içermez. Buradaki değerler accepted stream'e bağlı çevresel ölçüm snapshot bilgisidir. Alan adları firmware tarafındaki kısa değişken adlarıyla birebir taşınır.
FK Davranis Notlari
| FK | ON DELETE | ON UPDATE | Not |
|---|---|---|---|
measurements_environment.stream_id -> streams.id | CASCADE | CASCADE | Typed olcum tablosu stream ile atomik yasar; ebeveyn stream silinirse kayitlar yetim kalmaz. |
Kolonlar
| Kolon | Tip | Null | Anlamı |
|---|---|---|---|
stream_id | int | hayır | Bu çevresel ölçüm kaydının ait olduğu accepted stream; aynı zamanda birincil anahtar |
device_id | varchar(21) | hayır | Cihaz kimliği |
sequence_no | int | evet | Cihaz sequence alanı varsa |
device_time | timestamp | hayır | Ölçüm zamanı |
sample_period_sec | int | hayır | Örnekleme periyodu (DEFAULT: 0) |
is_valid | boolean | hayır | Segment seviyesinde geçerlilik (DEFAULT: false) |
ah | float | evet | Air Humidity |
ap | float | evet | Air Pressure |
at | float | evet | Air Temperature |
at_dew | float | evet | Dew Point |
at_fl | float | evet | Feel Like Temperature |
hi | float | evet | Heat Index |
il | float | evet | Infrared Light |
pcb_h | float | evet | PCB Humidity |
pcb_t | float | evet | PCB Temperature |
r | float | evet | Rain |
sm10 | float | evet | 10cm Depth Soil Moisture |
sm20 | float | evet | 20cm Depth Soil Moisture |
sm30 | float | evet | 30cm Depth Soil Moisture |
sm50 | float | evet | 50cm Depth Soil Moisture |
sm100 | float | evet | 100cm Depth Soil Moisture |
st10 | float | evet | 10cm Depth Soil Temperature |
st20 | float | evet | 20cm Depth Soil Temperature |
st30 | float | evet | 30cm Depth Soil Temperature |
st50 | float | evet | 50cm Depth Soil Temperature |
st100 | float | evet | 100cm Depth Soil Temperature |
uv | float | evet | UV Light |
vl | float | evet | Visual Light |
wd | float | evet | Wind Direction |
ws | float | evet | Wind Speed |
create_time | timestamp | hayır | Kayıt oluşturulma zamanı |
update_time | timestamp | hayır | Son güncelleme zamanı |
İndeksler
| İndeks | Amacı |
|---|---|
(device_id, device_time) | Bir cihazın zaman bazlı çevresel ölçüm geçmişini hızlı okumak için |
(device_time) | Zaman penceresi bazlı toplu çevresel sorgular için |
Örnek Kayıtlar
- Cihaz 1
- Cihaz 2
{
"stream_id": 1,
"device_id": "46000000C47CA670",
"sequence_no": 1,
"device_time": "2026-04-03T10:29:50Z",
"sample_period_sec": 900,
"is_valid": true,
"ah": 48.2,
"ap": 1009.6,
"at": 24.7,
"at_dew": 13.1,
"at_fl": 25.3,
"hi": 26.1,
"il": 0.42,
"pcb_h": 46.8,
"pcb_t": 33.4,
"r": 0.0,
"sm10": 31.2,
"sm20": 29.7,
"sm30": 28.5,
"sm50": 26.9,
"sm100": 25.1,
"st10": 22.3,
"st20": 21.6,
"st30": 20.9,
"st50": 19.8,
"st100": 18.6,
"uv": 2.7,
"vl": 12340.0,
"wd": 182.0,
"ws": 3.8,
"create_time": "2026-04-03T10:30:00Z",
"update_time": "2026-04-03T10:30:00Z"
}
Özet: İlk cihaz için çevresel segment yazılmış; hava, yağış, toprak ve rüzgar değişkenleri tek stream altında birlikte tutuluyor.
{
"stream_id": 2,
"device_id": "46000000C47CA671",
"sequence_no": 1,
"device_time": "2026-04-03T10:24:55Z",
"sample_period_sec": 900,
"is_valid": true,
"ah": 52.1,
"ap": 1008.9,
"at": 23.9,
"at_dew": 13.5,
"at_fl": 24.1,
"hi": 24.8,
"il": 0.39,
"pcb_h": 49.2,
"pcb_t": 32.7,
"r": 0.4,
"sm10": 33.4,
"sm20": 31.8,
"sm30": 30.2,
"sm50": 27.6,
"sm100": 25.7,
"st10": 21.9,
"st20": 21.0,
"st30": 20.1,
"st50": 19.2,
"st100": 18.2,
"uv": 1.9,
"vl": 10210.0,
"wd": 205.0,
"ws": 2.9,
"create_time": "2026-04-03T10:25:00Z",
"update_time": "2026-04-03T10:25:00Z"
}
Özet: İkinci cihaz için çevresel segment aynı şemada yazılmış; farklı derinliklerde toprak sensörleri ve hava koşulları birlikte analiz edilebilir.