- Mobilinternet EU-n kívül, eSIM adatcsomagok használata
- Magisk
- iPhone topik
- Samsung Galaxy A52s 5G - jó S-tehetség
- Samsung Galaxy A54 - türelemjáték
- Apple Watch
- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy Note10 és Note10+ duplateszt
- További kavarás a Pixel 10-ek körül
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
-
Mobilarena
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
-
Tankblock
aktív tag
válasz
tibi-d #17814 üzenetére
Szia,
RAMba elfér, ha csak 2x128 mintát tárolsz akkor bőven. Bele kell tenni a SDkártya kezelő és a RTC mennyi memóriát foglal és maradékkal tudsz gazdálkodni.
Én timerre futtatnék ADC-t a két csatornára és értékét memóriába tárolatnám egy counterrel aztán jól van az úgy....ha megtellik akkor kezdi előről.
HA megvan a trigger akkor először RTC olvasás 1x , majd a következő ADC olvasás után kiír valahány értéket egyszerre SD re abban a 100ms ami rendelkezésre áll. Így marad 2X buffernek hely.
Digitálisra meg egy sima ISR fv figyelése egy GPIOnak aztán jól van.....
-
válasz
tibi-d #17814 üzenetére
Ez tényleg kb. egy oszcilloszkóp működése
Nemrég csináltam egyet, ezen a részén is dolgoztam egy keveset.
Ilyen sebesség mellett gyorsan el fog használódni az EEPROM, úgyhogy a logolást mindenképpen a RAM-ban kell végezni, és csak az eredményt menteni az EEPROM-ba.Én egy 256 elemű tömbbe írnám folyamatosan az adatokat, hogy kerek szám legyen
UINT8 lenne a számláló, ami 255 után túlcsordul, tehát csak növelni kell folyamatosan, és felülírja a régi adatot. A trigger esemény után a tömb utolsó 100 eleme lesz az előzmény, egy másik tömbbe pedig mehetnek az ezt követő minták. -
Tankblock
aktív tag
válasz
tibi-d #17812 üzenetére
Szia
Oszcilloszkóp
beszélgetés indítónak a következők jutottak eszembe:
ha az analog jel felakad folyamatosan a trigger szint főlé akkor mi fog történni?
Mekkora felbontással kellene tárolni az adatokat (8bit elég -e mert 2*300 byte csak maga 600 byte a memóriában vagy csak 2* 100 bytot tárolunk és azt nem tudom mennyi idő kiírni ), illetve ha megtörténik a hiba akkor mind a 2 csatorna kellene hogy mentve legyen?
Hiba után ha megvan a 200 jelszint akkor mennyi mérés eshet ki?
itt lesz fontos hogy mi van akkor ha folyamatosan a trigger szint fölött van vagy az körül ingadozik kicsit alatta, majd kicsit felette akkor mit kell tárolni? -
Janos250
őstag
válasz
tibi-d #17055 üzenetére
Sok jelentősége nincs. ha a default pineket használod, akkor talán 1-2 ns-sel gyorsabb.
Ha nem azt használod, akkor meg teljesen mindegy, ugyanis van egy hardware mátrix - olyasmi mint a fóliás billentyűzetekben - azon keresztül megy. A mátrix egyik oldalához vannak kötve a perifáriák, a másikhoz meg a pinek, és amikor összerendeled őket, akkor egy adott sort összekötsz egy adott oszloppal.
Az analogokat a defaultból válaszd. Az UART1-nek is van default, de az nem jó, mert azt a memória kezeléshez használja, a lapok többségén ki sincs vezetve.
Én az I2C-t, és az SPI-t (VSPI) az alapértelmezetthez szoktam kötni, de csak megszokásból. Itt elég jól fel vannak tüntetve:
https://i2.wp.com/randomnerdtutorials.com/wp-content/uploads/2018/08/ESP32-DOIT-DEVKIT-V1-Board-Pinout-36-GPIOs-updated.jpg
Meg itt is:
https://i0.wp.com/randomnerdtutorials.com/wp-content/uploads/2018/08/esp32-pinout-chip-ESP-WROOM-32.pngVagy ez:
#ifndef Pins_Arduino_h
#define Pins_Arduino_h
#include <stdint.h>
#define EXTERNAL_NUM_INTERRUPTS 16
#define NUM_DIGITAL_PINS 40
#define NUM_ANALOG_INPUTS 16
#define analogInputToDigitalPin(p) (((p)<20)?(esp32_adc2gpio[(p)]):-1)
#define digitalPinToInterrupt(p) (((p)<40)?(p):-1)
#define digitalPinHasPWM(p) (p < 34)
static const uint8_t LED_BUILTIN = 2;
#define BUILTIN_LED LED_BUILTIN // backward compatibility
#define LED_BUILTIN LED_BUILTIN
static const uint8_t TX = 1;
static const uint8_t RX = 3;
static const uint8_t SDA = 21;
static const uint8_t SCL = 22;
static const uint8_t SS = 5;
static const uint8_t MOSI = 23;
static const uint8_t MISO = 19;
static const uint8_t SCK = 18;
static const uint8_t A0 = 36;
static const uint8_t A3 = 39;
static const uint8_t A4 = 32;
static const uint8_t A5 = 33;
static const uint8_t A6 = 34;
static const uint8_t A7 = 35;
static const uint8_t A10 = 4;
static const uint8_t A11 = 0;
static const uint8_t A12 = 2;
static const uint8_t A13 = 15;
static const uint8_t A14 = 13;
static const uint8_t A15 = 12;
static const uint8_t A16 = 14;
static const uint8_t A17 = 27;
static const uint8_t A18 = 25;
static const uint8_t A19 = 26;
static const uint8_t T0 = 4;
static const uint8_t T1 = 0;
static const uint8_t T2 = 2;
static const uint8_t T3 = 15;
static const uint8_t T4 = 13;
static const uint8_t T5 = 12;
static const uint8_t T6 = 14;
static const uint8_t T7 = 27;
static const uint8_t T8 = 33;
static const uint8_t T9 = 32;
static const uint8_t DAC1 = 25;
static const uint8_t DAC2 = 26;
// PWM Driver pins for PWM Driver board
static const uint8_t PWM0 = 12;
static const uint8_t PWM1 = 13;
static const uint8_t PWM2 = 14;
static const uint8_t PWM3 = 15;
static const uint8_t PWM4 = 16;
static const uint8_t PWM5 = 17;
static const uint8_t PWM6 = 18;
static const uint8_t PWM7 = 19;
#endif /* Pins_Arduino_h */Apropó!
Szerintetek ennek a sornak mi az értelme:#define LED_BUILTIN LED_BUILTIN
-
Tankblock
aktív tag
válasz
tibi-d #16713 üzenetére
Szia
14+2 pin egy sima TFT + touch [link] ez szerint (16+ 4 SD kártyának),
a nextionnal lerövidíted a fejlesztési időt, hiszen GUI nem a MCU számolja és csak UART-on kell küldeni üzeneteket. ESP32 van vagy 3 UART, szóval a debug portot sem kell mellőzni.
ESP8266 platformmal végig kellene számolni van e annyi lába amit fel tudsz használni, szerintem csak GPIO extenderrel lesz annyi, főleg mert 4 PWM lába van, és erre szeretnél I2C is.....
-
Tankblock
aktív tag
válasz
tibi-d #16711 üzenetére
hmm az általam javasolt nextion a budged fele lesz, ne vegyél extrázott verziót, mert a benne lévő RTC minden csak nem pontos, fizikai gombokat se rajta keresztül érdemes kezelni, ha lesznek....
Ha találsz valami jó projectet akkor lehet egy sima érintős kijelző is megteheti....
ADS1115 csak akkor ha megfelel a sebessége, mert I2C kommunikál. Ha az alkalmazás megengedi ezt a sebességet akkor ok. A vicces az hogy lehet ha megtervezed a boardot és megveszed alkatrészenként akkor drágább mint modulonként megvenni.
Szépm új világ, egyet tudok tanácsolni, a HW részeket minnél előbb szerezd be, mert az árak rakéta szerűen lőnek ki (Farnell, Mouser, ... és társai) alap építőelemeket is nehéz beszerezni.
-
válasz
tibi-d #16706 üzenetére
A wifi eléggé kézenfekvővé teszi az Esperif SoC-it.
Ha kell a 12bit analógnál jobb, akkor tehetsz mellé külső ADC-t.
A 4 digit jel valamilyen periféria? Van előírt jelszint? (5V / 3.3V)Az érintőképernyő csak kezelőfelület lesz, vagy aktív kijelző is lesz? Képfrissítés miatt kérdezem.
(Damn 4 másodpercet késtem :D)
-
Tankblock
aktív tag
válasz
tibi-d #16707 üzenetére
Szia,
A Wifi és az analóg jelek rejtik a kulcsot...
Ha megelégszel egy nem túl pontos 12bites ADCvel akkor ESP32 + Nextion kijelzőt mondanék a feladat kivitelezésére, mint minimum hardware.
Analog pontosságán lehet segíteni külső SPI busra tervezett külső ADCkkel.A probléma az lesz mit engedhetsz meg a projectben anyagilag, és mit tudsz megvenni a piacról....
-
válasz
tibi-d #16591 üzenetére
A 2560-ra tudsz kódot feltölteni, vagy pont az lenne a pláne, hogy a babrálása nélkül másold ki az eeeprom-ot?
Előbbi esetben csatold a külső eepromot i2c-n, és byte-ról bytera írd át rá a belső eepromot.
Utóbbiban kell egy icsp programozó (egy másik arduinobol is tudsz csinálni) avrdudával kiolvasod az eepromot, aztán pedig felírod egy olyan arduinoba, aminek babrálhatod a kódját, és goto:előbbi eset.
-
gyapo11
őstag
válasz
tibi-d #13686 üzenetére
De ugye az irq hívás verembe ment adatokat, és ha ez első után nincs letiltva az irq, akkor ezt a prell jó sokszor meg tudja tenni pár ms alatt, ami nem egészséges. És ezen a delay sem segít. A delay akkor jó, ha nem irq-t indít a nyomógomb, hanem beolvassuk az állapotát.
-
daninet
veterán
válasz
tibi-d #13683 üzenetére
Köszönöm mindenkinek a válaszokat, ebből már megoldom
Még egy kérdés, bár ez nem programozás:
Használ valaki arduino-t hosszabb távon? Például én most egyet kapunyitás csengőnek készítek, és mondjuk csak áramszünetnél lesz kikapcsolva, de egy jó 10 év munkának néz elébe. Van hosszú távú tapasztalata ezekkel a kontrollerekkel valakinek?
-
válasz
tibi-d #13683 üzenetére
Hát az pergésmentesítés nélkül elég sok meglepetést tud okozni, ha a bemeneten mondjuk kapcsoló lesz, de az egyszerű loop-os megoldásba is érdemes a
delay(5);
helyett inkább egy
delay(50);
vagy akár 100 is, a pergés kiküszöbölése érdekében. Ha kapcsoló/nyomógomb lesz a bemeneten.
-
atesss
addikt
válasz
tibi-d #13477 üzenetére
"mert a szelep zárásával nem lineárisan változik a levegő mennyisége."
Ha szervóról beszélünk, akkor azzal elvileg viszonylag pontosan szabályozható a szelepnek a szöge. Persze ha az egyéb mechanikai elemek is eléggé merevek ehhez.
Szerintem ha egyszer kiméred műszerrel, hogy milyen szervó állásnál mennyit szállít (mondjuk 10-20 különböző állásban), akkor abból már tudsz csinálni egy függvényt. Vagy akár csak egy look-up-table-t, interpolációval. És onnantól az alapján már vezérelheted. Nyilván nem lesz óriási a pontossága, de ha nem speciálisabb ipari rendszerbe kell, akkor szerintem a célnak megfelelhet. -
DigitXT
félisten
válasz
tibi-d #12242 üzenetére
Izébigyó: a videókártya driver az nagyon nem Open Source, nagyon rossz példa...
A hardverért ugyan fizettél, drivert meg kapsz hozzá - már ameddig kapsz -, hiába
van benne valami hiba, azt csak a gyártó tudja kijavítani, te otthon magadnak nem.Extrém példa: egy régi szkennernek a gyártó nem készítette el a Win7-es driverét,
így dobhatod ki a kukába, vagy használhatod tovább XP-vel. Ha Open Source lenne
nyilván nem kérdés, hogy tudod-e portolni magadnak Win7-re, vagy sem, esetleg a
"közösség" már megtette helyetted. -
robohw
aktív tag
válasz
tibi-d #12227 üzenetére
"Szerintem ilyenkor egy speciális feladatra létrehozott áramkört adsz el, aminek része a felprogramozott Arduino. Az, hogy milyen program fut rajta, betöltés után ellenőrizze, aki tudja."
Szerinted a windows 10-et is el lehet jogszerűen adni, ha valaki egy gépet is ad hozzá?
Azt kellene eldönteni, hogy a kérdező mit akar?
Kibúvót keres, vagy a tényleges jogi helyzetet szeretné megismerni?Azon is érdemes elgondolkozni, hogy más mennyire örülne, ha maga járna úgy, ahogy a szóban forgó library, kétségtelenül jó szándékú készítője?
"Az áramkört adod el, annyiért, amennyiért gondolod, vagy adnak érte."
Azt nem hiszem, hogy neked nem esett le, hogy a kérdező nem csak egy "áramkört" kiván értékesíteni, hanem azzal együtt más szellemi termékét, tulajdonát is, ami nélkül valószinűleg nem is fizetnének neki az "áramkörért" semmit.
A kérdező akkor jár el helyesen, legalábbis szerintem, ha a lib fejlesztőjétől kér egy licenszet magának. Még az is lehet, hogy megkapja ingyen.
-
-
Janos250
őstag
-
Janos250
őstag
válasz
tibi-d #11872 üzenetére
Impulzus hossz? Azt 4 digit pontossággal bőven lehet.
Mi a bemenő jel? Analóg, vagy digitális. Ha analóg, akkor abból hossz előállítható. Milyen gyakran kell küldeni a jelet, mennyire kell, hogy realtime legyen? Pl. egy ESP12E-t (vagy mást) az idő zömében lightsleep állapotban tartasz, akkor meglehetősen keveset fogyaszt. Amikor meg működik, ha ki van kapcsolva a WiFi (modem sleep), akkor 15 mA körül fogyaszt, átlagban nagyon jó lesz. Arduino alatt van is kezelő könyvtár.Vagyis nagyon kevés az info ahhoz, hogy valaki bölcset javasoljon!
-
válasz
tibi-d #11870 üzenetére
Ezt eddig is kb. értettem, de ha jól veszem ki a szavaidból, akkor te egy diszkrét alkatrészekből megépített analóg adó vevő párosról beszélsz, különben már linkelted volna az eszköz adatlapját.
Ha igazam van: mi a gond a készen kapható megoldásokkal, pl nRF24L01? Mi lenne az a fogyasztás, amivel elégedett lennél? -
balintarduin
újonc
válasz
tibi-d #10308 üzenetére
Rendben, köszönöm a segítséget! Még fel merült bennem, hogy hogyan tudok olyan if szerkezetet csinálni, hogy ha a 4x3 membrános billentyűzeten beírok egy számot, pl. 51 akkor ehhez a számhoz elolvassa az adott feladatot, pl, hogy megnyissa a menüt. Ezt egy egyszerű váltózóval meg lehet oldani? Ráadásul nekem nem csak egy szám kellene, hanem elég sok (buszjárat számok), pl, az 45-ös számot beírom akkor annak a menüjét hozza be. Vagy ha az 53-as akkor az ugyan ilyen számmal jelzett menüt hozta be.
-
csubuka
addikt
Köszönöm szépen a további magyarázatot!
Értem, szóval azért nem sokkal drágábbak a legolcsóbb gyári megoldások sem. Mondjuk azokba nem lenne kihívás/gányolás faktor
Ami azért fontos.
Amúgy egy régi telefont nem lehet GSM modulnak használni? Vagy az már tényleg giga-gány?
(#9718) fpeter84: köszönöm Neked is a választ! Igen, lehet, hogy elegek az Arduino boardok, én még mondjuk anno ilyen 30-40 ezres árat kaptam a GSM modulra, azóta azért ezek eszerint korrektebbek lettek.
A fő gond az, hogy most épp nem érhető el wifi, ezért lenne jobb a GSM-es. Hosszabb távon persze jó lehet a wifis megoldás. De ha internetes is, valamilyen SIP klienssel kell "valódi" SMS-t küldjön, mert nem minden családtag tartja bekapcsolva a mobilnetet. (Akksi leszívás meg hasonló meggyőződésből).
Én nem akarok vezérelni semmit távolról. Itt tényleg csak annyi a feladat, hogyha riasztás van, akkor küldjön SMS-t. A szirénát nem olyan egyszerű elnémítani távolról, akkor bele kéne gányolni a PCB-jébe, mert ha nem kap áramot, akkor vonyít akksiról, szóval akkor még a szirénaházban is mókolni kéne, ha távolról le akarnám kapcsolni. Vagy mélyebben belenyúlni a risztóba, meg hogy hogy kezelne egy ilyen "kapcsolj ki" bemenetet. Ez egyelőre még nincs terítéken azért szrencsére. Csak az SMS kiküldése vagy GSM-en vagy valamilyen netes SIP klienssel.
Valószínűleg OpenWRT kompatibilis a router, csak én nem vagyok az egyelőre kész arra, hogy belemókoljak. Ha jól emlékszem akkor ilyen-olyan beépülő csomagokat összevadászva az ember magának fordítja le majd a routerre immár felrakható fájlt nem? Szóval az nem egy sétagalopp, főleg, hogy tárhelybővítés kéne a mostanira USB-n keresztül egyéb package-el. Szóval azt majd csak egy komolyabb belső tárhelyes routerre a jöbőben max szerintem.
(#9722) fecske13: Köszönöm szépen! Hmm, ezt jó tudni, nem én intéztem azt, nem nagyon vagyok tisztában a képességeivel. Ámde az gyakorlatilag egy belső relé is lehet, ami vagy megszakad vagy összezár attól függetlenül, hogy risztási állapot van-e? Mondjuk el akartam kerülni, hogy bele kelljen piszkálnom a riasztó felprogramozásába... Olyan 30 ropi volt anno kifizetve a felprogramozásért, csak, hogy ne nekem kelljen nyomkodni. Lehet egyszerűbb egy ACS712-vel nézni, hogy folyik-e áram a szirénába menő kábelben, minthogy belenyúljak és netán elrontsam a risztót... Át kell gondolni.
**Ez a legkorrektebb topik, nagyon jó ötleteket adtok, igazán köszönöm, mindig gondolatébresztő ide benézni, attól függetlenül, hogy van-e épp saját projekt ötlete az embernek!
-
csubuka
addikt
Köszönöm szépen a választ!
A gyári GSM modulod az jó áron volt?
Arra gondoltam, hogy lehetséges-e, hogy a sziréna körbe sorosan egy ACS712 hall-elvű árammérőt beépítek és akkor meg is van az Arduino beépítése. Ha folyik áram a 12V-os sziréna körben akkor küldheti az SMS-t vagy valami online voip megoldással, már ha olyat lehet.
-
csubuka
addikt
Kedves tibi-d!
Én is éppen egy riasztó (DSC márka, egy ingatlanon van épp, nem egy autón) GSM modulos kibővítésébe fognék mostanság. Lapozgattam a riasztó topikot meg itt a mikrokontrollereset, hogy egy gazdaságos megoldáshoz tudjak ötletet meríteni és úgy akadtam ezen korábbi hozzászólásodra.
.Sikerre vitted ezt a projektet végül vagy túl sok buktató volt?
Hamar megoldható, ha csak a GSM modult kell elkészíteni, a riasztó már adott? Nagyon alapra gondolok, hogy adott három számra küldjön egy SMS-t, ha a sziréna beindul. Ennyi. A gyáriak relatíve drágák és túl sokat tudnak, ahhoz képest ami nekem kell.
-Szerinted ez mennyire kivitelezhető? Illetve tapasztalatod alapján hogyan kötnéd a riasztóhoz?
Van a riasztónak olyan kimenete, ami közvetlenül beköthető lehet egy Arduino vagy ESP digital inputjára? Azonos föld esetén gondolnám, hogy riasztási esetben akár egy digital HIGH történet lehetne. Persze lehet nem ilyen egyszerű ez sajnos. De pl. akár figyelhetném a sziréna feszültségét, ha az egyszerűbb.Tényleg egy viszonylag alap dologra gondolok, amit hamar össze lehet rakni.
Köszönöm előre is
-
Teasüti
nagyúr
Nekem ez alapján úgy tűnik, hogy éppen a PLC az ami eléggé korlátolt. És ha én többször szeretnék írni/olvasni egy portot a loop() egy átfordulása alatt?
Amúgy meg nem egészen értem a dilemmát a sorrend vezérlésnél. Azt írtad nem mindegy melyik gombot milyen sorrendben olvassa be a program. Na egyrészt ez a te programodtól függ, hogy mit milyen sorrendben kezelsz, másrészt viszont (nem tudom egy PLC hogy működik) itt amíg te megnyomsz egy gombot, addig a loop() nem túl komplex programok esetén több ezerszer lefut.
Mit számít az hány nanoszekundum telik el két port írása/olvasása között??
PLC-vel amennyire én tudom általában amúgy is automatizált gépeket vezérelnek, és nem hiszem, hogy a mechanikus, pneumatikus, hidraulikus, stb. aktuátorok akár csak milliszekundomos késleltetéssel dolgoznának.
Itt max akkor lenne jelentősége a sorrendeknek, ha a program feltételes várakozással tölti az ideje nagy részét és megvárja míg a perifériák befejezik amit csinálnak. Ha ekkor ugrik a következő sorra, akkor nyilván számít mi a következő sor. Lehet olyan programot írni, aminél egy program ciklus konkrétan megegyezik az adott gép feladatának egy ismétlésével. De a lineáris programozás nem erről szól, optimális esetben nincs várakozás. Itt a loop() folyamatosan fut és csak akkor lép be a feltételekbe, ha történik vmi érdemleges. Vagyis itt amíg a gép elvégez egy feladat ciklust, addig a program ciklus több ezerszer is lefuthat. Arduinon nincs blokkolás a programban, az egy magos processzorokon még a delay() használata se követendő példa. -
-
vargalex
félisten
Nem teljesen értem a különbséget. Nyilván, Arduino alatt megnézed egy bemenet állapotát, majd csinálsz valamit. Miért foglalkozna vele, ha közben változott, hiszen a további programkódban már nem függ tőle semmi. Ha neked mégis úgy kellene, akkor mindig nézd meg az állapotot, ahol a futás függ tőle (esetleg használj megszakításokat).
Bár ezt a ciklus elején vs. beolvasás témát kifejthetnéd...
-
gyapo11
őstag
Igen, ha nincs pontos etalonod, akkor az eltérés ismeretében tudsz korrigálni. Lehet, hogy a hőfokot is figyelned kellene, de ha ki van kapcsolva, akkor az nem fog menni.
Ha lehet, akkor be kell vonni az embert, és valamikor ismert időpontban megnyomni egy gombot, ami ráhúzza az időt, nekem reggel 8 óra volt ilyen.
Vagy ha a táplálás megengedi, akkor hagyni az órát, és egy gps modult rákötni, az elég pontos. 1 perc körül szokott lenni a cold start, ha elég naponta-hetente beállítani az időt, akkor elég ennyiszer bekapcsolni, utána ki, úgy nem kajál sokat. -
gyapo11
őstag
Valahogy így:
byte decToBcd(byte val)
{
return( (val/10*16) + (val%10) );
}
// sets time and date data to DS3231
Wire.beginTransmission(DS3231_I2C_ADDRESS);
Wire.write(0); // set next input to start at the seconds register
Wire.write(decToBcd(second)); // set seconds
Wire.write(decToBcd(minute)); // set minutes
Wire.write(decToBcd(hour)); // set hours
Wire.write(decToBcd(dayOfWeek)); // set day of week (1=Sunday, 7=Saturday)
Wire.write(decToBcd(dayOfMonth)); // set date (1 to 31)
Wire.write(decToBcd(month)); // set month
Wire.write(decToBcd(year)); // set year (0 to 99)
Wire.endTransmission();Ha tudod, hogy mennyi az eltérés, akkor kiolvasod, kivonod vagy hozzáadod a szükséges értéket, és visszaírod.
-
Teasüti
nagyúr
A feladatból visszafelé haladva tanulásnak meg van az a hátúlütője, hogy nem biztos, hogy a legjobb megoldás kerül felszinre.
Nem kell mindig maximalistának lenni. Kezdőként az első sikerélmények meghatározó fontosságúak.
Később lehet szofisztikáltabb dolgokat építeni, ahogy gyűlik a tapasztalat.Lexikális tudás bennem sem marad meg, így ami az előadásokon leadtak, az a következő zh-ig megvolt, esetleg vizsgáig. De magam mögött hagyva az intézményt kb csak halvány emlékek vannak a témakörökről.
Vannak akik fejből fújják a verseket általános iskolából 40 évvel később is. Számomra érthetetlen hogy nem fakult meg az az emlék, elvégre kétlem hogy rendszeresen felidéznék.
Nekem minden elveszik, amit nem használok.
A szakmámból is mivel nem abban dolgozom kb alig jut eszembe vmi. Persze lehet ha nekiállnék megint akkor sorjában előjönnének az ismeretek, de amúgy elég gyenge a szinapszis hálózatom.
Tavaly elég jól ment már a programozás, már az Atmega328p lelkivilágával foglalkoztam.
Most meg azt is nehezemre esik felidézni ennyi kihagyás után, hogy most milyen szót is keresek, mikor arra gondolok, hogy bájtokat tologatok a chip-ben. Jah igen, szóval regiszter szinten ment már az ismerkedés.
Aztán most lehet felcsapom az IDE-t majd, ha összeállt a hardverem és lehet fellapozom mellé a tutorialt is, hogy hogy is van az a pinMode.De mindettől függetlenül nem hiszem, hogy sokkal előrébb lennék az elektromosságtannal, mint nélküle.
Mit segít az rajtam, hogy ki tudnám számolni a két pontszerű töltés között fellépő erő nagyságát - a fenti példánál maradva? Semmit. -
-
"Kapcsolót úgy kell bekötni, hogy sorba kötünk vele egy ellenállást"
VS.
"A sorba kötött ellenállás nem pont érzékenyebbé teszi a külső zavarokra?"Nekem a sorba kötött ellenállás azt jelenti, hogy arduino láb -> ellenállás -> kapcsoló -> föld. Elolvastam még egyszer, mit írt, most már értem, hogy nem erről beszélt, de szerintem félreérthető a leírás.
-
Teasüti
nagyúr
Szerintetek mekkora pwm frekvenciát lehet kisajtolni ebből a kapcsolásból?
Fast pwm módban gondolkodok, 8-as prescaler használatával, ami olyan 8 kHz körül van.
IRL2203N mosfet berendelve, ez egy jó meghajtással talán elketyeg 8 kHz körül.Mivel lehetséges ennél is gyorsabb kapcsolás?
-
Teasüti
nagyúr
Összeraktam azt a kapcsolást breadboard-on Uno-val és egy NPN tranyóval meg egy leddel. 1000n kerámia volt kéznél csak, de lényegében valóban működik!
0% duty cycle esetén és 100%-ra is világít a led (felhúzva a bázis), szóval ezt a problémát megoldottnak tekintem, hála az itt érkezett válaszoknak!
Külön köszönet gyapo11-nek a részletes magyarázatokért és azokért a monostabil chip ajánlókért (könyvjelzőzve)!A kondenzátor kapcsán hogy kell méretezni a frekvenciához?
Illetve szerintetek működhet ez a "heftelt" watchdog a relékkel is? Mondjuk érdekesen hangzik PWM jellel relét behúzni.Vagy nagyobb kondival el lehet simítani a PWM jelet? Ez esetben arra gondolok, hogy a monostabil "one-shot" áramkört újraindítgatni a PWM-mel, de az áramkör kimenete egyenletes DC feszültség amíg "le nem jár" az RC ideje.
Van esetleg váltó érintkezős relére félvezetős megoldás?
Solid state relay, megvan. -
Bocs, de nem tudom lerajzolni, megtervezni sem tudnám egyedül, nem értek az analóg áramkörökhöz.
Az arduino kimeneten megjelenő felfutó él elindít egy időzítőt, az időzítő induláskor megszakítja a féklámpa áramkörét, mikor lejár, pedig visszazárja, az arduino kimenet állapotától függetlenül. A lefutó él pedig nullázná az időzítőt, így azonnal záródna az áramkör. -
Ennél nem lenne egyszerűbb és üzembiztosabb, ha az arduino csak megszakítani tudná a lámpa áramkörét, de csak egy időzítővel előre meghatározott ideig? Pl. 0,3mp után az időzítő az arduino vezérlés állapotától függetlenül mindenképp visszazárná az áramkört (vagy nyitná a fetet, már én is elvesztettem a fonalat
) Ez villogtatáshoz és pwm dimmeléshez is elég lenne. Az arduino elromlása esetén pedig a legrosszabb, ami történhet, hogy egyet villan a féklámpa fékezéskor.
(#6345) tibi-d: ennek az a hátránya, ha jól értelmezem a rajzot, hogy nem lehet dimmelni a pwm jellel, csak egy (bocs, ha hülyeséget írok) ampitúdó-modulált ki-be kapcsoló jelet tudsz vele küldeni.
-
gyapo11
őstag
Igen, ez működik. Annyit érdemes megjegyezni, hogy a nyitott és zárt állapotot érdemes definiálni. Ha egy áramkörben valami nyitott, akkor ott áram nem folyik, pl. egy kapcsoló lehet nyitott vagy zárt, és akkor folyik áram, ha zárt. Ugyanígy egy tranyó vagy fet is lehet nyitott vagy zárt, és ugyanúgy viselkedik mint egy kapcsoló. Ha zárt, akkor folyhat az áram, ha nyitott, akkor nem. Sok helyen pont fordítva használják.
Másrészt a pwm frekvenciára kell méretezni a kondenzátort, hogy a bázisáramot annyi ideig ne negedje a kapcsolási szint alá süllyedni, ameddig a leghosszabb periódusidő tart. Ha nagyon kicsire szabjuk meg a kapacitív ellenállást, akkor túl nagy lesz a kondi, és egy lefagyáskor esetleg túl hosszú időre fog kialudni a féklámpa. -
Bocs az offért meg a láma kérdésért, de segítsetek már, ha a hajam kihullik, se értem, hogy a fogyasztó pozitív ágát miért nem lehet N csatornás fet-tel vezérelni, miért csak a negatívat lehet, vagyis miért kell P-fet a pozitív ágra? Az áram iránya ugyanaz. Pár hónapja már egyszer téma volt, de akkor sem értettem.
-
Janos250
őstag
Na, akkor az bizony macerás lesz, ha a negatív oldalt nem lehet megszakítani. Akkor én ezt venném:
IRLU9343
Arduino láb zenerrel korlátozva 5V-ra, és ellenállásal lekötve a földre, hogy passzív állapotban vezessen. Kérdés persze, hogy az Arduino Ts alá tudná-e vinni G-t.
Ez csak egy vegyész okoskodása, de egyszer lehet, hogy kipróbálom. Legfeljebb kimegy belőle a füst.Lehet, hogy nem lehetne megspórolni a tranyót, vagy egy BS180-at.
(persze az általad leírt bekötés szerint) -
PHM
addikt
Az észrevétel jogos, efölött elsiklottam.
De:
- P csatornás kommersz fet, a gate ellenálláson keresztül a testen.
- A pozitív tápon egy PNP tranzisztor, amelyet egy NPN tranyó
hajt meg a test felől.
- Nem kell az Arduinot lebegtetni, az nyugodtan ülhet a negatív testen.
A vezérléshez nem kellenek különleges alkatrészek.
Mivel kétszeres fázisfordítás van, a logikán sem kell fordítani.
(Bár ez szoftveres oldalról nem nagy kunszt.) -
Teasüti
nagyúr
És tényleg!
De mit jelent a negatív Gate feszültség konyhanyelven? Most akkor működik az Arduino digitális kimenetén, vagy nem?
Mert most már azt is tudom, hogy gyártják a mosfet-et, már a működésének fizikai elvével is tisztában vagyok hála a sok anyagnak (bár pont nem érdekel az elmélete), de erre az egyszerű kérdésre nem kaptam választ.
Vagy olyan formában kaptam, amit nem értek (lehet a grafikonokból ki lehetne bogarászni)...A cél az volna, hogy HIGH értékre zárjon, LOW értékre (vagy lebegő portra, INPUT módban, vagy simán üzemen kívül lévő MCU esetében) pedig nyitva maradjon.
-
Janos250
őstag
Ezen elvileg van 32M flash. Az ára $2.13 ingyen szállítással, ami a nevetséges határát súrolja.
https://www.aliexpress.com/item/NodeMCU-V3-Lua-WIFI-module-integration-of-ESP8266-extra-memory-32M-flash-USB-serial-CH340G/32791599265.html?spm=a2g0s.9042311.0.0.s5SgDO -
tvamos
nagyúr
-
vargalex
félisten
-
-
gyapo11
őstag
mert az arduino PWM jelet állít elő a test és a tápja között. Ebből szűrés után lehet "analóg" jelet előállítani.
Lehet olyat is, hogy van egy bináris számláló, aminek a kimenetein egy ellenállás létra. A számlálót táplálja (és amikor kell reseteli) az arduino, a kimeneten meg lépked fölfelé az analóg feszültség. 8 bites számláló 256 szintet tud, de két 8 bites már 65536-ot. Ha a lépkedést nem akarjuk ráengedni a vezérelt eszközre, akkor kell még egy tároló is.
-
-
Zoja™
őstag
Igazából már szemezgettem a Quad-dal, de még nem volt ,,bátorságom" neki kezdeni.
A cél egyébként nem az volt, hogy DAC-ként használjam az arduinot, csak tekergetős potméter helyett nyomógombos megoldás érdekelt.
Erre a kis erősítőre viszont tényleg a régi megoldás marad, a későbbiekben ha lesz lelki erőm egy komolyabb erőlködőt össze rakni, azt biztos komoly tervezés és sok kérdés fogja megelőzni úgy, hogy a végeredmény szinte minden igényt kielégítsen. -
-
Ez fura, mert én sorozatosan töltöttem fel Uno-ra usb-n programot úgy, hogy a 7,4V lipo akksi rá volt dugva.
Mert előtte az volt, hogy ha nem húztam le a motorvezérlőt a Vin-ről, az usb melletti polyfuse kioldott, én meg eleinte néztem értetlenül, hogy miért kapcsolódik le a kütyü az usb-ről.
Így meg nem volt semmi gond. Akkor csak idő kérdése, hogy mikor megy tönkre? Esetleg számít, hogy az enyém ch340g usb chipes kínai klón? -
fpeter84
senior tag
Nagy valószínűséggel az lesz a problémád, hogy hiába rajzolsz egymásra körről körre különböző méretű téglalapokat, attól még a régi is ott marad - ami ha "magasabb" mint a következő, akkor természetesen a kijelzőn az előző fog látszani. Vagy minden újrarajzolást egy clear-el kell kezdened - de ettől lehet vibrálós lesz a kép - vagy egy a háttérrel azonos színű téglalappal "le kell törölni" a túllógást. Ha az oszlopdiagrammod háttere nem egyszínű hanem pl osztásos, akkor persze még összetettebb matekozást kell csinálnod hozzá...
-
fpeter84
senior tag
A jó öreg win-es paint-nél jobbat erre nem tudok a mai napig - ha tényleg pixelről pixelre akar menni az ember, messze ez a legkényelmesebb szerintem. A legjobb a régi XP-s verzió volt, a 7/10 alatti már kicsit túl "modern" de még az is jó...
A gombos problémára: lehet hogy addig nem inicializálja az érintőkijelző könyvtárat, és valójában ez borítja meg a technikát? Milyen hardverekről beszélünk egyáltalán? Lehet hogy a programozó lábait próbálja meg pont használni a lib...
-
gyapo11
őstag
-
-
skul0
aktív tag
De lehet vezérelni, változik a fordulatszáma is, csak nagyobb feszültség kell neki, hogy meginduljon, addig csak búg a kis szivattyú, de vizet nem szállít, aztán mikor megindul, akkor meg már túl nagy feszültség van rajta (multiméter szerint, sajnos nincs szkópom) és túl nagy a fordulatszám. Mindez egy akksiról, feszültségosztóval gyönyörűen működik alacsonyabb feszültséggel is.
De már úton van a DAC, aztán egy kis erősítővel jó lesz.
-
gyapo11
őstag
Akkor ez a motor hyper kényes lehet
Ez volt a hozzászólásban:
működött ugyan a szivattyú, de sokkal erőtlenebbnek tűnt és nem tudta olyan alacsony fordulatszámon szállítani a folyadékot, mint egy kis ebay-es feszültségszabályzóval, mert el sem indult.Ettől még sípolhat, arról nem volt szó, csak a gyengeségről, és hogy van olyan szabályzó, amivel viszont jó.
Ha elkészül valamelyik vezérlési megoldás, akkor lehet, hogy érdemes lesz egy szabályzást is beiktatni, hogy ne a feszültség legyen állandó, hanem a szállított folyadékmennyiség.
-
gyapo11
őstag
A h-bridge szerintem ugyanúgy négyszögfeszt fog a motorra adni, és abból indult a beszélgetés, hogy ezt a motor nem szereti, ezért kell simított egyenfesszel táplálni. A simított egyenfeszt pedig az arduino pwm jeléből kell előállítani, mert nincs beépített DAC, ami egyből egyenfeszt adna ki. De mehet a DAC, és akkor nem kell szűrni. Vagy marad tényleg a potméter és szervóval forgatni.
-
Teasüti
nagyúr
Oké, elfogadom.
A következő kérdésem az volna, hogy mihez kezdesz a közös táppal?
Én eddig úgy tudtam, hogy galvanikus leválasztást két külön áramkör összekötésekor alkalmazunk.
Na de itt közös a táp, közös a földpotenciál és vhogy össze kéne kötni az RGB szalag Data In portját az MCU egyik I/O portjával, amin 800 Khz-es adatfolyam fog közlekedni.
Szóval várom a javaslatokat.Amúgy jelenleg a teszt folyamán semmi jelét nem mutatja a rendszer, h ne lenne működőképes.
Már össze van rakva a prototípus, a programot fejlesztgetem. Az MCU és a szalag párhuzamosan van kötve a tápra.
Ez így működik. Igaz semmi sallang nincs rajta, de megy.
Én csak kiegészítő védelmet szeretnék hozzáadni, ha beépítésre kerül 24/7-es használatra, hogy megfeleljen "a biztonsági előírásoknak". De legalább ne legyen háztűz, ha a táppal gond adódik. Az se baj, ha meg tudom védeni az MCU-t, ha bejön vmi zavar a hálózatról.
Vagy mint az eredeti kérdésben is szerepelt, hogy okozhat-e problémát hidegindításkor a nagy áramfelvétel? Ilyenkor ha megszaladna, akkor azt ki kéne védeni vmivel. Erre van a kondi a szalag elején.
VAGY ha rövidzáram van, akkor azt mivel lehet kivédeni. Szóval ez volt a kérdés.Szóval még egyszer. Itt az MCU csak közvetetten kapcsol nagy áramokat, nem az a feladat, hogy az 5V-os I/O-t illeszteni kell az akármilyen feszültségű nagyobb áramhoz. Itt az I/O port egy 220-as ellenálláson keresztül közvetlenül csatlakozik a led szalaghoz. A led szalag meg közvetlenül (illetve egy 2200 uF kondival) a tápra.
Az MCU is közvetlenül a tápra párhuzamosan. -
Teasüti
nagyúr
Hogyan kéne leválasztani galvanikusan, amikor az RGB szalag bekötése úgy indul, hogy közösítsd a földet a szalag és az avr között? Meg nagyjából a legtöbb alkalmazásnál is ez volt eddig, amit láttam Arduino-val, h közös föld potenciálra kell hozni a cuccokat.
Na meg ha ugyanaz a táp eteti az AVR-t, amiről megy még 15 amper smd led?(#3539) Ribi
Ez a dióda kérdés feljött már az AVR portjainak illesztésénél is. Most olvasom a wikit róla, érdekes.
Éppen ilyenekre gondolok, hogy pár apró vacakkal kicsit üzembiztosabbá tenni a tápot, főleg ha közvetlen szabályzott 5V-tal szeretném üzemeltetni az AVR-t. -
Lehet. Az usb is a soros programozókat használja, szóval soros porton nem biztos hogy sikerrel jársz, ha az usb nem ment. ICSP programozóval kellene próbálkozz. Találsz rá tutorialt a neten, hogyan tudsz pl uno-ból icsp progamozót csinálni.
bacus:[link] én ilyet használok. Ennek ugyan a venti a markolatában van, de szerintem nagyon kényelmes vele dolgozni. Sokkal kényelmesebb, mint a vastag levegős csövet is tekergetni magad után. Kicsit ugyan 10k fölött van, de tényleg nagyon szépen lehet vele dolgozni, és kényelmesen.
Új hozzászólás Aktív témák
Hirdetés
- Sony FE 28-70 mm F3.5-5.6 OSS
- PS5 Slim Disc 1TB 2026.10.08 GARANCIA
- Bomba Ár! Dell Latitude 3190 - Intel N4120 I 4GB I 128GB SSD I 11,6" HD I Cam I W11 I Garancia!
- Bomba Ár! Dell Latitude 3190 - Intel N4120 I 4GB I 64GB SSD I 11,6" HD I Cam I W11 I Garancia!
- Bomba ár! Dell Latitude E6520 - i7-2760QM I 8GB I 256SSD I Nvidia I HDMI I 15,6" HD+ I W10 I Gari!
- Samsung Galaxy A16 128GB Kártyafüggetlen, 1Év Garanciával
- LG 32SQ700S-W - 32" VA Smart - 3840x2160 4K UHD - 62Hz 5ms - WebOS - Wifi + BT - USB-C - Hangszórók
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32 RAM RTX 5060Ti 16GB GAMER PC termékbeszámítással
- Asus TUF A15 FA507NU - 15.6"FHD IPS 144Hz - Ryzen 7 7735HS - 8GB - 512GB - RTX 4050 -2.5 év gari
- BESZÁMÍTÁS! 6TB Seagate SkyHawk SATA HDD meghajtó garanciával hibátlan működéssel
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest