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í revizePředchozí verze
Následující verze
Předchozí verze
Následující verzeObě strany příští revize
cs:tools [2019/01/28 15:23] – [Nastavení] kaklikcs:tools [2019/04/12 13:22] – [Styl psaní kódu (coding style)] kaklik
Řá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 134: Řádek 136:
 Generování souborů BOM není ve formátu .CSV pod WIN přímo možné. Vyřešit tento problém je možné podle následujícího postupu. Generování souborů BOM není ve formátu .CSV pod WIN přímo možné. Vyřešit tento problém je možné podle následujícího postupu.
  
-  - Nejprve je potřeba stáhnout [[http://sourceforge.net/projects/saxon/files/Saxon-HE/9.5/|Saxon]] a následně ho nainstalovat.+  - Nejprve je potřeba stáhnout [[https://github.com/MLAB-project/kicad-mlab/blob/master/plugins/bom_ust.py|bom_ust.py]]. 
 +  - Je potřeba bom_ust.py uložit do místa instalace kicad. {{ :cs:sw:kicad_ust_bom.jpg?600 |}}
   - V KiCAD eeschema otevřít v nabídce "Tools > Generate Bill Of Materials"   - V KiCAD eeschema otevřít v nabídce "Tools > Generate Bill Of Materials"
-  - Zmáčknout "Add Plugin"+  - Zmáčknout "+"
   - Pojmenovat si ho podle sebe   - Pojmenovat si ho podle sebe
-  - Do command line zapsat následující cesty: "C:\Saxonica\SaxonHE9.5N\bin\Transform.exe" -t "%I" -xsl:"C:\kicad\src\kicad\eeschema\plugins\bom2csv.xsl" -o:"%O.csv" +  - Vybrat cestu do uloženého místa
-  - V prvé části musí být cesta k nainstalovanému programu Saxon a druhé cestu k souboru bom2csv.xsl (nachází se ve složce, kde je nainstalován KiCAD) +  - Poté stačí dy dát jen Generate 
 +  
  
-[[https://forum.kicad.info/t/bom-generation-in-new-kicad-windows/228|Zdroj]] 
  
 === Generování výrobních dat=== === Generování výrobních dat===
Řádek 389: Řádek 392:
 </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 437: Řádek 407:
 === 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 458: Řádek 429:
 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.txt · Poslední úprava: 2023/02/06 21:52 autor: kaklik