9.3. Kaapeli ja kehys

Pinon kaksi alinta kerrosta on kameran kohdalla helpointa pitää itsestäänselvyytenä, koska kaikki niiden toiminta tapahtuu piirin sisällä ja kamera hoitaa ne ilman mitään Python-koodia. Niihin kannattaa silti tutustua lyhyesti, sillä ne selittävät, mitä ”paikallisverkko” tarkoittaa ja missä raja muuhun infrastruktuuriin alkaa.

9.3.1. Fyysinen kerros

Alin kerros on varsinainen signalointi – johdot, valokuidut tai radioaallot, jotka kuljettavat bittejä kahden laitteen välillä. Kierretyn parikaapelin Ethernet koodaa kunkin bitin jännitteen muutoksena kiinteällä nopeudella. Wi-Fi moduloi samat bitit radiokantoaaltoon 2,4 GHz:n tai 5 GHz:n kaistalla. Molemmat tuottavat binäärinumerovirran kahden laitteistopalan välille; molemmat ovat sellaisia yksityiskohtia, jotka kameran piiri hoitaa ilman että ohjelmiston tarvitsee ajatella niitä.

Python-skriptin näkökulmasta fyysinen kerros on joko ”yhteys on pystyssä” tai ”yhteys on poikki”. network-moduuli raportoi tämän tilan Wi-Fi-rajapinnalla isconnected()-metodinsa kautta ja langallisella Ethernet-rajapinnalla yhteyden tilan kautta. Sen lisäksi kaikki muu tämän kerroksen toiminta on piilossa.

9.3.3. Mitä kamera tarjoaa

Kameralla on MAC-osoite jokaiselle verkkorajapinnalleen – Wi-Fi-osoite, jos kamerassa on langaton tuki, ja Ethernet-osoite, jos levyllä on vastaava portti. network-moduuli antaa siihen pääsyn network_interface.config("mac")-kutsulla sillä rajapintaoliolla, jota sovellus käyttää, kun sen tarvitsee lukea osoite. Joidenkin sovellusten on niin tehtävä, esimerkiksi rekisteröidäkseen laitteen laitekannan hallintajärjestelmään. Muussa tapauksessa tämä on ainoa säädin, jonka linkkikerros luovuttaa Pythonille.

Kaikki muu – kehystäminen, varsinainen MAC-liikenne johdolla tai ilmassa, kameran ja tukiaseman välinen neuvottelu käytettävästä kanavasta ja nopeudesta – tapahtuu kokonaan langattoman tai Ethernet-laitteiston sisällä. Seuraava sivu käsittelee sitä yhtä paikkaa, jossa Python-skriptillä on sananvaltaa linkkikerroksessa: kameran kertominen, mihin verkkoon liitytään.