Përmbajtje:
- Hapi 1: Pjesët
- Hapi 2: Lidhja e Pjesëve së bashku
- Hapi 3: Ngarkimi dhe Ndryshimi i Kodit sipas Preferencës suaj
- Hapi 4: Kontrolloni nëse funksionon
Video: Monitori më i lehtë Arduino VESC: 4 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:13
Pershendetje, në këtë projekt do të bëjmë një monitor të lehtë VESC. Kjo do të ishte e dobishme kur doni të monitoroni temperaturën tuaj dhe të zbuloni probleme si unë që kisha me mbinxehjen time Vesc (të cilën e zbulova vetëm me këtë monitor) ose mund ta përdorni thjesht për të bashkuar ekranin në tabelën ose timonet tuaja dhe të shikoni shpejtësinë tuaj, kilometrazhin, përqindjen e baterisë dhe shumë më tepër. Pra, le të hyjmë në ndërtim!
Hapi 1: Pjesët
1. - Arduino (Unë jam duke përdorur UNO, por ju gjithashtu mund të përdorni çdo bord tjetër përfshirë esp8266 ose esp32)
2. - disa kabllo për lidhje (përpiquni të gjeni lidhësin për lidhësin tuaj për vesc sepse do të jetë shumë më e lehtë të shkëputni 1 lidhës të madh kundrejt shumë kabllove të vegjël)
3. - ekrani (Unë jam duke përdorur 124 x 32 Oled, por ju mund të përdorni ndonjë tjetër duke ndryshuar bibliotekën)
4. - opsionale - bukë (kjo është për njerëzit që nuk duan të lidhin ose për ata që duan ta bëjnë atë përkohësisht)
5. - Kabllo USB për arduino tuaj
Hapi 2: Lidhja e Pjesëve së bashku
ekran: Vcc në 3.3V
Gnd tek Gnd
Sck (ose scl) në A5
Sda në A4
VESC: 5V nga Vesc në Vin në Arduino
Gnd tek Gnd
RX në VESC në TX në Arduino
TX në VESC në RX në Arduino
Hapi 3: Ngarkimi dhe Ndryshimi i Kodit sipas Preferencës suaj
KODI:
/** Kodi 2020 nga Lukas Janky VESC monitor me ekran Oled Nëse keni nevojë të më pyesni për ndonjë gjë, më kontaktoni në [email protected] ose në udhëzimet e mia. Shpresoj se kjo do t'ju ndihmojë.
*/
#include #include #includ #include #includ #include #include #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET 4 Adafruit_SSD1306 display (SCREEN_WIDTH, SCREEN_HEIGHT, & Wire, & Wire,)
VescUart UART;
int rpm; tensioni notues; rryma notuese; fuqia int; noton amfur; float tach; distanca e notimit; shpejtësia e notimit; noton watthour; përqindja e batit përqark;
SimpleKalmanFilter Filter1 (2, 2, 0.01);
void setup () {
Serial.filloj (115200); shfaqje.fillo (SSD1306_SWITCHCAPVCC, 0x3C); display.fillScreen (0); display.display ();
/ ** Konfiguro portën UART (Serial1 në Atmega32u4)*/ // Serial1.begin (19200); ndërsa (! Serial) {;}
/ ** Përcaktoni cilat porte të përdorni si UART*/ UART.setSerialPort (& Serial);
}
lak void () {
////////// Lexo vlerat /////////// nëse (UART.getVescValues ()) {
rpm = (UART.data.rpm)/7; // '7' është numri i çifteve të poleve në motor. Shumica e motorëve kanë 14 shtylla, pra 7 palë tension = = (UART.data.inpVoltage); aktuale = (UART.data.avgInputCurrent); fuqi = tension*rrymë; amfour = (UART.data.ampHours); watthour = amfour*tension; tach = (UART.data.tachometerAbs)/42; // '42' është numri i shtyllave motorike shumëzuar me 3 distanca = tach*3.142*(1/1609)*0.72*(16/185); // RPM motorike x Pi x (1/ metra në një milje ose km) x Diametri i rrotës x (rrotull motori/ rrota) shpejtësia = rpm*3.142*(60/1609)*0.72*(16/185); // RPM motorike x Pi x (sekonda në një minutë / metra në një milje) x Diametri i rrotës x (rrotull motori / rrota) përqindja e përqindjes = ((tension-38.4) / 12)*100; // ((Tensioni i baterisë - tension minimal) / numri i qelizave) x 100
}
////////// Filter ////////// // llogarit vlerën e vlerësuar me Kalman Filter float powerfiltered = Filter1.updateEstimate (fuqi);
display.fillScreen (0); display.setCursor (10, 5); display.setTextColor (1); display.setTextSize (1); ekran.print (tension);
display.setCursor (10, 20); display.setTextColor (1); display.setTextSize (1); ekran.print (fuqi);
display.setCursor (10, 40); display.setTextColor (1); display.setTextSize (1); ekran.print (rpm);
display.setCursor (10, 55); display.setTextColor (1); display.setTextSize (1); ekran.print (aktual); display.display ();
vonesë (50);
}
Ju mund të modifikoni dhe shfaqni çdo vlerë nga kodi që dëshironi
Hapi 4: Kontrolloni nëse funksionon
Tani kur kontrolloni nëse po punon është koha për ta bashkuar atë dhe shtuar etiketa në vlerat tuaja si Volt ose Amps. Ngjiteni atë në arduino nano kështu që do të jetë më i vogël ose madje mund ta transmetoni me arduino tjetër në telekomandën tuaj. por për këtë ka shumë mësime të tjera (kërkimi që transmeton vlera me arduino). Shpresoj se kjo ju ndihmoi në zgjidhjen e problemit tuaj ose në bërjen e një telemetrie të bukur vesc.
Recommended:
Monitori i Zbutjes së Radonit: 4 Hapa
Monitori i Zbutjes së Radonit: PërmbledhjeRadoni vjen natyrshëm nga gurët dhe toka nën shtëpitë tona në të gjithë Shtetet e Bashkuara dhe Bashkimin Evropian. Alwaysshtë gjithmonë rreth nesh një gaz radioaktiv pa erë, pa shije dhe i padukshëm. Radoni është problematik sepse rrjedh në shtëpinë tonë
Monitori i ngrohësit të ujit AO Smith ul IRIS: 3 hapa
Monitori i ngrohësit të ujit AO Smith ul IRIS: Menjëherë pasi bleu një ngrohës uji të ri që është i aftë të jetë " I zgjuar " ose të kontrolluara nga distanca. Lowes ndërpreu platformën e tyre IRIS, duke i bërë të gjitha produktet IRIS të padobishme. Edhe pse ata lëshuan kodin burimor për qendrën e tyre, por uji im
Monitori i pacientit duke përdorur Arduino Uno: 5 hapa
Monitori i pacientit duke përdorur Arduino Uno: Monitori i pacientit është një tabelë e përdorur për të monitoruar (Spo2, rrahjet e zemrës, lagështia e ajrit, temperatura e ajrit dhe Temp e Trupit) dhe kam përdorur arduino uno (Atmega328p) si kontrollues për këtë projekt dhe kam hartuar një Aplikacion Android për të marrë këto të dhëna dhe për t'i shfaqur ato, në mënyrë që të mund të
DIY MusiLED, LED të sinkronizuara me muzikë me aplikacionin Windows & Linux me një klik (32-bit & 64-bit). Lehtë për t’u rikrijuar, e lehtë për t’u përdorur, e lehtë për t’u portuar .: 3 hapa
DIY MusiLED, LED të sinkronizuara me muzikë me aplikacionin Windows & Linux me një klik (32-bit & 64-bit). Lehtë për t'u rikrijuar, e lehtë për t'u përdorur, e lehtë për t'u transferuar.: Ky projekt do t'ju ndihmojë të lidhni 18 LED (6 të kuqe + 6 blu + 6 të verdhë) në bordin tuaj Arduino dhe të analizoni sinjalet e Kartës së Zërit të kompjuterit tuaj në kohë reale dhe t'i transmetoni ato në LED për t'i ndezur ato sipas efekteve të rrahjes (Snare, High Hat, Kick)
Monitori i ngarkimit të baterisë Arduino: 4 hapa
Monitori i ngarkimit të baterisë Arduino: Ky projekt do të përdorë mikrokontrolluesin Arduino, dritat led, rezistencat, një diodë dhe panelin e bukës për të krijuar një sistem që do të jetë në gjendje të testojë ngarkimin e baterisë kur lidhet me një bateri. Çfarë ju nevojitet: - Arduino Uno- Breadboard