Raspberry Pi 3'ünüzü uzaktan izleme çözümüne bağlayın ve Node.js kullanarak gerçek bir algılayıcıdan telemetri gönderin

Bu öğreticide bulutla iletişim kurabilen bir sıcaklık ve nem okuyucu geliştirmek üzere Raspberry Pi 3 için Microsoft Azure IoT Starter Kit'in nasıl kullanılacağı gösterilmektedir. Öğretici şunları kullanır:

  • Örnek bir cihaz uygulamak için Node.js için Raspbian işletim sistemi, Node.js programlama dili ve Microsoft Azure IoT SDK'sı.
  • Bulut tabanlı arka uç olarak önceden yapılandırılmış IoT Paketi uzaktan izleme çözümü.

Genel Bakış

Bu öğreticide aşağıdaki adımları tamamlarsınız:

  • Önceden yapılandırılmış uzaktan izleme çözümünün bir örneğini Azure aboneliğinize dağıtın. Bu adım, birden çok Azure hizmetini otomatik olarak dağıtır ve yapılandırr.
  • Bilgisayarınızla ve uzaktan izleme çözümüyle iletişim kurmak için cihazınızı ve algılayıcılarınızı ayarlayın.
  • Uzaktan izleme çözümüne bağlanmak için örnek cihaz kodunu güncelleştirin ve çözüm panosunda görüntüleyebileceğiniz telemetri verilerini gönderin.

Önkoşullar

Bu öğreticiyi tamamlamak için etkin bir Azure aboneliğinizin olması gerekir.

Not

Hesabınız yoksa yalnızca birkaç dakika içinde ücretsiz bir deneme sürümü hesabı oluşturabilirsiniz. Ayrıntılı bilgi için bkz. Azure Ücretsiz Deneme Sürümü.

Gerekli yazılımlar

Raspberry Pi'de komut satırına uzaktan erişmenizi sağlamak için masaüstü makinenizde SSH istemcisine ihtiyacınız vardır.

  • Windows bir SSH istemcisi içermez. PuTTY kullanmanızı öneririz.
  • Çoğu Linux dağıtımı ve Mac OS komut satırı SSH yardımcı programını içerir. Daha fazla bilgi için bkz. Linux veya Mac OS Kullanarak SSH.

Gerekli donanım

Raspberry Pi'de komut satırına uzaktan bağlanmanızı sağlayan bir masaüstü bilgisayar.

Raspberry Pi 3 veya eşdeğer bileşenler için Microsoft IoT Başlangıç Seti . Bu öğreticide setten aşağıdaki öğeler kullanılır:

  • Raspberry Pi 3
  • MicroSD Kart (NOOBS ile)
  • USB Mini kablosu
  • Ethernet kablosu
  • BME280 algılayıcısı
  • Breadboard
  • Jumper telleri
  • Direnç
  • Led

Çözüm sağlama

Önceden yapılandırılmış uzaktan izleme çözümünüzü hesabınızda henüz hazırlamadıysanız:

  1. Azure hesabı kimlik bilgilerinizi kullanarak azureiotsuite.com oturum açın ve bir çözüm oluşturmak için tıklayın + .
  2. Uzaktan izleme kutucuğunda Seç'e tıklayın.
  3. Önceden yapılandırılmış uzaktan izleme çözümünüz için bir Çözüm adı girin.
  4. Çözümü sağlamak için kullanmak istediğiniz Bölge ve Abonelik seçimini yapın.
  5. Hazırlama işlemini başlatmak için Çözümü Oluştur'a tıklayın. Bu işlemin çalışması genellikle birkaç dakika sürer.

Hazırlama işleminin tamamlanmasını bekleme

  1. Çözümünüzün Hazırlama durumuna sahip olan kutucuğuna tıklayın.
  2. Azure hizmetleri Azure aboneliğinize dağıtılırken Hazırlama durumlarına dikkat edin.
  3. Hazırlama tamamlandığında durum Hazır olarak değişir.
  4. Kutucuğa tıkladığınızda sağ bölmede çözümünüzün ayrıntılarını görürsünüz.

Not

Önceden yapılandırılmış çözümün dağıtımında sorunlarla karşılaşıyorsanız bkz. Azureiotsuite.com sitesindeki izinler ve SSS. Sorunlar devam ederse portalda bir hizmet bileti oluşturun.

Görmeyi beklediğiniz ancak çözümünüz için listelenmemiş ayrıntılar mı var? User Voice'da bize özellik önerileri verin.

Uyarı

Uzaktan izleme çözümü, Azure aboneliğinizde bir dizi Azure hizmeti sağlar. Dağıtım gerçek bir kurumsal mimariyi yansıtır. Gereksiz Azure tüketim ücretlerinden kaçınmak için, azureiotsuite.com bitirdiğinizde önceden yapılandırılmış çözüm örneğinizi silin. Önceden yapılandırılmış çözüme yeniden ihtiyacınız varsa, çözümü kolayca yeniden oluşturabilirsiniz. Uzaktan izleme çözümü çalışırken tüketimi azaltma hakkında daha fazla bilgi için bkz. Azure IoT Paketi önceden yapılandırılmış çözümleri tanıtım amacıyla yapılandırma.

Çözüm panosunu görüntüleme

Çözüm panosu, dağıtılan çözümü yönetmenizi sağlar. Örneğin, telemetri verilerini görüntüleyebilir, cihaz ekleyebilir ve yöntemleri çağırabilirsiniz.

  1. Sağlama tamamlandığında ve önceden yapılandırılmış çözümünüzün kutucuğu Hazır’ı gösterdiğinde, uzaktan izleme çözümü portalınızı yeni bir sekmede açmak için Başlat’ı seçin.

    Önceden yapılandırılmış çözümü başlatma

  2. Varsayılan olarak, çözüm portalı panoyu gösterir. Sayfanın sol tarafındaki menüyü kullanarak çözüm portalının diğer alanlarına gidebilirsiniz.

    Önceden yapılandırılmış uzaktan izleme panosu

Cihaz ekleme

Bir cihazın önceden yapılandırılmış çözüme bağlanabilmesi için geçerli kimlik bilgileriyle kendini IoT Hub üzerinde tanıtması gerekir. Cihaz kimlik bilgilerini çözüm panosundan alabilirsiniz. Cihaz kimlik bilgilerini bu öğreticinin sonraki adımlarında istemci uygulamanıza ekleyebilirsiniz.

Henüz yapmadıysanız, uzaktan izleme çözümünüz için özel bir cihaz ekleyin. Çözüm panosunda aşağıdaki adımları tamamlayın:

  1. Panonun sol alt köşesinde Cihaz ekle'ye tıklayın.

    Cihaz ekleme

  2. Özel Cihaz panelinde Yeni ekle'ye tıklayın.

    Özel cihaz ekleme

  3. Kendi Cihaz Kimliğimi tanımlamama izin ver'i seçin. Rasppi gibi bir Cihaz Kimliği girin, çözümünüzde adı daha önce kullanmadığınızdan emin olmak için Kimliği Denetle'ye tıklayın ve ardından cihazı sağlamak için Oluştur'a tıklayın.

    Cihaz kimliği ekleme

  4. Cihaz kimlik bilgilerini (Cihaz Kimliği, IoT Hub Ana Bilgisayar Adı ve Cihaz Anahtarı) not edin. Raspberry Pi üzerindeki istemci uygulamanızın uzaktan izleme çözümüne bağlanmak için bu değerlere ihtiyacı vardır. Sonra da Bitti’ye tıklayın.

    Cihaz kimlik bilgilerini görüntüleme

  5. Çözüm panosundaki cihaz listesinden cihazınızı seçin. Ardından Cihaz Ayrıntıları panelinde Cihazı Etkinleştir'e tıklayın. Cihazınızın durumu Çalışıyor olarak değişir. Uzaktan izleme çözümü artık cihazınızdan telemetri verileri alabilir ve cihazınızda yöntemler çağırabilir.

Raspberry Pi'nizi hazırlama

Raspbian'ı yükleme

Raspberry Pi'nizi ilk kez kullanıyorsanız, sete dahil edilen SD karta NOOBS kullanarak Raspbian işletim sistemini yüklemeniz gerekir. Raspberry Pi Yazılım Kılavuzu, Raspberry Pi'nize bir işletim sisteminin nasıl yükleneceğini açıklar. Bu öğreticide Raspberry Pi'nize Raspbian işletim sistemini yüklediğiniz varsayılır.

Not

Raspberry Pi 3 için Microsoft Azure IoT Başlangıç Seti'nde bulunan SD kartta NOOBS zaten yüklüdür. Raspberry Pi'yi bu karttan önyükleyebilir ve Raspbian işletim sistemini yüklemeyi seçebilirsiniz.

Donanımı ayarlama

Bu öğreticide, Raspberry Pi 3 için Microsoft Azure IoT Starter Kit'te yer alan BME280 algılayıcısı, telemetri verileri oluşturmak için kullanılır. Raspberry Pi'nin çözüm panosundan bir yöntem çağırma işlemini ne zaman işlediğini belirtmek için bir LED kullanır.

Ekmek panosundaki bileşenler şunlardır:

  • Kırmızı LED
  • 220-Ohm direnç (kırmızı, kırmızı, kahverengi)
  • BME280 algılayıcısı

Aşağıdaki diyagramda donanımınızı nasıl bağlayacağınız gösterilmektedir:

Raspberry Pi için donanım kurulumu

Aşağıdaki tabloda Raspberry Pi ile içerik panosundaki bileşenler arasındaki bağlantılar özetlenmiştir:

Raspberry Pi Breadboard Renk
GND (Pin 14) LED ve pin (18A) Purple
GPCLK0 (Pin 7) Direnç (25A) Orange
SPI_CE0 (Pin 24) CS (39A) Mavi
SPI_SCLK (Pin 23) SCK (36A) Yellow
SPI_MISO (Pin 21) SDO (37A) Beyaz
SPI_MOSI (Pin 19) SDI (38A) Yeşil
GND (Pin 6) GND (35A) Siyahi
3.3 V (Pin 1) 3Vo (34A) Kırmızı

Donanım kurulumunu tamamlamak için şunları yapmanız gerekir:

  • Raspberry Pi cihazınızı kite dahil edilen güç kaynağına bağlayın.
  • Kitinizde bulunan Ethernet kablosunu kullanarak Raspberry Pi'nizi ağınıza bağlayın. Alternatif olarak Raspberry Pi cihazınız için Kablosuz Bağlantı'yı da ayarlayabilirsiniz.

Raspberry Pi'nizin donanım kurulumunu tamamladınız.

Oturum açma ve terminale erişme

Raspberry Pi'nizde terminal ortamına erişmek için iki seçeneğiniz vardır:

  • Raspberry Pi'nize bağlı bir klavyeniz ve monitörünüz varsa, terminal penceresine erişmek için Raspbian GUI'sini kullanabilirsiniz.

  • Masaüstü makinenizden SSH kullanarak Raspberry Pi'nizdeki komut satırına erişin.

GUI'de terminal penceresi kullanma

Raspbian için varsayılan kimlik bilgileri pi kullanıcı adı ve parola ahududu'dur. GUI'deki görev çubuğunda, monitöre benzeyen simgeyi kullanarak Terminal yardımcı programını başlatabilirsiniz.

SSH ile oturum açma

Raspberry Pi'nize komut satırı erişimi için SSH kullanabilirsiniz. SSH (Secure Shell) makalesinde Raspberry Pi'nizde SSH'nin nasıl yapılandırıldığı ve Windows veya Linux & Mac OS'den nasıl bağlanıldığı açıklanır.

Pi kullanıcı adı ve parola raspberry ile oturum açın.

İsteğe bağlı: Raspberry Pi'nizde klasör paylaşma

İsteğe bağlı olarak Raspberry Pi'nizdeki bir klasörü masaüstü ortamınızla paylaşmak isteyebilirsiniz. Klasör paylaşmak, veya vikullanmak yerine Raspberry Pi'nizdeki dosyaları düzenlemek için tercih ettiğiniz masaüstü metin düzenleyiciyi (Visual Studio Code veya Sublime Metin gibi) kullanmanıza nano olanak tanır.

Windows ile klasör paylaşmak için Raspberry Pi'de bir Samba sunucusu yapılandırın. Alternatif olarak, masaüstünüzde bir SFTP istemcisi ile yerleşik SFTP sunucusunu kullanın.

SPI'yi etkinleştirme

Örnek uygulamayı çalıştırabilmeniz için önce Raspberry Pi üzerinde Seri Çevre Birimi Arabirimi (SPI) veri yolunu etkinleştirmeniz gerekir. Raspberry Pi, SPI veri yolu üzerinden BME280 algılayıcı cihazıyla iletişim kurar. Yapılandırma dosyasını düzenlemek için aşağıdaki komutu kullanın:

sudo nano /boot/config.txt

Satırı bulun:

#dtparam=spi=on

  • Satırın açıklamasını açmak için başlangıçtaki öğesini # silin.

  • Değişikliklerinizi kaydedin (Ctrl-O, Enter) ve düzenleyiciden çıkın (Ctrl-X).

  • SPI'yi etkinleştirmek için Raspberry Pi'yi yeniden başlatın. Yeniden başlatma terminalin bağlantısını keser, Raspberry Pi yeniden başlatıldığında yeniden oturum açmanız gerekir:

    sudo reboot
    

Örneği indirme ve yapılandırma

Artık Raspberry Pi'nize uzaktan izleme istemci uygulamasını indirip yapılandırabilirsiniz.

Node.js'yi yükleme

Raspberry Pi'nize Node.js yükleyin. Node.js için IoT SDK'sı, Node.js veya sonraki bir sürümün 0.11.5 sürümünü gerektirir. Aşağıdaki adımlarda Raspberry Pi'nize Node.js v6.10.2'yi nasıl yükleneceği gösterilir:

  1. Raspberry Pi'nizi güncelleştirmek için aşağıdaki komutu kullanın:

    sudo apt-get update
    
  2. Raspberry Pi'nize Node.js ikili dosyalarını indirmek için aşağıdaki komutu kullanın:

    wget https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-armv7l.tar.gz
    
  3. İkili dosyaları yüklemek için aşağıdaki komutu kullanın:

    sudo tar -C /usr/local --strip-components 1 -xzf node-v6.10.2-linux-armv7l.tar.gz
    
  4. v6.10.2 Node.js başarıyla yüklediğinizi doğrulamak için aşağıdaki komutu kullanın:

    node --version
    

Depoları kopyalama

Henüz yapmadıysanız Pi'nizde aşağıdaki komutları çalıştırarak gerekli depoları klonlayabilirsiniz:

cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-node-raspberrypi-getstartedkit.git`

Cihaz bağlantı dizesi güncelleştirme

Aşağıdaki komutu kullanarak örnek kaynak dosyasını nano düzenleyicide açın:

nano ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/basic/remote_monitoring.js

Satırı bulun:

var connectionString = 'HostName=[Your IoT hub name].azure-devices.net;DeviceId=[Your device id];SharedAccessKey=[Your device key]';

Yer tutucu değerlerini cihazla değiştirin ve bu öğreticinin başında oluşturduğunuz ve kaydettiğiniz bilgileri IoT Hub. Değişikliklerinizi kaydedin (Ctrl-O, Enter) ve düzenleyiciden çıkın (Ctrl-X).

Örneği çalıştırma

Örneğin önkoşul paketlerini yüklemek için aşağıdaki komutları çalıştırın:

cd ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/basic
npm install

Artık örnek programı Raspberry Pi üzerinde çalıştırabilirsiniz. Komutunu girin:

sudo node ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/basic/remote_monitoring.js

Aşağıdaki örnek çıktı, Raspberry Pi'deki komut isteminde gördüğünüz çıktının bir örneğidir:

Raspberry Pi uygulamasından çıktı

Programdan istediğiniz zaman çıkmak için Ctrl-C tuşlarına basın.

Telemetri verilerini görüntüleme

Raspberry Pi artık uzaktan izleme çözümüne telemetri gönderiyor. Telemetriyi çözüm panosunda görüntüleyebilirsiniz. Ayrıca çözüm panosundan Raspberry Pi'nize ileti gönderebilirsiniz.

  • Çözüm panosuna gidin.
  • Görüntülemek için Cihaz açılan listesinden cihazınızı seçin.
  • Raspberry Pi telemetrisi panoda görüntülenir.

Raspberry Pi'den telemetri görüntüleme

Cihazda işlem yapma

Çözüm panosundan Raspberry Pi'nizde yöntemleri çağırabilirsiniz. Raspberry Pi uzaktan izleme çözümüne bağlandığında, desteklediği yöntemler hakkında bilgi gönderir.

  • Çözüm panosunda Cihazlar'a tıklayarak Cihazlar sayfasını ziyaret edin. Cihaz Listesinde Raspberry Pi'nizi seçin. Ardından Yöntemler'i seçin:

    Panodaki cihazları listeleme

  • Çağırma Yöntemi sayfasında, Yöntem açılan listesinde LightBlink'i seçin.

  • InvokeMethod'u seçin. Raspberry Pi'ye bağlı LED birkaç kez yanıp söner. Raspberry Pi'de bulunan uygulama, çözüm panosuna bir bildirim gönderir:

    Yöntem geçmişini göster

  • Açık için 1 veya kapalı için 0 olarak ayarlanmış bir LightStatusValue ile ChangeLightStatus yöntemini kullanarak LED'i açıp kapatabilirsiniz.

Uyarı

Uzaktan izleme çözümünü Azure hesabınızda çalışır durumda bırakırsanız, çalıştığı süre için faturalandırılırsınız. Uzaktan izleme çözümü çalışırken tüketimi azaltma hakkında daha fazla bilgi için bkz. Azure IoT Paketi önceden yapılandırılmış çözümleri tanıtım amacıyla yapılandırma. Kullanmayı bitirdiğinizde önceden yapılandırılmış çözümü Azure hesabınızdan silin.

Sonraki adımlar

Azure IoT hakkında daha fazla örnek ve belge için Azure IoT Geliştirme Merkezi'ni ziyaret edin.