abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 17:33 | Komunita

    Výsledek hlasování: Výchozím grafickým motivem Debianu 13 aneb Trixie bude Ceratopsian.

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | IT novinky

    Rodina jednodeskových počítačů Orange Pi se rozrostla (𝕏) o Orange Pi 5 Ultra.

    Ladislav Hagara | Komentářů: 7
    včera 14:33 | Nová verze

    Mobilní Datovka, tj. svobodná aplikace pro přístup k datovým schránkám pro zařízení s operačním systémem iOS a Android, byla vydána v nové verzi 2.2.0. Nově lze nastavit vlastní obrázky pro jednotlivé datové schránky pro jejich lepší identifikaci v seznamu schránek. Přidán byl editor vnitřních nastavení aplikace, který slouží jako přehled všech hodnot, které aplikace udržuje.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Komunita

    Společnost DuckDuckGo stojící za stejnojmenným vyhledávačem letos věnovala 1,1 milionu dolarů na podporu digitálních práv, online soukromí a lepšího internetového ekosystému. Peníze byly rozděleny mezi Electronic Frontier Foundation (EFF), Public Knowledge, ARTICLE 19, Demand Progress, European Digital Rights (EDRi), Fight for the Future, The Markup, OpenMedia, Restore the Fourth, Signal, Surveillance Technology Oversight

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 02:11 | Nová verze

    LibrePCB, tj. svobodný multiplatformní softwarový nástroj pro návrh desek plošných spojů (PCB), byl vydán ve verzi 1.2.0. Přehled novinek v příspěvku na blogu a v aktualizované dokumentaci. Vypíchnut je import knihoven KiCadu. Zdrojové kódy LibrePCB jsou k dispozici na GitHubu pod licencí GPLv3.

    Ladislav Hagara | Komentářů: 2
    včera 01:33 | Upozornění

    Při mezinárodní operaci byla zablokována pokročilá služba pro šifrovanou komunikaci MATRIX, oznámil úřad pro evropskou justiční spolupráci Eurojust. K uzavření služby podle něj vedlo vyšetřování společného týmu, na němž se podílely francouzské a nizozemské úřady a který byl zřízen při Eurojustu. Službu podle něj využívaly kriminální živly. Tato služba MATRIX nemá nic společného s nadací Matrix a protokolem Matrix.

    Ladislav Hagara | Komentářů: 14
    3.12. 18:55 | IT novinky

    Národní filmový archiv spustil nový YouTube kanál Filmová klasika, který veřejnosti postupně zpřístupní vybrané české filmy. Nabídne především tituly, které obecenstvo v běžné nabídce televizí nebo VOD platforem nenajde. Dnes v 18:00 kanál odstartoval kultovním snímkem Kouř režiséra Tomáše Vorla. Divačky a diváci se pak každý týden budou moci těšit na dva nové filmy, které se na novém kanálu objeví vždy v úterý a v pátek. Spolu s Kouřem nabídla Filmová klasika ještě další desítku filmů ke zhlédnutí.

    Ladislav Hagara | Komentářů: 41
    3.12. 12:55 | IT novinky

    Příspěvek na blogu Raspberry Pi informuje, že Steam Link běží už i na Raspberry Pi 5. Nejnovější verze podporuje H.264 (1080p s 144 FPS) i HEVC (4K s 60 FPS a 1080p s 240 FPS).

    Ladislav Hagara | Komentářů: 7
    3.12. 05:00 | Komunita

    Na čem aktuálně pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 1
    3.12. 03:55 | Nová verze

    Byla vydána nová verze 14.2 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: Doplnění funkce programu

    pdp7 avatar 20.11. 08:42 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Doplnění funkce programu
    Přečteno: 379×
    Příloha:
    Ahoj, mám tu prográmek ncdr2cnc, který převádí vrtací data ve formátu Excellon do Gcode. To by mohlo i tak zůstat. Potřeboval bych tam doplnit funkcionalitu, která by to rozšiřovala o frézování např. přepínačem -mill Ručně jsem vytvořil nějaký příklad jak by měl vypadat výstup z programu. Soubory TAP. Ve zdrojovém frézovacím excellon souboru *.rou jsou kódy M15, M16 které reprezentují pohyb vřetene v ose Z dolu a nahoru.

    M15 pro pohyb dolu, by mohlo by mohlo být analogicky jako -zdrill pro vrtání určováno volbou -zmill. V příkladu je -2. Toto musí být v rámci normálního frézování G01 s určenou pojezdovou rychlostí.

    M16 vřeteno nahoru zase nastavitelné nějakou volbou -zup. V příkladu je 5. Toto může být už v rámci rychloposuvu.

    Nevím nakolik je to proveditelné v tom programu vzhledem k tomu jak je postavený (já to bohužel neumím ani přečíst, špatně jsem se učil). Pokud by se tu našel někdo kdo umí a zároveň se aspoň trochu vyzná v G kódech, je to uplně nejlepší možná varianta. Já jsem rád za to, že jsem vůbec sesmolil tenhle dotaz.

    Odkaz na zdroják programu https://sourceforge.net/p/ncdr2cnc/code/HEAD/tree/ je tam i zkompilovaný exáč.

    Přikládám příklady vstupů a výstupů v zipu.

    Odpovědi

    20.11. 11:27 X
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Asi bych se netrapil strukturama v C++ a podobne jako v dlr2gcode bych to proste vyparal radek po radku a provedl konverzi. Je potreba si nastudovat vstupni i vystupni format. Pohyb mezi M15 a M16 prevest na G01 etc.
    pdp7 avatar 21.11. 14:42 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Načítání vstupu je na řádcích 45-55 a zápis výstupu je 57-63?
    21.11. 18:08 X
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Cte se radek po radku:
    with open(args.drlfile[0]) as fp:
       line = fp.readline()
       while line:
         ....
    
    Nasypou se nastroje(tnum):
    if line.startswith("T") and "C" in line:
     ....
    
    Vybere se nastroj(tsel): ....
    elif line.startswith("T"):
    ....
    
    Prevod vrtani:
    elif line.startswith("X") and tsel != "0":
    
    Zapis:
    for t in tools:
    ....
    
    pdp7 avatar 21.11. 18:31 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Ten převod vrtání, jestli to chápu správně: vždycky očekává, že řádek bude začínat X. Jenže když tam napíšu G00 a do uvozovek 3 aby bral jakože 4 znak, tak mi zas vypíše problém s řádkem newl2. Programovat já neuměti. A už vůbec nevím jak bych si v kódu měl počínat pokud řádek bude začínat jakkoliv jinak, ale bude v něm směrodatná informace. Jsem jako ten Vyhlídka když radil Andělovi garde, radit uměl ale hrát ne.
    21.11. 19:16 X
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    FlatCAM. Cituji:
    You can open Gerber, Excellon or G-code, edit it or create from scatch, and output G-Code. 
    Tohle bude pro tebe idealni a bez programovani. Bezi to na Linuxu, ale to asi chapes. Na widlich WSL.
    pdp7 avatar 21.11. 20:32 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    To chápu. Zkusil jsem už více věcí včetně FlatCamu a zrovna tak jako ty ostatní neumí zacházet s excellonem v režimu frézování (routing), jen vrtání. Specifikaci má na stránkách firma Ucamco, ale z nějakého důvodu to zřejmně nikdo nepožaduje, protože kdo vyrábí profi plošňáky tak má specializované železo. Bastliči si vystačí s ULP pcb2gcode udělátkem do Eagle. Já dělám v práci panelizaci v softu kde je výstupem ten excellon jak na díry tak drážky a tam končím. Určitým řešením pro mě je, prostě vykálet se tu funkci exportu cest nástroje, exportovat prostě outlajny modulů v DXF a toto zpracovat v nějakém Vectric (na normální frézu co firmě plánujeme) a dělat routepath, můstky a tyhle voloviny v tom. Jako cesta to je, ale připadá mi teda fest debilní.
    pdp7 avatar 21.11. 20:39 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Chcete li se zasmát, dodavatel té frézy nám nabídl (ve spolupráci s nějakou další programátorskou firmou), že je schopný nějaký takový převodník udělat za 110 prutů :D
    21.11. 21:41 X
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Jestli na to mas nejaky rozpocet tak si to nech proste nakodovat. Jako brigada pro VS studenta techniky je to uplne pohodove.
    22.11. 21:15 X
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    KiCad jsi zkousel? Protoze podle zdrojaku umi mill i routing do Gerberu..
    * Routing commands are similar to Gerber polygons
    pdp7 avatar 2.12. 12:50 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Zkusím to jinak
    elif line.startswith("X") and tsel != "0":
             newl1 = "".join(["G1 F", str(args.z_move_speed), " Z", str(args.safe_height)])
             newl2 = "".join(["G1 F", str(args.xy_move_speed), " ", line.split("Y")[0], " Y", line.split("Y")[1].strip("\r\n")])
    
    Jak mám Pythonu říct, aby bral na vstupu i řádky začínající nejen X, ale i G01? Prostě potřebuji aby je opsal, v tomto stavu jen vypíše chybu
    Traceback (most recent call last):
      File "C:\Users\cerny\Documents\Elektro Modus\frezovani\CAMOutputs\vylezlo z fabu\drl2gcode.py", line 61, in module
        newl2 = "".join(["G1 F", str(args.xy_move_speed), " ", line.split("Y")[0], " Y", line.split("Y")[1].strip("\r\n")])
                                                                                         ~~~~~~~~~~~~~~~^^^
    IndexError: list index out of range
    2.12. 15:59 X
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Vrtani je "jednorazova" operace je mozne ji zpracovavat sekvencne, ale routing je operace, ktera vyzaduje sekvenci kroku => je potreba se pri parsovani kodu koukat dopredu i dazdu. Tedy, pokud detekujes na radku zmenu z vrtani na routing G00/G11 bude nasledovat samostatna smycka, ktera detekuje zacatek, pohyb vrtaku a konec.

    Ten soubor se zpracovava radek po radku a program nevi co bude nasledovat, to je potreba osetrit:
    G00X-1Y11.9007 <- Prepnuti na routing a vychozi pozice.
    G40
    M15
    G01Y0 <- linearni pohyb
    M16
    G40
    G00X19.3493Y-1 <- Routing koncova pozice.
    
    Pseudoodem:
    if 'G00' in line:# ROUTING ZACATEK
       while line:
          line = f.readline()
          ..... <- zpracovani pohybu
          if 'G00' in line: ROUTING KONEC
             ....
             break
    
    Snad jsem to pochopil dobre.
    pdp7 avatar 2.12. 17:15 pdp7 | skóre: 33 | blog: Mravenec_v_LCD_monitoru | Zákupy u České lípy
    Rozbalit Rozbalit vše Re: Doplnění funkce programu
    Díky tohle jsem potřeboval, sice jsem už přišel na to jak volbě startwith přiřadit více možných hodnot, nicméně nefunguje to jak by bylo třeba jak správně píšeš.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.