جدول المحتويات:
- الخطوة 1: الخطوة 1: المواد المطلوبة
- الخطوة 2: الخطوة 2: Sistema Mecánico-estructura
- الخطوة 3: الخطوة 3: Fabricación De Piezas 3D
- الخطوة 4: الخطوة 4: Sistema Eléctrico / electónico
- الخطوة 5: الخطوة 5: البرنامج
- الخطوة 6: الخطوة 6: Consejos
فيديو: Proyecto Laboratorio De Mecatrónica (روبوت بميزان عجلتين): 6 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
En este proyecto se mostrara، el funcionamiento y el como hacer para accorar un "Two wheel Balance robot" paso y con explicación y concejos. Este es un sistema que تتكون من روبوت لا حد ذاته ، يجب أن يكون الأمر كذلك ، لا يوجد أي شيء آخر.
الخطوة 1: الخطوة 1: المواد المطلوبة
س ميكانيكوس:
أ. 1 مترو دي فاريلا روسكادا (3/8)
ب. 14 tornillos M3 x.07 x 6
ج. 24 تيركاس M8 ست عشري
د. 3 tornillos M4 x.07 x 6
ه. Filamento PLA (500grs تقريبًا)
س Electrónicos:
أ. 1 مفتاح قاطع
ب. اردوينو أونو نانو
ج. عدد 2 نيما 17
د. عدد 2 سائق A4988
ه. 3 مقاومات 1 كيلو
F. HC-05
ز. MPU-6050
ح. 2 مكثف 100 فائق التوهج أو 47 فائق التوهج
أنا. باتيريا ليبو 11.1 فولت
س فابريكاداس بيزاس:
أ. 3 ألواح MDF (120 × 170 × 6 مم)
ب. Placa PCB (8 × 14 سم تقريبًا)
ج. سوبورت باتريا
د. 2 سوبورت بارا موتور
ه. 2 لانتاس
س إضافات:
تنصح البرامج بالبحث عن تنفيذ المشروع.
أ. برنامج Arduino IDE
ب. SolidWorks 2018
ج. برنامج Kidcad
الخطوة 2: الخطوة 2: Sistema Mecánico-estructura
El modelado de las piezas y estructura general se realizo en SolidWorks، primero se crearon las placas de MDF para checar el espacio disponible para postiores usos. Estas placas son diferentes entre ellas، la placa inferior taprá los orificios para los soportes de motores y batería، la central para nuestra PCB y la Superior solo Tendrá los orificios para darle su estructura.
الخطوة 3: الخطوة 3: Fabricación De Piezas 3D
Para el modelado de los soportes y llantas igualmente utilizamos SolidWorks، estos soportes pueden ser modificados si así lo desean، para un mejor funcionamiento، los soportes tienen orificios de.35 cm de diámetro، para una mejor sujeción.
الخطوة 4: الخطوة 4: Sistema Eléctrico / electónico
En este paso تستخدم ثنائي الفينيل متعدد الكلور ، مراسلين متقاربين ومتقاربين ، ومدخل إل اردوينو ، وموديول بلوتوث HC-05 ، و giroscopio 6050 y los driver de los motores. Las conexiones ابن las que se muestran en la imagen. Asegúrese de hacer las conexiones fixamente، ya que de no ser así puede ocasionar que el sistema no funcione fixamente y no lo obedezca.
الخطوة 5: الخطوة 5: البرنامج
Para el programa utilizamos un arduino، a Continación anexamos una parte de la programación con su explicación planse، al igual anexo link، con el codigo completeo:
وضع Holdconfiguracion
// مكاسب التحكم POSHOLD الافتراضية
#define POSHOLD_P 2.00
#define POSHOLD_I 0.0.0 تحديث
#define POSHOLD_IMAX 20 // درجات
#define POSHOLD_RATE_P 2.0
#define POSHOLD_RATE_I 0.08 // التحكم في الرياح
#define POSHOLD_RATE_D 0.045 // جرب 2 أو 3 لـ POSHOLD_RATE 1
#define POSHOLD_RATE_IMAX 20 // درجات
// مكاسب التنقل الافتراضية PID
#define NAV_P 1.4.2 تحديث
#define NAV_I 0.20 // التحكم في الرياح
#define NAV_D 0.08 //
# تعريف NAV_IMAX 20 // درجات
#define MINCHECK 1100
#define MAXCHECK 1900
المزيد من المعلومات
التكوين الدوران:
Gyro_init باطل () {
TWBR = ((F_CPU / 400000L) - 16) / 2 ؛ // قم بتغيير معدل ساعة I2C إلى 400 كيلو هرتز
i2c_writeReg (MPU6050_ADDRESS ، 0x6B ، 0x80) ؛ // PWR_MGMT_1 - DEVICE_RESET 1
تأخير (5) ؛
i2c_writeReg (MPU6050_ADDRESS ، 0x6B ، 0x03) ؛ // PWR_MGMT_1 - SLEEP 0 ؛ دورة 0 ؛ TEMP_DIS 0 ، CLKSEL 3 (PLL مع مرجع Z Gyro)
i2c_writeReg (MPU6050_ADDRESS ، 0x1A ، MPU6050_DLPF_CFG) ؛ // CONFIG - EXT_SYNC_SET 0 (تعطيل دبوس الإدخال لمزامنة البيانات) ؛ الافتراضي DLPF_CFG = 0 => عرض النطاق الترددي ACC = 260 هرتز GYRO النطاق الترددي = 256 هرتز)
i2c_writeReg (MPU6050_ADDRESS ، 0x1B ، 0x18) ؛ // GYRO_CONFIG - FS_SEL = 3: ضبط المقياس الكامل على 2000 درجة / ثانية
// تمكين تجاوز I2C لـ AUX I2C
# إذا تم تعريفه (MAG)
i2c_writeReg (MPU6050_ADDRESS ، 0x37 ، 0x02) ؛ // INT_PIN_CFG - INT_LEVEL = 0 ، INT_OPEN = 0 ، LATCH_INT_EN = 0 ، INT_RD_CLEAR = 0 ، FSYNC_INT_LEVEL = 0 ، FSYNC_INT_EN = 0 ، I2C_BYPASS_EN = 1 ، CLKOUT_EN = 0
#إنهاء إذا
}
Gyro_getADC () باطل {
i2c_getSixRawADC (MPU6050_ADDRESS ، 0x43) ؛
GYRO_ORIENTATION (((rawADC [0] 2 ، // النطاق: +/- 8192 ؛ +/- 2000 درجة / ثانية
((rawADC [2] 2 ،
((rawADC [4] 2) ؛
GYRO_Common () ،
}
ACC_init باطل () {
i2c_writeReg (MPU6050_ADDRESS ، 0x1C ، 0x10) ؛ // ACCEL_CONFIG - AFS_SEL = 2 (المقياس الكامل = +/- 8 جم) ؛ ACCELL_HPF = 0 // لاحظ وجود خطأ في المواصفات.
// ملاحظة: يبدو أن هناك خطأ ما في المواصفات هنا. مع AFS = 2 1G = 4096 ولكن وفقًا لقياسي: 1G = 2048 (و 2048/8 = 256)
// تم التأكيد هنا: https://www.multiwii.com/forum/viewtopic.php؟f=8&t …
# إذا تم تعريفه (MPU6050_I2C_AUX_MASTER)
// في هذه المرحلة ، يتم تكوين MAG عبر وظيفة MAG init الأصلية في وضع تجاوز I2C
// الآن نقوم بتكوين MPU كجهاز I2C Master للتعامل مع MAG عبر منفذ I2C AUX (تم القيام به هنا لـ HMC5883)
i2c_writeReg (MPU6050_ADDRESS ، 0x6A ، 0b00100000) ؛ // USER_CTRL - DMP_EN = 0 ؛ FIFO_EN = 0 ، I2C_MST_EN = 1 (الوضع الرئيسي I2C) ؛ I2C_IF_DIS = 0 ، FIFO_RESET = 0 ، I2C_MST_RESET = 0 ، SIG_COND_RESET = 0
i2c_writeReg (MPU6050_ADDRESS ، 0x37 ، 0x00) ؛ // INT_PIN_CFG - INT_LEVEL = 0 ، INT_OPEN = 0 ، LATCH_INT_EN = 0 ، INT_RD_CLEAR = 0 ، FSYNC_INT_LEVEL = 0 ، FSYNC_INT_EN = 0 ، I2C_BYPASS_EN = 0 ، CLKOUT_EN = 0
i2c_writeReg (MPU6050_ADDRESS ، 0x24 ، 0x0D) ؛ // I2C_MST_CTRL - MULT_MST_EN = 0 ؛ WAIT_FOR_ES = 0 ، SLV_3_FIFO_EN = 0 ، I2C_MST_P_NSR = 0 ، I2C_MST_CLK = 13 (ناقل سرعة الرقيق I2C = 400 كيلو هرتز)
i2c_writeReg (MPU6050_ADDRESS ، 0x25 ، 0x80 | MAG_ADDRESS) ؛ // I2C_SLV0_ADDR - I2C_SLV4_RW = 1 (قراءة العملية) ؛ I2C_SLV4_ADDR = MAG_ADDRESS
i2c_writeReg (MPU6050_ADDRESS، 0x26، MAG_DATA_REGISTER) ؛ // I2C_SLV0_REG - يتم تخزين 6 بايتات من MAG في 6 سجلات. عنوان التسجيل الأول هو MAG_DATA_REGISTER
i2c_writeReg (MPU6050_ADDRESS ، 0x27 ، 0x86) ؛ // I2C_SLV0_CTRL - I2C_SLV0_EN = 1 ؛ I2C_SLV0_BYTE_SW = 0 ، I2C_SLV0_REG_DIS = 0 ، I2C_SLV0_GRP = 0 ، I2C_SLV0_LEN = 3 (3 × 2 بايت)
#إنهاء إذا
}
ACC_getADC باطل () {
i2c_getSixRawADC (MPU6050_ADDRESS ، 0x3B) ؛
ACC_ORIENTATION (((rawADC [0] 3،
((rawADC [2] 3 ،
((rawADC [4] 3) ؛
ACC_Common () ،
}
// يجب استبدال وظيفة التحصيل MAG لأننا نتحدث الآن إلى جهاز MPU
#if تعريف (MPU6050_I2C_AUX_MASTER)
إلغاء Device_Mag_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS ، 0x49) ؛ // 0x49 هي غرفة الذاكرة الأولى لـ EXT_SENS_DATA
#if تعريف (HMC5843)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]) ،
((rawADC [2] << 8) | rawADC [3]) ،
((rawADC [4] << 8) | rawADC [5])) ؛
#إنهاء إذا
#if تعريف (HMC5883)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]) ،
((rawADC [4] << 8) | rawADC [5]) ،
((rawADC [2] << 8) | rawADC [3])) ؛
#إنهاء إذا
#if تعريف (MAG3110)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]) ،
((rawADC [2] << 8) | rawADC [3]) ،
((rawADC [4] << 8) | rawADC [5])) ؛
#إنهاء إذا
}
#إنهاء إذا
#إنهاء إذا
الخطوة 6: الخطوة 6: Consejos
1. Diseño Mecánico: Utilizar y hacer el diseño que mas les convenga، para el uso que se le quiere dar al robot، medir todo bien، para la hora de hacer cortes láser o Impresiones en 3D، no tengan que volver a hacerlo y todo quede a la perfección.
2. Diseño eléctrico: Hacer su propia PCB، para que tengan bien ubicadas las conexiones que tienen que hacer، de igual manera hacer primero las conexiones en una protoboard، para comprobar que cuando la pongan en el PCB el funcionamient كيو إتفاق مع كونيكسيونس أو طباعة وثيقة ثنائي الفينيل متعدد الكلور.
3. Diseño Software: Guiarse con la programación base expuesta، pero tratar de hacer su propia programación، para llegar a entender bien el funcionamiento y en caso de que no funcionar la programación saber como cambiar las instrucciones para que funcione التصحيح.
موصى به:
اردوينو - روبوت حل المتاهة (MicroMouse) روبوت يتبع الجدار: 6 خطوات (بالصور)
اردوينو | روبوت حل المتاهة (MicroMouse) روبوت يتبع الحائط: مرحبًا أنا إسحاق وهذا هو أول روبوت لي & quot؛ Striker v1.0 & quot؛. تم تصميم هذا الروبوت لحل متاهة بسيطة. في المنافسة ، كان لدينا متاهتان والروبوت كان قادرًا على التعرف عليهم. قد تتطلب أي تغييرات أخرى في المتاهة تغييرًا في
روبوت متحكم فيه RC على XLR8! روبوت التعليم: 5 خطوات
روبوت متحكم فيه RC على XLR8! روبوت تعليمي: مرحبًا ، في هذه المقالة ، سأوضح لك كيفية بناء روبوت أساسي. كلمة & quot؛ روبوت & quot؛ تعني حرفياً & quot؛ Slave & quot؛ أو "عامل". بفضل التطورات في الذكاء الاصطناعي ، لم تعد الروبوتات مجرد جزء من الخيال العلمي لإيساك أسيموف
روبوت موازنة / روبوت ذو 3 عجلات / روبوت STEM: 8 خطوات
موازنة الروبوت / روبوت ذو 3 عجلات / روبوت STEM: لقد بنينا موازنة مجمعة وروبوت ثلاثي العجلات للاستخدام التعليمي في المدارس والبرامج التعليمية بعد المدرسة. يعتمد الروبوت على Arduino Uno ، وهو درع مخصص (يتم توفير جميع تفاصيل البناء) ، وحزمة بطارية Li Ion (جميعها
كيفية تجميع ذراع روبوت خشبي مثير للإعجاب (الجزء 2: روبوت لتجنب العوائق) - استنادًا إلى الميكرو: البت: 3 خطوات
كيفية تجميع ذراع روبوت خشبي مثير للإعجاب (الجزء 2: روبوت لتجنب العوائق) - استنادًا إلى الميكرو: BIT: قدمنا سابقًا Armbit في وضع تتبع الخط. بعد ذلك ، نقدم لك كيفية تثبيت Armbit في تجنب وضع العوائق
كيفية تجميع ذراع روبوت خشبي مثير للإعجاب (الجزء 1: روبوت لتتبع الخط) - استنادًا إلى Micro: Bit: 9 خطوات
كيفية تجميع ذراع روبوت خشبي مثير للإعجاب (الجزء 1: روبوت لتتبع الخطوط) - استنادًا إلى Micro: Bit: هذا الرجل الخشبي له ثلاثة أشكال ، إنه مختلف تمامًا ومثير للإعجاب. ثم دعونا ندخلها واحدًا تلو الآخر