جدول المحتويات:
- الخطوة 1: الأجزاء
- الخطوة 2: توصيل الأجزاء معًا
- الخطوة 3: تحميل وتعديل الكود حسب تفضيلاتك
- الخطوة 4: التحقق مما إذا كان يعمل
فيديو: أسهل شاشة VESC من Arduino: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:37
أهلا،
في هذا المشروع سوف نجعل شاشة VESC سهلة. قد يكون هذا مفيدًا عندما تريد مراقبة درجة حرارتك واكتشاف مشكلات مثل التي واجهتها مع ارتفاع درجة حرارة جهاز Vesc (الذي اكتشفته فقط باستخدام هذه الشاشة) أو يمكنك استخدامه لمجرد إرفاق الشاشة بلوحة التحكم أو المقاود ومراقبة سرعتك ، الأميال ، نسبة البطارية وغيرها الكثير. لذلك دعونا ندخل في البناء!
الخطوة 1: الأجزاء
1. - Arduino (أنا أستخدم UNO ولكن يمكنك أيضًا استخدام أي لوحة أخرى بما في ذلك esp8266 أو esp32)
2. - بعض الكابلات للتوصيل (حاول العثور على موصل للموصل الخاص بك لـ vesc لأنه سيكون من الأسهل بكثير فصل موصل كبير واحد مقابل الكثير من الكابلات الصغيرة)
3. - عرض (أنا أستخدم 124 × 32 Oled ولكن يمكنك استخدام أي شيء آخر عن طريق تغيير المكتبة)
4. - اختياري - اللوح (هذا للأشخاص الذين لا يريدون اللحام أو لأولئك الذين يريدون القيام بذلك مؤقتًا)
5. - كابل USB لاردوينو الخاص بك
الخطوة 2: توصيل الأجزاء معًا
العرض: Vcc إلى 3.3V
Gnd إلى Gnd
Sck (أو scl) إلى A5
Sda إلى A4
VESC: 5V من Vesc إلى Vin على Arduino
Gnd إلى Gnd
RX على VESC إلى TX على Arduino
TX على VESC إلى RX على Arduino
الخطوة 3: تحميل وتعديل الكود حسب تفضيلاتك
الشفرة:
/ ** 2020 code بواسطة شاشة Lukas Janky VESC مع شاشة Oled إذا كنت بحاجة إلى أن تسألني أي شيء ، فاتصل بي على [email protected] أو على تعليماتي. آمل أن يكون هذا سوف تساعدك.
*/
#include #include #include # include #include #include #include #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define SCREEN_HEIGHT 64 #define OLED_RESET 4 Adafruit_SSD1306 display (SCREEN_WIDTH، SCREEN_HEIGHT، & Wire، OLED_RES)
VescUart UART ؛
عدد الدورات في الدقيقة ؛ الجهد العائم تيار تعويم قوة كثافة العمليات تعويم أمفور تعويم تاش مسافة تعويم سرعة تعويم تعويم مياه تعويم معدل الخفافيش
SimpleKalmanFilter Filter1 (2، 2، 0.01) ؛
الإعداد باطل() {
Serial.begin (115200) ؛ display.begin (SSD1306_SWITCHCAPVCC ، 0x3C) ؛ display.fillScreen (0) ؛ display.display () ،
/ ** إعداد منفذ UART (Serial1 على Atmega32u4) * / // Serial1.begin (19200) ؛ بينما (! المسلسل) {؛}
/ ** تحديد المنافذ المراد استخدامها كـ UART * / UART.setSerialPort (& Serial) ؛
}
حلقة فارغة() {
////////// قراءة القيم ////////// if (UART.getVescValues ()) {
دورة في الدقيقة = (UART.data.rpm) / 7 ؛ // "7" هو عدد أزواج القطب في المحرك. تحتوي معظم المحركات على 14 عمودًا ، وبالتالي فإن الجهد 7 أزواج أقطاب = (UART.data.inpVoltage) ؛ الحالي = (UART.data.avgInputCurrent) ؛ الطاقة = الجهد * التيار ؛ amphour = (UART.data.ampHours) ؛ واتثور = أمبير * جهد ؛ تاش = (UART.data.tachometerAbs) / 42 ؛ // "42" هو عدد أعمدة المحرك مضروبًا في 3 مسافة = tach * 3.142 * (1/1609) * 0.72 * (16/185) ؛ // المحرك RPM x Pi x (1 / متر في ميل أو كم) x قطر العجلة x (بكرة المحرك / بكرة العجلة) السرعة = rpm * 3.142 * (60/1609) * 0.72 * (16/185) ؛ // Motor RPM x Pi x (ثواني في الدقيقة / متر في الميل) x قطر العجلة x (بكرة المحرك / بكرة العجلة) معدل البطارية = ((الجهد 38.4) / 12) * 100 ؛ // ((جهد البطارية - الحد الأدنى للجهد) / عدد الخلايا) × 100
}
////////// Filter ////////// // احسب القيمة المقدرة باستخدام مرشح كالمان لتعويم مرشح الطاقة = Filter1.updateEstimate (طاقة) ؛
display.fillScreen (0) ؛ display.setCursor (10 ، 5) ؛ display.setTextColor (1) ، display.setTextSize (1) ، عرض الطباعة (الجهد) ؛
display.setCursor (10 ، 20) ؛ display.setTextColor (1) ، display.setTextSize (1) ، عرض الطباعة (الطاقة) ؛
display.setCursor (10 ، 40) ؛ display.setTextColor (1) ، display.setTextSize (1) ، عرض الطباعة (دورة في الدقيقة) ؛
display.setCursor (10 ، 55) ؛ display.setTextColor (1) ، display.setTextSize (1) ، عرض الطباعة (الحالية) ؛ display.display () ،
تأخير (50) ؛
}
يمكنك تعديل وعرض أي قيمة من التعليمات البرمجية التي تريدها
الخطوة 4: التحقق مما إذا كان يعمل
الآن عندما تتحقق مما إذا كان يعمل ، فقد حان الوقت لتلحيمه وإضافة ملصقات إلى قيمك مثل Volts أو Amps. قم بلحامها على اردوينو نانو بحيث تكون أصغر أو يمكنك حتى نقلها باستخدام اردوينو آخر إلى وحدة التحكم عن بُعد الخاصة بك. ولكن هناك العديد من البرامج التعليمية الأخرى (ابحث عن قيم الإرسال باستخدام اردوينو). آمل أن يكون هذا قد ساعدك في حل مشكلتك أو إجراء قياس صغير لطيف عن بُعد.
موصى به:
درجة حرارة شاشة Arduino على شاشة LED TM1637: 7 خطوات
درجة حرارة شاشة Arduino على شاشة TM1637 LED: في هذا البرنامج التعليمي سوف نتعلم كيفية عرض درجة الحرارة باستخدام شاشة LED TM1637 ومستشعر DHT11 و Visuino
شاشة ماسنجر بتحكم بلوتوث -- شاشة LCD مقاس 16 × 2 -- Hc05 -- بسيط -- لوحة الملاحظات اللاسلكية: 8 خطوات
شاشة ماسنجر بتحكم بلوتوث || شاشة LCD مقاس 16 × 2 || Hc05 || بسيط || لوحة الملاحظات اللاسلكية: … ………………………………… تُستخدم لوحة الإعلانات لتحديث الناس بمعلومات جديدة أو إذا كنت تريد إرسال رسالة في الغرفة أو في النصف
اصنع شاشة ضوئية من شاشة LCD القديمة: 5 خطوات
اجعل الشاشة المضيئة من شاشة LCD القديمة: مرحبًا بالجميع ، هذا برنامج تعليمي حول كيفية جعل الشاشة المضيئة (الإضاءة الخلفية) عن طريق فصل شاشة LCD القديمة عن بعضها ثم تعديلها.إنه عملي جدًا إذا كان لديك شاشة LCD قديمة / مكسورة ، وتريد ذلك اصنع شيئًا مفيدًا منه ، بدلاً من القانون
شاشة LCD I2C / IIC - قم بتحويل شاشة SPI LCD إلى شاشة I2C LCD: 5 خطوات
شاشة LCD I2C / IIC | قم بتحويل شاشة SPI LCD إلى شاشة I2C LCD: يحتاج استخدام شاشة spi LCD إلى عدد كبير جدًا من التوصيلات التي يصعب فعلها ، لذلك وجدت وحدة يمكنها تحويل شاشة i2c LCD إلى شاشة spi LCD ، لذا فلنبدأ
تحويل شاشة الكمبيوتر المحمول إلى شاشة خارجية: 8 خطوات (بالصور)
تحويل شاشة الكمبيوتر المحمول الخاص بك إلى شاشة خارجية: هذا البرنامج التعليمي مخصص للمتحمسين الذين يفكرون في استخدام أجهزة الكمبيوتر المحمولة القديمة التي لديها بعض المشكلات الأخرى المتعلقة بمشكلة شاشة LCD مثل تلف MB. ملاحظة: لن أكون مسؤولاً عن أي خسارة أو ضرر من أي نوع كان بسبب هذا المشروع. لديّ Acer A