Sisällysluettelo:

Raspberry Pi NFC -vaatteiden seuranta: 5 vaihetta (kuvilla)
Raspberry Pi NFC -vaatteiden seuranta: 5 vaihetta (kuvilla)

Video: Raspberry Pi NFC -vaatteiden seuranta: 5 vaihetta (kuvilla)

Video: Raspberry Pi NFC -vaatteiden seuranta: 5 vaihetta (kuvilla)
Video: CS50 2015 - Week 10 2024, Heinäkuu
Anonim
Raspberry Pi NFC -vaatteiden seuranta
Raspberry Pi NFC -vaatteiden seuranta

Jos olet kuin minä, sinulla on lattialla pieni kasa vaatteita, jotka voivat olla likaisia tai eivät. Tämä voi sisältää farkut, mekkopaidat ja tuskin kuluneet shortsit. Joten miten voit kertoa, mitkä vaatteet ovat puhtaita tai likaisia? Keksin tavan seurata erilaisia vaatekappaleita NFC: n ja Raspberry Pi: n avulla. Aseta NFC -kortti taskuun ja skannaa se, jolloin saat tietoja kyseisestä vaatteesta sekä mahdollisuuden vaihtaa se.

Vaihe 1: Osien kerääminen

Osien kerääminen
Osien kerääminen
Osien kerääminen
Osien kerääminen
Osien kerääminen
Osien kerääminen
Osien kerääminen
Osien kerääminen

DFRobot otti yhteyttä minuun sponsoroimaan tätä projektia, joten he lähettivät Raspberry Pi 3- ja PN532 NFC -moduulin sekä 5 NFC -korttia. NFC -moduuli käyttää UART -yhteyttä kommunikoidakseen isäntälaitteen kanssa, joten yritin aluksi käyttää Raspberry Pi -laitetta, mutta törmäsin useisiin ongelmiin. Kirjastot olivat monimutkaisia ja vaikeasti liitettävissä Pythoniin, joten päätin käyttää Arduino Mega -laitetta kommunikointiin NFC -moduulin kanssa. Arduino Mega oli välttämätön, koska siihen tarvitaan kaksi UART -porttia, yksi NFC -moduulille ja toinen tietojen lähettämistä varten.

Vaihe 2: Pi: n asentaminen

Pi: n asentaminen
Pi: n asentaminen

Menin Raspberry Pi -lataussivulle ja latasin uusimman Raspbian -version. Purain tiedoston ja laitoin sen kätevään hakemistoon. Et voi vain kopioida/liittää.img -tiedostoa SD -kortille, sinun on "poltettava se" kortille. Voit ladata polttavan apuohjelman, kuten Etcher.io, siirtääksesi käyttöjärjestelmän kuvan helposti. Kun.img -tiedosto oli SD -kortillani, asetin sen Raspberry Pi -laitteeseen ja annoin sille virran. Noin 50 sekunnin kuluttua irrotin virtajohdon ja poistin SD -kortin. Seuraavaksi laitoin SD -kortin takaisin tietokoneeseeni ja menin "boot" -hakemistoon. Avasin Notepadin ja tallensin sen tyhjäksi tiedostoksi nimeltä "ssh" ilman laajennusta. Lisäsin myös tiedoston nimeltä "wpa_supplicant.conf" ja laitoin tähän tekstin: network = {ssid = psk =} Sitten tallensin ja poistin kortin ja asetin sen takaisin Raspberry Pi 3: een. Tämän pitäisi nyt mahdollistaa SSH: n käyttö ja WiFi -yhteyden muodostaminen.

Vaihe 3: Johdotus

Johdotus
Johdotus

Johdotus tähän on melko yksinkertainen. Liitin Rx -nastan Megan Tx1: een ja Tx -nastan Megan Rx1 -nastaan. 5v menee 5v, ja GND menee GND: hen. Yhdistin myös Arduino Megan Raspberry Pi 3: een pienellä USB -kaapelilla.

Vaihe 4: Ohjelmointi

Tiedostoja on kaksi, yksi Arduino Megalle ja toinen Raspberry Pi: lle. Arduino Mega lähettää ensin kättelypyynnön moduulille ja odottaa vastausta. Kun vastaus on annettu, Mega alkaa kyselemään laitetta nähdäkseen, onko kortteja skannattu. Jos näin on, kortin tunnus luetaan. Jotta voisin lähettää lyhyitä tietoja Pi: lle, käytin pseudo-tarkistussumman algoritmia yhdistämään viisi tavua yhdeksi numeroksi. Ensimmäiset neljä tavua lasketaan yhteen kerran ja viimeinen tavu lisätään kahdesti. On myös taulukko, joka sisältää kunkin kortin numerot. Kun kortti skannataan, sen tarkistussumma verrataan taulukossa oleviin ja täsmää. Lopuksi tiedot lähetetään sarjaliikenteen kautta Raspberry Pi: lle jatkokäsittelyä varten.

Raspberry Pi odottaa uusia sarjatietoja ja tulostaa ne. Koodin alussa luodaan sanakirja, joka määrittää, miten kukin vaatekappale vastaa kutakin korttia. Jokaisella on nimi, kortin numero, väri ja tila (puhdas tai likainen). Voit vaihtaa tilan, kun vaate on skannattu.

Vaihe 5: Laitteen käyttö

Image
Image

Aloitin asettamalla kortit vaatteeni taskuihin ja tarkistamalla heidän henkilötunnuksensa, tallentamalla tiedot sanakirjaan. Jos haluan nähdä, ovatko ne puhtaita tai likaisia, pidän ne vain RFID -lukijaa vasten, joka näyttää tiedot sitten SSH: n kautta.

Suositeltava: