Kazalo:
- 1. korak: 1. korak: Pripravite dele
- 2. korak: 2. korak: Povežite vse komponente
- 3. korak: 3. korak: Koda
- 4. korak: 4. korak: Povežite se in preizkusite
- 5. korak: 5. korak: Oglejte si rezultat
Video: Grafični prehod obdelave Arduino: 5 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Živjo, ta projekt je namenjen ustvarjanju vidnih grafik iz nevidnih delcev, ki jih lahko zaznamo s senzorji. V tem primeru sem za nadzor svetlobe in razdalje uporabil ultrazvočni senzor in fotorezistor. Vizualiziram ga tako, da spremenljivke iz senzorja naredim kot spremenljivke pri obdelavi. Nato povežem Arduino in Processing za nadzor Arduina z Processingom. Tako bi grafika v obdelavi uporabljala spremenljivke senzorja Arduino.
1. korak: 1. korak: Pripravite dele
Za izdelavo tega projekta boste potrebovali naslednje komponente:
- 10 k OHM
- Ultrazvočni senzor
- Foto upor
- Arduino Uno
- 7 žic
2. korak: 2. korak: Povežite vse komponente
Fotorezistor in ultrazvočni senzor potrebujejo prostor za natančno zaznavanje. Prihranite nekaj prostora in razmislite o svetlobi za fotorezistor.
3. korak: 3. korak: Koda
*Dodajte knjižnico v Arduino in v obdelavo.
Arduino: v knjižnici poiščite "nov ping"
Obdelava: v knjižnici poiščite "serijsko"
Koda za Arduino:
#vključi
#define TRIGGER_PIN 12 #define ECHO_PIN 11 #define MAX_DISTANCE 200
Sonar NewPing (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
int lightSensorPin = A0; int analogValue = 0;
void setup () {Serial.begin (9600); }
void loop () {int Value1 = sonar.ping_cm (); Vrednost1 = zemljevid (Vrednost1, 1, 60, 500, 24); Vrednost1 = omeji (Vrednost1, 24, 500);
analogValue = analogRead (lightSensorPin); int cVal1 = zemljevid (analognaVrednost, 200, 600, 249, 100);
int cVal2 = zemljevid (analognaVrednost, 200, 600, 247, 97);
int cVal3 = zemljevid (analognaVrednost, 200, 600, 243, 101);
int cVal4 = zemljevid (analognaVrednost, 200, 600, 243, 150);
zamuda (50);
Serial.print (vrednost1); Serial.print (",");
Serijski.tisk (cVal1); Serial.print (","); Serijski.tisk (cVal2); Serial.print (","); Serijski.tisk (cVal3); Serial.print (","); Serijski.tisk (cVal4); Serial.print (",");
Serial.println (); }
Koda za obdelavo:
// razred: (osnovni) //
uvozna obdelava.serial.*;
int konec = 10; Niz nizov; Serijska vrata;
int pcount = 350; Delci p = novi Delci [pcount]; int diagonala; int e = 100;
void setup () {port = new Serial (this, "/dev/cu.usbmodem141101"); port.clear (); serial = port.readStringUntil (konec); serijski = ničelno; za (int i = 0; i
plavajoča rotacija = 0;
void draw () {while (port.available ()> 0) {serial = port.readStringUntil (konec); zamuda (10); } if (serial! = null) {String a = split (serial, ','); println (a [0]); println (a [1]); println (a [2]); println (a [3]); println (a [4]); int result1 = Integer.parseInt (a [0]); System.out.println (rezultat1); frameRate (rezultat1); int result2 = Integer.parseInt (a [1]); System.out.println (rezultat2); int result3 = Integer.parseInt (a [2]); System.out.println (rezultat3); int result4 = Integer.parseInt (a [3]); System.out.println (rezultat4); int result5 = Integer.parseInt (a [4]); System.out.println (rezultat 5); ozadje (rezultat2, rezultat3, rezultat4); prevesti (širina/2, višina); vrtenje- = 0,0005; vrtenje (vrtenje); za (int i = 0; i diagonala) {p = nov delec (); }}}}
// razred: Delci //
razred Delci {float n; plovec r; float o; float c; float d; int l; Delci () {l = 100; n = naključno (3, širina/2); r = naključno (0,10, TWO_PI); o = naključno (1, naključno (1, širina/n)); c = naključno (180, 228); d = naključno (160, 208); } void draw () {l ++; pushMatrix (); vrteti (r); prevesti (drawDist (), 1); elipsa (10, 10, širina/o/4, širina/o/4); popMatrix (); o- = 0,06; } float drawDist () {return atan (n/o)*width/HALF_PI; }}
4. korak: 4. korak: Povežite se in preizkusite
5. korak: 5. korak: Oglejte si rezultat
Hitrost premikajoče se žoge bo večja, če je kaj bližje ultrazvočnemu senzorju. Poleg tega se bo nadzor svetlobe s fotorezistorjem pojavil v obdelavi kot tema ozadja.
Priporočena:
Kako narediti lasten prehod WIFI za povezavo vašega Arduina z omrežjem IP?: 11 korakov (s slikami)
Kako narediti svoj lasten prehod WIFI, da povežete svoj Arduino z IP omrežjem?: Kot mnogi ljudje menite, da je Arduino zelo dobra rešitev za domačo avtomatizacijo in robotizacijo! Toda v smislu komunikacije Arduinos ima samo serijske povezave. Delam na robotu, ki ga je treba trajno povezati s strežnikom, ki deluje
Sistem za prepoznavanje in gašenje požara na osnovi obdelave slike: 3 koraki
Sistem za prepoznavanje in gašenje požara na osnovi obdelave slik: Pozdravljeni prijatelji, to je sistem za odkrivanje in gašenje požara na osnovi obdelave slik z uporabo Arduina
Serijski prehod UDP/IP za Arduino na osnovi ščita ESP8266: 8 korakov
Zaporedni prehod UDP/IP za Arduino, ki temelji na ESP8266 Shield: že leta 2016 sem objavil ta navodila z navodili »Kako narediti lasten prehod Wifi za povezavo vašega Arduina z omrežjem IP«. Ker sem naredil nekaj izboljšav kode in še vedno uporabljam to rešitev. Kljub temu je zdaj nekaj ščitov ESP8266 t
15 $ LoRa prehod/vozlišče ESP8266 PCB za izdelavo 3cmX8cm Velikost: 6 korakov
15 $ LoRa Gateway/Node ESP8266 PCB za izdelavo 3cmX8cm Velikost: Hej, kaj je, fantje? Akarsh tukaj iz CETech -a. Danes bomo naredili projekt, ki je preprosto vozlišče LoRa in ga lahko uporabite celo kot enokanalni prehod. Tukaj je mikrokrmilnik, ki sem ga uporabil, ESP8266, ki je povezan z ploščami LoRa
Zanimive smernice za programiranje obdelave za oblikovalca-nalaganje medijev in dogodek: 13 korakov
Zanimiva programska navodila za obdelavo za oblikovalca-Nalaganje medijev in dogodek: V obdelavo je mogoče naložiti veliko zunanjih podatkov, med katerimi se zelo pogosto uporabljajo tri vrste. Ločeno so slike, zvok in video. V tem poglavju se bomo pogovarjali o tem, kako podrobno naložiti zvok in video, skupaj z dogodkom