Video: Koberec se senzory/ RF komunikace s Arduino Micro: 4 kroky (s obrázky)
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Autor: SabinaStan
O: Jmenuji se Sabina Stan. Jsem výtvarný umělec se sídlem v Rumunsku. Pracuji s lany, papírem a recyklovanými hliníkovými plechovkami a mohu dělat cokoli (obrazové nebo abstraktní) v technice, kterou používám, což je … Více o SabinaStan »
Nedávno jsem dokončil instalaci Stejně rozmanitá, která je vyrobena ze série lamp, které reagují na senzory umístěné v koberci pod lampami. Zde je návod, jak jsem koberec vyrobil se senzory tlaku. Doufám, že vám to bude užitečné.:)
Krok 1: Jak vyrobit senzory
U tlakových senzorů jsem použil piezo senzory, protože jsou levné, efektivní a snadno se používají. K vytvoření RF komunikace jsem použil Arduino Micro a RF vysílač.
Protože se senzory připojují k analogovým pinům, můžete pro každé Arduino použít pouze čtyři senzory. Protože dva senzory nemohou vysílat signál současně, není to ve skutečnosti problém.
Chcete -li připojit vysílač k Arduinu, musíte se připojit zprava doleva, jak se na něj díváte:
- První kolík k zemi mikrořadiče
- Druhý na VCC Arduino Micro
- Poslední pin na datový pin (v mém případě 10)
Chcete -li připojit piezo senzory, musíte nejprve odříznout dostatečně dlouhý vodič a připojit:
- Část, která jde doprostřed piezoelektrického pinu mikrokontroléru
- Část, která je připojena k okraji senzoru k zemi Arduina
Moje rada je připojit všechny uzemnění senzorů a poté připojit jeden vodič k zemi Arduina.
Krok 2: Jak umístit senzory do koberce
Vezměte si načechraně, pro nedostatek lepšího slova koberec a umístěte mikrořadič vedle jednoho z jeho okrajů se senzory umístěnými na koberci.
Ujistěte se, že je mikrořadič někde v bezpečí, aby se na něj nešlapalo nebo aby byl v krabici, na kterou je vidět.
Uspořádejte senzory tak, aby byly v různých částech koberce.
Skrýt senzory pod vlákny koberce a současně jimi zajistit vodiče, které spojují senzory s mikrořadičem.
To je vše! ^.^
Krok 3: Kód
#include const char *message = ""; int piezo0 = A0; int piezo1 = A1; int piezo2 = A2; int piezo3 = A3; int sensorReading0 = 0; int senzorReading1 = 0; int senzorReading2 = 0; int sensorReading3 = 0; neplatné nastavení () {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) {; zpráva = "Z"; vw_send ((uint8_t *) zpráva, strlen (zpráva)); vw_wait_tx (); zpoždění (2000); } sensorReading1 = analogRead (piezo1); if (sensorReading1 <100) {message = "X"; vw_send ((uint8_t *) zpráva, strlen (zpráva)); vw_wait_tx (); zpoždění (2000); } sensorReading2 = analogRead (piezo2); if (sensorReading2 <100) {message = "Y"; vw_send ((uint8_t *) zpráva, strlen (zpráva)); vw_wait_tx (); zpoždění (2000); } sensorReading3 = analogRead (piezo3); if (sensorReading3 <100) {message = "W"; vw_send ((uint8_t *) zpráva, strlen (zpráva)); vw_wait_tx (); zpoždění (2000); }}