Სარჩევი:
- ნაბიჯი 1: ნაბიჯი 1: მასალის მოთხოვნა
- ნაბიჯი 2: ნაბიჯი 2: Sistema Mecánico-estructura
- ნაბიჯი 3: ნაბიჯი 3: Fabricación De Piezas 3D
- ნაბიჯი 4: ნაბიჯი 4: Sistema Eléctrico/electrónico
- ნაბიჯი 5: ნაბიჯი 5: პროგრამული უზრუნველყოფა
- ნაბიჯი 6: ნაბიჯი 6: Consejos
ვიდეო: Proyecto Laboratorio De Mecatrónica (ორი ბორბლის ბალანსის რობოტი): 6 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ეს არის ყველაზე პოპულარული პროდიუსერი, რომლითაც თქვენ შეძლებთ გამოიყენოთ ორი ბორბლიანი ბალანსის რობოტი, რომელიც დაგეხმარებათ კონცეფციის ახსნაში. Este es un sistema que შედგება robot no se debe caer, de de de 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 original.
ნაბიჯი 1: ნაბიჯი 1: მასალის მოთხოვნა
o მექანიკური:
ა 1 metro de varilla roscada (3/8)
ბ 14 ტორნილო M3 x.07 x 6
გ 24 tuercas M8 hex
დ 3 ტორნილო M4 x.07 x 6
ე Filamento PLA (დაახლოებით 500 გრ.)
o ელექტრონიკები:
ა 1 გამთიშველი გადამრთველი
ბ არდუინო უნო ო ნანო
გ 2 ძრავა 17
დ 2 მძღოლი A4988
ე 3 წინააღმდეგობა 1 კ
ვ HC-05
ზ MPU-6050
თ 2 capacitores de 100uf o 47uf
მე. ბატერია ლიპო 11.1 ვ
o Piezas fabricadas:
ა 3 ადგილი MDF (120 x 170 x 6 მმ)
ბ Placa PCB (დაახლოებით 8 x 14 სმ)
გ Soporte batería
დ 2 გზა ძრავისთვის
ე 2 ლანტა
o დამატებითი:
პროგრამული უზრუნველყოფა გვთავაზობს წარმოების პროცესს.
ა Arduino IDE პროგრამული უზრუნველყოფა
ბ SolidWorks 2018
გ Kidcad პროგრამული უზრუნველყოფა
ნაბიჯი 2: ნაბიჯი 2: Sistema Mecánico-estructura
SolidWorks– ის ძირითადი მოდელი, რომელიც გამოიყენება MDF– სთვის, არის გაფართოებული სამუშაოები შემდგომი გამოყენებისათვის. ეს არის პლაკატები, რომლებიც განსხვავდება მათგან, რომლებიც წარმოიქმნება ქვემოთ მოყვანილ ტენდერებში, რომლებიც წარმოიქმნება ძრავის ძრავისა და ძრავის ცენტრალურ ცენტრში, ასევე ცენტრალური სისტემისთვის, რომელიც დაფუძნებულია PCB– ზე და უმაღლესი სოლო ტენდერებზე, რომლებიც დაკავშირებულია სტრუქტურასთან.
ნაბიჯი 3: ნაბიჯი 3: Fabricación De Piezas 3D
SolidWorks, estop soportes pueden ser modificados si aso lo desean, para un meor funcionamiento, los soportes tienen orificios de.35 cm de dimetro, para una mejor sujeción.
ნაბიჯი 4: ნაბიჯი 4: Sistema Eléctrico/electrónico
PCB– ის გამოყენებისათვის, PCB– ის კორესპონდენციის შემუშავების მიზნით, შეგიძლიათ გამოიყენოთ arduino, Bluetooth HC-05 მოდული, გიროსკოპია 6050 და los motores– ის მძღოლები. Las conexiones son 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.
ნაბიჯი 5: ნაბიჯი 5: პროგრამული უზრუნველყოფა
პროგრამის გამოყენებისათვის arduino, გაგრძელება anexamos una parte de la programación con ახსნაში კორესპონდენციის, igual anexo link, con el codigo completeo:
პოზიციის კონფიგურაცია
// ნაგულისხმევი POSHOLD კონტროლის მიღწევები
#განსაზღვრეთ POSHOLD_P 2.00
#განსაზღვრეთ POSHOLD_I 0.0
#განსაზღვრეთ POSHOLD_IMAX 20 // გრადუსი
#განსაზღვრეთ POSHOLD_RATE_P 2.0
#განსაზღვრეთ POSHOLD_RATE_I 0.08 // ქარის კონტროლი
#განსაზღვრეთ POSHOLD_RATE_D 0.045 // სცადეთ 2 ან 3 POSHOLD_RATE 1 -ისთვის
#განსაზღვრეთ POSHOLD_RATE_IMAX 20 // გრადუსი
// ნაგულისხმევი ნავიგაციის PID მოგება
#განსაზღვრეთ NAV_P 1.4
#განსაზღვრეთ NAV_I 0.20 // ქარის კონტროლი
#განსაზღვრეთ NAV_D 0.08 //
#განსაზღვრეთ NAV_IMAX 20 // გრადუსი
#განსაზღვრეთ MINCHECK 1100
#განსაზღვრეთ MAXCHECK 1900
Aqui se modifica los gains para el poss hold del sistema.
გირო კონფიგურაცია:
ბათილია 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 - ძილი 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 გამტარობა = 260Hz GYRO გამტარობა = 256Hz)
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
#დაასრულე თუ
}
void Gyro_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS, 0x43);
GYRO_ORIENTATION (((rawADC [0] 2, // დიაპაზონი: +/- 8192; +/- 2000 გრადუსი/წმ
((rawADC [2] 2, ((rawADC [4] 2);
GYRO_ საერთო ();
}
ბათილია ACC_init () {
i2c_writeReg (MPU6050_ADDRESS, 0x1C, 0x10); // ACCEL_CONFIG-AFS_SEL = 2 (სრული მასშტაბი = +/- 8G); ACCELL_HPF = 0 // გაითვალისწინეთ, რომ რაღაც არ არის სწორი სპეციფიკაციაში.
// შენიშვნა: როგორც ჩანს რაღაც არასწორია აქ სპეციფიკაციაში. AFS = 2 1G = 4096 მაგრამ ჩემი გაზომვის მიხედვით: 1G = 2048 (და 2048/8 = 256)
// დადასტურებულია აქ:
#განსაზღვრული (MPU6050_I2C_AUX_MASTER)
// ამ ეტაპზე, MAG არის კონფიგურირებული ორიგინალური MAG init ფუნქციის მეშვეობით I2C შემოვლითი რეჟიმში
// ახლა ჩვენ კონფიგურაციას ვაკეთებთ MPU- ს, როგორც I2C სამაგისტრო მოწყობილობას, რომელიც 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 (3x2 ბაიტი)
#დაასრულე თუ
}
ბათილია ACC_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS, 0x3B);
ACC_ORIENTATION (((rawADC [0] 3, ((rawADC [2] 3, ((rawADC [4] 3);
ACC_Common ();
}
// MAG შეძენის ფუნქცია უნდა შეიცვალოს, რადგან ჩვენ ახლა ვესაუბრებით MPU მოწყობილობას
#განსაზღვრული (MPU6050_I2C_AUX_MASTER)
void Device_Mag_getADC () {
i2c_getSixRawADC (MPU6050_ADDRESS, 0x49); // 0x49 არის პირველი მეხსიერების ოთახი EXT_SENS_DATA– სთვის
#განსაზღვრული (HMC5843)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]), ((rawADC [2] << 8) | rawADC [3]), ((rawADC [4] << 8) | rawADC [5]));
#დაასრულე თუ
#განსაზღვრული (HMC5883)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]), ((rawADC [4] << 8] | rawADC [5]), ((rawADC [2] << 8) | rawADC [3]));
#დაასრულე თუ
#განსაზღვრული (MAG3110)
MAG_ORIENTATION (((rawADC [0] << 8) | rawADC [1]), ((rawADC [2] << 8) | rawADC [3]), ((rawADC [4] << 8) | rawADC [5]));
#დაასრულე თუ
}
#დაასრულე თუ
#დაასრულე თუ
ნაბიჯი 6: ნაბიჯი 6: Consejos
1. სხვა მექანიზმი: გამოიყენეთ ეს დაავადება, რომელიც მოგეხსენებათ, რომ გამოიყენოთ რობოტი, მედიდურობა, როგორც 3D, არ არის საკმარისი იმისათვის, რომ გამოიყენოთ ეს 3D quede a la perfección.
2. მექანიკური მახასიათებლები: 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 funcionamiento ten el sea correcto რა თანხმობაა კონფიგურაციაზე, თუ გსურთ გამოიყენოთ PCB.
3. პროგრამული უზრუნველყოფის პროგრამული უზრუნველყოფა: პროგრამის პროგრამული უზრუნველყოფის გაცნობა, რომელიც მოიცავს პროგრამის პროგრამის გამოყენებას, რომელიც საშუალებას მოგცემთ გაეცნოთ ჩვენს საქმიანობას და გააფართოვოს ის, რაც ხელს შეუწყობს პროგრამის ფუნქციონირების კორექტირებას.
გირჩევთ:
Arduino LTC6804 BMS - ნაწილი 2: ბალანსის დაფა: 5 ნაბიჯი
Arduino LTC6804 BMS - ნაწილი 2: ბალანსი განსაზღვრული დიაპაზონი, პაკეტი შეიძლება იყოს დისკო
ორი ბორბალი თვითბალანსირებული რობოტი: 7 ნაბიჯი
ორი ბორბალი თვითბალანსირებული რობოტი: ეს ინსტრუქცია გაივლის დიზაინისა და შექმნის პროცესს თვითბალანსირებული რობოტისთვის. როგორც შენიშვნა, მე უბრალოდ მინდა ვთქვა, რომ თვითდაბალანსებული რობოტები არ არის ახალი კონცეფცია და ისინი სხვების მიერ არის აგებული და დოკუმენტირებული. მინდა გამოვიყენო ეს შესაძლებლობა
რობოტი: Windows Phone– ის მიერ კონტროლირებადი მობილური ორი გზა.: 6 ნაბიჯი (სურათებით)
რობოტი: ორი გზა მობილური ტელეფონით კონტროლირებადი Windows Phone .: სია: Arduino Uno L 293 (Bridge) HC SR-04 (Sonar Module) HC 05 (Bluetooth Module) Tg9 (Micro Servo) Motor with Gear Box (Two) Battery Holder (for 6 AA) კონტაქტური ლინზების მფლობელი მავთულები (მამაკაცი მდედრობითი ქინძისთავებით) საკაბელო კავშირები ცხელი წებო (ჯოხი
დაბალანსებული რობოტი / 3 ბორბლიანი რობოტი / STEM რობოტი: 8 ნაბიჯი
დაბალანსებული რობოტი / 3 ბორბლიანი რობოტი / STEM რობოტი: ჩვენ შევქმენით კომბინირებული ბალანსირების და 3 ბორბლიანი რობოტი სკოლებში საგანმანათლებლო გამოყენებისთვის და სკოლის შემდგომ საგანმანათლებლო პროგრამებისთვის. რობოტი დაფუძნებულია Arduino Uno– ზე, საბაჟო ფარზე (კონსტრუქციის ყველა დეტალი მოცემულია), Li Ion ბატარეის პაკეტზე (ყველა კონსტრუქცია
[არდუინოს რობოტი] როგორ გავაკეთოთ მოძრავი გადაღების რობოტი - ცერა თითის რობოტი - სერვო ძრავა - წყაროს კოდი: 26 ნაბიჯი (სურათებით)
[არდუინოს რობოტი] როგორ გავაკეთოთ მოძრავი გადაღების რობოტი | ცერა თითის რობოტი | სერვო მოტორი | წყაროს კოდი: Thumbs Robot. გამოყენებული იქნა MG90S სერვო ძრავის პოტენომეტრი. ეს არის ძალიან სახალისო და მარტივი! კოდი ძალიან მარტივია. ეს მხოლოდ 30 სტრიქონია. როგორც ჩანს მოძრაობის გადაღება. გთხოვთ დატოვოთ ნებისმიერი შეკითხვა ან გამოხმაურება! [ინსტრუქცია] წყაროს კოდი https: //github.c