Cov txheej txheem:
- Kauj Ruam 1: Kauj Ruam 1: Cov Khoom Xav Tau
- Kauj Ruam 2: Kauj Ruam 2: Cov Txheej Txheem Mecánico-estructura
- Kauj Ruam 3: Kauj Ruam 3: Fabricación De Piezas 3D
- Kauj Ruam 4: Kauj Ruam 4: Qhov System Eléctrico/electrónico
- Kauj Ruam 5: Kauj Ruam 5: Software
- Kauj Ruam 6: Kauj Ruam 6: Consejos
Video: Proyecto Laboratorio De Mecatrónica (Two Wheel Balance Robot): 6 Kauj Ruam
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:26
En este proyecto se mostrara, el funcionamiento y el como hacer para elaborar un "Ob lub log sib npaug neeg hlau" paso a paso y con explicación y concejos. Este es un sistema que consiste en que el robot no se debe caer, se debe de mantener en el punto 0 de su punto de gravedad del giroscopio, y así poder moverlo y que este regrese por si mismo a su posición thawj.
Kauj Ruam 1: Kauj Ruam 1: Cov Khoom Xav Tau
o Mecánicos:
a 1 metro tsib varilla roscada (3/8)
b. 14 Tornillos M3 x.07 x 6
c. 24 tuercas M8 hex
d. 3 tornillos M4 x.07 x 6
e. Filamento PLA (500grs aprox)
o Electrónicos:
a 1 interruptor hloov
b. Arduino ib qho nano
c. 2 lub cev muaj zog 17
d. 2 tsav tsheb A4988
e. 3 tiv 1k
f. HC-05
g. NPE-6050
h. 2 capacitores de 100uf lossis 47uf
kuv. Batería lippo 11.1 V
o Cov khoom lag luam:
a 3 daim ntawv ntawm MDF (120 x 170 x 6 mm)
b. Placa PCB (8 x 14 cm kwv yees)
c. Soporte cov ntaub ntawv
d. 2 soporte rau lub cav
e. 2 loj
o Ntxiv:
Softwares recomendados para la realización del proyecto.
a Arduino IDE software
b. SolidWorks xyoo 2018
c. Kidcad software
Kauj Ruam 2: Kauj Ruam 2: Cov Txheej Txheem 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 posteriores usos. Estas placas son diferentes entre ellas, la placa tsis zoo dua li tendrá 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.
Kauj Ruam 3: Kauj Ruam 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.
Kauj Ruam 4: Kauj Ruam 4: Qhov System Eléctrico/electrónico
En este paso utilizamos una PCB, para elaborar las conexiones correspondientes, haciendo el enlace entre el arduino, el modulo de Bluetooth HC-05, un giroscopio 6050 y los tsav tsheb los los motores. Las conexiones tus tub las que se muestran en la imagen. Asegúrese de hacer las conexiones correctamente, ya que de no ser así puede ocasionar que el sistema no funcione correctamente y no lo obedezca.
Kauj Ruam 5: Kauj Ruam 5: Software
Para el programa utilizamos un arduino, a continuación anexamos una parte de la programación con su explicación correspondiente, al igual anexo link, con el codigo completo:
Pos tuav Configuracion
// default POSHOLD tswj kev nce
#define POSHOLD_P 2.00
#define POSHOLD_I 0.0
#define POSHOLD_IMAX 20 // degrees
#define POSHOLD_RATE_P 2.0
#define POSHOLD_RATE_I 0.08 // Kev tswj cua
#define POSHOLD_RATE_D 0.045 // sim 2 lossis 3 rau POSHOLD_RATE 1
#define POSHOLD_RATE_IMAX 20 // degrees
// default Navigation PID tau txais
#define NAV_P 1.4
#define NAV_I 0.20 // Kev tswj cua
#define NAV_D 0.08 //
#define NAV_IMAX 20 // degrees
#txhais MINCHECK 1100
#txhais MAXCHECK 1900
Aqui se modifica los gains para el poss hold del sistema.
Configuración lub gyro:
tsis muaj dab tsi Gyro_init () {
TWBR = ((F_CPU / 400000L) - 16) / 2; // hloov I2C moos tus nqi rau 400kHz
i2c_writeReg (MPU6050_ADDRESS, 0x6B, 0x80); // PWR_MGMT_1 - DEVICE_RESET 1
ncua (5);
i2c_writeReg (MPU6050_ADDRESS, 0x6B, 0x03); // PWR_MGMT_1 - QAUV 0; CYCLE 0; TEMP_DIS 0; CLKSEL 3 (PLL nrog Z Gyro siv)
i2c_writeReg (MPU6050_ADDRESS, 0x1A, MPU6050_DLPF_CFG); // CONFIG - EXT_SYNC_SET 0 (lov tes taw tus pin rau cov ntaub ntawv sync); default DLPF_CFG = 0 => ACC bandwidth = 260Hz GYRO bandwidth = 256Hz)
i2c_writeReg (MPU6050_ADDRESS, 0x1B, 0x18); // GYRO_CONFIG - FS_SEL = 3: teev tag nrho teev rau 2000 deg/sec
// pab kom I2C hla mus rau AUX I2C
#if defined (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
#ib
}
tsis muaj dab tsi Gyro_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS, 0x43);
GYRO_ORIENTATION (((rawADC [0] 2, // ntau: +/- 8192; +/- 2000 deg/sec
((rawADC [2] 2, ((rawADC [4] 2);
GYRO_Common ();
}
tsis muaj dab tsi ACC_init () {
i2c_writeReg (MPU6050_ADDRESS, 0x1C, 0x10); // ACCEL_CONFIG-AFS_SEL = 2 (Nplai puv = +/- 8G); ACCELL_HPF = 0 // nco ntsoov qee yam tsis raug hauv qhov tshwj xeeb.
// nco tseg: qee yam zoo li tsis raug hauv qhov tshwj xeeb ntawm no. Nrog AFS = 2 1G = 4096 tab sis raws li kuv ntsuas: 1G = 2048 (thiab 2048/8 = 256)
// lees paub ntawm no:
#if txhais (MPU6050_I2C_AUX_MASTER)
// ntawm theem no, MAG tau teeb tsa los ntawm thawj MAG pib ua haujlwm hauv I2C hla kev
// tam sim no peb teeb tsa MPU ua I2C Master ntaus ntawv los tswj MAG ntawm I2C AUX chaw nres nkoj (ua tiav ntawm no rau HMC5883)
i2c_writeReg (MPU6050_ADDRESS, 0x6A, 0b00100000); // USER_CTRL - DMP_EN = 0; FIFO_EN = 0; I2C_MST_EN = 1 (I2C hom hom); 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 qhev tsheb loj = 400kHz)
i2c_writeReg (MPU6050_ADDRESS, 0x25, 0x80 | MAG_ADDRESS); // I2C_SLV0_ADDR - I2C_SLV4_RW = 1 (nyeem ua haujlwm); I2C_SLV4_ADDR = MAG_ADDRESS
i2c_writeReg (MPU6050_ADDRESS, 0x26, MAG_DATA_REGISTER); // I2C_SLV0_REG - 6 cov ntaub ntawv bytes ntawm MAG tau khaws cia hauv 6 qhov sau npe. Thawj qhov chaw nyob yog 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 (3x2 bytes)
#ib
}
void ACC_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS, 0x3B);
ACC_ORIENTATION (((rawADC [0] 3, ((rawADC [2] 3, ((rawADC [4] 3);
ACC_Common ();
}
// Lub MAG nrhiav kev ua haujlwm yuav tsum raug hloov vim peb tam sim no tham nrog MPU lub cuab yeej
#if txhais (MPU6050_I2C_AUX_MASTER)
void Device_Mag_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS, 0x49); // 0x49 yog thawj chav nco rau EXT_SENS_DATA
#if txhais (HMC5843)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]), ((rawADC [2] << 8) | rawADC [3]), ((rawADC [4] << 8) | rawADC [5]));
#ib
#if txhais (HMC5883)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]), ((rawADC [4] << 8) | rawADC [5]), ((rawADC [2] << 8) | rawADC [3]));
#ib
#if txhais (MAG3110)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]), ((rawADC [2] << 8) | rawADC [3]), ((rawADC [4] << 8) | rawADC [5]));
#ib
}
#ib
#ib
Kauj Ruam 6: Kauj Ruam 6: Consejos
1. Diseño Mecánico: Siv cov cuab yeej siv los kho cov kab mob hauv lub cev, rau cov neeg siv que que le le quiere dar al neeg hlau, medir todo bien, para la hora de hacer cortes láser o impresiones en 3D, tsis muaj tengan que volver a hacerlo y todo quede a la perfección.
2. Kev kho mob: Hacer su propia PCB, rau 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 funcionamiento hiav txwv el correcto y no tengan que agreegar mas conexiones o volver a imprimir el PCB.
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 correctamente.
Pom zoo:
Arduino Tsheb Rov Qab Chaw Nres Tsheb Ceeb Toom - Cov Kauj Ruam ntawm Kauj Ruam: 4 Kauj Ruam
Arduino Tsheb Rov Qab Chaw Nres Tsheb Ceeb Toom | Cov kauj ruam ib kauj ruam: Hauv txoj haujlwm no, kuv yuav tsim qhov yooj yim Arduino Tsheb Rov Qab Tsheb Nres Tsheb Nres Sensor Siv Arduino UNO thiab HC-SR04 Ultrasonic Sensor. Qhov no Arduino raws Lub Tsheb Rov Qab ceeb toom tuaj yeem siv rau Kev Tshawb Fawb Txog Tus Kheej, Robot Ranging thiab lwm yam
Automated Model Railroad Layout Running Two Train (V2.0) - Arduino Raws: 15 Cov Kauj Ruam (nrog Duab)
Automated Model Railroad Layout Running Two Train (V2.0) | Arduino Raws: Kev siv tus qauv kev tsheb ciav hlau siv Arduino microcontrollers yog txoj hauv kev zoo ntawm kev koom ua ke microcontrollers, kev tsim qauv thiab qauv kev tsheb ciav hlau mus rau ib qho haujlwm. Muaj ib pawg ntawm cov haujlwm muaj nyob rau ntawm kev khiav tsheb ciav hlau ntawm tus qauv kev tsheb ciav hlau
DropArt - Precision Two Drop Photographic Collider: 11 Kauj Ruam (nrog Duab)
DropArt - Precision Two Drop Photographic Collider: Nyob zoo ib thiab tag nrho, Hauv qhov kev qhia no kuv nthuav qhia kuv qhov kev tsim rau lub khoos phis tawj tswj ob lub kua dej sib tsoo. Ua ntej peb pib ntawm cov ntsiab lus tsim, Kuv xav tias nws tsim nyog piav qhia meej tias lub hom phiaj ntawm kev tsim yog dab tsi
Makey -Saurus Rex - Makey Makey Balance Board: 6 Cov Kauj Ruam (nrog Duab)
Makey-Saurus Rex-Makey Makey Balance Board: Txawm koj hu nws ua Chrome Dino, T-Rex Game, Tsis muaj Game Hauv Is Taws Nem, lossis tsuas yog muaj kev cuam tshuam tsis meej, txhua tus zoo li tau paub txog qhov kev ua si dinosaur dhia saum no. Qhov kev ua si hauv Google-tsim no tshwm hauv koj lub vev xaib Chrome txhua lub sijhawm hauv
Yooj Yim Automated Point to Point Model Railroad Running Two Trains: 13 Cov Kauj Ruam (nrog Duab)
Yooj Yim Automated Point to Point Model Railroad Khiav Ob Lub Tsheb ciav hlau: Arduino microcontrollers yog txoj hauv kev zoo ntawm kev siv tus qauv kev tsheb ciav hlau teeb tsa vim tias lawv muaj cov nqi qis, qhib kho vajtse thiab software thiab zej zog loj los pab koj. Rau cov qauv kev tsheb ciav hlau, Arduino microcontrollers tuaj yeem ua pov thawj los ua ib qho