Hirdetés
- Life is Strange: Double Exposure teszt
- Xbox Series X|S
- Már jövőre befuthat a Stellar Blade PC-s kiadása
- Star Wars: The Old Republic - MMORPG
- PlayStation 5 Pro teszt
- Megjelent a Silent Hill 2 Remake
- Assetto Corsa Competizione
- PlayStation 5
- Call of Duty: Black Ops 6
- iRacing.com - a legélethűbb -online- autós szimulátor bajnokság
-
GAMEPOD.hu
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
nagyúr
Köszönöm mindenkinek a hozzászólásokat!
_q: nem esp32-vel fogom, szerintem sima uno-val. Az esp32 amúgy is csak 1V-ig tudna mérni, a servo-nak meg 5V kell, nem hiszem, hogy össze merném kötni a kettőt, mert véletlenül rákerül az 5V az adc-re, aztán kiszáll belőle a füst, ami működteti.
Gergosz2: nagyjából értem, amiről beszélsz, de ha esetleg kapcsolási rajzot is tudnál hozzá mellékelni, azért hálás lennék. Az analóg jel mérése nem kimondottan lenne fontos, az általad javasolt módszerrel ugyanis digitális jelet is elő lehetne állítani, ami tökéletesen megfelelne a célra, tudniillik lenne egy stall trigger jel, a köztes értékekre nem igazán vagyok kíváncsi. Milliohmos ellenállást honnan vegyek? Nem lesz az egész borzasztóan zajérzékeny?
" Egyrészt azért mert elpirítanál rajta I^2*R teljesítményt"
Nem lenne ott akkora veszteség, mert a servo-nak csak pillanatokra ugrik meg az áramfelvétele, de valóban, elfűtenék vele egy kis energiát.
"másrészt a motor villamos időálandóját is eltolod vele."
Ezt ki tudnád fejteni? -
Tankblock
aktív tag
Szia,
bemásolnád mi a hiba?
Nekem van projectem, igaz nem használok Arduinot, hanem ESP-idf et c++ szal.
CSak nyitottam egy plusz UART ot és megnéztem mit kell küldeni a Nextionnak, és fut két task, egy Tx és egy Rx... MQTT-n keresztül megy a villanykapcsolók és egy BMP280 szenzor adatokat tolok át meg vissza....#define TXD_PIN (GPIO_NUM_17)
#define RXD_PIN (GPIO_NUM_16)
#define nUART (UART_NUM_2)void initNextion() {
const uart_config_t uart_config = {
.baud_rate = 115200,
.data_bits = UART_DATA_8_BITS,
.parity = UART_PARITY_DISABLE,
.stop_bits = UART_STOP_BITS_1,
.flow_ctrl = UART_HW_FLOWCTRL_DISABLE
};
uart_param_config(nUART, &uart_config);
uart_set_pin(nUART, TXD_PIN, RXD_PIN, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE);
// We won't use a buffer for sending data.
uart_driver_install(nUART, RX_BUF_SIZE * 2, 0, 0, NULL, 0);
}
int sendData(const char* logName, const char* data)
{
const int len = strlen(data);
const int txBytes = uart_write_bytes(nUART, data, len);
ESP_LOGI(logName, "Wrote %d bytes\n", txBytes);
ESP_LOGI(logName, "#%s#\n", data);
return txBytes;
}
void TxTask(void * parameters) {
string store ="";
//store += "page0.temp1.txt=\"11\"";
//store += endData;
//UBaseType_t ip;
int qL;
mqttTopic x;
while (1) {
// OK so here is where you can play around and change values or add text and/or numeric fields to the Nextion and update them
qL = uxQueueMessagesWaiting(queueTopic);
for(int i = 0; i< qL;i++)
{
xQueueReceive(queueTopic,&x,portMAX_DELAY);
store.clear();
if( x.sTopic == "livingroom/lightswitch/status")
{
store += "page2.livingroom.val=";
store += (x.sData=="ON") ?"1":"0";
store += endData;
sendData(TX_TASK_TAG, store.c_str());
}....
void RxTask(void * parameters) {
....
string sdata;
while (1) {
sdata.clear();
xEventGroupWaitBits(wifi_event_group, CONNECTED_BIT, false,true, 5000 / portTICK_PERIOD_MS);
const int rxBytes = uart_read_bytes(nUART, data, RX_BUF_SIZE, 500 / portTICK_RATE_MS);
if (rxBytes > 0) {
data[rxBytes] = 0;
ESP_LOGI(RX_TASK_TAG, "Read %d bytes: '%s'", rxBytes, data);
ESP_LOG_BUFFER_HEXDUMP(RX_TASK_TAG, data, rxBytes, ESP_LOG_INFO);
sdata += (char *)data;
printf("RxTask: #%s#",sdata.c_str());
if(sdata == "livingroom ON") {
esp_mqtt_client_publish(client, "livingroom/lightswitch/switch", "ON", 0, 0, 0);
}
Valahogy így ....Release the Beast....
-
addikt
válasz Tankblock #12052 üzenetére
Szia!
Így néz ki a forrás eleje:
#define FASTLED_ALLOW_INTERRUPTS 0
#include <FastLED.h>
#include <WiFi.h>
#include <WiFiClient.h>
#include <ESPmDNS.h>
#include <Nextion.h>
//kijelző konfig
HardwareSerial Serial2(2); // Activate Serial communication 2 on ESP32 (RX=GPIO16 and TX=GPIO17)
Nextion myNextion(nextion, 9600); //create a Nextion object named myNextion using the nextion serial port
//wifi kapcoslódási adatok
const char* host="ESP32_controller";
const char* ssid="------";
const char* wifi_jelszo="------";
//ablak nyitas erzekelo valtozok
int ablakPIN1=12; //ablak1 nyitás érzékelő PIN
//mozgaserzekelo valtozok
int mozgasPIN1=14; //erzekelo1 PIN
Ez pedig a hibaüzenet:
Többszörös könyvtárak találhatók ehhez: "FastLED.h"
Használt: C:\Users\User\Documents\Arduino\libraries\FastLED
In file included from C:\Users\User\Documents\esp32\source_code\center_controller\center_controller.ino:6:0:Többszörös könyvtárak találhatók ehhez: "WiFi.h"
C:\Users\User\Documents\Arduino\libraries\Nextion/Nextion.h:5:28: fatal error: SoftwareSerial.h: No such file or directory
Használt: C:\Users\User\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\WiFi
compilation terminated.Nem használt: C:\Program
Többszörös könyvtárak találhatók ehhez: "ESPmDNS.h"
Használt: C:\Users\User\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.4\libraries\ESPmDNSTöbbszörös könyvtárak találhatók ehhez: "Nextion.h"
Használt: C:\Users\User\Documents\Arduino\libraries\Nextion
exit status 1
Hiba a(z) ESP32 Dev Module alaplapra fordításra.A wifi.h-ből csaj 1 van, az arduino library közül töröltem.
A softwareserial probléma is ismerős, ott a nextion.h-ból kell kommentelgetni jó pár helyen, hogy ne software serial legen, hanem az ESP32 hardveres 2. serial lábai legyenek megszólítva közvetlenül.#Janos250 (12043): ha csak a nextion library-t hagyom benne, és a többit kikommentelem, akor is a töbszörös könyvtárra hisztizik a program.
Most kezdődjék a tánc! - mondta a papagáj és berepült a ventilátorba.
-
-
Janos250
őstag
És ha másik hardwareserialt használsz?
Vigyázz, mert az ESP-WROOM-32-ben (is) a GPIO5..GPIO11 6 db. GPIO foglalt a belső SPI flash kezelésére, és valamelyik hardwareserial (talán 1?) alapból ezekből használna, tehát át kell irányítani. De ez csak tipp, próbálkozás.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
addikt
válasz Janos250 #12055 üzenetére
Szia!
Én úgy tudom, az ESP32-nek csak 2 HW serial portja van. Az egyiket a programozáshoz / monitorozáshoz használjuk, ez van az USB-re kivezetve (persze GDIO-ra is ki van vezetve), a másik viszont szabadon hozzáférhető.
Rosszul tudom?
[ Szerkesztve ]
Most kezdődjék a tánc! - mondta a papagáj és berepült a ventilátorba.
-
Janos250
őstag
Nem találok most rá jó leírást, mert a Google egyre használhatatlanabb :-(
Sorra olyan oldalakat hoz előre, amelyből valamelyik keresett szó hiányzik, de ezt legalább jelzi is, meg reklám oldalakra irányít.
Az egyes portok default pinjei itt vannak:
https://circuits4you.com/2018/12/31/esp32-hardware-serial2-example/
Az UART rx,tx a GPIO9, GPIO10-et használja, tehát át kell irányítani, mert az SPI flash kezelés is használja ezeket a pineket.Valamint: "The three serial ports on the ESP32 (U0UXD, U1UXD and U2UXD) 3.3 V level. They are called UART0, UART1 and UART2.
UART0 is normally used by the serial monitor. UART2 (Serial2) is available on the GPIO pins 16 (RxD2) and 17 (TxD2). UART1 is connected to GPIO 9 and 10, but these are not available because they are connected the integrated SPI flash. Fortunately ESP32 has multiplexing features, and so pins can be changed in code. This can be done with the begin command: Serial1.begin(9600,SERIAL_8N1, 21, 22);. With this command we define GPIO pin 21 for RxD1 and 22 for TxD1."
http://www.weigu.lu/microcontroller/tips_tricks/esp32_tips_tricks/index.htmlAz amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Izeka82
csendes tag
Sziasztok!
Van egy arduino pro mini, amire van kötve egy nrf24l01 rádió, egy dht22, és egy bmp085. 5 percenként mér és küldi az adatokat.A tápellátás 2db NiMh akksi és egy stepup converterel van meg az 5V. Mysensors lib-et használom, a mérések között altatva van, minden ledet leforrasztottam, és csak 1 hétig bírja. Lidl-is 2400mAh akksik. Hogyan lehetne az üzemidőt kitolni? Esetleg 18650-es akksikkal? -
zsolti_20
senior tag
válasz Izeka82 #12060 üzenetére
18650-re akkor erdemes atterni ha megbizhato forrasbol tudsz vasarolni 3000mah akkumulatort. Ketto ilyet parhuzamba kotve mar kapsz 6000mah-t.
Javasoltak itt a forumon regebben hogy az orajelet lejebb lehetne venni 10mhz kornyekere vagy lejebb ha meg stabil.
Olvastam nemreg hogy az arduinonak van alvas funkcioja igy ha 5 percenkent ebreszted fel azzal is sokat sporolsz.
Ami van vilagito led az arduinon vagy egyeb alkatreszzeken lekell forrasztani mert csak foloslegesen fogyasztanak.
Es olvastam rola meg egy dolgot de ebben nem vagy ok biztos megkell h erositsek a tobbiek, de mintha valaki leforrasztotta volna a 3.3v konvertert az arduino alaplapjarol ezzel is sporolva. De nem tudom ennek mennyi ertelme van hisz szukseg van a 3.3v-ra az nrf modul miatt, es ha elkezdessz hasznalni egy kulonallo 3.3v konvertert akkor lejet hogy ugyan ott vagy.
Ha nem olyan fontos a hatotav akkor allitsd az nrf modult MIN-re ezzel fogyaszt a legkevesebbet.
Ha fix helyen van esetleg egy kisebb napelem ami tudja tolteni, vagy veszel ket power bankot amit cserelgetsz.
-
nagyúr
válasz Izeka82 #12060 üzenetére
zsolti_20 kolléga jó helyen keresgél, le szokták forrasztani a regulátort és egyéb felesleges alkatrészeket, de ezzel nem nyernél túl sokat, mert a nagy energiaveszteség nálad a stepup converternél jelentkezik főleg. Egy akksi ha (legoptimálisabb esetben) 2400mAh között tud leadni, ez konvertálás után 1200-ra csökken, ha figyelembe vesszük a kb 75%-os hatásfokot, akkor jó, ha max. 900mAh töltést ki tudsz szedni az akksikból.
Én először is a lapot cserélném 5V tápfeszültségű helyett 3V3-asra, az nrf modul úgyis 3V3 tápot igényel, a másik kettőből is lehet szerintem 3V3-ast kapni, ha éppen nem máris olyat használsz.
Két cella helyett én 3db-ot kötnék sorba, és egy boost-buck konverterre kötném. Igaz, hogy ezeknek a konvertereknek se túl jó a hatásfoka, de eleve optimálisabb tartományban fog dolgozni, ezért valószínűleg több mint 2x annyi ideig fog működni. Vagy 4db-ot sorba kötve egy jó hatásfokú (90+%) buck konverter is szóba jöhetne, feltéve persze, hogy van hely ennyi akksinak.
Li-ion akksiról én lebeszélnélek, mert ha jól értelmezem ez egy kültéri időjárás-állomás, a li-ion akksik pedig se a tűző napot, se a fagyot nem tolerálják túl jól.
Esetleg gondold át, hogy egy attiny85 5(6)db lábára nem lehet-e kiosztani a perifériákat, van belőle olyan, ami 2,5V tápfeszültségtől már stabilan működik, esetleg 3celláról konverter nélkül megpróbálni üzemeltetni.[ Szerkesztve ]
-
Tankblock
aktív tag
válasz Izeka82 #12060 üzenetére
Hello,
Több megoldás is van erre a problémára.
8MHz állítsd be a belső órát,
Amint lehet deep sleep
Ami fogyasztó nem kell azt kapcsold ki - MOS FET el szakítsd meg a táp vonalat.
LEDek, feszültség konverterek kiforrasztására javaslom, sztem step up sem feltétlenül kell.Nekem egy AtTiny13A van a projectem elején és ezzel egy évben 2x töltöm a 2 db 18650 cellát, 5 percenként mérek és MQTTbe Wifire ESP8266-val..
Release the Beast....
-
válasz zsolti_20 #12061 üzenetére
Es olvastam rola meg egy dolgot de ebben nem vagy ok biztos megkell h erositsek a tobbiek, de mintha valaki leforrasztotta volna a 3.3v konvertert az arduino alaplapjarol ezzel is sporolva.
Ennek azért van értelme, mert a gagyibb regulátoroknak nagy a nyugalmi/földáramuk, így érdemes kicserélni, ha sok a deep sleep.
I did nothing, the pavement was his enemy!
-
Izeka82
csendes tag
Köszi a hozzászólásokat!
Megfontolom, és átnézem mit tudok tenni. Azt hiszem van itthon 3.3V-os arduinom is még, helyem van akksinak, mert még nincs semmi doboz. Ledeket már leforrasztottam róla, illetve az altatás is megy, csak 5 percenként ébred fel, mér, és küldi is. 18650-re csak a könnyebb töltés miatt gondoltam.
Amúgy igen, ez egy kültéri mérő lenne erkélyre, ha elkészül egyszer Mert már jó pár éve készül, úgy fél évente pár napot rááldozok
Valahol még napelemem is van, csak azt fizikailag nem tudom elhelyezni sehol sajnos.
Ha már el tudok jutni addig, hogy egy hónapot kibírjon, akkor örülni fogok -
gyapo11
őstag
válasz Tankblock #12063 üzenetére
Fetre szavazok én is, nem kell altatni, hanem 5 percenként rákapcsolni a tápot. Elindul, mér, adatot küld és kikapcsolja magát. Fet vezérléséhez cmos ic-k. Így két mérés között nem fogyaszt az arduino, az rf modul, a hőmérő, a táp konverter, csak a cmos ic-k meg a nyitott fet.
menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet
-
addikt
válasz Janos250 #12058 üzenetére
Köszönöm a tippet. Új hibaüzenetet sikerült generálni a megváltoztatott paraméterekkel.
Az új sor amire átírtam így néz ki:HardwareSerial Serial2(1);
Az új hibaüzenet, így kezdődik:
C:\Users\user\AppData\Local\Temp\arduino_cache_865413\core\core_d73a6200657d7379503ea2a7c120a007.a(HardwareSerial.cpp.o):(.bss.Serial2+0x0): multiple definition of `Serial2'
sketch\center_controller.ino.cpp.o:(.bss.Serial2+0x0): first defined here
collect2.exe: error: ld returned 1 exit statusEz után megint elkezdi, hogy többszörös könyvtárak találhatók.
Most kezdődjék a tánc! - mondta a papagáj és berepült a ventilátorba.
-
Janos250
őstag
Hopp, persze:
A Serial2 név már foglalt. Nevezd mondjuk SerialKetto-nek.
Lásd HardwareSerial.h 103. sor.Érdemes még okulásképpen megnézni a HardwareSerial.cpp 6.-tól 29. sorait.
[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
blountex
senior tag
Sziasztok!
Egy kis segítséget szeretnék kérni.
Gondoltam csinálok egy fireworks led lampet.
Be is szereztem az ATmega328P Nano V3 Controller Board-ot és hozzá a neonpixel ringet.
Először úgy voltam megforrasztom a dolgot.
A piros vezeték ment mind a két helyen az 5 V-ban
A fekete vezeték ment a GND-be mind a két helyen.
A zöld vezeték meg az gyűrűn a input data-ba a boardon meg a D6-hoz csatlakoztatva.
Érdekes hogy amikor a számítógépre dugtam a boardot és a GND be volt kötve a board és a gyűrű között akkor nem világított maga a board, ha pedig nem volt közte kapcsolat akkor a boardon megjelent a piros led.Először ezt a videot néztem és itt a bekötés elég szarul van mutatva:
[link]
Találtam egy másikat ami már jobban elmutogatja és ráadásul a codeot is mutatja hogyan töltse rá az ember a boardra.
[link]Csak hogy hiába választok ki mindent a video szerint majd az eszközök és az alaplapnál az arduino nano - atmega328p-t, feltöltéskor hibát ír ki. Ellenőrzésnél minden ok.
Ötlet?
köszi[ Szerkesztve ]
-
-
-
gyapo11
őstag
válasz vargalex #12068 üzenetére
74VHC123AFT akadt elsőre a kezembe, 4 μA standbyban. Mos fet szintén pár μA lehet. De nem is csak az arduino fogyaszt, mert mi van az rf modullal és a hőmérőkkel ha a táp rajtuk van, és még ott van a táp konverter modul alapárama is. Legyen mondjuk 10 μA, az 2000 mAh kapacitást feltételezve 240000 óra, ami 27 év készenlét. Persze ez se igaz, mert mérni kell az időt ami valami oszcillátorral meg számlálóval megy, szóval több lesz azért a fogyasztás.
menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet
-
vargalex
félisten
válasz gyapo11 #12075 üzenetére
Akkor már nagyon közel vagyunk az ESP8266 deep sleep fogyasztásához (ha túl nem léptük), így felesleges vacakolni vele. Az rf modult és a hőmérőket szerintem nyugodtan lehet GPIO-ról hajtani (én is azt teszem), így csak akkor terhelik a tápot, ha nincs deep sleep. Sőt, ha ESP8266, akkor nyilván az RF modul is felesleges...
Alex
-
_q
addikt
válasz Izeka82 #12060 üzenetére
ESP32-vel mérek hőmérsékletet és páratartalmat, 5 vagy 10 percenként ébresztem alvó módból és Wifi-n küldöm tovább az adatokat. 1db 18650-es aksiról (aliról rendeltem 1000 Ft 3400 mAh) 6 hónapot működik. Erkélyen van, így nem a legpontosabb eredményt adja (ház hője miatt), de közelítésnek jó. Ez az aksi szempontjából azt jelenti, hogy a ház hője miatt nem fog -20 fokba kerülni az aksi, de -5 fok már biztos volt és így decembertől május/júniusig működött (4.2 V -> 2.85 V). Tehetsz rá napelemet, ami tovább tölti napközben.
[ Szerkesztve ]
-
_q
addikt
TP4056-on és egy buck boost dc-dc konverteren keresztül. Tölteni mondjuk külső töltővel szoktam, a TP4056 csak azért van ott, mert akartam napelemet is rá, illetve arról tölteni USB-n keresztül. Jelenleg nem szükséges, hogy ott legyen, de a lehetőség adott tovább fejleszteni.
[ Szerkesztve ]
-
_q
addikt
válasz DigitXT #12081 üzenetére
Mind a kettő, értékelésekben is megmérték és én is megmértem egy opus BT-vel. 3200-3400 mAh-t tudott mind a kettő, amit vettem. [link]
11.11 akcióban 2 db vásárlásával 750 Ft-ból is kihozható darabja.
(#12080) nyirzoz
Nekem is így néz ki, a napelemet nem kötöttem rá. Viszont az aksi és az ESP közé ment a DC-DC konverter. Te miért nem tettél oda? Ki tudnád tolni vele a működési időt. -
_q
addikt
válasz nyirzoz #12085 üzenetére
Napelem mennyit tud tölteni egy átlagos napon?
Megnéztem én 6V 1W-osat vettem, viszont mivel így is egész jól bírja, ezért nem tettem rá, pedig nem sokból tartana.
(#12084) aryes
Nem töltök rá és úgy bír fél évet. Fél év után lemegy asszem 2.85 V alá, ilyenkor a TP4056-al töltés helyett kiszedem és az opus BT-vel feltöltöm, majd megy vissza és megint fél évig nincs semmi teendőm vele. -
-
_q
addikt
válasz nyirzoz #12089 üzenetére
Az szuper, így mondjuk nincs jelentősége tényleg a DC-DC konverternek, mert a napelem úgy is tölti. MQTT-hez mit használsz? Raspberry-n futtatod? Ez lenne a következő lépés amire gondoltam, hogy valamilyen módon nagyobb adatbázisban tárolnám az adatokat.
Jelenleg az ESP32-n egy tömbbe gyűjtöm az adatokat, ahova max 1 napnyi adatot tudok eltárolni. Jó lenne, ha ennél több adatról is lenne információ. MQTT és nodered-ről olvastam eddig, mint opció, de mint a kettőhöz kell egy rpi, amihez meg eddig nem volt szerencsém, de gondolom a leírások alapján belehet üzemelni utánajárással.
-
Izeka82
csendes tag
Köszönöm mindenkinek a hozzászólást!
Azt hiszem találtam egy nagy hibát az összeállításomnál. Egy kis multiméterrel mérve sleep módban 7-10mA a fogyasztása az egésznek, de ha közben elveszem a tápot az nrf24l01-től, akkor drasztikusan csökken a fogyasztás, kb 200-300μA-re. Azt hiszem ezzel kell kezdenem valamit, és akkor már jó is lesz a jelenlegi megoldásom.[ Szerkesztve ]
-
-
Ha lenne mit megosztani, megosztanám Fogtam a fontot, amit amúgy is használok, és a 0x80-0x88 karakterek helyére megrajzoltam kézzel a kis ékezetes betűket. Nem tökéletes, mert hexa kóddal kell hivatkozni a stringben, de nekem most elég jó.
I did nothing, the pavement was his enemy!
Új hozzászólás Aktív témák
- Anglia - élmények, tapasztalatok
- Háromféle kivitelben, és nem kis kapacitásokkal jönnek a Micron 6550 ION SSD-i
- Windows 11
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- eBay-es kütyük kis pénzért
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Külföldi rendelések: boltok, fizetés, postázás
- Azonnali processzoros kérdések órája
- Milyen széket vegyek?
- Durva lett a Lian Li motorizált asztala
- További aktív témák...
Állásajánlatok
Cég: HC Pointer Kft.
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest