
Sensemore Duck, yalnızca titreşim, sıcaklık ve basınç değil, aynı zamanda kütle akış hızı, hız, akım gibi tüm analog verileri toplamak için kompakt bir IoT veri toplama cihazıdır.
Tüm teknik özellikler Duck veri sayfasında. Kurulum rehberi için bize ulaşabilirsiniz.
Duck sistem entegrasyonundan bahsetmeye başlamadan önce, Duck cihazınızın MQTT, NTP ve HTTP ayarlarını yapılandırın.
Yapılandırma Sayfasına Erişim
Duck takıldığında, kısa bir süre sonra DUCK-CA:B8:DA:XX:XX:XX SSID ile bir Wi-Fi erişim noktası ağı yayınlar. AP’ye bağlanmak için varsayılan şifreyi kullanın. Cihazınız, captive portalda yapılandırma sayfasına yönledricektir. Cihazınız otomatik olarak captive portalı açmazsa, varsayılan tarayıcınızda http://192.168.4.1 adresine gidin.
Duck, Wi-Fi veya Ethernet üzerinden bir ağa bağlandıktan sonra, yapılandırma sayfasına aynı ağdan cihazın yerel IP adresiyle erişilebilir. Yerel IP adresi, yapılandırma sayfasının ana sekmesinde görüntülenir ve ayrıca MQTT bilgi mesajında gösterilir.
Bağlantı
Wi-Fi & Ethernet
Duck, ağ bağlantıları için hem Wi-Fi hem de Ethernet’i destekler. Varsayılan olarak, ağ adaptörü Wi-Fi olarak ayarlanmıştır, ancak bu ayar, Konfigürasyon sayfasının Ayarlar > Bağlantı bölümünde değiştirilebilir.
NTP
Duck tarafından gönderilen ölçüm mesajlarında zaman bilgisi de kullanılır. Bunun için zaman senkronizasyonu gereklidir. Yerel veya özel kurulumlarda, Duck Konfigürasyon sayfasındaki Settings > NTP bölümünden varsayılan NTP sunucusu değiştirilebilir.
Varsayılan: http://pool.ntp.org/
MQTT
Duck, MQTT / TLS yapılandırmasına ihtiyaç duyar ve aşağıdakileri içeren çeşitli kimlik doğrulama mekanizmalarını destekler: düz metin MQTT, parola ile veya parolasız MQTTs ve istemci sertifikasıyla MQTTs. Kullanılacak MQTT Broker Sunucusu TLS’yi desteklemelidir ve sertifika tabanlı bağlantılar için aşağıdaki bilgileri sağlamalıdır:
- MQTT endpoint (mqtts: //my-mqtt-broker.server: 8883)
- CA (CA sertifikası)
- İstemci Sertifikası (CA tarafından oluşturulan ve imzalanan sertifika)
- İstemci Anahtarı (CA tarafından oluşturulan sertifikanın özel anahtarı)
Gerekli sertifikalar ve endpoint bilgileri, Duck konfigürasyon sayfasındaki Settings > MQTT bölümünde tanımlanır. Duck, gelecekteki MQTT bağlantıları için bu sertifikaları kullanır.
Detaylar https://www.hivemq.com/blog/mqtt-security-fundamentals-tls-ssl/
HTTP
Duck, HTTP üzerinden kontrol edilebilir, bu da bağlı cihazlar üzerinde yapılandırma değişiklikleri ve ölçüm işlemleri yapmayı sağlar. HTTP uç noktalarına erişim, önce bir giriş yapmayı gerektirir, ardından alınan belirteç, sonraki iletişimlerde kullanılmalıdır. HTTP uç noktaları hakkında detaylı bilgi, Duck Yapılandırma Web Sayfası tarafından kullanılanlar dahil, HTTP Entegrasyon bölümünde mevcuttur.
Duck Sensor Configuration
Duck, endüstri standardı 4-20mA sensörlerle uyumludur. Duck sensör yapılandırması, sensör gruplarından oluşur. Her grup, bir ekipmanın tek bir noktasını izlemeye yöneliktir.
- Birden fazla sensör, bir noktayı sıcaklık ve nem veya ivme ve manyetik alan gibi farklı özelliklerini izlemek için bir sensör grubuna dahil edilebilir.
- Bir sensör, sensörün işlevselliğine bağlı olarak bir veya birden fazla giriş kanalıyla yapılandırılabilir. Örneğin, bir mesafe sensörü tek bir giriş kanalıyla yapılandırılırken, 3 eksenli bir ivme sensörü x, y, z eksenleri için üç giriş kanalıyla yapılandırılır.
| Device Config | Explaniation | |
|---|---|---|
|
|
MQTT Entegrasyonu
Bu bölüm, Duck ile MQTT üzerinden iletişim kurarken kullanılacak konuları ve mesajların nasıl yorumlanacağını açıklar.
Aktör sends Payload with PayloadType format to Topic
Bilgi
Duck açıldığında, cihazın temel bilgilerini içeren bir durum mesajı yayınlar. Bu mesaj, aşağıdaki konu kullanılarak da alınabilir:
| Actor | Topic | Payload Type | Payload Schema | Example |
|---|---|---|---|---|
| User | sensemore/<DuckMac>/info | JSON | Empty JSON | |
| Duck | sensemore/<DuckMac>/info/accepted | JSON |
|
|
Havadan Yazılım Güncellemesi (OTA)
Sensemore cihazları HTTP üzerinden yazılım güncellemesini kabul eder. Cihazda yazılım güncellemesi başlatmak için, geçerli bir binary bağlantısı yazılım güncelleme konusuna gönderilir. Duck, verilen URL’den binary dosyasını indirir ve yazılım güncellemesini başlatır.
| Actor | Topic | Payload Type | Payload Schema | Example |
|---|---|---|---|---|
| User | sensemore/<DuckMac>/ota | JSON | http url |
|
| Duck | sensemore/<DuckMac>/ota/accepted | JSON | Status JSON |
|
| Duck | sensemore/<DuckMac>/ota/rejected | Text | Error Text | Invalid payload! Url can't be null. Valid payload scheme: { "url":"http://link.mydomain.com/Duck.bin" } |
| Duck | sensemore/<DuckMac>/restart | JSON | Status JSON |
|
Yeniden Başlatma
Duck cihazını uzaktan yeniden başlatmak için aşağıdaki konu kullanılır.
| Actor | Topic | Payload Type | Payload Schema | Example |
|---|---|---|---|---|
| User | sensemore/<DuckMac>/restart | JSON | Empty JSON |
Sensör Yapılandırması
Duck’ın sensör yapılandırması aşağıdaki başlıklar altında MQTT üzerinden görüntülenebilir veya değiştirilebilir.
| Actor | Topic | Payload Type | Payload Schema | Example |
|---|---|---|---|---|
| User | sensemore/<DuckMac>/config/get | JSON | Empty JSON | |
| Duck | sensemore/<DuckMac>/config/get/accepted | JSON | Config JSON |
|
:exclamation: Duck’ın sensör yapılandırmasını değiştirmek cihazın yeniden başlatılmasına neden olacaktır.
| Actor | Topic | Payload Type | Payload Schema | Example |
|---|---|---|---|---|
| User | sensemore/<DuckMac>/config/set | JSON | Config JSON |
|
| Duck | sensemore/<DuckMac>/config/set/accepted | JSON | Status JSON |
|
Measurement
Duck cihazı, ölçümleri tetiklemek için birden fazla yönteme sahip olup, yüksek performanslı veri toplama için tasarlanmıştır. Cihaz, verileri sürekli olarak toplar ve aşağıdaki mekanizmalara dayalı olarak ölçümleri yayınlama koşullarını değerlendirir:
1. Kalp Atışı (Heartbeat):
Belirlenen kalp atışı değerini aşan bir süre boyunca hiçbir ölçüm yayınlanmamışsa, Duck otomatik olarak bir ölçüm yayınlar.
2. Tetik Farkı (Trigger Difference):
Mevcut ve önceki ölçümler arasındaki fark, yapılandırılmış yüzde eşiğini aştığında Duck bir ölçüm yayınlar. Tetik Farkı, cihazın yapılandırma ayarlarından ayarlanabilir.
3. Sensemore Lake:
Kullanıcılar, Sensemore Lake platformu üzerinden manuel ölçüm isteği gönderebilir.
4. MQTT:
Manuel ölçüm talepleri MQTT üzerinden de gönderilebilir. MQTT konuları hakkında detaylı bilgiler aşağıda verilmiştir.
| Actor | Topic | Payload Type | Payload Schema | Example |
|---|---|---|---|---|
| User | sensemore/<DuckMac>/device/<DuckMac>/measure/<MEASUREMENT_UUID> | JSON | Empty JSON | |
| Duck | sensemore/<DuckMac>/device/<DuckMac>/measure/<MEASUREMENT_UUID>/accepted | JSON | Status JSON |
|
| Duck | sensemore/<DuckMac>/device/<DuckMac>/measure/<MEASUREMENT_UUID>/metadata | JSON | Metadata JSON |
|
HTTP Entegrasyonu
Duck ve bağlı cihazlarının ayarlarını görüntülemek veya değiştirmek için kapsamlı HTTP uç noktaları bulunur.
Bazı uç noktalar, başlıkta bir kimlik doğrulama tokenı gerektirir. Kimlik doğrulama tokını gerektiren uç noktalar, 🔐 simgesiyle işaretlenmiştir. Bu tokını, aşağıda gösterildiği gibi Giriş uç noktası kullanılarak elde edilir:
Giriş
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| POST | /login | application/json |
|
| GET | /login | application/json |
|
Tokenını başlığa ekle
Kimlik doğrulama tokenı Giriş uç noktası aracılığıyla alındıktan sonra, her HTTP isteğinde 🔐 uç noktaları için başlığa eklenmesi gerekir, aşağıda gösterildiği gibi.
{
"Authorization": "CLjziyTeTzlMsv100mvgkxnTQl1nGYXpQvsIStAW16WrMjxzLvhNTOGhcFFzU38mT8sHKFhxBOm3309qxSmzKIHJux3rUbjVTkywmayA1O05hKaQn9jlY99YMmp1NorF"
}
Çıkış
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| POST | /logout | application/json |
Information
Cihaz hakkında temel bilgiler, Donanım Yazılımı Sürümü dahil, aşağıdaki HTTP uç noktası kullanılarak alınabilir:
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| GET | /info | application/json |
|
🔐 Şifre Değisimi
Cihazın HTTP ve web yapılandırma arayüzü şifresi, aşağıdaki HTTP uç noktası kullanılarak değiştirilebilirç
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| PUT | /change_password | application/json |
|
🔐 NTP
Zaman bilgisi, Duck tarafından gönderilen ölçüm mesajlarının bir parçasıdır. NTP yapılandırması, aşağıdaki HTTP uç noktası kullanılarak alınabilir veya değiştirilebilir.
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| GET | /sntp | application/json |
|
| POST | /sntp | application/json |
|
🔐 Havadan Yazılım Güncellemesi (OTA)
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| POST | /ota | application/octet-stream | {} |
🔐 Yeniden Başlatma
Duck, aşağıdaki uç nokta kullanılarak yeniden başlatılabilir.
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| GET | /restart | application/json |
🔐 Ölçüm Yükleme URL’si
Duck, bağlı cihazların ölçüm yüklemelerini MQTT üzerinden meta veriler yayınlayarak ve sinyal binary dosyalarını HTTP aracılığıyla ileterek yönetir.
Varsayılan binary yükleme URL’si https://core.sensemore.io/measurement/ şeklindedir, ancak bu URL aşağıdaki uç nokta kullanılarak alınabilir veya değiştirilebilir.
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| GET | /binary-url | application/json |
|
| POST | /binary-url | application/json |
|
🔐 Sensor Configuration
Duck’ın sensör yapılandırması aşağıdaki HTTP uç noktaları üzerinden görüntülenebilir veya değiştirilebilir.
| Method | Endpoint | Content-Type | Example |
|---|---|---|---|
| GET | /configuration | application/json |
|
| POST | /configuration | application/json |
|
:exclamation: Duck’ın sensör yapılandırmasını değiştirmek cihazın yeniden başlatılmasına neden olacaktır.