Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   414 / 853
(#) tbarath válasza goreny hozzászólására (») Jan 8, 2018 / 1
 
Annyi eltérés van, hogy az eredetinél talán jobban bízhatsz abban, hogy az és olyan van rajta amit oda terveztek, minőségbiztosítás és satöbbi. Már ha tényleg eredeti, mert az eredeti az nem 7850 Ft, hanem 35 EUR nettó.

Egyébként nekem se volt klónokkal problémám.
(#) t4nt1zjeee válasza tbarath hozzászólására (») Jan 9, 2018 /
 
Szuper. Tesztelgetem elég jó. Most gondolkodok a fejlettebb gyorsabb Arduino DUE változatán. Csak nem tudom az kompatibilis e a RAMPS 1.4-el.
(#) vargham válasza t4nt1zjeee hozzászólására (») Jan 9, 2018 /
 
Idézet:
„Arduino DUE”

Ha ragaszkodsz az Arduino szoftverkörnyezethez, de szeretnél 32 bites ARM-ot használni, akkor én inkább olyan STM32 MCU-t ajánlanék, amihez van Arduino támogatás. Olcsóbb, jobb, a legtöbb láb 5 Volt toleráns, van beépített debugger a boardon, stb.

Bővebben: STM32 cores enabled in Arduino™ IDE
(#) kapu48 válasza t4nt1zjeee hozzászólására (») Jan 9, 2018 /
 
Jók az STM32Fxx processzorok!
De sajnos a RAMPS 1.4 még csak a DUE-hoz van portolva tudtom szerint.

Viszont a nyomtatáshoz bőven elég a MEGA-is.
A DUE-nak szerintem csak akkor veszed hasznát, ha nagy grafikus kijelzőt akarsz használni.
Ahhoz már kel a plusz sebesség.
(#) kegyetlen19 hozzászólása Jan 9, 2018 /
 
Sziasztok.
Ez a kis kód, a programfutási időt milliszekundumban, majd a két nyomógomb (start-stop) megnyomásakor a pillanatnyi időt (programfutási idő) írja ki és még ezen idők különbözetét is.
Ha a programfutási idő eléri a kb. 33000 milliszekundumot, valami történik. Mintha ez az érték után visszafele számolna és az előjele negatív lesz. (Pedig a program futási „időpont” csak felfele számol) Tehát a nyomógomb megnyomásakor (33000 után) a kiírt érték előjele negatív és az értéke, kevesebb mint 33000. Vagyis mintha ez érték után visszafele számolna, egészen nulláig és utána megint felfele. Ez így ciklusosan változik kb. 33000 milliszekundumként.
Mi lehet a probléma? Szerintetek?
Válaszokat előre is köszönöm.
  1. unsigned long time;
  2. const int zold = 5;             //nyomogomb start
  3. const int piros = 6;            //ny. stop
  4. const int sarga = 7;            //ny. reset
  5. int ido1 = 0;                   //kezdo idopont
  6. int ido2 = 0;                   //befejezo idopont
  7. int idok = 0;                   //idobeni kulonbozet
  8. long vido1 = 0;                 //valtozo a kezdo idoponthoz
  9. long vido2 = 0;                 //valtozo a befejezo idoponthoz
  10.  
  11. void setup(){
  12.   pinMode(zold, INPUT);
  13.   pinMode(piros, INPUT);
  14.   pinMode(sarga, INPUT);
  15.   Serial.begin(9600);
  16. }
  17. void loop(){
  18.   Serial.print(" idopont: ");
  19.   time = millis();
  20.   Serial.print(time);
  21.   Serial.print("   start: ");
  22.   Serial.print(ido1);
  23.   Serial.print("   stop: ");
  24.   Serial.print(ido2);
  25.   Serial.print("   kulonbozet: ");
  26.   Serial.println(idok);
  27.  
  28. if (digitalRead(zold) == HIGH && vido1 == 0) {  //start
  29.       vido1 = 1;
  30.       }
  31. if (vido1 == 1) {
  32.       ido1 = millis();        //kezdo idopont
  33.       vido1 = 2;
  34.       delay(10);  
  35.       }
  36.      
  37. if (digitalRead(piros) == HIGH && vido1 == 2 && vido2 == 0) {  //stop
  38.       vido2 = 1;
  39.       }
  40. if (vido2 == 1) {
  41.       ido2 = millis();        //befejezo idopont
  42.       vido2 = 2;
  43.       delay(10);  
  44.       }      
  45.  
  46. if (vido2 == 2) {             //kulonbozet kiszamitasa
  47.       idok = ido2 - ido1;
  48.       vido2 = 3;
  49.       delay(10);  
  50.       }
  51.      
  52. if (digitalRead(sarga) == HIGH) {   //reset
  53.       vido1 = 0;
  54.       vido2 = 0;
  55.       ido1 = 0;
  56.       ido2 = 0;  
  57.       idok = 0;                  
  58.       delay(10);
  59.       }    
  60. }

arduino.jpg
    
(#) tbarath válasza kegyetlen19 hozzászólására (») Jan 9, 2018 / 3
 
32768-nál lesz ez a visszafelé menés

int ido1 = 0;
...
ido1 = millis(); //kezdo idopont

Az int egy 16 bites előjeles egész, 2 byte.
A millis visszatérési értéke pedig unsigned long, azaz előjel nélküli, 4 byte-os egész. Túlcsordul az int 33 sec alatt, használj helyette mindenhol unsigned long-ot, pont mint a time nevű változódnál.
A hozzászólás módosítva: Jan 9, 2018
(#) kegyetlen19 válasza tbarath hozzászólására (») Jan 9, 2018 /
 
Köszi a gyors választ.
Ez volt a hiba, kicseréltem és jó is lett. Köszönöm.
(#) tbarath válasza kegyetlen19 hozzászólására (») Jan 10, 2018 1 / 3
 
Szívesen.
Cserébe kérnék egy kattintást a felfelé mutató kézre az érdemi hozzászólásomnál
(#) Brandyman válasza RoliNyh hozzászólására (») Jan 10, 2018 /
 
Sosem használtam. Van?
(#) Brandyman hozzászólása Jan 10, 2018 / 1
 
Arduino-PLC.

Hamarosan jönnek a tesztek.

plc.JPG
    
(#) sany válasza Brandyman hozzászólására (») Jan 10, 2018 /
 
Hogyan fogod tesztelni?
(#) Brandyman válasza sany hozzászólására (») Jan 10, 2018 /
 
Egyelőre hadveresen.
Mivel 24V-ról megy, mielőtt az Arduino Nano rámegy, mindent pontosan kimérek, nehogy hazavágjam.
Aztán a bemenetek tesztje, majd a kimeneteké.
Ehhez majd egy egyszerű programot írok, első körben ennyi elég.
(#) wbt válasza Brandyman hozzászólására (») Jan 10, 2018 /
 
És hogyan programozható? Fonetikus nyelven vagy létrával?
(#) Brandyman válasza wbt hozzászólására (») Jan 10, 2018 /
 
Ez a felhasználón múlik.

Mivel Nano ül rajta, akár a megszokott módon is.
De a fő cél nem ez, hanem a létrában programozhatóság, ha már PLC-t szimulál.
Ehhez két program kell. Egy az Arduino-ra (már kész), ami a feltöltött/letárolt programot létraként hajtja végre, valamint kell egy programozó szoftver, amiben a létra készül. Ez is készen van (tulajdonképpen) egy már megírt PLC-szimulátor szoftveremet szeretném kibővíteni olyan funkcióval, hogy a benne megírt létrát át tudja tölteni az Arduino-ra, amit az letárol, és a szoftvere futtat. Ez a PC oldali módosítás még nincs meg.
(#) wbt válasza Brandyman hozzászólására (») Jan 10, 2018 /
 
Tehát nem kompiler van a PC-n (valamiből=>BIN futtatható), hanem tokeneket, interpreterszerűen hajt végre a uC?
(#) Brandyman válasza wbt hozzászólására (») Jan 10, 2018 /
 
Tulajdonképpen igen.

A valós PLC szintén így megy, (az is uC) a létrának megfelelő utasításlista formátumú programon, azaz tokeneken, saját megfogalmazású adatokon megy végig, aztán kezdi elölről.

Persze ehhez még hozzájön a PLC be-, és kimenteinek "másképp" kezelése, hiszen a program lefuttatása előtt bemenetet olvas, utána pedig a kimenetekre ír.
(#) wbt válasza Brandyman hozzászólására (») Jan 10, 2018 /
 
O.k. értem, csak régi munkahelyemen ha egy proc mellé tettek egy memóriát+perifériát, akkor valamilyen oknál fogva már PLC-nek nevezték... Akkor emögött azért elég komoly program van. (nekem 20+ éve várja a uC program, hogy végre a létra-szerkesztő meg legyen hozzá írva PC-re; és még nem is lenne annyira bonyolult, mert nálam röp-tokenizálást csinál, tehát áttöltés közben értelmez/fordít/pakol, szóval a PC-s program szinte csak csicsa, de hát az idő ugye. Nagyon kíváncsi leszek, mi fér bele egy M328-ba.
(#) Brandyman válasza wbt hozzászólására (») Jan 10, 2018 /
 
Az Arduino oldal, mint írtam, már kész.
A PC-s oldal a nehezebb, ugyanis a létrából utasításlistát kell készítenem, ami elég bonyesz. Ha az megvan; már csak át kell tölteni, és mehet.
(#) sany válasza Brandyman hozzászólására (») Jan 10, 2018 /
 
Érdekes projekt. Sok sikert a teszteléséhez és az alkalmazásához!
(#) Brandyman válasza sany hozzászólására (») Jan 11, 2018 /
 
Köszönöm szépen.

Igazság szerint én PLC-s (is) volnék, és régóta tervezgetem egy olyan PLC-nek a "kitalálását", ami mikrovezérlő alapú, és árban töredéke a boltban kaphatóaknak. Így, ha valaki házi automatizálásban gondolkodik; kaphat egy megfizethető alternatívát. A mai világban, ahol az elektronikai alkatrészeknek már semmi ára sincs; kissé nevetségesnek érzem, hogy 40-50e Ft-ot elkérnek egy alap PLC-ért 8 bemenettel és 6 kimenettel.
Persze nem az első vagyok, hiszen az "Arduino + PLC" szavakra rákeresve van bőven találat a neten, de sajátot akartam, - már csak a kihívás miatt is, - hogy a már meglévő szoftveremhez legyen egy PLC is. Régebben PIC alapon már megterveztem a dolgot, de assembly-ben ezt nehéz összerakni. Na de most!
(#) icserny válasza Brandyman hozzászólására (») Jan 11, 2018 /
 
Nem muszáj a meleg vizet (spanyolviaszt) újra feltalálni!
LDmicro: Ladder Logic for PIC and AVR
PLC LADDER SIMULATOR (és kódletöltő Arduino-hoz)
Arduino as a programmable logic controller (PLC)
A hozzászólás módosítva: Jan 11, 2018
(#) Brandyman válasza icserny hozzászólására (») Jan 11, 2018 /
 
Valóban nem, de:

- LDmicro -> HEX állományt generál, azaz még külön fel kell tölteni...
- PLC LADDER SIMULATOR -> Csak UNO-val kompatibilis.
- Arduino as.... -> Szinrén az LDmicro-t mutatja be, valamint egy olyan LIB-et, amellyel PLC jellegű utasítások használhatóak az Arduinon.

Szóval amit én szeretnék, az létrából közvetlenül Arduino-ba töltött program. Nem tudom, hogy a fenti programok mennyire "okosak", engednek-e pld. kétszer ugyanolyan kimenetet deklarálni, stb. Én a szoftveremben hosszú órákat programoztam azon, hogy ezeket ne engedje meg, mint a nagyobb gyártók szoftverei.

És még egy: Ha te építettél bármit is eddig Arduino-val, akkor tudod; hogy azt meg is vehetted volna boltban De nem vesszük meg
(#) RoliNyh hozzászólása Jan 11, 2018 /
 
Estét!
A virtuino -t ismeri valaki?
(Tulajdonképpen egy komplett grafikus arduino vezérlő/kijelző alkalmazás okostelefonra.)

És máris az elején elakadtam egy bagatelnek tűnő hibán.
Szóval letöltöttem, telepítettem, és próbálnám szóra birni a "bluetooth_example_01" -et.
A hardveres serial részt akarnám használni, de elvileg nincs deklarálva a "Serial1"

Rá néznétek, hogy mi lehet a baja? Gondolom, én nem csinálok jól valamit...

Az érdekes az, hogy az eredeti vázlatra is hibát jelez, amin még semmit sem változtattam.
(#) wbt válasza Brandyman hozzászólására (») Jan 11, 2018 /
 
Ha az eszközök számát csak a memória korlátozza (tehát nincs megkötve, hogy 3 Timer-ed meg 8 belső reléd lehet pl.), akkor igen szép feladat az optimalizálás. Ha kötött a felhasználható dolgok száma (és a mélység (1 sor hossza) is kötött), akkor a szerkesztőben egyszerűen csak annyi eszköz áll rendelkezésre, amennyi kell és ki sem tud többet választani. Én legalább is így terveztem megírni anno, tehát OUT1-ből csak 1db van, IN2-ből meg sok-sok, Timer vezérlőbemenetből is csak 1-1 (per darab). Vagy valahogy így volt... Persze én nagyon egyszerűt ácsoltam, 6be/7ki és csak 7 mélységű volt a stack. Kíváncsian várom, milyen csoda lesz belőle, remélem beszámolsz róla.
(#) Medve válasza RoliNyh hozzászólására (») Jan 11, 2018 /
 
Hali, a szoftveres soros porttal működött?
(#) RoliNyh válasza Medve hozzászólására (») Jan 11, 2018 /
 
Az is nyavajog valami miatt...
Lőttem két képet, ezeken látható.
(#) Brandyman válasza wbt hozzászólására (») Jan 11, 2018 /
 
OUT1-ből csak egy van, az rendben.
De van, hogy kétszer rakja le, hiszen egyszer SET, máskor RESET állapottal. Vagy keverve
De ez a legkisebb gondom, mert ez már megvan, és működik.

Ami a legnehezebb, hogy bármilyen létra programból utasításlistát, azaz annak megfelelő szekvenciális programot fordítsak. Kisebb létra esetén nem probléma, de amikor már átlátni is nehéz (az egyébként legkönnyebben értelmezhető) létrát, akkor abból gépi logikával fordítani nagyon nehéz.

Természetesen beszámolok róla, csak legyen miről

A szerkesztőt meg tudod nézni/kipróbálni (ha nem reklám...)
Bővebben: Link
(#) sany hozzászólása Jan 11, 2018 /
 
Tanácsot szeretnék kérni tőletek.
Egy Arduinoval vezérelt robotot szeretnék összerakni, illetve programozni. Arduino Nanot szeretnék használni. Véleményetek szerint , melyik panel lenne célszerű megvásárolni?
Innen szeretnék venni: Bővebben: Link
(#) tbarath válasza sany hozzászólására (») Jan 11, 2018 /
 
Már panel alatt mit értesz? Magát a uC-t tartalmazó lapkát (azaz magát a nano-t), vagy ahhoz valamilyen shield-et?
(#) sany válasza tbarath hozzászólására (») Jan 11, 2018 /
 
Az uC-t tartalmazó lapkát.
Következő: »»   414 / 853
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem