Keresés

Részletes keresés

Vargham Creative Commons License 2018.08.02 0 2 3409

Az analóg bemenetet nem tudod lespórolni, azok ugyanis a mikrokontroller IC részei. Amúgy azok is sima digitális I/O lábak, csak van plusz ADC funkciójuk is. Ha kisebb alapterületen akarsz elférni, akkor vegyél pro mini-t és azt építsd be. Kínából nagyjából 500 ft / db áron lehet rendelni. Nincs rajta USB csatlakozó, illetve illesztő IC.

Vagy vehetsz önállóan ATMega328P-PU IC-t is, és akkor azt oda forrasztod, ahová akarod. Ez utóbbi esetben viszont neked kell gondoskodnod a tápról, reset felhúzóról, kvarcról, stb.

Előzmény: kisbosze360 (3408)
kisbosze360 Creative Commons License 2018.08.01 0 0 3408

Sziasztok!

 

Olyan kérdéssel fordulok hozzátok, hogy az ardu.nano-n "kifejlesztett" kódnak, milyen egyszerűbb környezetet építhetnék, hogy ne kelljen minden újabb kreálmányba egész arduinot beletenni?
Hiszen feleslegesen tud olyan sokat pl.: egy futófénynek nem kellenek az analóg bemenetek.

 

Köszönöm!

granov Creative Commons License 2018.06.16 0 0 3407

Üdv!

Még mindíg egy A6 GSM modullal küzdök.

Van egy gondom amire nem találok megoldsát.

Kiadok egy AT parancsot aminek a vége lemarad, illetve ha először adom ki teljes értékű válasz jön, ha megismétlem lemarad a vége ami a lényeg lenne,

Pl. a cpisend válasza olyan 72 karaktert ad vissza, a dns lekérdezés lefut először jól, de a további lekérdezés eredménye véget ér az ip cím első tagjánál.

Nem találok olyasmit ami a válasz puffer méretét leírná.

Van valakinek tippje?

Prof Creative Commons License 2018.06.14 0 0 3406

Szia,

Van referenciapont bárhol az encoderen?

Előzmény: Brinarpi (3405)
Brinarpi Creative Commons License 2018.06.09 0 0 3405

Hello Mindenki

 

Van egy jó kis DC motorra tervezett encoderes pozícionáló sketch-em.

Szeretnék segítséget valakitől, hogy kiegészítsem egy homing funkcióval.

Ha segítene valaki azt nagyon megköszönném.

 

Íme a sketch:

 

[code]

#include <Button.h> //ez a verzió a dobozcsere utáni jó
#include <Encoder.h>

const int PWM0 = 6;
const int PWM1 = 5;
const int BTN_MEM_PIN[] = {A0,A1,A2,A3};
const int READY = 13;
int currentPos = 0;
int newPosition = 0;
int runningSpeed = 0;
long distanceTogo = 0;


Encoder myEnc(2, 3);
long oldPosition = -999;
long targetPosition = 0;
#define ACCURACY 10

#define DEBOUNCE_MS 20
#define PULLUP true
#define INVERT true


#define motorSpeed 255
#define motorSpeed1 40
#define motorSpeed2 30


Button btnPos1(BTN_MEM_PIN[0], PULLUP, INVERT, DEBOUNCE_MS);
Button btnPos2(BTN_MEM_PIN[1], PULLUP, INVERT, DEBOUNCE_MS);
Button btnPos3(BTN_MEM_PIN[2], PULLUP, INVERT, DEBOUNCE_MS);
Button btnPos4(BTN_MEM_PIN[3], PULLUP, INVERT, DEBOUNCE_MS);

 

long memPosition[] = {0,0,0,0};


void setup() {
pinMode(PWM0, OUTPUT);
pinMode(PWM1, OUTPUT);
analogWrite(PWM0, 0);
analogWrite(PWM1, 0);
pinMode(READY, OUTPUT);

 

Serial.begin(9600);
}

void loop() {

memPosition[0] = 0;
memPosition[1] = 1000;
memPosition[2] = 2000;
memPosition[3] = 3000;


btnPos1.read();
btnPos2.read();

 

if (btnPos1.wasReleased()) {
Serial.println("btnPos1");
targetPosition = memPosition[0] ;

}
if (btnPos2.wasReleased()) {
Serial.println("btnPos2");
targetPosition = memPosition[1] ;
}
if (btnPos3.wasReleased()) {
Serial.println("btnPos3");
targetPosition = memPosition[2] ;
}
if (btnPos4.wasReleased()) {
Serial.println("btnPos4");
targetPosition = memPosition[3] ;
}

long newPosition = myEnc.read();
distanceTogo = (abs(targetPosition - newPosition));

if (newPosition != oldPosition) {
oldPosition = newPosition;
Serial.println(newPosition);
}

if ( newPosition != targetPosition) {

Serial.print("Target/Actual:"); Serial.print(targetPosition); Serial.print(" / "); Serial.print(newPosition); Serial.print(" ["); Serial.print(abs(targetPosition - newPosition)); Serial.println("]");
Serial.println(distanceTogo);

if (targetPosition < newPosition) {
retractActuator();

}
if (targetPosition > newPosition) {
extendActuator();
}
if ( (targetPosition == newPosition) || abs(targetPosition - newPosition) <= ACCURACY) {
stopActuator();
}

if (distanceTogo <= 300 ) {
runningSpeed = motorSpeed2;
}

if (301 <= distanceTogo && distanceTogo <= 500) {
runningSpeed = motorSpeed1;
}
if (distanceTogo >= 501) {
runningSpeed = motorSpeed;
}
}


}


void retractActuator() {
analogWrite(PWM0, 0);
analogWrite(PWM1, runningSpeed);
digitalWrite(READY, LOW);

}

void extendActuator() {
analogWrite(PWM0, runningSpeed);
analogWrite(PWM1, 0);
digitalWrite(READY, LOW);
}

 

void stopActuator() {

analogWrite(PWM0, 0);
analogWrite(PWM1, 0);
digitalWrite(READY, HIGH);

 

}
[/code]

tibi-d Creative Commons License 2018.05.31 0 0 3404

Lehet, hogy félreérthető volt a saját vezérlős kijelző. Úgy értettem, hogy mindegyik digit 7 szegmenses kijelző egy IC-vel van meghajtva, így nem kell multiplexelni.

tibi-d Creative Commons License 2018.05.31 0 0 3403

A régi jo öreg SN74143 v. SN 74144. Természetesen CMOS változatban lehet találni hasonlót, de nekem ez volt kéznél.

Előzmény: ruzsa janos (3402)
ruzsa janos Creative Commons License 2018.05.31 0 0 3402

kijelzőt saját vezérlő IC-vel vezérlem

na és az melyik IC?

bocs, nem vagyok annyira lusta, kikereshetem én is, de ha már van olyan amelyik bevált..

Előzmény: tibi-d (3401)
tibi-d Creative Commons License 2018.05.31 0 0 3401

A mostani változatban a kijelzőt saját vezérlő IC-vel vezérlem, így az arduino csak kiosztja, és a meghajtó IC elvégzi a feladatot. Sajnos a NANO már kevés lenne az RTC, a stopper, és a multiplexelés elvégzésére. A lerajzolt változatban még elégséges volt.

Előzmény: ruzsa janos (3400)
ruzsa janos Creative Commons License 2018.05.31 0 0 3400

értem, köszönm.

akkor tehát a 7 szegmenses kijelzőt nem folymatosan hajtod, hanem multiplexeled, vagyis 1/4 időben működne egyenként. erre voltam kíváncsi, mert a 7 szegmeses vezérlők azok saját memóriásak, ha jól tudom, és belül intézik el az áramszabályozást

Előzmény: tibi-d (3399)
tibi-d Creative Commons License 2018.05.31 0 0 3399

Az eredeti rajzot nem találom, de összedobtam egy blokkvázlatot.

 

Előzmény: ruzsa janos (3398)
ruzsa janos Creative Commons License 2018.05.29 0 0 3398

hát ha a hardver rajzát elküldöd, megköszönöm. nézegettem én is a 4" és 5"-es LED-eket, igazából az is lehetne, a program nem is kellene, inkább az érdekel, hogyan oldottad meg a tárolást, esetleg valamelyik cél IC kimeneteit láttad el valami erősítővel, egy ekkora 7 szegmenses gondolom azért már rendesen zabál.

A VGA monitor mellett esetemben annyi szólt, hogy az az adott rendezvényeken amúgy is van, meg az univerzális és grafikus  meg kijelző lehet.  

Előzmény: tibi-d (3397)
tibi-d Creative Commons License 2018.05.29 0 0 3397

Sziasztok!

Tán két éve készítettem egy századmásodperces stoppert 4"-os 4digit, 7 szegmenses kijelzővel. A Nano-n kívül néhány meghajtó IC, táp panel kellett hozzá. 30-40m távolságból is tökéletesen lehet látni. Jelenleg a továbbfejlesztett változatán dolgozok, RTC-vel kiegészítve, LCD menüvezérelt beállítási lehetőséggel. Szerintem ennél bonyolultabb megoldás nem kell. Bár magamról tudom, hogy az igényekkel nagyon el lehet szállni. Pl Wi-Fi, mobilról vezérelni, stb.

ruzsa janos Creative Commons License 2018.05.29 0 0 3396

hát igen, de az nem egyszerűbb, mert abból még a monitorra kellene eljutnia az adatnak.

viszont azóa találtam olyat, hogy az arduinoval közvetlenül állítja elő a VGA monitor vezérlőjeleit, és akkor ha nem akarok nagy felbontást (nekem 160x120 pixel is elég lenne), akkor még másra is marad ideje a chipnek (ami a VGA-t vezérli, az csak a VGA-val foglalkozik, ha tehát mást is akarok, akkor két arduino kell.

egy nagy kijelzős stopperhez kellett volna az egész.

Előzmény: halaloszto (3395)
halaloszto Creative Commons License 2018.05.29 0 0 3395

A legegyszerubb az egy tablet html-javascripttel, es egy webszerver az arduinon.

Előzmény: ruzsa janos (3393)
ruzsa janos Creative Commons License 2018.05.28 0 0 3394

árnyaltabb a kép, megvan, amire vágytam: http://www.hobbytronics.co.uk/serial-vga

most már csak kicsit barátibb ár kellene. ötlet?

Előzmény: ruzsa janos (3393)
ruzsa janos Creative Commons License 2018.05.28 0 0 3393

uraim, van egy projektem, amihez szerettem volna egy nagy méretű kijelzőt. egyszerű számok, ilyesmik, amik egy arduinoból jönnének. adódna ugye, hogy egy VGA panel jó lenne erre (gondolok mondjuk egy amolyan 800x600-as videomemóriába, amibe én pl I2C-n keresztül, vagy akár szeriálisan bele tudjak írni, a panel meg tegye ki  VGA jel formájában. Hát nem találtam, ha valaki tud ilyet, ossza meg velem.

 

másik verzió: ha egy PC-n lenne egy egyszerű, de általam konfigurálható felület, ami pl a soros porton olvasna be adatokat. Ilyenre elvileg a Visual Basic képes - csak éppen az meghaladná a képességeimet, hogy emiatt a TELJES visual basicen átrágjam magam - gondoltam, csak van valami abban megírt, paraméterezhető vezérlőpanel.  Hát egyelőre ilyet sem találtam.

 

Ha valaki esetleg.... 

gyorob1 Creative Commons License 2018.05.21 0 0 3392

Údv mindenkinek!

https://www.youtube.com/watch?v=FzHQ469dDGE

Valaki beletudná írni ennek a kódjába azt hogy ha nagy eső esik (analóg esőérzékelő), akkor ne induljon el a beállított kapcsolás csak az eső után egy bizonyos idővel? Mondjuk 12óra, amit eső után várnia kéne.

oregsas Creative Commons License 2018.05.21 0 0 3391

 

Erről a jelről van szó . A kimenőtrafóra tettem fél menetet és ilyen a jelalakja . A negatív felét levágom , a pozitívot pedig 4,7 voltos zeenerrel határolom.

Az omron plcknél találkoztam az  " inc és dec " utasításokkal és a turbopascalban is mintha ez lett volna az előre és hátra számlás utasításkódja .

Az a nagy fekete a hegesztő, ami rezeg és a rezgéstől felmelegszik 100-110 fokra és csökken a rezonancia frekvenciája. A négy korong pedig a 4 db kristály. A kristályokon a feszültség kb 4000 volt csúcstól csúcsig. Van belőle 18 db és ha a meghajtó más frekvencián rezeg , akkor nincs a hegesztőn mechanikai rezgés .

oregsas Creative Commons License 2018.05.20 0 0 3390

Most megfogtál . Annyit tudok róla , hogy UNO a típusa , hogy mivel van szerelve rezonátorral vagy anélkül ezt nem tudom.

Régebben csináltam frekvenciamérőt TTL áramkörrel és kristállyal készített időalappal . A pontosságára nem emlékszem, de az utolsó számjegy is alig változott . A " +- " 2% az nagyon rossznak tűnik 20KHz.-nél az már "+-" 400 Hz . Nekem jó a mozgó átlag is , nem kell a folyamatos mérés .

Ahogy a hegesztőfej  melegszik " szonotróda " úgy csökken a frekvencia. Ha az  időalap hibája okozza a pontatlanságot , akkor tudok csinálni stabil 1 Hz-et.

A hőmérsékletet egy NTC 100Kohmos és 20Kohmos osztón mérem "A2" analóg bemeneten és LCD kijelzőre íratom és SD kártyán rögzítem .

A skála nem lineáris , de nagyon jól indikálja és minden hőfokon ugyanoda tér vissza.

Ha kicsi a mérések közötti szórás , akkor még megpróbálhatom több mérés átlagát venni . Ezt is a ti segítségetekkel sikerült begyakorolnom.

Ha a mérési hiba mindig ugyanakkora, az nekem még jó . Ha pedig két egymás utáni mérés 2 ezreléknél jobban szór , azt már nem nagyon tudom használni.

Gondoltam bemenetként a D2 digitális bemenetet használnám . F2 pedig annak a változónak lenne a neve , ahol az eredmény megjelenik. Innen a többi az én dolgom.

Gondoltam , kiírnám egy LCD kijelzőre és esetleg egy "  F2 kisebb 18980 akkor piros led  "

                                                                                     " F2 nagyobb 19340 akkor sárga led " ez nem gond.

Holnap reggel beszkenelem a rajzot , de ebben nincs semmi trükk .

Légyszi írd le azt a pár sort és kipróbálom. Ha sikerül akkor megkímélsz egy frekimérő építésétől.

Az arduinot az egyszerűsége és olcsósága miatt szeretném.

Előzmény: Prof (3389)
Prof Creative Commons License 2018.05.20 0 0 3389

Szia!

Ez nem egy igazán nehéz feladat, ugyanakkor azt tudni kellene, hogy:
-- milyen arduino panel (a rezonátorral szereltekkevésbé pontosak, itt +/- 2 százalék eltérés is lehet)?
-- bármely 1 mp-es időszak átlag frekvenciája kell (mozgó átlag), vagy 1 mp-es mérések eredménye másodpercenként frissítve?
-- milyen módon legyen megjelenítve az eredmény?

Egyébként van egy pulseIn() függvény, amivel meg lehet csinálni kb. 5 sorban.

Előzmény: oregsas (3388)
oregsas Creative Commons License 2018.05.15 0 0 3388

Sziasztok !

Kérlek benneteket , írjon nekem valaki egy számláló programot Arduino UNO-ra . Szoktam vele játszani és már sok minden sikerült , de számlálást még nem csináltam.  1 másodpercig számolnék és az eredményt betenném egy változóba és ez lenne mondjuk  " F2 "  a bemenet pedig a D2.

5 voltos pozitív négyszögjelet én megoldom  és a program többi részével elnavigálom magam .

Nem tudom mennyi a számlálási sebessége , nekem 25 KHz ig kellene. Remélem ez a sebesség még belefér , de ha nem akkor teszek elé egy osztót.

Egy ultrahangos hegesztőnek szeretném mérni a frekvenciáját , ami 18,980KHz és 19,340KHz között lesz.

A hőmérsékletmérését megoldottam az analóg bemeneten , amit ki is írok egy kijelzőre.

Gondolom néhány sor, de lehetőleg ne hagyjatok le semmit .

 

granov Creative Commons License 2018.05.09 0 0 3387

Köszi!

Közben sikerült megoldást találnom:

char SENDCTRLZ = 26;

...

....

Serial1.println(SENDCTRLZ);

 

Mi ez a Tera Term?

Nézegetem, de nem értem, hogy segít az arduino-A6GSM közti soros kommunikációban?

Előzmény: Prof (3386)
Prof Creative Commons License 2018.05.09 0 0 3386

https://forum.arduino.cc/index.php?topic=180051.0

Ebben lakozik a megoldás. Én inkább az Arduino saját Serial Monitor-a helyett a Tera Term-et javasolnám. De a fenti is megoldás (utolsó előtti komment).

Előzmény: granov (3385)
granov Creative Commons License 2018.05.07 0 0 3385

Üdv!

 

Még mindíg az A6GSM modullal küzdök.

 

cipsend után elküldve a tcp üzenet, amit egy "ctrl + z" zár.

Serial.print-ben menne ki a "ctrl + z" , de vmi nem jó, mert a ThingSpeak-en nem jelnik meg semmi. Sőt a cipsend se ad vissza semmit sem.

 

Hogyan kell "ctrl + z" -t küldeni Serial.print ben?

Prof Creative Commons License 2018.04.21 0 0 3384

Szia,

Köszönjük a nép nevében, ugyanakkor...

 

A Strukturális felépítés képen kapásból találtam:
– több nyelvtani hibát,
– pár stilisztikai hibát (szövegtagolás),
– a kódban több hibát, amelyek miatt ez a kód így le sem fordul.

 

A Mikrokontrollerek általános leírásában több tárgyi tévedés van. 

 

Szóval így összefoglalva... Nyilvánosan nem fogom 1 ponttal lehúzni, de ez így ebben a formában károsabb, mint hasznos. Sokkal károsabb.

Előzmény: zoole73 (3383)
zoole73 Creative Commons License 2018.04.21 0 0 3383

Sziasztok! Ha valakit érdekel készítettem egy arduino kezdőknek  a ndrid programot. A play áruházból letölthető.

Teljeseb ingyenes és reklámmentes.

Töltsétek használjátok akinek kell.

 

https://play.google.com/store/apps/details?id=com.zoole.arduino_kezdoknek

Üdv Zoole

molnardani Creative Commons License 2018.04.02 0 0 3382

Sziasztok,

 

Én nem értek szinte egyáltalán az arduinohoz, ezért keresek valakit aki elkészítene nekem 1-2 dolgot. 

Jelenleg egy kb. 60 voltos akkupakkhoz lenne szükségem egy töltöttség visszajelzőre illetve egy GPS-es sebességmérőre, az adatokat egy kijelzőn kellene megjeleníteni. El tudná ezt készíteni nekem? Természetesen fizetek érte.

 

Köszönöm,

Dani

323i Creative Commons License 2018.03.30 0 0 3381

Hat en sem talaltam semmit, marad a webszerver az uno vagy megan. Valszeg egy hasonlo egyszerut fogok irni hozza. Az uno/mega fogja kuldeni a malnanak az adatokat, ha volt valtozas.

Előzmény: halaloszto (3380)
halaloszto Creative Commons License 2018.03.30 0 0 3380

szazszor egyszerűbb lenne odavezetékelni a szelepeknek és kész. de ismerem az érzést. az arduinón kell csinálj webszervert. és a raspirol fogsz requesteket kuldeni az arduino webszerverenek. curl vagy wget a baratod, pl.

 

Vajk

Előzmény: 323i (3379)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!