جدول المحتويات:

الانتقال الرسومي لمعالجة اردوينو: 5 خطوات
الانتقال الرسومي لمعالجة اردوينو: 5 خطوات

فيديو: الانتقال الرسومي لمعالجة اردوينو: 5 خطوات

فيديو: الانتقال الرسومي لمعالجة اردوينو: 5 خطوات
فيديو: اتهموها باستغلال الموقف.. ممرضة أميركية تنشر فيديو غريب من داخل مستشفى 2024, شهر نوفمبر
Anonim
الانتقال الرسومي لمعالجة اردوينو
الانتقال الرسومي لمعالجة اردوينو

مرحبًا ، هذا المشروع مخصص لعمل رسومات مرئية من جزيئات غير مرئية يمكن أن تستشعرها أجهزة الاستشعار. في هذه الحالة ، استخدمت مستشعر الموجات فوق الصوتية والمقاوم الضوئي للتحكم في الضوء والمسافة. أتخيلها بجعل المتغيرات من المستشعر كمتغيرات في المعالجة. ثم أقوم بتوصيل Arduino والمعالجة للتحكم في Arduino مع المعالجة. وبالتالي ، فإن الرسم في المعالجة سيطبق متغيرات من مستشعر Arduino.

الخطوة 1: الخطوة 1: تحضير الأجزاء

الخطوة 1: تحضير الأجزاء
الخطوة 1: تحضير الأجزاء

فيما يلي المكونات التي ستحتاجها لإنشاء هذا المشروع:

- 10 كيلو أوم

- أجهزة الاستشعار بالموجات فوق الصوتية

- مقاوم ضوئي

- اردوينو أونو

- 7 أسلاك

الخطوة 2: الخطوة 2: توصيل كافة المكونات

الخطوة 2: قم بتوصيل كافة المكونات
الخطوة 2: قم بتوصيل كافة المكونات

يحتاج المقاوم الضوئي ومستشعر الموجات فوق الصوتية إلى مساحة للكشف الدقيق. وفر بعض المساحة وفكر في الضوء لمقاوم الضوء.

الخطوة 3: الخطوة 3: الكود

الخطوة الثالثة: الكود!
الخطوة الثالثة: الكود!

* إضافة مكتبة في كل من Arduino والمعالجة.

اردوينو: ابحث عن "ping جديد" في المكتبة

المعالجة: ابحث عن "المسلسل" في المكتبة

كود اردوينو:

#يشمل

#define TRIGGER_PIN 12 #define ECHO_PIN 11 #define MAX_DISTANCE 200

NewPing سونار (TRIGGER_PIN ، ECHO_PIN ، MAX_DISTANCE) ؛

int lightSensorPin = A0 ؛ int analogValue = 0 ؛

إعداد باطل () {Serial.begin (9600) ؛ }

حلقة باطلة () {int Value1 = sonar.ping_cm () ؛ Value1 = الخريطة (القيمة 1 ، 1 ، 60 ، 500 ، 24) ؛ Value1 = تقييد (Value1، 24، 500) ؛

analogValue = analogRead (lightSensorPin) ؛ int cVal1 = map (analogValue، 200، 600، 249، 100) ؛

int cVal2 = map (analogValue، 200، 600، 247، 97) ؛

int cVal3 = map (analogValue، 200، 600، 243، 101) ؛

int cVal4 = map (analogValue، 200، 600، 243، 150) ؛

تأخير (50) ؛

Serial.print (Value1) ؛ Serial.print ("،") ؛

Serial.print (cVal1) ؛ Serial.print ("،") ؛ Serial.print (cVal2) ؛ Serial.print ("،") ؛ Serial.print (cVal3) ؛ Serial.print ("،") ؛ Serial.print (cVal4) ؛ Serial.print ("،") ؛

Serial.println () ، }

رمز للمعالجة:

// فئة: (أساسية) //

معالجة الاستيراد. تسلسلي. * ؛

نهاية int = 10 ؛ مسلسل سلسلة منفذ تسلسلي؛

pcount int = 350 ؛ جسيم p = جسيم جديد [pcount] ؛ قطري دولي int e = 100 ؛

إعداد باطل () {port = new Serial (this، "/dev/cu.usbmodem141101") ؛ port.clear () ؛ المسلسل = port.readStringUntil (end) ؛ المسلسل = فارغ ؛ لـ (int i = 0 ؛ i

دوران تعويم = 0 ؛

رسم باطل () {while (port.available ()> 0) {serial = port.readStringUntil (end)؛ تأخير (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 (نتيجة 1) ؛ frameRate (نتيجة 1) ؛ int result2 = Integer.parseInt (a [1]) ، System.out.println (نتيجة 2) ؛ int result3 = Integer.parseInt (a [2]) ، System.out.println (نتيجة 3) ؛ int result4 = Integer.parseInt (a [3]) ، System.out.println (نتيجة 4) ؛ int result5 = Integer.parseInt (a [4]) ، System.out.println (نتيجة 5) ؛ الخلفية (النتيجة 2 ، النتيجة 3 ، النتيجة 4) ؛ ترجمة (عرض / 2 ، ارتفاع) ؛ دوران- = 0.0005 ؛ تناوب (تناوب) ؛ لـ (int i = 0 ؛ i قطري) {p = new Particle () ؛ }}}}

// صنف: جسيم //

فئة الجسيمات {float n؛ تعويم ص تعويم س. تعويم ج ؛ تعويم د ؛ كثافة العمليات ل ؛ جسيم () {l = 100 ؛ ن = عشوائي (3 ، عرض / 2) ؛ r = عشوائي (0.10، TWO_PI) ؛ o = عشوائي (1 ، عشوائي (1 ، عرض / ن)) ؛ ج = عشوائي (180 ، 228) ؛ د = عشوائي (160 ، 208) ؛ } رسم باطل () {l ++؛ pushMatrix () ؛ تناوب (ص) ؛ ترجمة (drawDist () ، 1) ؛ القطع الناقص (10 ، 10 ، العرض / س / 4 ، العرض / س / 4) ؛ popMatrix () ، س- = 0.06 ؛ } float drawDist () {return atan (n / o) * width / HALF_PI؛ }}

الخطوة 4: الخطوة 4: التوصيل والاختبار

الخطوة 4: الاتصال والاختبار
الخطوة 4: الاتصال والاختبار

الخطوة 5: الخطوة 5: انظر النتيجة

الخطوة 5: انظر النتيجة!
الخطوة 5: انظر النتيجة!

ستكون سرعة الكرة المتحركة أسرع عندما يكون أي شيء أقرب إلى جهاز الاستشعار بالموجات فوق الصوتية. بالإضافة إلى ذلك ، سيظهر التحكم في الضوء باستخدام المقاوم الضوئي أثناء المعالجة كظلام في الخلفية.

موصى به: