Azure IOT Hub (Node.js) Böğürtlenli Pi BağlanConnect Raspberry Pi to Azure IoT Hub (Node.js)

Bu öğreticide, Raspbian çalıştıran Raspberry Pi'yi ile çalışmanın temelleri öğrenerek başlayın.In this tutorial, you begin by learning the basics of working with Raspberry Pi that's running Raspbian. Daha sonra sorunsuzca aygıtlarınızı buluta kullanarak bağlanmasına nasıl öğrenin Azure IOT Hub.You then learn how to seamlessly connect your devices to the cloud by using Azure IoT Hub. Windows 10 IOT Core örnekleri için Git Windows Geliştirme Merkezi.For Windows 10 IoT Core samples, go to the Windows Dev Center.

Bir pakete henüz yok mu?Don't have a kit yet? Deneyin Raspberry Pi'yi çevrimiçi simulator.Try Raspberry Pi online simulator. Veya yeni bir paket satın burada.Or buy a new kit here.

NelerWhat you do

  • IOT hub'ı oluşturun.Create an IoT hub.
  • Bir cihaz IOT hub'ınıza Pi için kaydetme.Register a device for Pi in your IoT hub.
  • Raspberry Pi'yi ayarlayın.Set up Raspberry Pi.
  • Pi algılayıcı verilerini IOT hub'ınıza gönderilecek örnek bir uygulamayı çalıştırın.Run a sample application on Pi to send sensor data to your IoT hub.

ÖğreneceklerinizWhat you learn

  • Azure IOT hub oluşturma ve yeni cihaz bağlantı dizenizi elde etme.How to create an Azure IoT hub and get your new device connection string.
  • Pi BME280 algılayıcı ile bağlanma.How to connect Pi with a BME280 sensor.
  • Pi üzerinde bir örnek uygulamayı çalıştırarak algılayıcı verilerini toplamak nasıl.How to collect sensor data by running a sample application on Pi.
  • IOT hub'ınıza algılayıcı verileri göndermek nasıl.How to send sensor data to your IoT hub.

Ne gerekiyorWhat you need

Ne gerekiyor

  • Raspberry Pi 2 veya Raspberry Pi 3 Panosu.A Raspberry Pi 2 or Raspberry Pi 3 board.
  • Etkin bir Azure aboneliği.An active Azure subscription. Bir Azure hesabınız yoksa ücretsiz Azure deneme hesabı oluşturma yalnızca birkaç dakika içinde.If you don't have an Azure account, create a free Azure trial account in just a few minutes.
  • Bir izleyici, bir USB klavye ve Pi bağlanan fare.A monitor, a USB keyboard, and mouse that connects to Pi.
  • Mac veya Windows veya Linux çalıştıran bir bilgisayar.A Mac or PC that is running Windows or Linux.
  • Bir Internet bağlantısı.An internet connection.
  • 16 GB veya üzeri microSD kartı.A 16 GB or above microSD card.
  • İşletim sistemi görüntüsü microSD kartı üzerine yazmak için bir USB SD bağdaştırıcı veya microSD kartı.A USB-SD adapter or microSD card to burn the operating system image onto the microSD card.
  • 5-volt 2 amp güç 6 kaplama alanı mikro USB kablosu ile sağlayın.A 5-volt 2-amp power supply with the 6-foot micro USB cable.

Aşağıdaki öğeler isteğe bağlıdır:The following items are optional:

  • Bir birleştirilmiş Adafruit BME280 sıcaklık, baskısı ve nem algılayıcı.An assembled Adafruit BME280 temperature, pressure, and humidity sensor.
  • Bir breadboard.A breadboard.
  • 6 F/M anahtar kablolarını.6 F/M jumper wires.
  • Yayılmış 10 mm LED.A diffused 10-mm LED.

Not

İsteğe bağlı öğeleri yoksa, benzetimli algılayıcı verilerini kullanabilirsiniz.If you don't have the optional items, you can use simulated sensor data.

IoT hub oluşturmaCreate an IoT hub

  1. Azure portalında oturum açın.Sign in to the Azure portal.
  2. Yeni > Nesnelerin İnterneti > IoT Hub’ı seçin.Select New > Internet of Things > IoT Hub.

    Azure portalı Atlama Çubuğu

  3. IoT hub bölmesine IoT hub’ınızla ilgili aşağıdaki bilgileri girin:In the IoT hub pane, enter the following information for your IoT hub:

    • Ad: IoT hub'ınız için bir ad oluşturun.Name: Create a name for your IoT hub. Girdiğiniz ad geçerli ise yeşil bir onay işareti görünür.If the name you enter is valid, a green check mark appears.

    Önemli

    IoT hub'ı, DNS uç noktası olarak herkes tarafından bulunabilir, bu nedenle adlandırırken herhangi bir önemli bilgi vermekten kaçının.The IoT hub will be publicly discoverable as a DNS endpoint, so make sure to avoid any sensitive information while naming it.

    • Fiyatlandırma ve ölçek katmanı: Bu öğretici için F1 - Ücretsiz katmanını seçin.Pricing and scale tier: For this tutorial, select the F1 - Free tier. Daha fazla bilgi için Fiyatlandırma ve ölçek katmanı konusunu inceleyin.For more information, see the Pricing and scale tier.

    • Kaynak grubu: IoT hub’ını barındıracak bir kaynak grubu oluşturun veya mevcut bir kaynak grubunu kullanın.Resource group: Create a resource group to host the IoT hub or use an existing one. Daha fazla bilgi için Azure kaynaklarınızı yönetmek için kaynak gruplarını kullanma konusunu inceleyinFor more information, see Use resource groups to manage your Azure resources

    • Konum: Size en yakın konumu seçin.Location: Select the closest location to you.

    • Panoya sabitle: Panodan IoT hub'ınıza kolay erişim için bu seçeneği işaretleyin.Pin to dashboard: Check this option for easy access to your IoT hub from the dashboard.

      IoT hub penceresi

  4. Oluştur'a tıklayın.Click Create. IoT hub’ınızın oluşturulması birkaç dakika sürebilir.Your IoT hub might take a few minutes to create. İlerleme durumunu Bildirimler bölmesinden izleyebilirsiniz.You can monitor the progress in the Notifications pane.

IOT hub'ı oluşturduğunuza göre cihazlar ve uygulamalar IOT hub'ınıza bağlanmak için kullanacağınız önemli bilgiler bulun.Now that you have created an IoT hub, locate the important information that you use to connect devices and applications to your IoT hub.

  1. IoT hub'ınız oluşturulduktan sonra panoda IoT hub’ınıza tıklayın.After your IoT hub is created, click it on the dashboard. Ana bilgisayar adını not edin ve Paylaşılan erişim ilkeleri'ne tıklayın.Make a note of the Hostname, and then click Shared access policies.

    IoT hub’ınızın ana bilgisayar adını alma

  2. Paylaşılan erişim ilkeleri bölmesinde iothubowner ilkesine tıklayın, ardından IoT hub’ınızın Bağlantı dizesi değerini kopyalayıp not edin.In the Shared access policies pane, click the iothubowner policy, and then copy and make a note of the Connection string of your IoT hub. Daha fazla bilgi için bkz. IoT Hub'a erişimi denetleme.For more information, see Control access to IoT Hub.

Not

Bu kurulum öğreticisinde bu iothubowner bağlantı dizesi gerekli değildir.You will not need this iothubowner connection string for this set-up tutorial. Ancak, bu kurulum tamamlandıktan sonra farklı IoT senaryolarında bazı öğreticiler için gerekli olabilir.However, you may need it for some of the tutorials on different IoT scenarios after you complete this set-up.

IoT hub bağlantı dizenizi alma

Cihazınız için IoT hub’a cihaz kaydetmeRegister a device in the IoT hub for your device

  1. Azure portalında IoT hub'ınızı açın.In the Azure portal, open your IoT hub.

  2. Device Explorer’a tıklayın.Click Device Explorer.

  3. Device Explorer bölmesinde Ekle’ye tıklayarak IoT hub’ınıza bir cihaz ekleyin.In the Device Explorer pane, click Add to add a device to your IoT hub. Ardından şunları yapın:Then do the following:

    Cihaz Kimliği: Yeni cihazın kimliğini girin.Device ID: Enter the ID of the new device. Cihaz Kimlikleri büyük/küçük harfe duyarlıdır.Device IDs are case sensitive.

    Kimlik Doğrulama Türü: Simetrik Anahtar’ı seçin.Authentication Type: Select Symmetric Key.

    Anahtarları Otomatik Onayla: Bu onay kutusunu işaretleyin.Auto Generate Keys: Select this check box.

    Cihazı IoT Hub'a bağla: Etkinleştir’e tıklayın.Connect device to IoT Hub: Click Enable.

    IoT hub’ınızın Device Explorer menüsünde cihaz ekleme

    Önemli

    Cihaz kimliği; müşteri desteği ve sorun giderme için toplanan günlüklerde görünüyor olabilir, bu nedenle adlandırırken herhangi bir önemli bilgi vermekten kaçının.The device ID may be visible in the logs collected for customer support and troubleshooting, so make sure to avoid any sensitive information while naming it.

  4. Kaydet düğmesine tıklayın.Click Save.

  5. Cihaz oluşturulduktan sonra cihazı Device Explorer bölmesinde açın.After the device is created, open the device in the Device Explorer pane.
  6. Bağlantı dizesinin birincil anahtarını not edin.Make a note of the primary key of the connection string.

    Cihaz bağlantı dizesini alma

Raspberry Pi'yi ayarlayınSet up Raspberry Pi

Pi için Raspbian işletim sistemini yüklemeInstall the Raspbian operating system for Pi

MicroSD kartı Raspbian görüntünün yüklenmesi için hazırlayın.Prepare the microSD card for installation of the Raspbian image.

  1. Raspbian indirin.Download Raspbian.

    1. Raspbian Esnetme karşıdan (.zip dosyası).Download Raspbian Stretch (the .zip file).

    Uyarı

    Lütfen indirmek için yukarıdaki bağlantıyı kullanın raspbian-2017-07-5 zip resmi.Please use above link to download raspbian-2017-07-5 zip image. En son sürümünü Raspbian görüntüleri, sonraki adımlarda hatasına neden olabilen kablolama Pi düğüm bilinen bazı sorunlar vardır.The latest version of Raspbian images has some known issues with Wiring-Pi Node, which might cause failure in your next steps.

    1. Raspbian görüntünün bilgisayarınızdaki bir klasöre ayıklayın.Extract the Raspbian image to a folder on your computer.
  2. Raspbian microSD kartı yükleyin.Install Raspbian to the microSD card.

    1. Etcher SD kart yazıcı yardımcı programı yükleyip.Download and install the Etcher SD card burner utility.
    2. Etcher çalıştırın ve 1. adımda ayıkladığınız Raspbian görüntüyü seçin.Run Etcher and select the Raspbian image that you extracted in step 1.
    3. MicroSD kartı sürücü seçin.Select the microSD card drive. Etcher zaten doğru sürücü seçmiş olabilirsiniz.Etcher may have already selected the correct drive.
    4. Raspbian microSD kartı yüklemek için Flash'ı tıklatın.Click Flash to install Raspbian to the microSD card.
    5. Yükleme tamamlandığında microSD kartı bilgisayarınızdan kaldırın.Remove the microSD card from your computer when installation is complete. Etcher otomatik olarak çıkarır veya tamamlanmasından sonra microSD kartı çıkarır çünkü microSD kartı doğrudan kaldırmak güvenlidir.It's safe to remove the microSD card directly because Etcher automatically ejects or unmounts the microSD card upon completion.
    6. MicroSD kartı Pi yerleştirin.Insert the microSD card into Pi.

SSH ve I2C etkinleştirEnable SSH and I2C

  1. Pi monitör, klavye ve fare bağlayın.Connect Pi to the monitor, keyboard, and mouse.
  2. Pi başlatın ve ardından içinde Raspbian kullanarak oturum pi kullanıcı adı ve raspberry ve parola olarak.Start Pi and then log in Raspbian by using pi as the user name and raspberry as the password.
  3. Böğürtlenli simgesine tıklayın > Tercihler > Raspberry Pi yapılandırma.Click the Raspberry icon > Preferences > Raspberry Pi Configuration.

    Raspbian Tercihler menüsü

  4. Üzerinde arabirimleri sekmesinde, ayarlamak I2C ve SSH için etkinleştirmekve ardından Tamam.On the Interfaces tab, set I2C and SSH to Enable, and then click OK. Fiziksel algılayıcılar varsa ve benzetimli algılayıcı verilerini kullanmak istediğiniz yok, bu adım isteğe bağlıdır.If you don't have physical sensors and want to use simulated sensor data, this step is optional.

    I2C ve Böğürtlenli Pi üzerinde SSH etkinleştir

Not

SSH ve I2C etkinleştirmek için daha fazla başvuru belgeleri bulabilirsiniz raspberrypi.org ve Adafruit.com.To enable SSH and I2C, you can find more reference documents on raspberrypi.org and Adafruit.com.

Pi algılayıcı BağlanConnect the sensor to Pi

