You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/tr/1-getting-started/lessons/4-connect-internet/single-board-computer-telem...

3.1 KiB

İnternet Üzerinden Gece Lambanızı Kontrol Edin - Sanal IoT Donanımı ve Raspberry Pi

Bu dersin bu bölümünde, Raspberry Pi'nizden veya sanal IoT cihazınızdan ışık seviyeleriyle birlikte telemetriyi bir MQTT brokerına göndereceksiniz.

Telemetri Yayınlama

Bir sonraki adım, telemetri ile bir JSON belgesi oluşturmak ve bunu MQTT brokerına göndermektir.

Görev

Telemetriyi MQTT brokerına yayınlayın.

  1. VS Code'da gece lambası projesini açın.

  2. Eğer bir sanal IoT cihazı kullanıyorsanız, terminalin sanal ortamı çalıştırdığından emin olun. Eğer bir Raspberry Pi kullanıyorsanız, sanal bir ortam kullanmayacaksınız.

  3. app.py dosyasının en üstüne şu import'u ekleyin:

    import json
    

    json kütüphanesi, telemetriyi bir JSON belgesi olarak kodlamak için kullanılır.

  4. client_name tanımından sonra şu satırları ekleyin:

    client_telemetry_topic = id + '/telemetry'
    

    client_telemetry_topic, cihazın ışık seviyelerini yayınlayacağı MQTT konusudur.

  5. Dosyanın sonundaki while True: döngüsünün içeriğini şu kodla değiştirin:

    while True:
        light = light_sensor.light
        telemetry = json.dumps({'light' : light})
    
        print("Sending telemetry ", telemetry)
    
        mqtt_client.publish(client_telemetry_topic, telemetry)
    
        time.sleep(5)
    

    Bu kod, ışık seviyesini bir JSON belgesine paketler ve MQTT brokerına yayınlar. Daha sonra, mesajların gönderilme sıklığını azaltmak için bir süre bekler.

  6. Kodu, ödevin önceki bölümündeki kodu çalıştırdığınız şekilde çalıştırın. Eğer bir sanal IoT cihazı kullanıyorsanız, CounterFit uygulamasının çalıştığından ve ışık sensörü ile LED'in doğru pinlerde oluşturulduğundan emin olun.

    (.venv) ➜  nightlight python app.py 
    MQTT connected!
    Sending telemetry  {"light": 0}
    Sending telemetry  {"light": 0}
    

💁 Bu kodu code-telemetry/virtual-device klasöründe veya code-telemetry/pi klasöründe bulabilirsiniz.

😀 Cihazınızdan başarıyla telemetri gönderdiniz.


Feragatname:
Bu belge, AI çeviri hizmeti Co-op Translator kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayın. Belgenin orijinal dili, yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan yanlış anlamalar veya yanlış yorumlamalardan sorumlu değiliz.