INHOUDSOPGAWE:

Stoor en herstel vooraf ingestelde waardes met NFC (TfCD): 4 stappe
Stoor en herstel vooraf ingestelde waardes met NFC (TfCD): 4 stappe

Video: Stoor en herstel vooraf ingestelde waardes met NFC (TfCD): 4 stappe

Video: Stoor en herstel vooraf ingestelde waardes met NFC (TfCD): 4 stappe
Video: De volledige cursus Nextjs - Leer Nextjs in 2 uur! | Reageer SSR + tijdcodes 2024, Julie
Anonim
Image
Image
Versamel materiaal
Versamel materiaal

Ons wil toets hoe dit werk om 'n sekere waarde of instelling aan te pas en later hierdie instelling te herroep. Vir hierdie eksperiment het ons 'n NFC -tag gebruik om die waarde daarop te lees en dan te stoor. Later kan die merker weer geskandeer word en die waarde teruggestuur word om 'n sekere instelling te herstel. Om die interaksie te simuleer, gebruik ons 'n Arduino Uno as kontroleerder en 'n RGB LED -ring as 'n verstelbare deel. Met 'n potensiometer kan die RGB -tint ingestel word. Die kommunikasie tussen die Arduino en die NFC -tag is opgestel met 'n NFC -skild.

(Hierdie projek was 'n oefening vir die TU Delft, Integrated Product Design, kursus: TfCD)

Stap 1: Versamel materiaal

Ons het die volgende materiaal vir hierdie projek gebruik:

- Arduino uno- NFC shield & tag (https://www.elecrow.com/wiki/index.php?title=NFC_Shield)- Mokugi t-WS2812B-8LED- Potentiometer (10 3B 42 5V)- Switch- 10K Ohm weerstand - (broodbord)

Stap 2: Gebruik die potensiometer om die RGB -LED aan te pas

Gebruik die potensiometer om die RGB -LED aan te pas
Gebruik die potensiometer om die RGB -LED aan te pas
Gebruik die potensiometer om die RGB -LED aan te pas
Gebruik die potensiometer om die RGB -LED aan te pas

Maak eers seker dat die LED waarmee u werk, 'n ander toetskode gebruik, en dan kan u die potensiometer aansluit om die RGB van die LED aan te pas. Bou hiervoor die stroombaan soos op die foto getoon. Koppel aan die krag (5V) en die grond en koppel die potensiometer aan pen A0.

As u die model wil opskaal en later verskillende waardes wil stoor, kan u by hierdie stap reeds meer potensiometers gebruik.

Die kode vir hierdie toets is ook aangeheg. Om die kode te laat werk, moet u die Adafruit_NeoPixel.h -biblioteek aflaai.

Ons meng die kleur van die RGB -LED soos volg: Ons het gekies om rooi aan te hou en dit na pers toe te pas deur blou in te meng. As die potensiometer hoog is, is blou heeltemal aan, as dit laag is, is blou af. ons karteer die lesing van die potmeter:

void ReadPot () {val = analogRead (Pot); val = kaart (val, 0, 1023, 0, 255);

Om die insetwaarde van die potensiometer te vermy, verander ons slegs die nuwe waarde van die blou LED as die verskil tussen die huidige en die vorige potwaarde hoog genoeg is:

int diff = abs (val-oldVal);

if (diff> TOLERANSIE) {ChangeLED ();

Stap 3: Integreer NFC

Integreer NFC
Integreer NFC
Integreer NFC
Integreer NFC

Die volgende stap is om die NFC te integreer. Koppel eers die NFC -skild aan die Arduino.

Voeg ook die skakelaar by soos op die foto's getoon. Die skakelaar word gebruik om te verander tussen lees en skryf na die NFC -tag.

Laai die biblioteek PN532.h af vir die NFC -skild. Die aangehegte kode is 'n aanpassing van die voorbeeldkodes wat in die biblioteek verskaf word. Dit word so verander dat die RGB -waarde van die LED oorgedra word.

U kan ook eers slegs die lesing of die skrif toets met die twee kodes wat apart aangeheg is.

Verduideliking finale kode

Eerstens word al die gebruikte veranderlikes geïnisialiseer.

In die nietige opstelling is die nfc -verbinding opgestel.

Die leemte -lus begin met die lees van die toestand van die skakelaar.

Geval 0 is wanneer die knoppie -status HOOG is. In hierdie geval word die funksie Reading () eers genoem. Dit lees die RGB -waarde wat in blok 8 van die NFC -tag op die eerste plek van die skikking gestoor is (blou = blok [0];). Dan word die funksie ChangeLEDRead () genoem, wat die kleur van die LED verander na die waarde wat pas van die NFC -etiket gelees is.

Geval 1 is wanneer die knoppie laag is. In hierdie geval word die funksie ReadPot () eers genoem, wat beteken dat u nou die kleur van die LED's met die potensiometer handmatig kan aanpas. Hierdie insette van die potmeter word dan gekarteer tot 'n waarde tussen 0 en 255. Die funksie ChangeLEDPot () beheer dan die LED -kleur met behulp van die insette van die potmeter. In hierdie geval word ook die funksie Writing () genoem. Dit verseker dat sodra 'n NFC -tag naby die skild geplaas word, die huidige waarde van blou in die eerste plek van blok 8 daarop geskryf sal word.

Stap 4: Moontlike aanpassings

Dieselfde beginsel kan ook in ander gevalle gebruik word, en is nie net beperk tot NFC nie. Daar is baie moontlike implementerings, waar u sekere waardes volgens u voorkeur wil aanpas, stoor en u persoonlike instellings dan later weer kan herstel.

Dink byvoorbeeld aan 'n gedeelde werkplek, waar u die hoogte van u stoel, die rugleuningshoek en die hoogte van die tafel aanpas volgens u persoonlike voorkeur. U bespaar u voorkeur deur vinnig te skandeer met 'n NFC -tag. As u 'n ander dag terugkom, skandeer u u etiket weer, en die werkplek verander na u instellings.

In plaas van 'n NFC -chip, kan u ook u slimfoon gebruik. 'N Spesiale toepassing of webwerf kan as koppelvlak gebruik word.

'N Ander implementering kan byvoorbeeld wees om 'n vingerafdruk te skandeer in plaas van om die NFC -etiket te skandeer. Die vingerafdruk kan dan gekoppel word aan 'n sekere gebruikersprofiel waar voorkeure gestoor word.

Aanbeveel: