HobbyCNC fórum
FTP tárhely: http://cnctar.hobbycnc.hu v0.9.6 Régi HobbyCNC oldal: http://archiv.hobbycnc.hu

Új regisztráció / Átregisztráció a régi fórumról
    
   


UCCNC vezérlő program

A frissítések közzététele az 'UCCNC vezérlő program új verziói' témában található

 

Időrend:
Oldal 175 / 191 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   171  172  173  174  175  176  177  178  179   Következő ►  Utolsó ►|

  Fórum főoldal  |  A lap aljára

nyarfa | 971    2014-07-29 23:52:00 [829]

Igaz nem nagyon jeleztetek vissza, de ezt annak veszem, hogy a varázsló működik amit csináltam. Így fel is buzdultam és a körzseb mellé megcsináltam a négyzetzsebet is.

Allinone 1.0.0.3.

Nyüstöljétek és várok ötleteket, hogy mit valósítsak ebben a formában még meg.

U.i: Rájöttem Balázs a hibára és javítottam. Nem akad ki a nulla miatt.


n/a (inaktív)    2014-07-29 09:01:00 [828]

x86-ot akartam írni x32 helyett.

Előzmény: n/a (inaktív), 2014-07-29 09:00:00 [827]


n/a (inaktív)    2014-07-29 09:00:00 [827]

Szerintem vannak olyan Win API függvények amiknek a 64 bites verzióját kell meghívni 64 bites Windows alatt. De lehet tévedek, nem nagyon szoktam Win API-kat direktben meghívni.

Vagy esetleg az lehet, hogy valami pointer műveletnél az elem méret x64-en nem akkora mint x32-n és a pointer esetleg rossz címre mutat.
Ilyen dolgok tudnak OP rendszer kiakadást okozna, ha a pointer olyan memóriára mutat, ami már nem a te adat területed és valami más random dologra van használva. Ha oda ír a progi, akkor bármi megtörténhet...

Nem tudom milyen fordítóprogit használsz, de ha Visual Studio-t akkor ha "Any CPU" van beállítva , próbáld meg átállítani x86-re és akkor x64 alatt is 32 bites módban fog futni a programod a WOW64 alatt. Így egyszerűen tudod garantálni a kompatibilitást.
Talán ez megoldja a problémát.

Előzmény: csewe, 2014-07-29 05:31:00 [825]


pisti73 | 530    2014-07-29 07:33:00 [826]

Délután kipróbálom egy másik gépen, azon azt hiszem 32 bites rendszer fut...

Előzmény: csewe, 2014-07-29 05:30:00 [824]


csewe | 2578    2014-07-29 05:31:00 [825]

Nincs kizárvade szerintem illene ismernie a régebbi függvényeket az újabb rendszernek.

Előzmény: n/a (inaktív), 2014-07-28 21:43:00 [823]

csewe | 2578    2014-07-29 05:30:00 [824]

Pisti73 és Vamzol.
Köszönöm az információt,megkísérelem áthidalni a problémát.


n/a (inaktív)    2014-07-28 21:43:00 [823]

Az nem lehet esetleg, hogy a fordítás valami rossz opcióval történik. Arra gondolok, hogy lehet a 64bites rendszert nem szereti valamiért?
Vagy netán olyan Windows API-t próbálsz hívni ami x64 alatt nem futtatható és ezért behal a windows.

Nálam szépen fut az összes wizard, 32 bites Win7 és 32bites XP-n próbáltam.
Sajnos most nem áll rendelkezésemre 64 bites Windows, de majd megpróbálok keríteni egy gépet...

Előzmény: csewe, 2014-07-28 21:10:00 [820]


vamzol | 60    2014-07-28 21:19:00 [822]

Ugyan ez a rendszer, ugyan ez a jelenség!


pisti73 | 530    2014-07-28 21:17:00 [821]

Szia!
Én Win7 64bit-et használok, de olyan szinten kiakasztja a gépet, hogy csak egy durva kikapcs segít rajta...

Előzmény: csewe, 2014-07-28 21:06:00 [819]


csewe | 2578    2014-07-28 21:10:00 [820]

Most nézem,hogy te nem wincsesztert használsz.
Az esetleg okozhatja,mivel gyakran írok file-ba,mert úgy kommunikálok a makróval.

Előzmény: vamzol, 2014-07-28 20:07:00 [814]


csewe | 2578    2014-07-28 21:06:00 [819]

Jelezhettétek volna,hogy ilyet tapasztaltok.
Eddig még senki nem mondta,hgoy lefagy a gépe a varázslótól.
Szerintem ez nem a gép teljesítményétől vagy a konfigurációtól függ,mivel semmi extra dolgot nem csinálok benne.
Esetleg az oprendszer lehet ludas.
Melyikőtök milyen oprendszeren használja?
Én XP alatt fejleztettem.


pisti73 | 530    2014-07-28 20:40:00 [818]

vagyis nem biztos, hogy attól, de csak egy durva kikapcs hozta vissza a gépet...

Előzmény: pisti73, 2014-07-28 20:33:00 [817]


pisti73 | 530    2014-07-28 20:33:00 [817]

Az én gépem is behalt a "csewe" féle pack-tól...

Előzmény: vamzol, 2014-07-28 20:15:00 [816]


vamzol | 60    2014-07-28 20:15:00 [816]

Csewe féle pack!


nyarfa | 971    2014-07-28 20:12:00 [815]

Ketten is írtunk varázslót. Melyiket próbáltad?

Előzmény: vamzol, 2014-07-28 20:07:00 [814]

vamzol | 60    2014-07-28 20:07:00 [814]

Hali!
Lenne egy olyan problémám, hogy amint elindítom az UCCNC-t majd elő hívok egy Wizards-ot egy percég semmi nem történik majd valami elakarna indulni és csontra lelassítja a gépemet a kurzor lagolni kezd és csak egy restart segít a gépemen :S

Gépem főbb jellemzői:
i3, 2,4Ghz
8GB ram
2GB gforce


n/a (inaktív)    2014-07-28 20:01:00 [813]

Köszi. Elkezdtem tesztelni, tényleg mutatós a kinézete. Most el kell kicsit mennem, de éjjel még fogom nyüstölni, jelzem, ha találok hibát....

Előzmény: nyarfa, 2014-07-28 16:00:00 [798]


n/a (inaktív)    2014-07-28 20:00:00 [812]

Az elég jól hangzik, az közel 60%-os idő csökkenés.

Előzmény: csewe, 2014-07-28 19:54:00 [810]


n/a (inaktív)    2014-07-28 19:56:00 [811]

OK, ha most jól működik, akkor maradjon így.
De azért én is megcsináltam, szóval a lehetőség most már megvan a macro oldalon is.

De hamarosan fogom tesztelni, bár az én gépemen már az előző verzióval is jó volt...

Előzmény: csewe, 2014-07-28 19:41:00 [807]


csewe | 2578    2014-07-28 19:54:00 [810]

valóban sokat jabul a sebeség,3.15-ről lement 1:30-ra nálam.

Előzmény: n/a (inaktív), 2014-07-28 19:42:00 [808]


n/a (inaktív)    2014-07-28 19:54:00 [809]

Szia,

Az én részem még nem készül, az okok:
1.) Most jutott el oda (végre) az új képernyő szett tervezése, hogy már összeállítás alatt van a screenset file, kollégám már csinálja a beillesztéseit az új elemeknek. Így ennek az elkészültét most már megvárom, mert így sok munkát nem kell kétszer megcsinálnom amit az UC300-as fejlesztés kapcsán egyébként duplán kellene.
2.) A jövő hó elejére ígértük, hogy kimegy az UC100-as verzió bétából. Már nagyon várja pár viszonteladónk, hogy tudják árulni. Mivel ilyen odaadóan segítettek a tesztelésben itt néhányan, így most arra koncentráltam, hogy a jelzett hibákat, problémákat azonnal javítsam és hogy legyen egy minél hibátlanabb verzió amit már tényleg el is lehet adni.

Egyébként az API már elkészült, de össze kell hoznom az UCCNC-vel.
Tudom, hogy néhányan nagyon várjátok az UC300-as verziót és ígérem hamarosan rátérek arra is.

Előzmény: svejk, 2014-07-28 19:40:00 [806]


n/a (inaktív)    2014-07-28 19:42:00 [808]

Ja és ami kimaradt:

6.) Optimalizáltam a képletek feldolgozási sebességén, kb 45%-al gyorsabb lett az előző verzióhoz képest. 10e-5 sec nagyságrend alatt fordít most le egy néhány műveletből álló képletet. Az én gépemen így kb. kétszer olyan gyors lett a beolvasás mint a Mach3-al.

Előzmény: n/a (inaktív), 2014-07-28 19:34:00 [803]


csewe | 2578    2014-07-28 19:41:00 [807]

Rendben,de ha ez amit most feltettem, hibátlan,akkor maradok most ennél.

Előzmény: n/a (inaktív), 2014-07-28 19:36:00 [804]


svejk | 33140    2014-07-28 19:40:00 [806]

Ezekhez a dolgokhoz én már nem tudok hozzászólni, így csak pislogok.
De azért halad az UC300 is ugye? )

Előzmény: n/a (inaktív), 2014-07-28 19:34:00 [803]


csewe | 2578    2014-07-28 19:39:00 [805]

mivel az én monitoromn nem ismeri ezt a méretet,így ezen méreten nem tudom megoldani ,hogy látszon a szerszámpálya kijelzés.
Megy egy levél,és megoldjuk,ha érdekel a dolog.

Előzmény: nyarfa, 2014-07-28 19:33:00 [802]

n/a (inaktív)    2014-07-28 19:36:00 [804]

Szia,

Ami verziót most kiadtam, abban már eltudod érni a méretet a macro-ban és át is tudod méretezni, úgy ahogy múltkor beszéltünk.

Előzmény: csewe, 2014-07-28 16:48:00 [799]


n/a (inaktív)    2014-07-28 19:34:00 [803]

Elkészült az UCCNC 1.0027 verziója.

Újdonságok/javítások:

1.) A macro fordítóhoz hozzáadtam a System.Drawing.dll-t, ez hiányzott, ezért a System.Drawing.Size és más rajzolással kapcsolatos típusokat
és paramétereket nem lehetett a macro-ban elérni.
2.) A macro fordítóba, ha a macro kód hibás, akkor csinál egy Errorlog.txt file-t a macros könyvtárba és beleírja a hibát, hibákat.
Talán ez segítségetekre lesz a macro-k írásánál, debuggolásnál.
3.) Az M98/M99 hívásánál az L paraméter a híváskor elmentődik, így ha változó áll az L paraméternél, például #1, akkor hiába változik meg a változó értéke menet közben, az első híváscikluskori értéke az érvényes.
Így most ugyanúgy működik mint például a Mach3-ban.
4.) A toolpath generálás kijelzésénél nem frissítette a program a betöltés állapota csíkot, ezt javítottam.
5.) A kód betöltés folyamata nem volt megszakítható, ha egyszer belekezdett, akkor végig kellett futtatni, most megcsináltam,
hogy a ciklus stop gomb megnyomásával bármikor megszakítható a művelet.


nyarfa | 971    2014-07-28 19:33:00 [802]

1920*1080-ra mit ajánlasz?

Előzmény: csewe, 2014-07-28 19:31:00 [801]


csewe | 2578    2014-07-28 19:31:00 [801]

Mint már annyiszor,ismét úgy vélem,hogy sikerült urrá lennem,ezen az ablakátméretezési problémán.
Wizards-BETA


csewe | 2578    2014-07-28 17:05:00 [800]

Jobban néz ki mint az enyém.

Előzmény: nyarfa, 2014-07-28 15:55:00 [797]


csewe | 2578    2014-07-28 16:48:00 [799]

Ma megint próbálgattam ,hogy tényleg jól méretezi e vissza az ablakot,mikor kilépek a vrázslóból,és ma meg nem jól csinálja,mindíg kissebbre veszi,pedig előtte meg teljesen jónak látzott.
Mégis csak kelene az a makiróból lekérdezés.
Ablak pozíciója,és mérete.

Előzmény: n/a (inaktív), 2014-07-26 21:36:00 [769]


nyarfa | 971    2014-07-28 16:00:00 [798]

Kicseréltem egy zip-re.

Előzmény: nyarfa, 2014-07-28 15:55:00 [797]


nyarfa | 971    2014-07-28 15:55:00 [797]

Köszi megkaptam.

A hiba:
- "Load" az nem "Load#13"
- "End" az nem "End "

most már megy a probléma kiküszöbölve.

A könyvtár amiben találsz egy "install" könyvtárat. Letöltés és másolás.

Várom az észrevételeket a kritikát jól bírom kezelni.

Előzmény: csewe, 2014-07-28 13:47:00 [796]


csewe | 2578    2014-07-28 13:47:00 [796]

Szia,magánban megírom,hogy hogyan kell használni azt a file.

Előzmény: nyarfa, 2014-07-28 11:13:00 [794]


n/a (inaktív)    2014-07-28 11:25:00 [795]

Szia,

Az adatcsere fájlnak nincsen köze az UCCNC-hez, szerintem Csewe ebben valami adatokat tárol a programjához, nem tudom pontosan mi lehet. Ő tudná megmondani,

A lényeg amit írtam, hogy indítsd el a programodat macro-ból a process.start-al és várakoztasd. Majd a programod ha végez, zárja be magát, ettől a macro tovább fog futni. és a macro végén a loadfile(); fgv.-el töltsd be a kódot amit a programod genetált.

Gyakorlatilag ennyit kell csinálni.

Előzmény: nyarfa, 2014-07-28 11:13:00 [794]

nyarfa | 971    2014-07-28 11:13:00 [794]

Ezt a részét értettem, csak az adatcsere.txt-be mit írjak és melyik sorba? Próbáltam így is meg úgy is, de nekem nem volt hajlandó betölteni, de még kilépni önmagából sem. Valamit nem jól értelmezek.

A kérdés:
Hogyan működik az adatcsere? Milyen értéket kell melyik sorba írni, és erre mit kellene csinálnia?

Teljesen összekeveredtem már tegnap éjszaka.

Előzmény: n/a (inaktív), 2014-07-28 10:52:00 [793]


n/a (inaktív)    2014-07-28 10:52:00 [793]

A lényeg, hogy a elkell indítani az .exe fájlodat a System.Diagnostics.Process.Start -al, és a WaitForExit-el várakoztatni kell a makrót, ez addig vár, amíg a folyamat, vagyis a programod fut.
A programod kiírhatja egy fájlba a kódot, majd a makró végén ezt be kell töltetni az UCCNC-vel, ahogy Csewe is csinálta:

exec.mainform.filenametoload = "...A fájl elérési őtja/neve";
exec.mainform.loadfile();

Előzmény: nyarfa, 2014-07-28 10:35:00 [791]


n/a (inaktív)    2014-07-28 10:49:00 [792]

Szia,

Most olvastam, de kérlek, hogy az info at cncdrive.com e-mail címre küldjétek a leveleket, azt sűrűbben olvasom, mint amit itt sikerült beállítanom e-mailnek az adatlapomon.

Azt kérdezted, hogy hogyan lehet meghívni külső programot macróból, illetve adatot visszatölteni fájlból.

Csewe makrója erre szerintem pontos választ adhat:

//==DrillCircularBoltPattern indító makró===
int betu = 92 ;
string ut1 = Application.StartupPath.Substring(0,2);
char ut2 = (char)betu ;
string ut3 = Application.StartupPath.Substring(2);
string ut4 =ut1 + ut2 + ut3 + "/Wizards/DrillCircularBoltPattern/Drill_Circular_Bolt_Pattern_.exe" ;
string ut5 = Application.StartupPath ;
string ut6 = ut5 + ut2 + "Wizards" + ut2 + "DrillCircularBoltPattern" + ut2 + "adatcsere.txt" ;
string ut7 =ut1 + ut2 + ut3 + "/Example_codes/DrillCircularBoltPattern.TAP";
string text1 = "1";
string text2 = "2";
string s1 = "1";
string s2 = "2";
string kilep = "";
string beolvas = "Load";
//MessageBox.Show(ut7);
//______________________________uccnc elrési utvonala-------------
// System.IO.File.WriteAllText("C:"+ut2+"utvonal.txt",Application.StartupPath);
//================varázsló indítása =======
System.Diagnostics.Process proc; // Declare New Process
System.Diagnostics.ProcessStartInfo procInfo = new System.Diagnostics.ProcessStartInfo(); // Declare New Process Starting Information

procInfo.UseShellExecute = true;
procInfo.FileName = ut4;
procInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Maximized;

proc = System.Diagnostics.Process.Start(procInfo);
System.IO.File.WriteAllText(ut6, text1);
proc.WaitForExit(1000);
//===========kommunikáció===========
do
{
System.Threading.Thread.Sleep(1000);
String[] lines = System.IO.File.ReadAllLines(ut6);
System.Console.WriteLine("Contents of adatcsere.txt = ");
foreach (string line in lines)
{
kilep = line;
if (line == s1)
{
System.IO.File.WriteAllText(ut6, text2);
//MessageBox.Show(line);
}
if (line == s2)
{
System.IO.File.WriteAllText(ut6, text1);
}
if (line == beolvas)
{
System.IO.File.WriteAllText(ut6, text1);
//MessageBox.Show(line);
exec.mainform.filenametoload =ut7;
exec.mainform.loadfile();
}
}
}
while (kilep != "End");
System.IO.File.WriteAllText(ut6, text1);

Előzmény: nyarfa, 2014-07-28 10:35:00 [791]


nyarfa | 971    2014-07-28 10:35:00 [791]

Írtam levelet olvastad?

Előzmény: n/a (inaktív), 2014-07-28 09:06:00 [790]


n/a (inaktív)    2014-07-28 09:06:00 [790]

Sziasztok,
No, megnéztem egy másik programot hogyan működik a szubrutin hívás és ennél is ugyanúgy mint a mach3-nál, úgyhogy átírtam az UCCNC-ben is, hogy ugyanígy működjön. Így talán nem zavar majd össze senkit, mert nem különbözik a viselkedés.
Talán ezeknél a kezdeti teszteknél egyszerűbb így.
Ha esetleg a későbbiekben mégis a másik viselkedés lenne szimpatikusabb, akkor vissza lehet majd írni viszonylag egyszerűen...

A szerszámpálya számoló kódon is faragtam, optimalizáltam, most a "fakaspó" kódot hosszabbra véve (50 fogás) a Mach3 az én gépemen 2.33 perc alatt végzett. Az UCCNC 1:12. A processzorhaszálatot is néztem, a Mach3 átlagban 32%-ot, az UCCNC 40%-ot használt.

Ma még bütykölök pár dolgot, este felé majd feltöltöm az új verziót.

Előzmény: elektron, 2014-07-27 18:20:00 [785]


csewe | 2578    2014-07-28 06:37:00 [789]

Azonos paraméterek mellet UCCCNC 3:15, amásik 1:00.
Persze az első próbánál még másképp futott a kó a két programon,de azóta kijavítotam.

Előzmény: n/a (inaktív), 2014-07-27 22:38:00 [788]


n/a (inaktív)    2014-07-27 22:38:00 [788]

Csináltam egy tesztet a "fakaspó" kóddal amit küldtél, a képletfeldolgozás/szerszámpályagenerálás sebességet vizsgáltam.
Nálam 20 hullám, 5 alkatrész, 20 fogás 1.05 perc alatt dolgozza fel az UCCNC.
A Mach3 ugyanezt 1.01 perc alatt.
Az UCCNC ennél a tesztnél így 3.9%-al volt lassabb.
Majd még optimalizálok rajta.

Előzmény: csewe, 2014-07-26 14:25:00 [756]


n/a (inaktív)    2014-07-27 19:21:00 [787]

OK, bár C#-ban a statikus annyit tesz, hogy nem példányosítható. Nincs köze az érvényességi körhöz, az a public és a private.
Lehet egy változó egyszerre static és public, ill. egyszerre static is private.

A szót egyébként nem programozói környezetben akartam volna használni, csupán arra szerettem volna utalni, a statikus-al, hogy egyszer felvett egy értéket és utána már nem változik. Illetve a dinamikussal, hogy bármikor változtathat értéket. Ahogy a Magyar nyelvben értelmezve vannak ezek a szavak.
Lehet a szóválasztás tényleg nem volt a legjobb...
Na de nagyon elkanyarodtam az eredeti témától és nem akarok Grécsi tanár urat játszani.

És köszönöm a véleményedet a témában, remélem hamarosan mások is írnak valami véleményt.

Előzmény: isvarga, 2014-07-27 18:36:00 [786]


isvarga | 842    2014-07-27 18:36:00 [786]

Nekem csak annyi a gondom ,hogy továbbra is egy olyan szóval magyarázod az elérő viselkedést aminek semmi köze hozzá.(statikus - dinamikus)
Számomra ez csupán a változó érvényességi körének kérdése , vagy még annyi sem.
Lehet például ,hogy a mach inline módon fordítja a szubrutin hívást.
Számora is a mostani megoldás a szimpatikusabb.

Előzmény: n/a (inaktív), 2014-07-27 16:52:00 [781]


elektron | 15859    2014-07-27 18:20:00 [785]

Egy pár kapcsolóval lehet váltani a különféle szabványok közt, valami setup ablakban és akkor mindenki azt használja belőle amit akar.

nyarfa | 971    2014-07-27 18:18:00 [784]

Nagy ötlet! Ott a pont megint.

Bár félek nagyon eltérünk a végén a "kompatibilisség" alapelvétől. Az találom rossznak ebben a dologban, hogy ha nagyon program specifikus G kódokat fogunk kreálni, akkor másokat megviccelhetünk akik nem ezt a programot használják. Persze a többség nem képleteket használ, hanem konkrét legenerált utakat. Nem is ismerek olyan CAD/CAM programot ami képleteket gyárt.

Előzmény: csewe, 2014-07-27 18:00:00 [782]


csewe | 2578    2014-07-27 18:10:00 [783]

Én amondó vagyok,hogy maradjon így ahogy van.
Puszta véletlen volt,hgoy később is ugyan azt a változót alkalmaztam,más feladatra,nem szoktam ilyet csinálni,csak mivel külön sorba kellett írni az értékadásokat,hamar átírtam,és így sikerült kétszer ugyan azt a változót más más feladatra használnom.
Majd odafigyelek jobban.

Előzmény: n/a (inaktív), 2014-07-27 16:49:00 [780]


csewe | 2578    2014-07-27 18:00:00 [782]

Ez nagyon klassz,akkor lehet 'While' ciklust csinálni.

Előzmény: n/a (inaktív), 2014-07-27 16:16:00 [774]


n/a (inaktív)    2014-07-27 16:52:00 [781]

Még annyit, hogy a Mach3 az első megoldást, vagyis a statikus viselkedést csinálja. Én egyébként ezt látom a rosszabik megoldásnak, mert így némileg csorbul a programozó (mármint aki a G-kódot írja) szabadsága.

Előzmény: n/a (inaktív), 2014-07-27 16:49:00 [780]


n/a (inaktív)    2014-07-27 16:49:00 [780]

A kérdés rövidre fogva és a tőlem telhető legrövidebben megfogalmazva:

Ha egy alprogramot meghívunk M98 P.. L.., ahogy az L paraméter egy változó. Akkor az első híváskori L számszor hívjuk meg az alprogramot és ne vegyük figyelembe, ha az L paraméterben megadott változó menet közben megváltozik.
Mintegy statikusan viselkedjen?

Vagy pedig vegyük figyelembe ha az L változik és akkor a hívások száma is dinamikusan változzon ahogy a változó értéke megváltozik.

Ezt kellene eldönteni, mert nem egyértelmű számomra, hogy melyik a jobb megoldás.
Mindkettőben látok előnyt is és hátrányt it.

Előzmény: isvarga, 2014-07-27 16:37:00 [778]


  Fórum főoldal  |  A lap tetejére

Időrend:
Oldal 175 / 191 Ugrás ide:
Sorok:
|◄ Első  ◄ Előző   171  172  173  174  175  176  177  178  179   Következő ►  Utolsó ►|


 ◊ 
[ 1.2401 ]