Uživatelské nástroje

Nástroje pro tento web


cs:tools

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
cs:tools [2019/02/24 10:22]
jacho [Generování seznamu součástek - BOM]
cs:tools [2019/05/02 12:23] (aktuální)
jacho [OpenSCAD]
Řádek 38: Řádek 38:
  
 === Instalace Windows === === Instalace Windows ===
-Nyní je již instalace KiCAD jednoduší. Stačí si stáhnout pro Windows typický exe soubor a nainstalovat.+Nyní je již instalace KiCAD jednoduší. Stačí si stáhnout pro Windows typický exe soubor a nainstalovat ​(používáme verzi Nightly Development Builds).
  
 http://​kicad-pcb.org/​download/​windows/​ http://​kicad-pcb.org/​download/​windows/​
Řádek 50: Řádek 50:
   * [[https://​github.com/​MLAB-project/​kicad-library|Knihovny se součástkami specifickými pro MLAB]], které obsahují i skript pro stažení knihoven z Githubu a offline práci v KiCADu.   * [[https://​github.com/​MLAB-project/​kicad-library|Knihovny se součástkami specifickými pro MLAB]], které obsahují i skript pro stažení knihoven z Githubu a offline práci v KiCADu.
  
-Je dobré při návrhu modulů využít co nejvíce prvků z knihoven MLAB, které jsou dostupné na [[https://​github.com/​MLAB-project/​kicad-mlab|GitHubu]]. Důvod k tomu je ten, že MLAB knihovny obsahují technologicky optimalizované varianty obecných pouzder, což je důležité zejména pro osazování a automatickou tvorbu dokumentace. ​+Je dobré při návrhu modulů využít co nejvíce prvků z knihoven MLAB, které jsou dostupné na [[https://​github.com/​MLAB-project/​kicad-mlab|GitHubu]]. Důvod k tomu je ten, že MLAB knihovny obsahují technologicky optimalizované varianty obecných pouzder, což je důležité zejména pro osazování a automatickou tvorbu dokumentace
 + 
 +Pokud nějaká součástka není ani v jedné knihovně a vznikne potřeba vytvořit vlastní novou. Je potřeba danou součástku zařadit do knihovny MLAB, aby jí bylo možné snadno použít i v dalších modulech. Nedávat jí jen do knihovny projektu, nebo do nějaké vlastní knihovny, ke které není přístup již vůbec.
  
 Knihovny se do KiCADu přidávají zvlášť při kreslení schéma a zvlášť při návrhu PCB v obou případech je postup velmi obdobný. Knihovny se do KiCADu přidávají zvlášť při kreslení schéma a zvlášť při návrhu PCB v obou případech je postup velmi obdobný.
Řádek 91: Řádek 93:
   ​   ​
  
 +Při kreslení modulu osob s přístupem do UST skladu, je potřeba při kreslení schéma vkládat rovnou UST_ID k daným součástkám. A pokud daná součástka ještě neexistuje, je potřeba jí rovnou vytvořit. Značně to usnadňuje následnou výrobu a jednoznačně definuje osazení.
  
 === Návrhová pravidla === === Návrhová pravidla ===
Řádek 363: Řádek 365:
   sudo apt-get install freecad-daily freecad-daily-doc ​   sudo apt-get install freecad-daily freecad-daily-doc ​
  
 +
 +==== ATOM ====
 +[[https://​atom.io/​|ATOM]] je nástroj pro editaci zdrojových kódů.
 +
 +Pro OpenSCAD je potřeba doinstalovat balíček language-openscad.
  
 ==== OpenSCAD ==== ==== OpenSCAD ====
Řádek 390: Řádek 397:
 </​WRAP>​ </​WRAP>​
  
-=== Styl psaní kódu (coding style) === 
- 
-Je praktické dodržovat některá základní pravidla při vytváření modelů v openscadu. 
  
-  * Názvy proměnných vytvářet v mezinárodním jazyce (angličtina a globálně známé výrazy a zkratky) ​ 
-  * Příliš nezkracovat názvy proměnných 
-  * Proměnné a operátory oddělovat mezerami 
-  * Používat odsazení o 4 mezery (tabulátor) ve vnořeném bloku kódu 
  
   ​   ​
-=== Použití editoru SublimeText === +[[cs:openscad|Podrobnější popis použití nástroje ​OpenSCAD]].
- +
-Editor integrovaný přímo do OpenSCADu není moc pohodlný pro užívání. Je proto vhodnější zdrojové kódy modelů editovat v editoru ​[[https://​www.sublimetext.com/​|SublimeText 3]].  K tomu je ale vhodné si do editoru nainstalovat plugin, který zná jazyk OpenSCADdu.  +
- +
-Instalaci lze provést přes systém balíčků, který můžeme aktivovat volbou //Tools -> Install Package Control..//​.  +
- +
-{{:cs:sw:​sublimetext3_package_control_install.png?​400|}} +
- +
-Otevřeme nástroj pro zacházení s balíčky volbou //​Preferences -> Package Control//​. +
- +
-{{:​cs:​sw:​sublimetext3_package_control.png?​400|}} +
- +
-V nabídce zvolíme "​Install Package"​ +
- +
-{{:​cs:​sw:​sublimetext3_install_package.png?​400|}} +
- +
-Do filtračního pole napíšeme "​openscad"​. A klikneme na odpovídající balíček. +
- +
-{{:​cs:​sw:​sublimetext3_install_openscad.png?​400|}} +
- +
-Nyní je potřeba SublimeText zavřít a znovu otevřít, aby se nová konfigurace projevila. +
-Potom je možné nastavit, aby všechny soubory s příponou //.scad// byly otevřeny s OpenSCAD ​zvýrazňováním syntaxe. To lze nastavit přes volbu v pravém dolním rohu a výběrem //Open all with current extension as.. -> OpenScad//​ +
- +
-{{:​cs:​sw:​sublimetext3_select_openscad.png?​400|}} +
- +
-Při následujícím otevření .scad souboru bude automaticky rozpoznán jako OpenSCAD zdrojový kód. +
 ===== Generování a prohlížení výrobních dat ===== ===== Generování a prohlížení výrobních dat =====
  
Řádek 438: Řádek 412:
 === Skládání gerber dat === === Skládání gerber dat ===
  
-Pro skládáni dat lze využít program gerbmerge. Který se na internetu vyskytuje v několika různých větvích vývoje. Pro použití s programem kicad je vvýhodné ​použít relativně novou vývojovou větev [[http://​www.dent.med.uni-muenchen.de/​~kkunzelm/​htdocs/​6_software-tools-panelize_metric-kicad-files.html| prof.+Pro skládáni dat lze využít program gerbmerge. Který se na internetu vyskytuje v několika různých větvích vývoje. 
 +Pro použití s programem kicad je výhodné ​použít relativně novou vývojovou větev [[http://​www.dent.med.uni-muenchen.de/​~kkunzelm/​htdocs/​6_software-tools-panelize_metric-kicad-files.html| prof.
  ​Karl-heinz Kunzelmann]]. ​ Ta vychází z prvotní verze 1.8. a dalších úprav. Poměrně významně se však liší od verze [[https://​github.com/​MLAB-project/​gerbmerge3|gerbmerge3]],​ která ale má čistější zdrojový kód.  ​  ​Karl-heinz Kunzelmann]]. ​ Ta vychází z prvotní verze 1.8. a dalších úprav. Poměrně významně se však liší od verze [[https://​github.com/​MLAB-project/​gerbmerge3|gerbmerge3]],​ která ale má čistější zdrojový kód.  ​
  
Řádek 459: Řádek 434:
 Nejprve je potřeba se dostat do místa, kde jsou data setu:  Nejprve je potřeba se dostat do místa, kde jsou data setu: 
   MLAB@MLAB:​~/​MLAB-project/​gerbmerge/​MLAB_panel/​SET10A$   MLAB@MLAB:​~/​MLAB-project/​gerbmerge/​MLAB_panel/​SET10A$
-Nastavení skládání setu je v souboru layout.cfg a v soboru placement.merge.txt je uloženo požadované rozložení v setu. Soubor s rozložením setu se vygeneruje atomaticky při prvním spuštění programu gerbmerge.+Nastavení skládání setu je v souboru ​[[http://​www.gedasymbols.org/​user/​stefan_tauner/​tools/​gerbmerge/​doc/​layoutfile.html|layout.cfg]] a v soboru placement.merge.txt je uloženo požadované rozložení v setu. Soubor s rozložením setu se vygeneruje atomaticky při prvním spuštění programu gerbmerge.
 Vygenerování takto připravených dat se provede následujícím příkazem: Vygenerování takto připravených dat se provede následujícím příkazem:
   ../​../​src/​gerbmerge/​gerbmerge.py --place-file=placement.merge.txt layout.cfg   ../​../​src/​gerbmerge/​gerbmerge.py --place-file=placement.merge.txt layout.cfg
 +
 +=== Upravená verze programu gerbmerge pro MLAB ===
 +
 +V MLAB repozitáři [[https://​github.com/​MLAB-project/​gerbmerge|gerbmerge]] existuje větev ust-patches,​ ve které se testují úpravy gerbmerge pro potřeby MLABu. Vychází z větve prof. Kunzelmanna.
 +
 +První změnou je přidání podpory pro vícero vrtacích vrstev. To je motivováno potřebou oddělit prokovené a neprokovené díry. Druhá změna pak umožňuje rozdělit konfiguraci do více souborů. To by mělo umožnit vyčlenit opakující se kusy konfigurace do sdílených souborů, na které se pak odkáže u konkrétní panelizační úlohy.
 +
 +Pro ilustraci se podívejme na panelizaci [[https://​github.com/​MLAB-project/​gerbmerge/​tree/​ust-patches/​MLAB_panel/​02_PRO/​2V/​PRO201B|PRO201B]]. U ní se definice vrstev pro skládané MLAB moduly nachází v ''​mlab_layers.cfg'':​
 +
 +  [IncludeSection]
   ​   ​
 +  *TopLayer=%(prefix)s-F.Cu.gbr
 +  *BottomLayer=%(prefix)s-B.Cu.gbr
 +  *TopSilkscreen=%(prefix)s-F.SilkS.gbr
 +  *TopSoldermask=%(prefix)s-F.Mask.gbr
 +  *BottomSoldermask=%(prefix)s-B.Mask.gbr
 +  Drills=%(prefix)s-PTH.drl
 +  DrillsNPTH=%(prefix)s-NPTH.drl
 +  BoardOutline=%(prefix)s-Edge.Cuts.gbr
 +
 +Za povšimnutí stojí definice dvou vrtacích vrstev ''​Drills=''​ a ''​DrillsNPTH=''​. I v upravené verzi gerbmerge musí vždy existovat vrstva ''​Drills''​. Lze k ní však přidat další, která se jmenuje ''​Drills''​ a něco. Sekce ''​[IncludeSection]''​ v souboru značí, že se definice pod touto sekcí vloží do sekce, ze které bylo na tento soubor odkázáno. V ''​main.cfg'',​ hlavním souboru s konfigurací,​ stojí:
 +
 +  [EEPROM02A]
 +  ​
 +  Prefix=%(projdir)s/​../​PRO201A/​EEPROM02A/​EEPROM02A
 +  Include = mlab_layers.cfg
 +  ​
 +  [HBSTEP01B]
 +  ​
 +  Prefix=%(projdir)s/​../​PRO201A/​HBSTEP01B/​HBSTEP01B
 +  Include = mlab_layers.cfg
 +  ​
 +  ... a podobně
 +
 +To znamená, že výše ukázaný ''​mlab_layers.cfg''​ se vloží pod sekci ''​[EEPROM02A]''​ a ''​[HBSTEP01B]''​. V obou se použijí stejné definice vrstev, jen se v nich za ''​%(prefix)s''​ doplní jiné prefixy cest. Zdrojové data jsou tu vzata ze sousedního projektu PRO201A. PRO201A a PRO201B jsou totiž podobné panelizace, jen PRO201B používá vlastnosti upraveného gerbmerge.
 +
 +Vedle ''​mlab_layers.cfg''​ se do ''​main.cfg''​ vloží ještě ''​common.cfg''​ a ''​output_layers.cfg''​. V tomto případě nezáleží na tom, z jaké sekce ''​main.cfg''​ bylo vložení vyvoláno, protože ve vkládaných souborech se nepoužívá sekce ''​[IncludeSection]''​. Obsah se vloží tak, jak je, tedy pod původní sekcí, pod kterou je zapsán v ''​common.cfg''​ a ''​output_layers.cfg''​.
 +
 +Na závěr si prohlídněme,​ jak je v PRO201B pro gerbmerge zadáno rozvržení skládaných modulů. gerbmerge nebude rozvržení hledat automaticky,​ místo toho vypočítá rozvržení ze zadání v [[https://​github.com/​MLAB-project/​gerbmerge/​blob/​ust-patches/​MLAB_panel/​02_PRO/​2V/​PRO201B/​layout.txt|layout.txt]]. Formát tohoto souboru je popsán [[http://​www.gedasymbols.org/​user/​stefan_tauner/​tools/​gerbmerge/​doc/​layoutfile.html|v dokumentaci gerbmerge]].
 +
 +Skládání se pro PRO201B vyvolá např. takto:
 +
 +  $ cd MLAB_panel/​02_PRO/​2V/​PRO201B
 +  $ python ../​../​../​../​src/​gerbmerge/​gerbmerge.py main.cfg layout.txt ​
 +
 +Kde jsme prvně předali název hlavního konfiguračního souboru a poté souboru s rozvržením.
 +
 == GerberTools == == GerberTools ==
  
cs/tools.1551000174.txt.gz · Poslední úprava: 2019/02/24 10:22 autor: jacho