Innholdsfortegnelse:

Teppe med sensorer/ RF -kommunikasjon med Arduino Micro: 4 trinn (med bilder)
Teppe med sensorer/ RF -kommunikasjon med Arduino Micro: 4 trinn (med bilder)

Video: Teppe med sensorer/ RF -kommunikasjon med Arduino Micro: 4 trinn (med bilder)

Video: Teppe med sensorer/ RF -kommunikasjon med Arduino Micro: 4 trinn (med bilder)
Video: Amazing arduino project 2024, November
Anonim

Av SabinaStanFølg Mer av forfatteren:

Marmorbånd laget av resirkulerte pappruller
Marmorbånd laget av resirkulerte pappruller
Marmorbånd laget av resirkulerte pappruller
Marmorbånd laget av resirkulerte pappruller
Menneskelig hjerte laget av papir
Menneskelig hjerte laget av papir
Menneskelig hjerte laget av papir
Menneskelig hjerte laget av papir
Glødende sopphage
Glødende sopphage
Glødende sopphage
Glødende sopphage

Om: Jeg heter Sabina Stan. Jeg er en billedkunstner med base i Romania. Jeg jobber med tau, papir og resirkulerte aluminiumsbokser, og jeg kan gjøre omtrent alt (figurativt eller abstrakt) i teknikken jeg bruker, som er en … Mer om SabinaStan »

Jeg avsluttet nylig installasjonen Like variert, som er laget av en serie lamper som reagerer på sensorene plassert i et teppe under lampene. Her er hvordan jeg laget teppet med trykksensorer. Jeg håper du vil finne det nyttig.:)

Trinn 1: Hvordan lage sensorene

Hvordan lage sensorene
Hvordan lage sensorene
Hvordan lage sensorene
Hvordan lage sensorene
Hvordan lage sensorene
Hvordan lage sensorene

For trykksensorene brukte jeg piezosensorer fordi de er billige, effektive og enkle å bruke. For å lage RF -kommunikasjonen brukte jeg en Arduino Micro og en RF -sender.

Fordi sensorene kobles til de analoge pinnene, kan du bare bruke fire sensorer for hver Arduino. Siden to sensorer ikke kan avgi et signal samtidig, er det egentlig ikke et problem.

For å koble senderen til Arduino må du koble til, fra høyre til venstre mens du ser på den:

  • Den første pinnen til bakken til mikrokontrolleren
  • Den andre til VCC for Arduino Micro
  • Den siste pinnen til datapinnen (10, i mitt tilfelle)

For å koble til piezosensorene må du først kutte en ledning lenge nok og koble til:

  • Delen som går til midten av piezoen til den analoge pinnen til mikrokontrolleren
  • Delen som er koblet til kanten av sensoren til bakken av Arduino

Mitt råd er å koble alle jordene til sensorene og deretter koble en ledning til bakken på Arduino.

Trinn 2: Slik legger du sensorene i teppet

Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet
Hvordan sette sensorene i teppet

Ta en fluffy, for mangel på et bedre ord, teppe og plasser mikrokontrolleren ved siden av en av kantene med sensorene plassert på teppet.

Sørg for at mikrokontrolleren er et sted trygt fra å bli tråkket på eller i en boks som kan sees.

Ordne sensorene slik at de vil være i forskjellige deler av teppet.

Skjul sensorene under fibrene på teppet, mens du bruker dem til å feste ledningene som kobler sensorene til mikrokontrolleren.

Det er alt! ^.^

Trinn 3: Kode

#include const char *melding = ""; int piezo0 = A0; int piezo1 = A1; int piezo2 = A2; int piezo3 = A3; int sensorReading0 = 0; int sensorReading1 = 0; int sensorReading2 = 0; int sensorReading3 = 0; ugyldig oppsett () {pinMode (piezo0, INPUT); pinMode (piezo1, INPUT); pinMode (piezo2, INNGANG); pinMode (piezo3, INPUT); vw_set_ptt_inverted (true); vw_set_tx_pin (10); vw_setup (4000); } void loop () {sensorReading0 = analogRead (piezo0); if (sensorReading0 <100) {; melding = "Z"; vw_send ((uint8_t *) melding, strlen (melding)); vw_wait_tx (); forsinkelse (2000); } sensorReading1 = analogRead (piezo1); if (sensorReading1 <100) {message = "X"; vw_send ((uint8_t *) melding, strlen (melding)); vw_wait_tx (); forsinkelse (2000); } sensorReading2 = analogRead (piezo2); if (sensorReading2 <100) {message = "Y"; vw_send ((uint8_t *) melding, strlen (melding)); vw_wait_tx (); forsinkelse (2000); } sensorReading3 = analogRead (piezo3); if (sensorReading3 <100) {message = "W"; vw_send ((uint8_t *) melding, strlen (melding)); vw_wait_tx (); forsinkelse (2000); }}

Anbefalt: