Portál AbcLinuxu, 19. dubna 2024 18:26


Dotaz: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)

15.7.2012 12:43 anomotron
Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Přečteno: 1973×
Odpovědět | Admin
Dobrý den,

již delší dobu řešíme otázku vývoje programu pro správu a evidenci a zároveň návrh nábytku. Nyní máme jednoduchý nízko-nákladový systém v OpenOffice.org Calc - blíže pojmenované jako OptimCabinet blíže na www.dlauhy.cz/blog .

Toto řešení využívá Calc jako odkladiště dat, zpracování propočtů, přípravu kusovníků a následné předání dat do jiných programů např. pro zpracování nářezových plánů a pro přenos podkladů do CAD aplikací pro automatické modelování, CAM aplikace atd... V současnosti je toto pravděpodobně naprosto dostačující, je to závislé pouze na Calcu a makrech, běží to jak na LibreOffice tak na OpenOffice. Avšak objevují se náznaky problémů > některým uživatelům se to moc nelíbí a chtěli by něco co je blíže nějaké uživatelské databázi / případně i nějaké síťové databázi (např. jako MSO Access).

Díky těmto otázkám se začínáme dívat po jiné platformě / případně novém návrhu. Jako první jsme tedy hledali možné náhrady MSO Access v podobě nějakého podobného řešení.

Existují tedy open-source projekty - na evidenci a propočty

OO.o Base - toto řešení jsme testovali nejdříve, ale použitelnost je opravdu hodně nízká, dále časté chyby a uživatelské rozhraní také nevyhovující.

OO.o Calc - nyní využíváme a krom lepšího GUI (používáme i dialogy) by vyhovovala lepší správa dat (např. jednoduché vytahování a vkládání dat do databáze), jinak je to vcelku použitelné řešení.

Kexi - taková databáze pro caligra suite, málo materiálů

Glom - jednoduchá databáze na PSQL, programovatelná pythonem, ale zatím všechny sestavení byly značně nestabilní a docházelo často k pádům.

open-source projekty - nadstavby na CAD/3D projekty?

FreeCAD - objektový a plně parametrický CAD program, možná připravit rozšíření nad jeho aplikační vrstvou a přímo modelovat a z dat poté připravit výstupy?

Blender - podobné jako zmíněný program výše...

closed-source projekty

IMOS - něco podobného se snažíme připravit, plně objektové řešení CAD program postavený na AutoCAD aplikaci - hotové řešení, finančně docela drahé

DAEX + TurboCAD - české řešení firmy Špinar, které našim požadavkům moc dobře nevyhovuje

FileMaker - opět databázové řešení pro vývoj vlastního systému pro správu dat

Access - podobné FileMakeru, možnosti mohou být větší atd...

Úplně nové čisté řešení bez využití nějaké aplikace např. čisté programování bude asi velice obsáhlé, jelikož se jedná o interdisciplinární vývoj, kde jde o design, návrh , kompletní ekonomiku, částečně logistiku a zpracování administrativy a vizualizace atd >> tyto směry ukazují na využití některého z ERP systémů propojených na CAD aplikace připadaně podobné řešení.

Co si o tomto myslíte? Jaký postup by byl výhodný a jak se zachovat? Čas i finanční zdroje jsou důležitým ukazatelem, ne však hodnotícím. Optimálně jsou pro nás důležité výsledné možnosti, jednoduchost/upravitelnost systému a použitelnost.

Omlouvám se za delší zápisek, ale kratší to asi moc nešlo:)
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Josef Kufner avatar 16.7.2012 00:18 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Odpovědět | | Sbalit | Link | Blokovat | Admin
A co tedy vlastně chceš? Vykašli se na technologie a napiš, co od toho očekáváš a jak vypadá typické použití (kdo, co dělá/má dělat).
Hello world ! Segmentation fault (core dumped)
16.7.2012 11:26 normotron
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Jednoduše řečeno program pro přípravu výroby nábytku.

- obvykle se to týká CAD > CAM řešení

- zpracování kusovníku(BOM, bill of materials) a propočtů

- kalkulace a nabídky

- nějaká forma řízení zakázek & zákazníci (CRM)

- případně předání dat do jiných programů

v současnosti je naše řešení postavené jako základní část CALC > který se dále napojuje na CAD program, vizualizační program a program na propočty spotřeby materiálu a nářezové plány, základní formy nestingu.

Důležité jsou možnosti ruční úpravy což Calc umí a případně úpravy v CAD aplikaci.

Doufám, že je to takto přehlednější než v zápisku.
Josef Kufner avatar 16.7.2012 23:44 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Myslím, že to co chceš, je program, který zastřeší všechny kroky tvého workflow a propojí potřebné nástroje i lidi dohromady, i když sám nic moc umět nebude.

Asi by na to stačilo napsat celkem jednoduchý program (třeba v Qt), který by u každého zákazníka ukazoval, jaké má zakázky a nějaké další údaje o něm. U každé zakázky by pak hlídal její stav (čeká se na zákazníka/vyrábí se/čeká se na materiál/hotovo), termíny, a hlavně udržoval pořádek v jednolivých souborech (včetně historie) a umožňoval na ně spouštět různé nástroje (ať už CAD, OO Calc nebo různé konverzní nástroje a generátory, které už většinou máš) nebo je posílat na správná místa (objednávka materiálu, příkaz k výrobě). Serverová část by pak mohla být složena jen z repositáře, přes který by se sdílely soubory (git?).

V podstatě jde o to, nakreslit si pořádně procesní diagram na téma "život objednávky" a pak ho zadrátovat do toho zastřešujícího programu.
Hello world ! Segmentation fault (core dumped)
17.7.2012 07:45 normotron
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Je pravda, že takto jednoduše jsem nad tím nepřemýšlel, ale toto není to co bych přímo chtěl, jelikož to jediné co dělá, je správa zakázky.

Jak jsem psal, řešení by mělo být schopné navrhovat nábytek a k tomu i při návrhu, vytvořit model a další podklady a následně to vložit do zakázky. Pokud se podíváte například na

http://www.dlauhy.cz/blog/optimcabinet-specialnivyrobky

tak zde je vidět část současného řešení, je to definované parametricky a umožňuje to změny a následně to vytváří 3D model a kusovník, ty se poté dále zpracovávají.

Pokusím se tedy položit otázku znovu, jakým způsobem tedy navrhnout nové řešení/ případně navrhovat ho znovu vůbec? pokud bych chtěl vytvářet výrobky pro nábytek parametricky/jednoduše a tak, aby by z toho poté bylo možné automaticky vytvářet kusovník, případně další podklady?

Já si zatím myslím, že to co nyní máme je dostačující, ale stále hledám i další cestu.
17.7.2012 10:54 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Já bych spíše favorizoval opačný přístup, než dělat zastřešující strukturu, tak provést změny v backgroudu. Pokud tomu rozumím, tak základ jsou soubory ve spreadsheedu, kam případně se vkládají další objekty jako výkresy a podobně. Uvažoval bych tedy přejít na databázový backgroud, kdy OO Calc by dělal frontend a výpočty a vlastní data by konektoval a získával z databáze, pak myslím že by do ní bylo možné mít i jiné přístupy, jako design, výkresy, díly na výrobu, sklad, zakázky apod.
Josef Kufner avatar 17.7.2012 11:22 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Je pravda, že takto jednoduše jsem nad tím nepřemýšlel, ale toto není to co bych přímo chtěl, jelikož to jediné co dělá, je správa zakázky.
Takže je to část toho, co chceš?

[...] jakým způsobem tedy navrhnout nové řešení/ případně navrhovat ho znovu vůbec?
Právě že vytvářet to znovu by bylo na pár let vývoje. Ty máš nástroje, které fungují, ale jak je napsáno v tebou odkazovaném článku, jejich použití vyžaduje určité zvyklosti, aby do sebe ty nástroje správně zapadly.

Podívej se na BPNM (hezký příklad) a zkus si nakreslit, jak to teď děláte (ty vyžadované zvyklosti zmíněné v článku; od zákazníka až po hotový výrobek). Jednotlivé obdélníčky (činnosti) budou vyžadovat odlišné nástroje a některé obdélníčky budou reprezentovat plně automatické (nebo automatizovatelné) činnosti (např. sestavení kusovníku z výkresu). Odhaduju, že takových věcí, které děláš ručně, ale přitom tě nijak zvlášť nevyžadují, v tom diagramu najdeš několik.

Cílem toho nástroje, který jsem navrhoval, není jen správa zakázky, ale i řízení celého procesu. Takový nástroj nebude umět sestavit kusovník, ale bude vědět, že k jeho vygenerování stačí spustit program generuj_kusovník s vhodnými parametry. Postupem času pak budeš moct přidávat malé specializované nástroje pro jednotlivé činnosti. A ten zastřešující program je bude umět používat, aby se lidé mohli soustředit na zakázky a neztratili se v tom.

Docela pěkně je udělaný Eagle (systém pro návrh plošných spojů). Po spuštění se ti ukáže okno s přehledem projektu (seznam souborů), kde můžeš vytvořit schéma zapojení a/nebo návrh desky. Když pak klikneš na soubor se schématem, otevře se ti na prvním okně nezávislý editor. Když pak chceš ze zapojení vytvořit návrh desky, je tam tlačítko, které ti připraví soubor s potřebnými součástkami a jejich propojeními, takže pak není třeba řešit, kam jaký spoj vede, ale jen to rozmístíš na desku (v druhém editoru). A pokud uděláš změnu ve schématu, aktualizuje to i propojení součástek na desce.
Hello world ! Segmentation fault (core dumped)
17.7.2012 14:14 normotron
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)

Na webu je krátké video, které blíže ukáže jakým způsobem OptimCabinet v současnoti funguje..

http://www.dlauhy.cz/blog/optimcabinet-nove-video

ukázka zobrazuje přípravu jednoduché skříňky ze zadaných rozměrů atd...

Hlavní problém je v tom, že vizuální odpověď pro uživatele je až v tu chvíli, jakmile se spustí skript pro CAD. Tato část se špatně aktualizuje a proto hledám, nějaké řešení které by mělo lepší vizuální reprezentaci. (btw nemá někdo zkušenosti s kontinuálním předáváním dat do jiných programů, aby se změny prováděly okamžitě?)

Dále to souvisí s databází a zákazníky...

Jinak k řešení pomocí zastřešení a malých programů, toto řešení znamená naprogramovat vše od nuly, jelikož asi nebude žádná podpůrná vrstva. Proto jsem právě přemýšlel o nějaké možnosti využít nějakou formu pracovní databáze > např. se mi zalíbil ten Glom.

Otázka do pléna má někdo bližší zkušenosti se spojováním více programů do funkčního celku?? Mám tím na mysli různé programy. V našem případě je to nějaké

rozpočítání & kalkulace >> předání výstupů do dalších aplikaceí (nářezové plány, CAM opracování) >> CAD aplikace a vizualizace... Najde se tu někdo kdo již něco podobného dělal? úspěšně spojil několik různých aplikací do jednoho funkčního celku?

Josef Kufner avatar 19.7.2012 17:31 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
... V podstatě se to dá popsat jako grafický interaktivní make.
Hello world ! Segmentation fault (core dumped)
19.7.2012 12:29 Zdenek Sekerak
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Siel by som do web aplikacie. WAMP. Calc mozes pouzivat ako zdroj cez neake ODBC a zo zaciatku pouzivat paralelne oboje.
  • neriesis platformy uzivatelov
  • backend neriesis ale o moze byt aj na omedzujuce
  • priamu editaciu mozes nudzovo vyriesit aj formou phpAdmin
  • zostavy, vysledovky a stav zakazky vyriesis spravne formulovanym SQL dotazmi
  • predpripravene web komponenty pre rozne cinosti (tlac, export,...)

Nevyhoda je samozrejme vyvoj a to ze do procesu vyvoja dostanes dalsie programovacie jazyky a technologie. Potom ale uz s tym bude mozne krasne carovat. A mozes to aj vystavit do NETu pre pripadnych zakaznikov ci ludi v terene.
Josef Kufner avatar 19.7.2012 17:27 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
S webovým rozhraním bych tady váhal. Pokud pracuje s CADem, tak pracuje se soubory a to je přes web obtížné a nepohodlné. Lokálnímu klientovi se nevyhne.

Webové rozhraní se může hodit ná různé reporty, přehledy, exportování kalendáře s termíny zakázek a podobně. Na práci samotnou to nebude.
Hello world ! Segmentation fault (core dumped)
17.7.2012 11:55 Ivan
Rozbalit Rozbalit vše OT: Cad
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nejaky CAD se da koupit jako "komponenta" do SW. Bohuzel si nepamatuju jak se ten produkt jmenuje, ale pamatuju si, ze jsme provozovali system na evidenci majetku, a v tom byl zahrnuty nejaky jednoduchy CAD ve kterem se kreslily plany pater a budov. Ta firma, ktera nam to dodala si sama koupila licenci na CAD a zahrnula ho do sveho produktu. I si CAD koupis, tak stejne budes mit hrozne moc prace to cele integrovat.
17.7.2012 14:17 normotron
Rozbalit Rozbalit vše Re: OT: Cad
Proto máme v současnosti CAD aplikaci oddělenou (naše řešení funguje pro autocad, bricscad, draftsight a další na autocad like)...A poté v CAD aplikaci maximálně něco dokótujeme, případně doděláme ručně. Jinak naše modely jsou 3D, kvůli nárysu a půdorysu, případně někdy je nutný i bokorys, takže již potřebujeme 3D cad. Avšak podobné řešení by bylo ideální, ale jak jste již napsal, tak práce s integrací není jednoduchá.
17.2.2014 14:36 normotron
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Odpovědět | | Sbalit | Link | Blokovat | Admin

Dobrý den,

tak po dlouhé době aktualizace této diskuze. Za ty necelé 2 roky jsme zapracovali a tímto krátkým zápiskem představujeme službu pro přípravu technické dokumentace pro výrobyu nábytku a interiérů > www.pripravto.cz. Předpokládáme, že brzo uvedeme blogový zápisek o i technologii a možnostech.

Služba je v současné době v testovací fázi a dochází k často k úpravám. Přihlášení je přes pripravto.cz a testovací demo účet je uživatel - "useroc1", heslo - "oc1user1piff".

Více informací se pak podá v snad následujícím zápisku.

18.2.2014 01:12 panbucek
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
 at /customers/smrdíš/edit
'ascii' codec can't encode characters in position 4-5: ordinal not in range(128)
Python 	web_orders.py in optimcabinetv2.webapp.web_orders.CustomerEdit.GET (webapp/web_orders.c:4169), line 265
Web 	GET http://pripravto.cz/orders/customers/smrdíš/edit
Traceback (innermost first)

    web_orders.py in optimcabinetv2.webapp.web_orders.CustomerEdit.GET (webapp/web_orders.c:4169) 

▶ Local vars
/home/tessd/oc/useroc1/optimcabinetv2/webapp/web/application.py in handle_class

    return tocall(*args) ...

▶ Local vars
/home/tessd/oc/useroc1/optimcabinetv2/webapp/web/application.py in _delegate

    return handle_class(cls) ...

▶ Local vars
/home/tessd/oc/useroc1/optimcabinetv2/webapp/web/application.py in handle

    return self._delegate(fn, self.fvars, args) ...

▶ Local vars
/home/tessd/oc/useroc1/optimcabinetv2/webapp/web/application.py in process

    return self.handle() ...

▶ Local vars
Request information
INPUT

No data.
COOKIES
Variable	Value
__utma	
'77253972.1830302587.1392681513.1392681513.1392681513.1'
__utmb	
'77253972.2.10.1392681513'
__utmc	
'77253972'
__utmz	
'77253972.1392681513.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)'
proxy_OC	
'd1062f2a341b7ccbfa616836a7d1a4565b0adadd~0438713e63f40fdd08621e877adb60d1a6c551ef'
META
Variable	Value
app_stack	
[, ]
fullpath	
u'/customers/smrd\xed\u0161/edit'
headers	
[]
home	
u'http://pripravto.cz/orders'
homedomain	
u'http://pripravto.cz'
homepath	
u'/orders'
host	
u'pripravto.cz'
ip	
u'127.0.0.1'
method	
u'GET'
output	
u''
path	
u'/customers/smrd\xed\u0161/edit'
protocol	
u'http'
query	
u''
realhome	
u'http://pripravto.cz'
status	
'200 OK'
ENVIRONMENT
Variable	Value
ACTUAL_SERVER_PROTOCOL	
'HTTP/1.1'
HTTP_ACCEPT	
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
HTTP_ACCEPT_ENCODING	
'gzip, deflate'
HTTP_ACCEPT_LANGUAGE	
'en-US,en;q=0.5'
HTTP_CONNECTION	
'keep-alive'
HTTP_COOKIE	
'__utma=77253972.1830302587.1392681513.1392681513.1392681513.1; __utmb=77253972.2.10.1392681513; __utmc=77253972; __utmz=77253972.1392681513.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); proxy_OC=d1062f2a341b7ccbfa616836a7d1a4565b0adadd~0438713e63f40fdd08621e877adb60d1a6c551ef'
HTTP_DNT	
'1'
HTTP_HOST	
'pripravto.cz'
HTTP_REFERER	
'https://pripravto.cz/orders/customers/smrd'
HTTP_USER_AGENT	
'Mozilla/5.0 (X11; Linux i686; rv:27.0) Gecko/20100101 Firefox/27.0'
PATH_INFO	
'/orders/customers/smrd\xc3\xad\xc5\xa1/edit'
QUERY_STRING	
''
REMOTE_ADDR	
'127.0.0.1'
REMOTE_PORT	
'54912'
REQUEST_METHOD	
'GET'
REQUEST_URI	
'/orders/customers/smrd\xc3\xad\xc5\xa1/edit'
SCRIPT_NAME	
''
SERVER_NAME	
'localhost'
SERVER_PORT	
'8081'
SERVER_PROTOCOL	
'HTTP/1.1'
SERVER_SOFTWARE	
'CherryPy/3.2.0 Server'
wsgi.errors	
', mode 'w' at 0x7f202aa91270>
wsgi.input	

wsgi.multiprocess	
False
wsgi.multithread	
True
wsgi.run_once	
False
wsgi.url_scheme	
'http'
wsgi.version	
(1, 0)

You're seeing this error because you have web.config.debug set to True. Set that to False if you don't want to see this.
18.2.2014 07:27 normotron
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Díky za otestování.. adresa pro kontakt je room_support@pripravto.cz

Bohužel s diakritikou máme na hodně místech problémy > používáme několik modulů, které mají s diakritikou - UTF-8 problémy. Do té doby dokud úplně nepřejdeme na Python3 i s ostatními moduly, tak to bude asi ještě značně problematické. Zatím by na většině místech mělo být odstraňování diakritiky > u zákazníků se někam ztratilo - Opravíme

Jinak problém s dělením je výkresů také u jiného modulu, pokud je prázdný výkres / produkt a člověk si vyžádá DXF variantu, která bohužel neumí kreslit přímo. SVG varianta by měla fungovat - Opravíme u DXF.

Jinak feedback ještě není implementovaná, zatím používáme primárně e-mail.
18.2.2014 07:36 normotron
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
A ještě díky za nalezení u zakázek chyby s stringem s "?" ..

Musíme do JavaScriptu dodělat ověřování vstupů, bohužel to ještě nemáme. Pokud někdo ví o pěkné JS knihovně na ověřování vstupů, tak povězte.

Pro nás bylo zatím klíčové dát do funkčnosti to hlavní tedy navrhování/počítání/fungování aplikace > nyní se soustředíme na ladění chyb > stále jich je tam dost.
18.2.2014 12:26 jan.xxx
Rozbalit Rozbalit vše Re: Vývoj vlastního řešení/programu pro přípravu výroby nábytku(nebo jen přípravu výroby)
Hezká JS knihovna parsleyjs.org.

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.