Több lehetőséged is van. A "hagyományos" módszer az, hogy írsz egy makrót, ami kapcsolja a kimenetet és azt hívod meg a kódból. Ez azért hagyományos, mert megy a hivatalos, 1.2047-es verzióval is. Pl. M1000.txt
int Eint = Convert.ToInt32(Evar); int Hint = Convert.ToInt32(Hvar); int Qint = Convert.ToInt32(Qvar);
if (Qint == 0) exec.Clroutpin(Eint, Hint); else exec.Setoutpin(Eint, Hint);
A kódban pedig pl. M1000 E2 H3 Q1 azt jelenti, hogy a 2-es port 3-as lábát kapcsolja be.
Az új módszer, ami a legutóbbi teszt verzióban (1.2105) jelent meg, az adott kimenetek bekapcsolása (M10.1-M10.10) és kikapcsolása (M11.1-M11.10). A kapcsolások szinkronizáltan történnek, tehát pontosan akkor, amikor a kód futása ott tart, anélkül, hogy a mozgások megállnának. (Pontosan úgy, ahogy a lézer kimenet vezérlése történik, de itt nincs PWM szint, csak ki és be állapot.) Ez csak az ethernetes vezérlőkkel működik és az I/O setup második lapján tudod a kimeneteket beállítani.
Üdv! Gkódból lehet ledet vagy kimenetet kapcsolni? Egyéni funkcióhoz kellene (hasonlóan mint a hűtés ki/be kapcsolás).
adamkovacs | 125
2018-07-06 11:38:17
[5756]
Jajj hát hiszek en nektek, es koszi a valaszt,sry ha kisse lassan kapcsoltam.
Exup nak meg még jót is tett
exup | 639
2018-07-06 09:39:30
[5755]
Az jó volt. Én is benyaltam, de nem hittem a szemnek. Arra jó volt, hogy megtudtam megy ez nagyobb fogásmélységgel és nagyobb előtolással is. Azóta gyorsabban marom az alut
Nem össze-vissza lődörgés az, hanem mozgáspuffer szinkronizálási hiba. Nem össze vissza mozog, hanem kiüríti a puffert amikor nem kellene, ezért úgymond kihagy mozgásokat. A hiba az utolsó pár teszt verziót érinti, ezért ezeket a teszt verziókat amúgy le is töröltük már a szerverünkről, hogy ne is lehessen letölteni. A hiba oka egyébként nem programozási hiba volt, hanem egy nagyon fura C++ fordító bug okozta és mivel a mi néhány teszt számítógépeinken nem jött elő teszteléskor, ezért későn vettük csak észre és a hiba jellegéből adódóan sok idő volt mire sikerült kijavítanunk.
Az 1.21xx sorozatot egy másik probléma javítása miatt keletkezett "elmászkálós" jelenségek kísértették. Ha minden igaz, akkor a 2105-ben már tényleg nem maradt ilyen jellegű hiba, pont ezért írtam, hogy ha már teszt verziót használsz, akkor mindenképpen ezt használd. (Igaz, nem mentem bele a részletekbe, hogy miért, de gondoltam, hogy hiszel nekem. )
Melyik hibát? Ezt a külső triggeres ciklus start dupla nyomást? Az a hiba szerintem minden verzióban benne van, mert még senki sem fedezte fel eddig. Szóval azzal a hibával kapcsolatban mindegy melyik verziót használod.
Egyébként ha tesztelni szeretnél akkor van a 1.2105 verzió, ami már frissebb és a most jelzett problémát javítottuk benne. De még egyszer mondom, hogy a teszt verziók tesztelésre valók. A hivatalos kiadások is a teszt verziókból kerülnek ki, de csak akkor ha nem találnak benne hibát elég hosszú ideig. Szóval csak néhány teszt verzió megy ki hivatalos kiadásba és mire kiadjuk addigra már több ezren letöltötték és használják, ezért stabilnak mondható.
Nekem úgy tűnik, hogy ez a 1.2104 teszt verzió ismert hibája. Ha gyártásra használod a programot, akkor mindig a legfrissebb hivatalos kiadást használd, ami az 1.2047:
A teszt verziók tesztelésre valók és csak a fórumon adjuk ki tesztelési célra, ezért ezek a verziók hibákat tartalmazhatnak és a szoftver bonyolultsága, valamint a teszt verziónkénti sok-sok újítás miatt általában tartalmaznak is egészen addig amíg azokat fel nem fedezik a tesztelők és ki nem javítjuk.
Újabb hiba leledzik, de produkálni nem tudtam! A kódot max. holnap tudom csak feltölteni, de a képet nézve, jól látszik a problémám. Csak körbe megy 2x egy kulső kontúron, ennyi lenne a feladat, elinditottam a progit, felmentem inni, és ezt látom mikor lejövök-- 12DB ilyen alaktrész kellett volna kivágnom, de az első darabot ő másképp értelmezte, és az is érdekes, hogy csak az egyik magasságba csinálta ezt, aztán tovább ment és a többit jól csinálta meg, ill. 2 ilyen táblát martam a másik táblán jól csinálta!! Látott már valaki hasonlót?! Mert ez most eléggé zavar. Win10x64 i3@2,4ghz-8GBmem és szinte mindig szól a youtube, ha ez számít hogy más progik is futnak uccnc mellett?!
Csak standard g-kódot kezel. Kicsit részletezhetnéd, hogy mi a feladat, hátha megoldható. (Szinte biztos, hogy megoldható, csak nem úgy, ahogy while és társaival. )
Mert lenne egy mini progi és azt szeretném ismételgetni de nem igazan megy m98 m99 és társaival sem hátha valaki segit nekem ebbe azt megkoszonném
frob | 2276
2018-07-03 21:32:14
[5744]
természetesen, végül is rpi is arm, és látván hogy milyen jól megvan írva a prg, alig eszik valamit, biztos ellene rpi-n is, szerintem lendítene a piacon...
Jó, hát azt felejtsük el, annak csak a neve Win10. Tehát x86 vagy x64, Windows, .Net korábban 2, az újabbaknál 4. Arm-ra is van Win10, de az sem rendes rendszer, tehát az is felejtős.
Virtual-ban akár futhatna is, de ott videó problémák szoktak lenni. A virtuális videókártya nem szokta kezelni az elvárt OpenGL szintet. (Legalábbis VirtualBox-ban. Mással nem próbáltam, úgyhogy akár jó is lehet.)
Eszembe jutott egy dolog, lehet már nektek is meg a fejlesztőknek is...
Esetleg ha már C - C++ a nyelv amiben íródik, vajon raspberry pi3-ra futtathatóvá lehetne tenni? win 10 IoT ingyenes, és egyenlőre úgy néz ki az is marad...
vagy túl vad az ötlet? vagy egyszerűen nem éri meg a szenvedés?
R.
dezsoe | 2934
2018-07-03 09:16:26
[5731]
Szia!
Köszi! Szerintem tedd fel a 2105-öt, mert a 2104-ben maradt egy-két komoly hiba. Természetesen, nagyon óvatosan használd a teszt verziókat, mert lehet még bennük hiba, pont ezért teszt verziók. (Folyamatos használatra, termelésre inkább a 2047-es stabil verziót javaslom.)
A start nyomással pont az a baj, hogy a program azt feltételezi, hogy nem tudod megnyomni, így kissé összekuszálódik, amikor mégis megnyomod. (Ha egérrel használod, akkor nem is tudod megnyomni a startot, amíg az RFH ablak kint van. Ez egy probléma, amit meg kell oldani.)
Köszönöm az ötletet, kipróbálom. A gombok nem futás időbe lennének variálva hanem cycle stop után. Ezért gondoltam, hogy makróval lehetne módosítani a layernumbert.
Nem tudod a gombokat futásidőben engedélyezni vagy tiltani. Maximum annyit tudsz csinálni, hogy makrót teszel a gombokra és a makróban ellenőrzöd, hogy futhat-e vagy sem. Ha csak sima nyomógombról van szó, akkor még annyit csinálhatsz, hogy LED-es gombot (kétállású) készítesz és Switchbutton-nal átváltod az állapotát. Egyik állapotban szürke vagy átlátszó gombot csinálsz, ilyenkor a makró nem csinál semmit.
Üdv! Bizonyos gombok megjelenését szeretném makróval kezelni. Pl adott szituációba szükséges gombot megjeleníteni vagy eltüntetni. Gondolom a gomb layer számát kellene 0 ra állítani vagy az adott rétegére ha láthatóvá akarom tenni. Mivel lehet ezt megtenni? Többfélekép próbáltam de nem akar összejönni Button1.layernumber=0;
dezsoe | 2934
2018-07-02 13:45:13
[5724]
Ez más probléma. Kint van egy ablak, ami válaszra vár, de közben input triggerrel megnyomja a háttérben a Start gombot, amit egérrel nem tud megnyomni, mert az ablak nem engedi.
Nem annyira gáz mint zavaro, de szerintem lehet, hogy erdekli a fejlesztoket.
Tehat ha kulso gombokrol vezerlem a gepet, start, reset stbstb. Poziciora allas elott megkerdezi, hogy mit csinaljon es ott egy OK ra kene entert nyomni, en csak veletlwn nyomtam startot mert megszokasbol 2x nyomom, de mint latszik is kifagy a progi. Ujrainditas utan siman generaltam megint a hibat, amugy ha entert nyomok szepen csinalja a dolgat es megy minden faszán.
dezsoe | 2934
2018-06-30 06:50:28
[5720]
A 2101-ben még nincs benne a javítás, a 2102-ben az ethernetes, a 2103-ban az USB-s vezérlők kapták meg. (Egyébként, nem a memóriám ilyen jó, hanem a minap felírtam, amikor beszéltünk. Jelige: akinek nincs esze, legyen notesze! )
Megcsináltam 40 db M 20 as menetet nemesített 42CrMo4 be (QT) A szigmája a 8.8 és a 10. 9 között van menethossz 43 mm magfurat 17.5 mm . Kínai kés ( nagyon szeretem !! ) Korloy lapkával lapka 16 os kés 13 as . Sugárirányú fogásvétel G 33 al 28 fogás . Program : fejből saját , paraméteresen . Hoszzrövidítést alkalmaztam ( 2.8 mm ) Fordulatszám 320 1 / min emulziós hűtés Az általam használt UCCNC program (Balázsék jóvoltából ) ABS KORREKT
A -1 semmi érdekeset nem jelent, csak azt, hogy még nincs értelmes értéke a változónak, be kell olvasni. A LED-ek számozása 1-től kezdődik, így a -1 értékkel lehet jelezni, hogy még nem történt meg az értékadás. Lehetne neki külön változót is adni, ami csak azt jelzi, hogy már adtunk-e értéket, de minek. (Egyébként, elég elterjedt módszer, hogy ha pl. csak pozitív érték plusz a nulla megengedett, akkor a -1 egy esetleges hibát jelez.)
A másik egy feltételes értékadás, ami úgy néz ki, hogy <feltétel> ? <igaz érték> : <hamis érték>, tehát pl.:
int x = (y == 10 ? 100 : 200);
kód esetében ha y=10, akkor az x 100 lesz, egyébként 200. Lehetne neki if-else szerkezetet is írni, de így rövidebb a kód és sokszor áttekinthetőbb is.
Van ott a Béni oldalán a LinuxCnc lenyíló ablakában egy python fül'ha valaki nem vette volna észre, érdemes elolvasni és letölteni ezt a remek metvágó gkód generáló csodát! Sajnos félbemaradt annó a fejlesztése, de ha valaki jobbról balra bármilyen szögben menetet akar vágni, szög értékek nélkül, akkor ez a jó megoldás.
Rákerestem a Linux ra . Az egy drive line vel operál ami szigorúan párhuzamos a Z tengellyel. Ergó nem megy a kúpos menet . DE az UCCNC az nem Linux Ezért azt meg lehetne csinálni hogy abban ezt a szoros párhuzamossági feltételt feloldjuk ( kellene még egy paraméter ami a drive line X érkezése ) Persze akkor azt meg kellene írni . No ezt várnám igencsak