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/fi/4-manufacturing/lessons/4-trigger-fruit-detector/pi-proximity.md

5.0 KiB

Tunnista läheisyys - Raspberry Pi

Tässä osassa oppituntia lisäät läheisyyssensorin Raspberry Pi:hin ja luet etäisyyden siitä.

Laitteisto

Raspberry Pi tarvitsee läheisyyssensorin.

Käytettävä sensori on Grove Time of Flight -etäisyyssensori. Tämä sensori käyttää lasermittaustekniikkaa etäisyyden havaitsemiseen. Sensorin mittausalue on 10mm - 2000mm (1cm - 2m), ja se raportoi arvot tällä alueella melko tarkasti. Etäisyydet yli 1000mm raportoidaan arvolla 8109mm.

Laseretäisyysmittari sijaitsee sensorin takapuolella, vastakkaisella puolella Grove-liitintä.

Tämä on I²C-sensori.

Yhdistä Time of Flight -sensori

Grove Time of Flight -sensori voidaan liittää Raspberry Pi:hin.

Tehtävä - yhdistä Time of Flight -sensori

Yhdistä Time of Flight -sensori.

Grove Time of Flight -sensori

  1. Työnnä Grove-kaapelin toinen pää Time of Flight -sensorin liittimeen. Se menee sisään vain yhdellä tavalla.

  2. Kun Raspberry Pi on sammutettu, yhdistä Grove-kaapelin toinen pää yhteen I²C-liittimistä, jotka on merkitty I²C Grove Base -hatissa, joka on kiinnitetty Pi:hin. Nämä liittimet sijaitsevat alarivissä, vastakkaisessa päässä GPIO-pinneistä ja kamerakaapelin liittimen vieressä.

Grove Time of Flight -sensori yhdistettynä I²C-liittimeen

Ohjelmoi Time of Flight -sensori

Raspberry Pi voidaan nyt ohjelmoida käyttämään liitettyä Time of Flight -sensoria.

Tehtävä - ohjelmoi Time of Flight -sensori

Ohjelmoi laite.

  1. Käynnistä Pi ja odota, että se käynnistyy.

  2. Avaa fruit-quality-detector-koodi VS Codessa joko suoraan Pi:llä tai yhdistä Remote SSH -laajennuksen kautta.

  3. Asenna rpi-vl53l0x Pip-paketti, Python-paketti, joka kommunikoi VL53L0X Time of Flight -etäisyyssensorin kanssa. Asenna se käyttämällä tätä pip-komentoa:

    pip install rpi-vl53l0x
    
  4. Luo uusi tiedosto tähän projektiin nimeltä distance-sensor.py.

    💁 Helppo tapa simuloida useita IoT-laitteita on tehdä jokainen eri Python-tiedostossa ja ajaa ne samanaikaisesti.

  5. Lisää seuraava koodi tähän tiedostoon:

    import time
    
    from grove.i2c import Bus
    from rpi_vl53l0x.vl53l0x import VL53L0X
    

    Tämä tuo käyttöön Grove I²C-väyläkirjaston ja sensorikirjaston, joka on rakennettu Grove Time of Flight -sensorin ydinlaitteistolle.

  6. Tämän alle lisää seuraava koodi sensorin käyttämiseksi:

    distance_sensor = VL53L0X(bus = Bus().bus)
    distance_sensor.begin()    
    

    Tämä koodi määrittää etäisyyssensorin käyttämällä Grove I²C-väylää ja käynnistää sensorin.

  7. Lopuksi lisää ääretön silmukka etäisyyksien lukemiseen:

    while True:
        distance_sensor.wait_ready()
        print(f'Distance = {distance_sensor.get_distance()} mm')
        time.sleep(1)
    

    Tämä koodi odottaa, että sensorista on saatavilla arvo, ja tulostaa sen konsoliin.

  8. Aja tämä koodi.

    💁 Muista, että tämä tiedosto on nimeltään distance-sensor.py! Varmista, että ajat sen Pythonilla, et app.py:llä.

  9. Näet etäisyysmittaukset konsolissa. Aseta esineitä sensorin lähelle ja näet etäisyysmittauksen:

    pi@raspberrypi:~/fruit-quality-detector $ python3 distance_sensor.py 
    Distance = 29 mm
    Distance = 28 mm
    Distance = 30 mm
    Distance = 151 mm
    

    Etäisyysmittari sijaitsee sensorin takapuolella, joten varmista, että käytät oikeaa puolta etäisyyden mittaamiseen.

    Etäisyysmittari Time of Flight -sensorin takapuolella osoittaa banaania

💁 Löydät tämän koodin code-proximity/pi -kansiosta.

😀 Läheisyyssensorin ohjelmointi onnistui!


Vastuuvapauslauseke:
Tämä asiakirja on käännetty käyttämällä tekoälypohjaista käännöspalvelua Co-op Translator. Vaikka pyrimme tarkkuuteen, huomioithan, että automaattiset käännökset voivat sisältää virheitä tai epätarkkuuksia. Alkuperäistä asiakirjaa sen alkuperäisellä kielellä tulisi pitää ensisijaisena lähteenä. Kriittisen tiedon osalta suositellaan ammattimaista ihmiskäännöstä. Emme ole vastuussa väärinkäsityksistä tai virhetulkinnoista, jotka johtuvat tämän käännöksen käytöstä.