Bir LED ve bir BME280 Pi şu şekilde bağlanmak için breadboard ve anahtar kablolarını kullanır.Use the breadboard and jumper wires to connect an LED and a BME280 to Pi as follows. Algılayıcı yoksa Bu bölüm atlayın.If you don’t have the sensor, skip this section.

Raspberry Pi'yi ve algılayıcı bağlantısı

BME280 algılayıcı sıcaklık ve nem verileri toplayabilir.The BME280 sensor can collect temperature and humidity data. Cihaz buluta ileti gönderdiğinde ışığı yanıp.The LED blinks when the device sends a message to the cloud.

Algılayıcı PIN'ler için aşağıdaki kablolama kullanın:For sensor pins, use the following wiring:

Başlangıç (algılayıcı & LED)Start (Sensor & LED) Bitiş (kartı)End (Board) Kablo rengiCable Color
VDD (PIN 5G)VDD (Pin 5G) 3, 3v PWR (PIN 1)3.3V PWR (Pin 1) Beyaz kablosuWhite cable
GND (PIN 7G)GND (Pin 7G) GND (PIN 6)GND (Pin 6) Kahverengi kablosuBrown cable
SDI (PIN 10G)SDI (Pin 10G) I2C1 SDA (PIN 3)I2C1 SDA (Pin 3) Kırmızı kablosuRed cable
SCK (PIN 8G)SCK (Pin 8G) I2C1 SCL (PIN 5)I2C1 SCL (Pin 5) Turuncu kablosuOrange cable
LED VDD (PIN 18F)LED VDD (Pin 18F) GPIO'yu 24 (PIN 18)GPIO 24 (Pin 18) Beyaz kablosuWhite cable
LED GND (PIN 17F)LED GND (Pin 17F) GND (PIN 20)GND (Pin 20) Siyah kablosuBlack cable

Görüntülemek için tıklatın Raspberry Pi 2 ve 3 PIN eşlemeleri daha sonra başvurmak üzere.Click to view Raspberry Pi 2 & 3 pin mappings for your reference.

Raspberry Pi'yi BME280 başarıyla bağlandıktan sonra görüntü gibi olmalıdır.After you've successfully connected BME280 to your Raspberry Pi, it should be like below image.

Bağlı Pi ve BME280

Pi ağa bağlanınConnect Pi to the network

Pi üzerinde mikro USB kablosu ve güç kaynağı kullanarak açın.Turn on Pi by using the micro USB cable and the power supply. Pi kablolu ağa bağlanın veya izleyin için Ethernet kablosu kullanın Raspberry Pi Foundation yönergeleri Pi kablosuz ağınıza bağlanmak için.Use the Ethernet cable to connect Pi to your wired network or follow the instructions from the Raspberry Pi Foundation to connect Pi to your wireless network. Not yapmanıza gerek, Pi ağa başarıyla bağlandı sonra IP adresi, pi'nin.After your Pi has been successfully connected to the network, you need to take a note of the IP address of your Pi.

Kablolu ağa bağlı

Not

Pi bilgisayarınızın aynı ağa bağlı olduğundan emin olun.Make sure that Pi is connected to the same network as your computer. Örneğin, pi kablolu bir ağa bağlıyken, bilgisayarınızın kablosuz bir ağa bağlıysa, IP adresi devdisco çıkışı göremeyebilirsiniz.For example, if your computer is connected to a wireless network while Pi is connected to a wired network, you might not see the IP address in the devdisco output.

Pi üzerinde bir örnek uygulamayı çalıştırınRun a sample application on Pi

Örnek uygulama kopyalamak ve önkoşul yükleyinClone sample application and install the prerequisite packages

  1. Aşağıdaki SSH istemcilerini biri ile Raspberry Pi'yi ana bilgisayardan bağlanın:Connect to your Raspberry Pi with one of the following SSH clients from your host computer:

    Windows kullanıcılarıWindows Users

    1. İndirme ve yükleme PuTTY Windows için.Download and install PuTTY for Windows.
    2. Ana bilgisayar adı (veya IP adresi) içine Pi bölümünüzü IP adresini kopyalayın ve SSH bağlantı türü olarak seçin.Copy the IP address of your Pi into the Host name (or IP address) section and select SSH as the connection type.

    PuTTy

    Mac ve Ubuntu kullanıcılarMac and Ubuntu Users

    Yerleşik SSH istemcisi Ubuntu veya macOS kullanın.Use the built-in SSH client on Ubuntu or macOS. Çalıştırmanız gerekebilir ssh pi@<ip address of pi> Pi SSH aracılığıyla bağlanmak için.You might need to run ssh pi@<ip address of pi> to connect Pi via SSH.

    Not

    Varsayılan kullanıcı adı pi ve parola raspberry.The default username is pi and the password is raspberry.

  2. Node.js ve NPM, Pi yükleyin.Install Node.js and NPM to your Pi.

    İlk Node.js sürümünü denetleyin.First check your Node.js version.

    node -v
    

    Sürüm 4.x düşükse veya, Pi üzerinde hiçbir Node.js ise, en son sürümünü yükleyin.If the version is lower than 4.x, or if there is no Node.js on your Pi, install the latest version.

    curl -sL http://deb.nodesource.com/setup_4.x | sudo -E bash
    sudo apt-get -y install nodejs
    
  3. Örnek uygulama kopyalayın.Clone the sample application.

    git clone https://github.com/Azure-Samples/iot-hub-node-raspberrypi-client-app
    
  4. Tüm paketler örnek yükleyin.Install all packages for the sample. Yükleme, Azure IOT cihaz SDK'sı, BME280 algılayıcı kitaplığı ve geriye Pi kitaplığı içerir.The installation includes Azure IoT device SDK, BME280 Sensor library, and Wiring Pi library.

    cd iot-hub-node-raspberrypi-client-app
    sudo npm install
    

    Not

    Ağ bağlantınızın bağlı olarak bu yükleme işleminin tamamlanması birkaç dakika sürebilir.It might take several minutes to finish this installation process depending on your network connection.

Örnek uygulamayı yapılandırmaConfigure the sample application

  1. Yapılandırma dosyası, aşağıdaki komutları çalıştırarak açın:Open the config file by running the following commands:

    nano config.json
    

    Yapılandırma dosyası

    Yapılandırabileceğiniz bu dosyada iki öğe yok.There are two items in this file you can configure. İlk sağlayıcıdır interval, buluta gönderilen iletileri arasındaki zaman aralığı (milisaniye cinsinden) tanımlar.The first one is interval, which defines the time interval (in milliseconds) between messages sent to the cloud. İkincisi olan simulatedData, benzetimli algılayıcı verilerini veya kullanıp kullanmayacağınızı için bir Boolean değeri değil.The second one is simulatedData, which is a Boolean value for whether to use simulated sensor data or not.

    Varsa, algılayıcı yokayarlayın simulatedData değeri true oluşturma ve sanal algılayıcı verilerini kullanma örnek uygulamayı yapmak için.If you don't have the sensor, set the simulatedData value to true to make the sample application create and use simulated sensor data.

  2. Kaydedip çıkmak denetimi O yazarak > Enter > Denetim X.Save and exit by typing Control-O > Enter > Control-X.

Örnek uygulamayı çalıştırınRun the sample application

Aşağıdaki komutu çalıştırarak örnek uygulamayı çalıştırın:Run the sample application by running the following command:

sudo node index.js '<YOUR AZURE IOT HUB DEVICE CONNECTION STRING>'

Not

Kopyalama cihaz bağlantı dizesi tek tırnak yapıştırma emin olun.Make sure you copy-paste the device connection string into the single quotes.

Algılayıcı verilerini ve IOT hub'ına gönderilen iletileri gösterir aşağıdaki çıktı görmeniz gerekir.You should see the following output that shows the sensor data and the messages that are sent to your IoT hub.

Çıktı - Raspberry Pi'yi IOT hub'ına gönderilen algılayıcı verileri

Sonraki adımlarNext steps

Algılayıcı verilerini toplamak ve IOT hub'ınıza göndermek için örnek bir uygulamayı çalıştırdıktan.You’ve run a sample application to collect sensor data and send it to your IoT hub. Raspberry Pi'yi IOT hub'ınıza gönderdiği iletileri görmek veya bir komut satırı arabirimi içinde Raspberry Pi'yi iletileri göndermek için bkz: iothub-explorer eğitici Mesajlaşma Yönet bulut cihaz.To see the messages that your Raspberry Pi has sent to your IoT hub, or to send messages to your Raspberry Pi in a command-line interface, see the Manage cloud device messaging with iothub-explorer tutorial.

Azure IoT Hub’ı kullanmaya başlamak ve diğer IoT senaryolarını keşfetmek için aşağıdakilere bakın:To continue to get started with Azure IoT Hub and to explore other IoT scenarios, see the following: