Mündəricat:
- Addım 1: Adım 1: Parçaları hazırlayın
- Adım 2: Adım 2: Bütün Komponentləri birləşdirin
- Adım 3: Adım 3: Kod
- Adım 4: Adım 4: Bağlayın və Test edin
- Addım 5: Adım 5: Nəticəyə baxın
Video: Arduino İşləmə Qrafik Keçid: 5 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Salam, bu layihə sensorlar tərəfindən hiss edilə bilən görünməz hissəciklərdən görünən qrafika hazırlamaq üçündür. Bu vəziyyətdə, işığı və məsafəni idarə etmək üçün ultrasəs sensoru və fotorezistordan istifadə etdim. Sensordakı dəyişənləri emalda dəyişənlər halına gətirərək bunu təsəvvür edirəm. Sonra Arduino və Processing -i Arduino -nu İşləmə ilə idarə etmək üçün bağlayıram. Beləliklə, İşləmə qrafiki Arduino sensorunun dəyişənlərini tətbiq edəcək.
Addım 1: Adım 1: Parçaları hazırlayın
Bu layihəni hazırlamaq üçün sizə lazım olacaq komponentlər:
- 10k OHM
- Ultrasonik sensor
- Fotoresistor
- Arduino Uno
- 7 tel
Adım 2: Adım 2: Bütün Komponentləri birləşdirin
Fotorezistor və ultrasəs sensoru dəqiq aşkar etmək üçün bir yerə ehtiyac duyur. Bir az yer ayırın və fotorezistor üçün işıq haqqında düşünün.
Adım 3: Adım 3: Kod
*Həm Arduino, həm də Qenerasiya kitabxanası əlavə edin.
Arduino: kitabxanada "yeni ping" axtarın
İşlənir: kitabxanada "serial" axtarın
Arduino kodu:
#daxil edin
#tetikleyici_PİN 12 -ni təyin edin #ECHO_PIN 11 -i təyin edin #MAX_DISTANCE 200 -ü təyin edin
NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
int lightSensorPin = A0; int analogValue = 0;
void setup () {Serial.begin (9600); }
void loop () {int Value1 = sonar.ping_cm (); Dəyər1 = xəritə (Dəyər1, 1, 60, 500, 24); Dəyər1 = məhdudlaşdırın (Dəyər1, 24, 500);
analogValue = analogRead (lightSensorPin); int cVal1 = xəritə (analogValue, 200, 600, 249, 100);
int cVal2 = xəritə (analogValue, 200, 600, 247, 97);
int cVal3 = xəritə (analogValue, 200, 600, 243, 101);
int cVal4 = xəritə (analogValue, 200, 600, 243, 150);
gecikmə (50);
Serial.print (Dəyər1); Serial.print (",");
Serial. çap (cVal1); Serial.print (","); Serial. çap (cVal2); Serial.print (","); Serial. çap (cVal3); Serial.print (","); Serial. çap (cVal4); Serial.print (",");
Serial.println (); }
Qenerasiya kodu:
// sinif: (əsas) //
idxal emalı.serial.*;
int end = 10; String serialı; Serial port;
int pcount = 350; Particle p = new Particle [pcount]; int diaqonal; int e = 100;
void setup () {port = new Serial (this, "/dev/cu.usbmodem141101"); port.clear (); serial = port.readStringUntil (son); serial = sıfır; üçün (int i = 0; i
üzən fırlanma = 0;
void draw () {while (port.available ()> 0) {serial = port.readStringUntil (end); gecikmə (10); } if (serial! = null) {String a = split (serial, ','); println (a [0]); println (a [1]); println (a [2]); println (a [3]); println (a [4]); int nəticə1 = Integer.parseInt (a [0]); System.out.println (nəticə1); frameRate (nəticə1); int nəticə2 = Integer.parseInt (a [1]); System.out.println (nəticə2); int result3 = Integer.parseInt (a [2]); System.out.println (nəticə3); int result4 = Integer.parseInt (a [3]); System.out.println (nəticə4); int nəticə5 = Integer.parseInt (a [4]); System.out.println (nəticə5); fon (nəticə2, nəticə3, nəticə4); tərcümə (eni/2, hündürlüyü); fırlanma- = 0.0005; fırlanma (fırlanma); for (int i = 0; i diaqonal) {p = yeni hissəcik (); }}}}
// sinif: hissəcik //
sinif Partikül {float n; float r; üzmək o; üzmək c; üzmək d; int l; Particle () {l = 100; n = təsadüfi (3, en/2); r = təsadüfi (0.10, TWO_PI); o = təsadüfi (1, təsadüfi (1, en/n)); c = təsadüfi (180, 228); d = təsadüfi (160, 208); } void draw () {l ++; pushMatrix (); döndərmək (r); tərcümə (drawDist (), 1); ellips (10, 10, eni/o/4, eni/o/4); popMatrix (); o- = 0.06; } float drawDist () {return atan (n/o)*width/HALF_PI; }}
Adım 4: Adım 4: Bağlayın və Test edin
Addım 5: Adım 5: Nəticəyə baxın
Hər hansı bir şey ultrasəs sensoruna yaxın olduqda, hərəkət edən topun sürəti daha yüksək olacaq. Üstəlik, fotorezistorlu işığın idarə edilməsi fonda qaranlıq kimi işlənəcək.
Tövsiyə:
Arduino -da avtomatik işləmə: 5 addım
Arduino Automatizado Başlanğıc: Bu proqramlar ən çox istifadə edilə bilər. Başqa bir şey yoxdursa, o qədər də çox şey yoxdur. Əlbəttə ki, hər şey avtomatik olaraq avtomatlaşdırılıb və ya avtomatik olaraq
Excel, Arduino və İşləmə ilə FK (İrəli Kinematik): 8 addım
FK (Forward Kinematic) Excel, Arduino & Processing ilə: Forward Kinematic, 3D effektində End Effector dəyərlərini (x, y, z) tapmaq üçün istifadə olunur
Excel, Arduino və İşləmə ilə Kinematik İrəli: 8 Addım
Excel, Arduino & Processing ilə İrəli Kinematik: Forward Kinematic, 3D effektində End Effector dəyərlərini (x, y, z) tapmaq üçün istifadə olunur
LP-2010 AES17 1998 Kommutasiya Gücləndiricisi Aşağı keçid (aşağı keçid) Filtri: 4 addım
LP-2010 AES17 1998 Kommutasiya Gücləndiricisi Aşağı Keçid (aşağı keçid) Filtri: Bu, aşağı ötürmə filtrinin böyük bir D sinfi gücləndiricisidir. İncə işçilik, superiro performans, asan əlaqə bu məhsulun istifadəsini asanlaşdırır və sahibinə sahib olmağa dəyər. yüksək xərc performansı
Ürək dərəcəsi monitoru AD8232, Arduino, İşləmə: 4 addım
Ürək dərəcəsi monitoru AD8232, Arduino, Qenerasiya: Analog Cihazlar AD8232, milliVolt səviyyəsində EKG (ElectroCardioGram) siqnalları əldə etmək üçün hazırlanmış tam bir analoq ön tərəfdir. AD8232 -ni bağlamaq və ortaya çıxan EKG siqnalını bir osiloskopda görmək sadə bir iş olsa da, çətinlik