Innehållsförteckning:

Matta med sensorer/ RF -kommunikation med Arduino Micro: 4 steg (med bilder)
Matta med sensorer/ RF -kommunikation med Arduino Micro: 4 steg (med bilder)

Video: Matta med sensorer/ RF -kommunikation med Arduino Micro: 4 steg (med bilder)

Video: Matta med sensorer/ RF -kommunikation med Arduino Micro: 4 steg (med bilder)
Video: DIY Radar With Ultrasonic Sensor And Chat-GPT Generated Arduino Code | Coders Cafe 2024, Juli
Anonim

Av SabinaStanFölj mer av författaren:

Marmorerade armband tillverkade av återvunna papprullar
Marmorerade armband tillverkade av återvunna papprullar
Marmorerade armband tillverkade av återvunna papprullar
Marmorerade armband tillverkade av återvunna papprullar
Mänskligt hjärta av papper
Mänskligt hjärta av papper
Mänskligt hjärta av papper
Mänskligt hjärta av papper
Glödande svampträdgård
Glödande svampträdgård
Glödande svampträdgård
Glödande svampträdgård

Om: Jag heter Sabina Stan. Jag är en bildkonstnär baserad i Rumänien. Jag arbetar med rep, papper och återvunna aluminiumburkar och jag kan göra nästan vad som helst (figurativt eller abstrakt) i tekniken jag använder, vilket är en … Mer om SabinaStan »

Jag avslutade nyligen installationen Equally diverse, som är gjord av en serie lampor som reagerar på sensorerna placerade i en matta under lamporna. Så här gjorde jag mattan med trycksensorer.:)

Steg 1: Hur man gör sensorerna

Hur man gör sensorerna
Hur man gör sensorerna
Hur man gör sensorerna
Hur man gör sensorerna
Hur man gör sensorerna
Hur man gör sensorerna

För trycksensorerna använde jag piezosensorer eftersom de är billiga, effektiva och enkla att använda. För att skapa RF -kommunikation använde jag en Arduino Micro och en RF -sändare.

Eftersom sensorerna ansluter till de analoga stiften kan du bara använda fyra sensorer för varje Arduino. Eftersom två sensorer inte kan avge en signal samtidigt är det egentligen inget problem.

För att ansluta sändaren till Arduino måste du ansluta, från höger till vänster när du tittar på den:

  • Den första stiftet till marken på mikrokontrollen
  • Den andra till VCC för Arduino Micro
  • Den sista stiftet till datapinnen (10, i mitt fall)

För att ansluta piezosensorerna måste du först klippa en tråd tillräckligt länge och ansluta:

  • Den del som går till mitten av piezoen till mikrokontrollerens analoga stift
  • Den del som är ansluten till sensorns kant till marken på Arduino

Mitt råd är att ansluta alla grunder för sensorerna och sedan ansluta en tråd till marken på Arduino.

Steg 2: Hur man sätter sensorerna i mattan

Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan
Hur man sätter sensorerna i mattan

Ta en fluff, för bristen på ett bättre ord, matta och placera mikrokontrollen bredvid en av kanterna med sensorerna placerade på mattan.

Se till att mikrokontrollern är någonstans säker från att trampas på eller i en låda som kan ses.

Ordna sensorerna så att de kommer att finnas i olika delar av mattan.

Dölj sensorerna under fibrerna i mattan medan du använder dem för att fästa trådarna som ansluter sensorerna till mikrokontrollen.

Det är allt! ^.^

Steg 3: Kod

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

Rekommenderad: