diff options
Diffstat (limited to 'share/doc/kicad/help/fr/pcbnew.html')
-rw-r--r-- | share/doc/kicad/help/fr/pcbnew.html | 7702 |
1 files changed, 7702 insertions, 0 deletions
diff --git a/share/doc/kicad/help/fr/pcbnew.html b/share/doc/kicad/help/fr/pcbnew.html new file mode 100644 index 0000000..4d45a2c --- /dev/null +++ b/share/doc/kicad/help/fr/pcbnew.html @@ -0,0 +1,7702 @@ +<!DOCTYPE html> +<html lang="fr"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> +<meta name="generator" content="AsciiDoc 8.6.8"> +<title>Pcbnew</title> +<style type="text/css"> +/* Shared CSS for AsciiDoc xhtml11 and html5 backends */ + +/* Default font. */ +body { + font-family: Georgia,serif; +} + +/* Title font. */ +h1, h2, h3, h4, h5, h6, +div.title, caption.title, +thead, p.table.header, +#toctitle, +#author, #revnumber, #revdate, #revremark, +#footer { + font-family: Arial,Helvetica,sans-serif; +} + +body { + margin: 1em 5% 1em 5%; +} + +a { + color: blue; + text-decoration: underline; +} +a:visited { + color: fuchsia; +} + +em { + font-style: italic; + color: navy; +} + +strong { + font-weight: bold; + color: #083194; +} + +h1, h2, h3, h4, h5, h6 { + color: #527bbd; + margin-top: 1.2em; + margin-bottom: 0.5em; + line-height: 1.3; +} + +h1, h2, h3 { + border-bottom: 2px solid silver; +} +h2 { + padding-top: 0.5em; +} +h3 { + float: left; +} +h3 + * { + clear: left; +} +h5 { + font-size: 1.0em; +} + +div.sectionbody { + margin-left: 0; +} + +hr { + border: 1px solid silver; +} + +p { + margin-top: 0.5em; + margin-bottom: 0.5em; +} + +ul, ol, li > p { + margin-top: 0; +} +ul > li { color: #aaa; } +ul > li > * { color: black; } + +pre { + padding: 0; + margin: 0; +} + +#author { + color: #527bbd; + font-weight: bold; + font-size: 1.1em; +} +#email { +} +#revnumber, #revdate, #revremark { +} + +#footer { + font-size: small; + border-top: 2px solid silver; + padding-top: 0.5em; + margin-top: 4.0em; +} +#footer-text { + float: left; + padding-bottom: 0.5em; +} +#footer-badges { + float: right; + padding-bottom: 0.5em; +} + +#preamble { + margin-top: 1.5em; + margin-bottom: 1.5em; +} +div.imageblock, div.exampleblock, div.verseblock, +div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock, +div.admonitionblock { + margin-top: 1.0em; + margin-bottom: 1.5em; +} +div.admonitionblock { + margin-top: 2.0em; + margin-bottom: 2.0em; + margin-right: 10%; + color: #606060; +} + +div.content { /* Block element content. */ + padding: 0; +} + +/* Block element titles. */ +div.title, caption.title { + color: #527bbd; + font-weight: bold; + text-align: left; + margin-top: 1.0em; + margin-bottom: 0.5em; +} +div.title + * { + margin-top: 0; +} + +td div.title:first-child { + margin-top: 0.0em; +} +div.content div.title:first-child { + margin-top: 0.0em; +} +div.content + div.title { + margin-top: 0.0em; +} + +div.sidebarblock > div.content { + background: #ffffee; + border: 1px solid #dddddd; + border-left: 4px solid #f0f0f0; + padding: 0.5em; +} + +div.listingblock > div.content { + border: 1px solid #dddddd; + border-left: 5px solid #f0f0f0; + background: #f8f8f8; + padding: 0.5em; +} + +div.quoteblock, div.verseblock { + padding-left: 1.0em; + margin-left: 1.0em; + margin-right: 10%; + border-left: 5px solid #f0f0f0; + color: #777777; +} + +div.quoteblock > div.attribution { + padding-top: 0.5em; + text-align: right; +} + +div.verseblock > pre.content { + font-family: inherit; + font-size: inherit; +} +div.verseblock > div.attribution { + padding-top: 0.75em; + text-align: left; +} +/* DEPRECATED: Pre version 8.2.7 verse style literal block. */ +div.verseblock + div.attribution { + text-align: left; +} + +div.admonitionblock .icon { + vertical-align: top; + font-size: 1.1em; + font-weight: bold; + text-decoration: underline; + color: #527bbd; + padding-right: 0.5em; +} +div.admonitionblock td.content { + padding-left: 0.5em; + border-left: 3px solid #dddddd; +} + +div.exampleblock > div.content { + border-left: 3px solid #dddddd; + padding-left: 0.5em; +} + +div.imageblock div.content { padding-left: 0; } +span.image img { border-style: none; } +a.image:visited { color: white; } + +dl { + margin-top: 0.8em; + margin-bottom: 0.8em; +} +dt { + margin-top: 0.5em; + margin-bottom: 0; + font-style: normal; + color: navy; +} +dd > *:first-child { + margin-top: 0.1em; +} + +ul, ol { + list-style-position: outside; +} +ol.arabic { + list-style-type: decimal; +} +ol.loweralpha { + list-style-type: lower-alpha; +} +ol.upperalpha { + list-style-type: upper-alpha; +} +ol.lowerroman { + list-style-type: lower-roman; +} +ol.upperroman { + list-style-type: upper-roman; +} + +div.compact ul, div.compact ol, +div.compact p, div.compact p, +div.compact div, div.compact div { + margin-top: 0.1em; + margin-bottom: 0.1em; +} + +tfoot { + font-weight: bold; +} +td > div.verse { + white-space: pre; +} + +div.hdlist { + margin-top: 0.8em; + margin-bottom: 0.8em; +} +div.hdlist tr { + padding-bottom: 15px; +} +dt.hdlist1.strong, td.hdlist1.strong { + font-weight: bold; +} +td.hdlist1 { + vertical-align: top; + font-style: normal; + padding-right: 0.8em; + color: navy; +} +td.hdlist2 { + vertical-align: top; +} +div.hdlist.compact tr { + margin: 0; + padding-bottom: 0; +} + +.comment { + background: yellow; +} + +.footnote, .footnoteref { + font-size: 0.8em; +} + +span.footnote, span.footnoteref { + vertical-align: super; +} + +#footnotes { + margin: 20px 0 20px 0; + padding: 7px 0 0 0; +} + +#footnotes div.footnote { + margin: 0 0 5px 0; +} + +#footnotes hr { + border: none; + border-top: 1px solid silver; + height: 1px; + text-align: left; + margin-left: 0; + width: 20%; + min-width: 100px; +} + +div.colist td { + padding-right: 0.5em; + padding-bottom: 0.3em; + vertical-align: top; +} +div.colist td img { + margin-top: 0.3em; +} + +@media print { + #footer-badges { display: none; } +} + +#toc { + margin-bottom: 2.5em; +} + +#toctitle { + color: #527bbd; + font-size: 1.1em; + font-weight: bold; + margin-top: 1.0em; + margin-bottom: 0.1em; +} + +div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { + margin-top: 0; + margin-bottom: 0; +} +div.toclevel2 { + margin-left: 2em; + font-size: 0.9em; +} +div.toclevel3 { + margin-left: 4em; + font-size: 0.9em; +} +div.toclevel4 { + margin-left: 6em; + font-size: 0.9em; +} + +span.aqua { color: aqua; } +span.black { color: black; } +span.blue { color: blue; } +span.fuchsia { color: fuchsia; } +span.gray { color: gray; } +span.green { color: green; } +span.lime { color: lime; } +span.maroon { color: maroon; } +span.navy { color: navy; } +span.olive { color: olive; } +span.purple { color: purple; } +span.red { color: red; } +span.silver { color: silver; } +span.teal { color: teal; } +span.white { color: white; } +span.yellow { color: yellow; } + +span.aqua-background { background: aqua; } +span.black-background { background: black; } +span.blue-background { background: blue; } +span.fuchsia-background { background: fuchsia; } +span.gray-background { background: gray; } +span.green-background { background: green; } +span.lime-background { background: lime; } +span.maroon-background { background: maroon; } +span.navy-background { background: navy; } +span.olive-background { background: olive; } +span.purple-background { background: purple; } +span.red-background { background: red; } +span.silver-background { background: silver; } +span.teal-background { background: teal; } +span.white-background { background: white; } +span.yellow-background { background: yellow; } + +span.big { font-size: 2em; } +span.small { font-size: 0.6em; } + +span.underline { text-decoration: underline; } +span.overline { text-decoration: overline; } +span.line-through { text-decoration: line-through; } + + +/* + * xhtml11 specific + * + * */ + +tt { + font-family: monospace; + font-size: inherit; + color: navy; +} + +div.tableblock { + margin-top: 1.0em; + margin-bottom: 1.5em; +} +div.tableblock > table { + border: 3px solid #527bbd; +} +thead, p.table.header { + font-weight: bold; + color: #527bbd; +} +p.table { + margin-top: 0; +} +/* Because the table frame attribute is overriden by CSS in most browsers. */ +div.tableblock > table[frame="void"] { + border-style: none; +} +div.tableblock > table[frame="hsides"] { + border-left-style: none; + border-right-style: none; +} +div.tableblock > table[frame="vsides"] { + border-top-style: none; + border-bottom-style: none; +} + + +/* + * html5 specific + * + * */ + +.monospaced { + font-family: monospace; + font-size: inherit; + color: navy; +} + +table.tableblock { + margin-top: 1.0em; + margin-bottom: 1.5em; +} +thead, p.tableblock.header { + font-weight: bold; + color: #527bbd; +} +p.tableblock { + margin-top: 0; +} +table.tableblock { + border-width: 3px; + border-spacing: 0px; + border-style: solid; + border-color: #527bbd; + border-collapse: collapse; +} +th.tableblock, td.tableblock { + border-width: 1px; + padding: 4px; + border-style: solid; + border-color: #527bbd; +} + +table.tableblock.frame-topbot { + border-left-style: hidden; + border-right-style: hidden; +} +table.tableblock.frame-sides { + border-top-style: hidden; + border-bottom-style: hidden; +} +table.tableblock.frame-none { + border-style: hidden; +} + +th.tableblock.halign-left, td.tableblock.halign-left { + text-align: left; +} +th.tableblock.halign-center, td.tableblock.halign-center { + text-align: center; +} +th.tableblock.halign-right, td.tableblock.halign-right { + text-align: right; +} + +th.tableblock.valign-top, td.tableblock.valign-top { + vertical-align: top; +} +th.tableblock.valign-middle, td.tableblock.valign-middle { + vertical-align: middle; +} +th.tableblock.valign-bottom, td.tableblock.valign-bottom { + vertical-align: bottom; +} + + +/* + * manpage specific + * + * */ + +body.manpage h1 { + padding-top: 0.5em; + padding-bottom: 0.5em; + border-top: 2px solid silver; + border-bottom: 2px solid silver; +} +body.manpage h2 { + border-style: none; +} +body.manpage div.sectionbody { + margin-left: 3em; +} + +@media print { + body.manpage div#toc { display: none; } +} + + +/* + * Theme specific overrides of the preceding (asciidoc.css) CSS. + * + */ +body { + font-family: Garamond, Georgia, serif; + font-size: 17px; + color: #3E4349; + line-height: 1.3em; +} +h1, h2, h3, h4, h5, h6, +div.title, caption.title, +thead, p.table.header, +#toctitle, +#author, #revnumber, #revdate, #revremark, +#footer { + font-family: Garmond, Georgia, serif; + font-weight: normal; + border-bottom-width: 0; + color: #3E4349; +} +div.title, caption.title { color: #596673; font-weight: bold; } +h1 { font-size: 240%; } +h2 { font-size: 180%; } +h3 { font-size: 150%; } +h4 { font-size: 130%; } +h5 { font-size: 115%; } +h6 { font-size: 100%; } +#header h1 { margin-top: 0; } +#toc { + color: #444444; + line-height: 1.5; + padding-top: 1.5em; +} +#toctitle { + font-size: 20px; +} +#toc a { + border-bottom: 1px dotted #999999; + color: #444444 !important; + text-decoration: none !important; +} +#toc a:hover { + border-bottom: 1px solid #6D4100; + color: #6D4100 !important; + text-decoration: none !important; +} +div.toclevel1 { margin-top: 0.2em; font-size: 16px; } +div.toclevel2 { margin-top: 0.15em; font-size: 14px; } +em, dt, td.hdlist1 { color: black; } +strong { color: #3E4349; } +a { color: #004B6B; text-decoration: none; border-bottom: 1px dotted #004B6B; } +a:visited { color: #615FA0; border-bottom: 1px dotted #615FA0; } +a:hover { color: #6D4100; border-bottom: 1px solid #6D4100; } +div.tableblock > table, table.tableblock { border: 3px solid #E8E8E8; } +th.tableblock, td.tableblock { border: 1px solid #E8E8E8; } +ul > li > * { color: #3E4349; } +pre, tt, .monospaced { font-family: Consolas,Menlo,'Deja Vu Sans Mono','Bitstream Vera Sans Mono',monospace; } +tt, .monospaced { font-size: 0.9em; color: black; +} +div.exampleblock > div.content, div.sidebarblock > div.content, div.listingblock > div.content { border-width: 0 0 0 3px; border-color: #E8E8E8; } +div.verseblock { border-left-width: 0; margin-left: 3em; } +div.quoteblock { border-left-width: 3px; margin-left: 0; margin-right: 0;} +div.admonitionblock td.content { border-left: 3px solid #E8E8E8; } + + +@media screen { + body { + max-width: 50em; /* approximately 80 characters wide */ + margin-left: 16em; + } + + #toc { + position: fixed; + top: 0; + left: 0; + bottom: 0; + width: 13em; + padding: 0.5em; + padding-bottom: 1.5em; + margin: 0; + overflow: auto; + border-right: 3px solid #f8f8f8; + background-color: white; + } + + #toc .toclevel1 { + margin-top: 0.5em; + } + + #toc .toclevel2 { + margin-top: 0.25em; + display: list-item; + color: #aaaaaa; + } + + #toctitle { + margin-top: 0.5em; + } +} +</style> +<script type="text/javascript"> +/*<+'])'); + // Function that scans the DOM tree for header elements (the DOM2 + // nodeIterator API would be a better technique but not supported by all + // browsers). + var iterate = function (el) { + for (var i = el.firstChild; i != null; i = i.nextSibling) { + if (i.nodeType == 1 /* Node.ELEMENT_NODE */) { + var mo = re.exec(i.tagName); + if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") { + result[result.length] = new TocEntry(i, getText(i), mo[1]-1); + } + iterate(i); + } + } + } + iterate(el); + return result; + } + + var toc = document.getElementById("toc"); + if (!toc) { + return; + } + + // Delete existing TOC entries in case we're reloading the TOC. + var tocEntriesToRemove = []; + var i; + for (i = 0; i < toc.childNodes.length; i++) { + var entry = toc.childNodes[i]; + if (entry.nodeName.toLowerCase() == 'div' + && entry.getAttribute("class") + && entry.getAttribute("class").match(/^toclevel/)) + tocEntriesToRemove.push(entry); + } + for (i = 0; i < tocEntriesToRemove.length; i++) { + toc.removeChild(tocEntriesToRemove[i]); + } + + // Rebuild TOC entries. + var entries = tocEntries(document.getElementById("content"), toclevels); + for (var i = 0; i < entries.length; ++i) { + var entry = entries[i]; + if (entry.element.id == "") + entry.element.id = "_toc_" + i; + var a = document.createElement("a"); + a.href = "#" + entry.element.id; + a.appendChild(document.createTextNode(entry.text)); + var div = document.createElement("div"); + div.appendChild(a); + div.className = "toclevel" + entry.toclevel; + toc.appendChild(div); + } + if (entries.length == 0) + toc.parentNode.removeChild(toc); +}, + + +///////////////////////////////////////////////////////////////////// +// Footnotes generator +///////////////////////////////////////////////////////////////////// + +/* Based on footnote generation code from: + * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html + */ + +footnotes: function () { + // Delete existing footnote entries in case we're reloading the footnodes. + var i; + var noteholder = document.getElementById("footnotes"); + if (!noteholder) { + return; + } + var entriesToRemove = []; + for (i = 0; i < noteholder.childNodes.length; i++) { + var entry = noteholder.childNodes[i]; + if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote") + entriesToRemove.push(entry); + } + for (i = 0; i < entriesToRemove.length; i++) { + noteholder.removeChild(entriesToRemove[i]); + } + + // Rebuild footnote entries. + var cont = document.getElementById("content"); + var spans = cont.getElementsByTagName("span"); + var refs = {}; + var n = 0; + for (i=0; i<spans.length; i++) { + if (spans[i].className == "footnote") { + n++; + var note = spans[i].getAttribute("data-note"); + if (!note) { + // Use [\s\S] in place of . so multi-line matches work. + // Because JavaScript has no s (dotall) regex flag. + note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1]; + spans[i].innerHTML = + "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n + + "' title='View footnote' class='footnote'>" + n + "</a>]"; + spans[i].setAttribute("data-note", note); + } + noteholder.innerHTML += + "<div class='footnote' id='_footnote_" + n + "'>" + + "<a href='#_footnoteref_" + n + "' title='Return to text'>" + + n + "</a>. " + note + "</div>"; + var id =spans[i].getAttribute("id"); + if (id != null) refs["#"+id] = n; + } + } + if (n == 0) + noteholder.parentNode.removeChild(noteholder); + else { + // Process footnoterefs. + for (i=0; i<spans.length; i++) { + if (spans[i].className == "footnoteref") { + var href = spans[i].getElementsByTagName("a")[0].getAttribute("href"); + href = href.match(/#.*/)[0]; // Because IE return full URL. + n = refs[href]; + spans[i].innerHTML = + "[<a href='#_footnote_" + n + + "' title='View footnote' class='footnote'>" + n + "</a>]"; + } + } + } +}, + +install: function(toclevels) { + var timerId; + + function reinstall() { + asciidoc.footnotes(); + if (toclevels) { + asciidoc.toc(toclevels); + } + } + + function reinstallAndRemoveTimer() { + clearInterval(timerId); + reinstall(); + } + + timerId = setInterval(reinstall, 500); + if (document.addEventListener) + document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false); + else + window.onload = reinstallAndRemoveTimer; +} + +} +asciidoc.install(2); +/*]]>*/ +</script> +</head> +<body class="book"> +<div id="header"> +<h1>Pcbnew</h1> +<span id="author">The KiCad Team</span><br> +<div id="toc"> + <div id="toctitle">Table des matières</div> + <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript> +</div> +</div> +<div id="content"> +<div id="preamble"> +<div class="sectionbody"> +<div class="paragraph"><p><em>Manuel de référence</em></p></div> +<div class="paragraph" id="copyright"><p><strong>Copyright</strong></p></div> +<div class="paragraph"><p>Ce document est la propriété des contributeurs ci-dessous, copyright © +2010-2016. Vous pouvez le distribuer et/ou le modifier selon les termes de +la GNU General Public License (<a href="http://www.gnu.org/licenses/gpl.html">http://www.gnu.org/licenses/gpl.html</a>), +version 3 ou ultérieure ou bien selon la licence Creative Commons +Attribution (<a href="http://creativecommons.org/licenses/by/3.0/">http://creativecommons.org/licenses/by/3.0/</a>), version 3.0 ou +ultérieure.</p></div> +<div class="paragraph"><p>Toutes les marques apparaissant dans ce document appartiennent à leurs +propriétaires respectifs.</p></div> +<div class="paragraph" id="contributors"><p><strong>Contributeurs</strong></p></div> +<div class="paragraph"><p>Jean-Pierre Charras, Fabrizio Tappero, Marc Berlioux.</p></div> +<div class="paragraph" id="translation"><p><strong>Traduction</strong></p></div> +<div class="paragraph"><p>Marc Berlioux <<a href="mailto:marc.berlioux@gmail.com">marc.berlioux@gmail.com</a>>, 2015-2016.</p></div> +<div class="paragraph" id="feedback"><p><strong>Retours</strong></p></div> +<div class="paragraph"><p>Merci de signaler vos corrections de bugs, suggestions ou nouvelles versions +ici :</p></div> +<div class="ulist"><ul> +<li> +<p> +Documentation de KiCad : <a href="https://github.com/KiCad/kicad-doc/issues">https://github.com/KiCad/kicad-doc/issues</a> +</p> +</li> +<li> +<p> +Bugs logiciel KiCad : <a href="https://bugs.launchpad.net/kicad">https://bugs.launchpad.net/kicad</a> +</p> +</li> +<li> +<p> +Traductions de KiCad : <a href="https://github.com/KiCad/kicad-i18n/issues">https://github.com/KiCad/kicad-i18n/issues</a> +</p> +</li> +</ul></div> +<div class="paragraph" id="publication_date_and_software_version"><p><strong>Date de publication et version du logiciel</strong></p></div> +<div class="paragraph"><p>17 mars 2014.</p></div> +</div> +</div> +<div class="sect1"> +<h2 id="_introduction_a_pcbnew">1. Introduction à Pcbnew</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_description">1.1. Description</h3> +<div class="paragraph"><p>Pcbnew est un outil logiciel puissant de création de circuits imprimés +disponible pour les systèmes d’exploitation Linux, Microsoft Windows et +Apple OS X. Pcbnew est utilisé en combinaison avec le programme de saisie de +schéma Eeschema pour créer des circuits imprimés.</p></div> +<div class="paragraph"><p>Pcbnew gère des librairies d’empreintes. Chaque empreinte est le dessin d’un +composant physique, incluant les pastilles qui établissent les connexions +sur le circuit. Les empreintes nécessaires sont automatiquement chargées +lors de la lecture de la Netliste. Toute modification des sélections +d’empreintes ou de l’annotation peut être effectuée dans le schéma et mise à +jour dans Pcbnew par la régénération de la netliste et sa relecture dans +Pcbnew.</p></div> +<div class="paragraph"><p>Pcbnew fournit un outil de vérification des règles de conception (DRC), qui +évite les problèmes de distance entre les pistes ou les pastilles, et qui +évite également les mauvaises ou les non-connexions de lignes +électriques. Lors de l’utilisation du routeur interactif, il vérifie en +permanence les règles de conception et vous aide à tracer automatiquement +des pistes individuelles.</p></div> +<div class="paragraph"><p>Pcbnew fournit un affichage du chevelu, montrant les liaisons des broches +d’empreintes qui sont connectées sur le schéma. Ces connexions suivent +dynamiquement le déplacement des empreintes et le tracé des pistes.</p></div> +<div class="paragraph"><p>Pcbnew a un autorouteur simple mais efficace, pour aider à la production du +circuit imprimé. L’Export/Import au format dsn SPECCTRA lui permet également +l’utilisation d’autres auto-routeurs plus avancés.</p></div> +<div class="paragraph"><p>Pcbnew fournit des fonctions spécifiquement prévues pour la production de +circuits micro-ondes à ultra hautes fréquences (comme les pastilles de +formes trapézoïdales ou complexes, le tracé automatique de bobines sur le +circuit imprimé, etc…).</p></div> +</div> +<div class="sect2"> +<h3 id="_principales_fonctionnalites_de_dessin">1.2. Principales Fonctionnalités de Dessin</h3> +<div class="paragraph"><p>La plus petite unité dans Pcbnew est de 1 nanomètre. Toutes les dimensions +sont stockées sous forme de nanomètres.</p></div> +<div class="paragraph"><p>Pcbnew peut générer jusqu'à 32 couches de cuivre, 14 couches techniques +(sérigraphies, masques de soudure, adhésif de composant, pâte à souder et +découpes des contours), plus 4 couches auxiliaires (dessins ou +commentaires), et il gère en temps réel l’affichage du chevelu des pistes +manquantes (rats nest).</p></div> +<div class="paragraph"><p>L’affichage des éléments du PCB (pistes, pastilles, textes, dessins …) est +personnalisable :</p></div> +<div class="ulist"><ul> +<li> +<p> +En mode plein ou en mode contour. +</p> +</li> +<li> +<p> +Avec ou sans le bon espacement des pistes. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Sur des circuits complexes, on peut choisir de cacher des couches, des zones +ou les composants pour plus de clarté à l'écran. Les pistes peuvent aussi +être mises en surbrillance pour fournir un contraste élevé.</p></div> +<div class="paragraph"><p>Les empreintes peut être orientées sous n’importe quel angle, avec une +résolution de 0.1 degré.</p></div> +<div class="paragraph"><p>Pcbnew inclut un éditeur d’empreintes qui permet d'éditer individuellement +les empreintes d’un PCB ou celles d’une librairie.</p></div> +<div class="paragraph"><p>L'éditeur d’empreinte apporte plusieurs outils permettant de gagner du temps +:</p></div> +<div class="ulist"><ul> +<li> +<p> +La numérotation rapide des pastilles, en faisant simplement glisser la + souris au dessus de celles-ci dans l’ordre de la numérotation que vous + désirez. +</p> +</li> +<li> +<p> +La génération aisée de réseaux rectangulaires ou circulaires de pastilles, + pour les empreintes comme les LGA/BGA ou les empreintes circulaires. +</p> +</li> +<li> +<p> +L’alignement semi-automatique de rangées ou de colonnes de pastilles. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Les pastilles d’empreintes ont un ensemble de propriétés ajustables. Les +pastilles peuvent être rondes, rectangulaires, ovales ou trapézoïdales. Pour +les composants traversants, les perçages peuvent être décalés à l’intérieur +des pastilles et être de forme ronde ou en forme de rainure. Les pastilles +individuelles peuvent aussi être orientées et avoir des masques de soudure, +de net, ou de pâte propres. Les pastilles peuvent également avoir une +connexion pleine ou une connexion thermique pour faciliter la +fabrication. Toute combinaison de pastilles individuelles peut être placée à +l’intérieur d’une empreinte.</p></div> +<div class="paragraph"><p>Pcbnew génère de façon aisée les fichiers nécessaires à la production :</p></div> +<div class="ulist"><ul> +<li> +<p> +Fichiers de fabrication : +</p> +<div class="ulist"><ul> +<li> +<p> +Fichiers pour les phototraçeurs au format GERBER RS274X. +</p> +</li> +<li> +<p> +Fichiers de perçage au format EXCELLON. +</p> +</li> +</ul></div> +</li> +<li> +<p> +Fichier de tracé aux formats HPGL, SVG, DXF. +</p> +</li> +<li> +<p> +Fichiers de tracé et de perçage au format POSTSCRIPT. +</p> +</li> +<li> +<p> +Impressions locales. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_remarques_generales">1.3. Remarques générales</h3> +<div class="paragraph"><p>Du fait du grand besoin de précision et de contrôle nécessaire, il est +grandement suggéré d’utiliser une souris 3 boutons dans Pcbnew. Beaucoup de +fonctions, comme les déplacements, le zoom, etc.. requièrent une souris 3 +boutons.</p></div> +<div class="paragraph"><p>Dans cette nouvelle version de KiCad, Pcbnew a vu des changements radicaux +apportés par les développeurs du CERN. Ceci inclut des fonctionnalités +telles qu’un nouveau moteur de rendu (modes OpenGL et Cairo), un routeur +interactif "push and shove", le routage et l’ajustage des tracés +différentiels et des méandres, un éditeur d’empreinte retravaillé, et +beaucoup d’autres fonctions. Veuillez noter que la plupart de ces nouvelles +fonctionnalités existent <strong>uniquement</strong> dans les nouveaux modes d’affichage +OpenGL et Cairo.</p></div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_installation">2. Installation</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_installation_du_logiciel">2.1. Installation du logiciel</h3> +<div class="paragraph"><p>L’installation est décrite dans la documentation de KiCad.</p></div> +</div> +<div class="sect2"> +<h3 id="_modification_de_la_configuration_par_defaut">2.2. Modification de la configuration par défaut</h3> +<div class="paragraph"><p>Un fichier de configuration par défaut <span class="monospaced">kicad.pro</span> est fourni dans +<span class="monospaced">kicad/share/template</span>. Ce fichier est utilisé comme configuration initiale +de tous les nouveaux projets.</p></div> +<div class="paragraph"><p>Ce fichier peut être modifié pour configurer les librairies à charger.</p></div> +<div class="paragraph"><p>Pour ce faire :</p></div> +<div class="ulist"><ul> +<li> +<p> +Launch Pcbnew using kicad or directly. On Windows it is in + <span class="monospaced">C:\kicad\bin\pcbnew.exe</span> and on Linux you can run + <span class="monospaced">/usr/local/kicad/bin/kicad</span> or <span class="monospaced">/usr/local/kicad/bin/pcbnew</span> if the + binaries are located in <span class="monospaced">/usr/local/kicad/bin</span>. +</p> +</li> +<li> +<p> +Sélectionnez Préférences - Librairies et Dossiers. +</p> +</li> +<li> +<p> +Modifiez à votre convenance. +</p> +</li> +<li> +<p> +Sauvegardez la configuration modifiée (Sauver Préférences) vers + <span class="monospaced">kicad/share/template/kicad.pro</span>. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_gestion_des_librairies_d_8217_empreintes_anciennes_versions">2.3. Gestion des Librairies d’Empreintes : anciennes versions</h3> +<div class="paragraph"><p>Vous avez accès à la liste des librairies initiales à partir du menu +Préférences :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Library_list_menu_item.png" alt="images/Library_list_menu_item.png"> +</div> +</div> +<div class="paragraph"><p>L’image ci-dessous montre la fenêtre qui permet de paramétrer la liste des +librairies :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Footprint_library_list.png" alt="images/Footprint_library_list.png"> +</div> +</div> +<div class="paragraph"><p>Vous pouvez l’utiliser pour ajouter toutes les librairies contenant les +empreintes nécessaires à votre projet. Vous devez également supprimer les +librairies inutilisées des nouveaux projets, pour éviter des problèmes avec +les noms d’empreintes. Il faut noter qu’il y a un problème avec la liste des +librairies d’empreintes lorsque des noms d’empreintes en double existent +dans plus d’une librairie. Dans ce cas là, l’empreinte sera chargée à partir +de la première librairie trouvée dans la liste. Si ce problème survient +(vous ne pouvez pas charger l’empreinte désirée), il convient de modifier +l’ordre de la liste des librairies en utilisant les boutons "Monter" et +"Descendre" dans la fenêtre ci-dessus, ou de donner à l’empreinte un nom +unique en utilisant l'éditeur d’empreintes.</p></div> +</div> +<div class="sect2"> +<h3 id="_gestion_des_librairies_d_8217_empreintes_depots_pretty">2.4. Gestion des Librairies d’Empreintes : dépôts .pretty</h3> +<div class="paragraph"><p>À partir de la version 4.0, Pcbnew utilise une nouvelle implémentation de +table de librairies pour gérer les librairies d’empreintes. Les informations +données dans la section précédentes ne sont donc plus valides. On accède au +gestionnaire des librairies d’empreintes par :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Library_tables_menu_item.png" alt="images/Library_tables_menu_item.png"> +</div> +</div> +<div class="paragraph"><p>L’image ci-dessous montre la fenêtre d'édition de la table des librairies +d’empreintes qui s’ouvre par le menu "Préférences", "Gestionnaire des +Librairies d’Empreintes".</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Footprint_tables_list.png" alt="images/Footprint_tables_list.png"> +</div> +</div> +<div class="paragraph"><p>La table des librairies d’empreintes est utilisée pour attribuer un +pseudonyme à chaque librairie d’empreintes, de chaque type supporté. Ce +pseudo sera utilisé pour rechercher des empreintes, en remplacement de la +méthode précédente, qui ordonnait les librairies par leur chemin. Ceci +permet à Pcbnew d’accéder à des empreintes ayant le même nom dans +différentes librairies, en s’assurant que ce soit l’empreinte correcte qui +est chargée à partir de la librairie appropriée. Il permet également à +Pcbnew d’utiliser des librairies provenant d’autres logiciels de PCB tels +que Eagle ou GEDA.</p></div> +<div class="sect3"> +<h4 id="_table_des_librairies_globales">2.4.1. Table des Librairies Globales</h4> +<div class="paragraph"><p>La table des librairies globales d’empreintes contient la liste des +librairies qui sont toujours disponibles, quel que soit le fichier de projet +actuellement chargé. La table est enregistrée dans un fichier <span class="monospaced">fp-lib-table</span> +dans le dossier personnel de l’utilisateur. L’emplacement de ce dossier +dépend du système d’exploitation utilisé.</p></div> +</div> +<div class="sect3"> +<h4 id="_table_des_librairies_specifiques_au_projet">2.4.2. Table des Librairies Spécifiques au Projet</h4> +<div class="paragraph"><p>La table des librairies spécifiques au projet contient la liste des +librairies d’empreintes qui sont disponibles spécifiquement pour le projet +actuellement chargé. Cette table ne peut être modifiée que quand elle est +chargée en même temps que le fichier de circuit imprimé du projet. Si aucun +fichier n’est chargé, ou s’il n’y a pas de fichier de table de librairies +d’empreintes dans le dossier du projet, une table vide sera créée, et pourra +être éditée et enregistrée plus tard, avec le fichier d’affectation des +empreintes.</p></div> +</div> +<div class="sect3"> +<h4 id="_configuration_initiale">2.4.3. Configuration Initiale</h4> +<div class="paragraph"><p>Quand PcbNew ou CvPcb sont lancés pour la première fois, et que le fichier +table des librairies d’empreintes globales <strong>fp-lib-table</strong> n’a pas été trouvé +dans le dossier personnel de l’utilisateur, ils tenteront de copier le +fichier fp-lib-table par défaut, du dossier système KiCad / template dans le +dossier personnel de l’utilisateur. Si le fichier fp-lib-table ne peut être +trouvé, une table de librairies d’empreintes vide sera créée dans le dossier +personnel de l’utilisateur. Dans ce cas, l’utilisateur pourra copier +fp-lib-table manuellement, ou configurer la table à la main. La table des +librairies d’empreintes par défaut inclut toutes les librairies d’empreintes +standards, qui sont installées en même temps que KiCad.</p></div> +</div> +<div class="sect3"> +<h4 id="_ajouter_des_entrees_dans_la_table">2.4.4. Ajouter des Entrées dans la Table</h4> +<div class="paragraph"><p>Pour utiliser une librairie d’empreintes, elle doit d’abord être ajoutée à +l’une ou l’autre des tables, globale ou spécifique au projet. La table +spécifique au projet est utilisable uniquement lorsque vous avez un fichier +circuit ouvert. Chaque entrée de la table doit avoir un pseudo unique. Ce +pseudo n’a pas besoin d'être lié au nom réel du fichier ou au chemin de la +librairie. Le caractère <span class="monospaced">:</span> ne peut pas être utilisé dans le pseudo. Chaque +entrée de librairie doit avoir un chemin d’accès et/ou un nom de fichier +valides, suivant le type de librairie. Les chemins peuvent être définis +comme absolus, relatifs, ou par la substitution d’une variable +d’environnement. Le plugin approprié doit être sélectionné pour que la +librairie soit lue correctement. Pcbnew prend actuellement en charge en +lecture les librairies d’empreintes : anciennes KiCad, nouvelles KiCad +Pretty, Eagle, et GEDA. Il y a aussi un champ description pour ajouter une +description de l’entrée de librairie. Le champ option n’est pas utilisé pour +l’instant, donc les options ajoutées n’auront aucun effet lors du chargement +des librairies. Veuillez noter que vous ne pouvez pas avoir des pseudos de +librairies en double dans la même table. Cependant, vous pouvez avoir des +surnoms de librairies en double dans les deux tables globale et spécifique +au projet. L’entrée d’une table spécifique au projet aura préséance sur +celle de la table globale dans le cas de noms dupliqués. Lorsque des entrées +sont définies dans la table spécifique au projet, un fichier fp-lib-table +contenant les entrées sera écrit dans le dossier du fichier netliste +actuellement ouvert.</p></div> +</div> +<div class="sect3"> +<h4 id="_substitution_d_8217_une_variable_d_8217_environnement">2.4.5. Substitution d’une Variable d’Environnement</h4> +<div class="paragraph"><p>Une des fonctionnalités les plus puissantes de la table des librairies +d’empreintes est la substitution de variables d’environnement. Ceci permet +d’avoir des chemins personnalisés dans des variables d’environnement, pour +définir où vos librairies sont stockées. La substitution de variables +d’environnement est supportée en utilisant la syntaxe <span class="monospaced">${ENV_VAR_NAME}</span> +dans le chemin de la librairie d’empreintes. Par défaut, au lancement, +Pcbnew définit la variable d’environnement <span class="monospaced">$KISYSMOD</span>. Celle-ci pointe vers +le dossier où ont été installées les librairies fournies avec KiCad. Vous +pouvez redéfinir <span class="monospaced">$KISYSMOD</span>, ce qui vous permet de remplacer les librairies +d’empreintes par défaut de KiCad par vos propres librairies. Quand un +fichier de PCB est chargé, Pcbnew définit aussi <span class="monospaced">$KIPRJMOD</span> en utilisant le +chemin du fichier du circuit. Cela vous permet de stocker des librairies +dans le dossier du projet, sans avoir à définir leur chemin absolu dans la +table des librairies spécifiques au projet.</p></div> +</div> +<div class="sect3"> +<h4 id="_utilisation_du_plugin_github">2.4.6. Utilisation du Plugin GitHub</h4> +<div class="paragraph"><p>Le plugin GitHub est un plugin spécial, qui fournit un interface d’accès en +lecture seule à un dépôt GitHub distant, constitué de librairies +d’empreintes au format pretty (le nom du format de fichier d’empreinte de +KiCad) et fournit accessoirement un support «Copy On Write» (COW) +permettant d'éditer des empreintes lues à partir du dépôt GitHub, et de les +enregistrer localement. Par conséquent, le "plugin GitHub" est <strong>pour l’accès +à distance et en lecture seule des librairies d’empreintes au format pretty</strong> +depuis <a href="https://github.com">https://github.com</a>. Pour ajouter une entrée GitHub à la table des +librairies d’empreintes, le champ «Chemin Librairie» de l’entrée dans la +table doit pointer vers une URL GitHub valide.</p></div> +<div class="paragraph"><p>Par exemple :</p></div> +<div class="literalblock"> +<div class="content monospaced"> +<pre>https://github.com/liftoff-sr/pretty_footprints</pre> +</div></div> +<div class="paragraph"><p>Typiquement, les URL GitHub ont cette forme :</p></div> +<div class="literalblock"> +<div class="content monospaced"> +<pre>https://github.com/nom_utilisateur/nom_dépot</pre> +</div></div> +<div class="paragraph"><p>Le "Type de Plugin" doit être réglé sur "Github". Pour activer le "Copy On +Write", une option <span class="monospaced">allow_pretty_writing_to_this_dir</span> doit être ajoutée dans +le champ "Options" de l’entrée. Cette option donne le "Chemin de Librairie" +pour le stockage local des empreintes modifiées, lues depuis le dépôt +GitHub. Les empreintes enregistrées dans ce chemin sont combinées avec la +partie en lecture seule du dépôt GitHub pour créer la librairie +d’empreinte. Si cette option est manquante, alors la librairie GitHub est en +lecture uniquement. Si l’option est présente pour une librairie GitHub, +alors toute écriture vers cette librairie hybride se fera dans le répertoire +<span class="monospaced">*.pretty</span> local. Notez que la partie résidant sur github.com de cette +librairie COW hybride est toujours en lecture seule, ce qui signifie que +vous ne pouvez pas modifier ou supprimer quelque empreinte que ce soit +directement dans le dépôt GitHub. Le type de ces librairies hybrides restera +«GitHub» dans les paragraphes à venir, mais il se compose à la fois de la +portion locale en lecture/écriture et de la portion distante en lecture +seule.</p></div> +<div class="paragraph"><p>Le tableau ci-dessous montre une entrée de table de librairies d’empreintes +sans option <span class="monospaced">allow_pretty_writing_to_this_dir</span> :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:20%;"> +<col style="width:20%;"> +<col style="width:20%;"> +<col style="width:20%;"> +<col style="width:20%;"> +<thead> +<tr> +<th class="tableblock halign-left valign-top" >Pseudo nom</th> +<th class="tableblock halign-left valign-top" >Chemin Librairie </th> +<th class="tableblock halign-left valign-top" >Type de Plugin </th> +<th class="tableblock halign-left valign-top" >Options </th> +<th class="tableblock halign-left valign-top" >Description.</th> +</tr> +</thead> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">github</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><a href="https://github.com/liftoff-sr/pretty_footprints">https://github.com/liftoff-sr/pretty_footprints</a></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Github</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock"></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Empreintes Liftoff’s GH</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"><p>Le tableau ci-dessous montre une entrée de table de librairies d’empreintes +avec une option COW. Notez, pour exemple seulement, l’utilisation de la +variable d’environnement <span class="monospaced">${HOME}</span>. Le dossier github.pretty est situé dans +le chemin <span class="monospaced">${HOME}/pretty/</span>. Chaque fois que vous utilisez l’option +<span class="monospaced">allow_pretty_writing_to_this_dir</span>, vous devez créer ce dossier manuellement +au préalable, et il doit se terminer par l’extension <span class="monospaced">.pretty</span>.</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:20%;"> +<col style="width:20%;"> +<col style="width:20%;"> +<col style="width:20%;"> +<col style="width:20%;"> +<thead> +<tr> +<th class="tableblock halign-left valign-top" >Pseudo nom</th> +<th class="tableblock halign-left valign-top" >Chemin Librairie </th> +<th class="tableblock halign-left valign-top" >Type de Plugin </th> +<th class="tableblock halign-left valign-top" >Options </th> +<th class="tableblock halign-left valign-top" >Description.</th> +</tr> +</thead> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">github</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><a href="https://github.com/liftoff-sr/pretty_footprints">https://github.com/liftoff-sr/pretty_footprints</a></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Github</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">allow_pretty_writing_to_this_dir=${HOME}/pretty/github.pretty</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Empreintes Liftoff’s GH</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"><p>Le chargement des empreintes donnera toujours la priorité aux empreintes +locales trouvées dans le chemin donné par l’option +<span class="monospaced">allow_pretty_writing_to_this_dir</span>. Une fois que vous avez enregistré une +empreinte dans le dossier local de la librairie COW avec l'éditeur de +l’empreinte, aucune empreinte GitHub mise à jour ne sera visible lorsque +vous chargerez une empreinte avec le même nom qu’une empreinte enregistrée +localement.</p></div> +<div class="paragraph"><p>Ayez toujours un dossier local *.pretty distinct pour chaque librairie +GitHub, et ne les combinez jamais en vous référant plus d’une fois au même +dossier. Également, n’utilisez pas le même dossier COW (<span class="monospaced">*.pretty</span>) dans une +entrée de table de librairies d’empreintes. Ça pourrait foutre le bordel. La +valeur de l’option <span class="monospaced">allow_pretty_writing_to_this_dir</span> substituera toute +variable d’environnement utilisant la notation <span class="monospaced">${}</span> pour désigner le +chemin, de la même façon que pour le champ "Chemin Librairie".</p></div> +<div class="paragraph"><p>Quelle est la finalité du système COW ? Il est là pour booster le partage +des empreintes. Si vous envoyez périodiquement vos modifications +d’empreintes pretty COW au mainteneur du dépôt GitHub, vous aiderez à mettre +à jour la copie GitHub. Envoyez simplement les fichiers individuels +<span class="monospaced">*.kicad_mod</span> que vous aurez dans vos dossiers COW au mainteneur du dépôt +GitHub. Une fois que vous aurez reçu la confirmation que vos modifications +ont été validées, vous pourrez supprimer en toute sécurité vos fichiers COW, +et l’empreinte mise à jour de la librairie GitHub la remplacera. Votre +objectif doit être de garder le dossier COW local aussi petit que possible +en contribuant souvent aux copies maîtresses partagées sur +<a href="https://github.com">https://github.com</a>.</p></div> +<div class="paragraph"><p>Enfin, Nginx peut être utilisé comme cache du serveur github pour accélérer +le chargement des empreintes. Il peut être installé localement ou sur un +serveur réseau. Il y a un exemple de configuration dans les sources de KiCad +: pcbnew/github/nginx.conf. La façon la plus directe mettre ceci en marche +est d'écraser le fichier nginx.conf par défaut avec celui-ci, et <span class="monospaced">export +KIGITHUB=http://my_server:54321/KiCad</span>, où <span class="monospaced">my_server</span> est l’adresse IP ou +le nom de domaine de la machine faisant tourner le serveur nginx.</p></div> +</div> +<div class="sect3"> +<h4 id="_scenarios_d_8217_utilisation">2.4.7. Scénarios d’Utilisation</h4> +<div class="paragraph"><p>Les librairies d’empreintes peuvent être définies comme globales, ou +spécifiques au projet courant. Les librairies d’empreintes définies dans la +table globale de l’utilisateur sont toujours disponibles, et sont décrites +dans le fichier <span class="monospaced">fp-lib-table</span> du dossier personnel de l’utilisateur. Les +librairies d’empreintes globales sont toujours accessibles, même s’il n’y a +pas de fichier netliste ouvert. La table des librairies spécifiques au +projet n’est active que pour le fichier netliste courant ouvert. La table +des librairies spécifiques au projet est enregistrée dans le fichier +fp-lib-table, dans le chemin du fichier netliste actuellement ouvert. Vous +êtes libres de définir des librairies dans chaque table.</p></div> +<div class="paragraph"><p>Chaque méthode présente des avantages et des inconvénients.</p></div> +<div class="ulist"><ul> +<li> +<p> +Vous pouvez définir toutes vos librairies dans la table globale, ce qui + signifie qu’elles seront toujours disponibles quand vous en aurez besoin. +</p> +<div class="ulist"><ul> +<li> +<p> +L’inconvénient, c’est que vous devrez parfois parcourir beaucoup + de librairies pour trouver l’empreinte que vous cherchez. +</p> +</li> +</ul></div> +</li> +<li> +<p> +Vous pouvez aussi définir toutes vos librairies sur une base spécifique par + projet. +</p> +<div class="ulist"><ul> +<li> +<p> +L’avantage, c’est que vous aurez uniquement à définir les librairies + nécessaires pour le projet, ce qui réduit la recherche. +</p> +</li> +<li> +<p> +L’inconvénient c’est que vous devrez toujours vous rappeler d’ajouter chaque librairie d’empreintes dont vous avez besoin, pour chaque projet. +</p> +</li> +</ul></div> +</li> +<li> +<p> +Vous pouvez aussi définir à la fois des librairies d’empreintes globales, et + des librairies spécifiques au projet. +</p> +</li> +</ul></div> +<div class="paragraph"><p>One usage pattern would be to define your most commonly used libraries +globally and the library only required for the project in the project +specific library table. There is no restriction on how you define your +libraries.</p></div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_operations_generales">3. Opérations Générales</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_barres_d_8217_outils_et_commandes">3.1. Barres d’Outils et Commandes</h3> +<div class="paragraph"><p>Dans Pcbnew, il est possible d’exécuter des commandes de plusieurs façons :</p></div> +<div class="ulist"><ul> +<li> +<p> +Menus textes situés au sommet de la fenêtre principale. +</p> +</li> +<li> +<p> +Barre d’outils supérieure. +</p> +</li> +<li> +<p> +Barre d’outils latérale droite. +</p> +</li> +<li> +<p> +Barre d’outils latérale gauche. +</p> +</li> +<li> +<p> +Boutons de la souris (options de menu). Plus particulièrement : +</p> +<div class="ulist"><ul> +<li> +<p> +Le bouton droit de la souris affiche un menu contextuel dont le contenu + dépend de l'élément sous le curseur de la souris. +</p> +</li> +</ul></div> +</li> +<li> +<p> +Clavier (Touches de fonctions <span class="monospaced">F1</span>, <span class="monospaced">F2</span>, <span class="monospaced">F3</span>, <span class="monospaced">F4</span>, <span class="monospaced">Shift</span>, <span class="monospaced">Suppr/Del</span>, + <span class="monospaced">+</span>, <span class="monospaced">-</span>, <span class="monospaced">Page Haut</span>, <span class="monospaced">Page Bas</span> et <span class="monospaced">Barre d'espace</span>). La touche <span class="monospaced">Echap</span> + annule généralement l’opération en cours. +</p> +</li> +</ul></div> +<div class="paragraph"><p>L’image ci-dessous montre certains moyens d’accéder à ces opérations :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Right-click_legacy_menu.png" alt="images/Right-click_legacy_menu.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_commandes_a_la_souris">3.2. Commandes à la souris</h3> +<div class="sect3"> +<h4 id="_commandes_de_base">3.2.1. Commandes de base</h4> +<div class="ulist"><ul> +<li> +<p> +Bouton gauche +</p> +<div class="ulist"><ul> +<li> +<p> +Un simple clic affiche les caractéristiques de l’empreinte, ou du texte + sous le curseur, dans la barre d'état du bas. +</p> +</li> +<li> +<p> +Un double-clic affiche la fenêtre d'édition de l'élément sous le curseur + (si l'élément est éditable). +</p> +</li> +</ul></div> +</li> +<li> +<p> +Molette de la souris +</p> +<div class="ulist"><ul> +<li> +<p> +Zoom rapide, et certaines commandes dans le gestionnaire de couches. +</p> +</li> +<li> +<p> +Bouton du milieu enfoncé et dessin d’un rectangle pour zoomer sur la + zone décrite. La rotation de la molette permet le zoom avant-arrière. +</p> +</li> +</ul></div> +</li> +<li> +<p> +Bouton droit +</p> +<div class="ulist"><ul> +<li> +<p> +Affiche le menu contextuel. +</p> +</li> +</ul></div> +</li> +</ul></div> +</div> +<div class="sect3"> +<h4 id="_operations_sur_les_blocs">3.2.2. Opérations sur les blocs</h4> +<div class="paragraph"><p>Les opérations de déplacement, inversion (miroir), copie, rotation et +suppression de blocs sont toutes disponibles via le menu contextuel. On peut +également zoomer sur la zone décrite par le bloc.</p></div> +<div class="paragraph"><p>Le cadre du bloc est tracé en déplaçant la souris tout en maintenant le +bouton gauche enfoncé. L’opération est exécutée lorsque le bouton est +relâché.</p></div> +<div class="paragraph"><p>En maintenant une des touches <span class="monospaced">Shift</span> ou <span class="monospaced">Ctrl</span>, ou <span class="monospaced">Shift</span> et <span class="monospaced">Ctrl</span> +ensemble, pendant le tracé du bloc, les fonctions inverser, tourner, ou +supprimer sont automatiquement sélectionnées comme indiqué dans le tableau +ci-dessous :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:50%;"> +<col style="width:50%;"> +<thead> +<tr> +<th class="tableblock halign-left valign-top" > Action </th> +<th class="tableblock halign-left valign-top" > Effet</th> +</tr> +</thead> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Bouton gauche de la souris enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Trace le cadre pour déplacement du bloc</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Shift</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Trace le cadre pour inversion du bloc</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Ctrl</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Trace le cadre pour rotation du bloc de 90°</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Shift</span> + <span class="monospaced">Ctrl</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Trace le cadre pour suppression du bloc</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Bouton central de la souris enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Trace le cadre pour zoom sur le bloc</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"><p>Lors du déplacement d’un bloc :</p></div> +<div class="ulist"><ul> +<li> +<p> +Déplacer le bloc à sa nouvelle position et cliquer du bouton gauche pour + déposer les éléments. +</p> +</li> +<li> +<p> +Pour annuler l’opération, utilisez le bouton droit et choisissez <span class="monospaced">Annuler + bloc</span> dans le menu (ou appuyez sur la touche <span class="monospaced">Echap</span>). +</p> +</li> +</ul></div> +<div class="paragraph"><p>Autrement, si aucune touche du clavier n’est enfoncé lors du tracé du bloc, +utilisez le bouton droit pour afficher le menu contextuel et choisissez +l’opération désirée.</p></div> +<div class="paragraph"><p>Pour chaque opération sur un bloc, une fenêtre de sélection permet de +limiter l’action à certains éléments.</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_selection_de_la_taille_de_grille">3.3. Sélection de la taille de grille</h3> +<div class="paragraph"><p>Pendant la mise en place des éléments, le curseur se déplace sur une +grille. La grille peut être activée ou désactivée à l’aide d’une icône de la +barre d’outils de gauche.</p></div> +<div class="paragraph"><p>Chacune des tailles de grille prédéfinies, ou une taille de grille définie +par l’utilisateur, peuvent être choisies à l’aide du menu contextuel, ou par +le menu déroulant de la barre d’outils du haut. La définition d’une taille +de grille par l’utilisateur se fait en utilisant le menu Dimensions → +Grille.</p></div> +</div> +<div class="sect2"> +<h3 id="_reglage_du_niveau_de_zoom">3.4. Réglage du niveau de zoom</h3> +<div class="paragraph"><p>Le niveau de zoom peut être changé par les méthodes suivantes :</p></div> +<div class="ulist"><ul> +<li> +<p> +Ouvrir le menu contextuel (bouton droit de la souris), et sélectionner le + niveau de zoom désiré. +</p> +</li> +<li> +<p> +Utiliser les touches de fonctions suivantes : +</p> +<div class="ulist"><ul> +<li> +<p> +<span class="monospaced">F1</span> : Agrandir (zoom avant) +</p> +</li> +<li> +<p> +<span class="monospaced">F2</span> : Réduire (zoom arrière) +</p> +</li> +<li> +<p> +<span class="monospaced">F3</span> : Raffraîchir l’affichage +</p> +</li> +<li> +<p> +<span class="monospaced">F4</span> : Centrer la vue sur la position du curseur +</p> +</li> +</ul></div> +</li> +<li> +<p> +Tourner la molette de la souris. +</p> +</li> +<li> +<p> +Tracer un rectangle avec le bouton du milieu de la souris enfoncé pour + zoomer sur la zone délimitée. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_affichage_des_coordonnees_du_curseur">3.5. Affichage des coordonnées du curseur</h3> +<div class="paragraph"><p>Les coordonnées du curseur sont affichées en inches ou en millimètres, +suivant la sélection faite par les icônes <span class="monospaced">In</span> ou <span class="monospaced">mm</span> de la barre d’outils +de gauche.</p></div> +<div class="paragraph"><p>Quelle que soit l’unité sélectionnée, Pcbnew travaille toujours avec une +précision de 1/10000 d’inch.</p></div> +<div class="paragraph"><p>La barre d'état au bas de la fenêtre affiche :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le niveau de zoom actuel. +</p> +</li> +<li> +<p> +La position absolue du curseur. +</p> +</li> +<li> +<p> +La position relative du curseur (dx,dy). Notez que l’origine des coordonnées + relatives du curseur peut être remis à zéro (0,0) à n’importe quelle + position en appuyant sur la barre d’espace. La position relative du curseur + est ensuite affichée en fonction du nouvel origine. +</p> +</li> +</ul></div> +<div class="paragraph"><p>De plus, la position relative du curseur peut être affichée en utilisant des +coordonnées polaires (angle + rayon). Ceci peut être activé ou désactivé par +une icône de la barre d’outils de gauche.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_coordinate_status_display.png" alt="images/Pcbnew_coordinate_status_display.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_commandes_au_clavier_raccourcis">3.6. Commandes au Clavier - Raccourcis</h3> +<div class="paragraph"><p>Beaucoup de commandes sont accessibles directement par le clavier, +majuscules ou minuscules. La plupart des raccourcis sont affichés dans les +menus. Certains n’apparaissant pas sont :</p></div> +<div class="ulist"><ul> +<li> +<p> +<span class="monospaced">Delete</span>: deletes a footprint or a track. (<em>Available only if the Footprint + mode or the Track mode is active</em>) +</p> +</li> +<li> +<p> +<span class="monospaced">V</span> : si l’outil Piste est actif, change de couche, ou place une via quand + un tracé de piste est en cours. +</p> +</li> +<li> +<p> +<span class="monospaced">+</span> et <span class="monospaced">-</span> : sélectionne la couche suivante ou précédente. +</p> +</li> +<li> +<p> +<span class="monospaced">?</span>: display the list of all hot keys. +</p> +</li> +<li> +<p> +<span class="monospaced">Espace</span> : remet à zéro l’origine des coordonnées relatives. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_operations_sur_les_blocs_2">3.7. Opérations sur les blocs</h3> +<div class="paragraph"><p>Les opérations de déplacement, inversion (miroir), copie, rotation et +suppression de blocs sont toutes disponibles via le menu contextuel. On peut +également zoomer sur la zone décrite par le bloc.</p></div> +<div class="paragraph"><p>Le cadre du bloc est tracé en déplaçant la souris tout en maintenant le +bouton gauche enfoncé. L’opération est exécutée lorsque le bouton est +relâché.</p></div> +<div class="paragraph"><p>En maintenant une des touches <span class="monospaced">Shift</span> ou <span class="monospaced">Ctrl</span>, ou <span class="monospaced">Shift</span> et <span class="monospaced">Ctrl</span> +ensemble, ou <span class="monospaced">Alt,</span> pendant le tracé du bloc, les fonctions inverser, +tourner, supprimer ou copier sont automatiquement sélectionnées comme +indiqué dans le tableau ci-dessous :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:50%;"> +<col style="width:50%;"> +<thead> +<tr> +<th class="tableblock halign-left valign-top" > Action </th> +<th class="tableblock halign-left valign-top" > Effet</th> +</tr> +</thead> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Bouton gauche de la souris enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Déplacement du bloc</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Shift</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Inversion du bloc</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Ctrl</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Rotation du bloc de 90°</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Shift</span> + <span class="monospaced">Ctrl</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Suppression du bloc</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="monospaced">Alt</span> + Bouton gauche enfoncé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Copie du bloc</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"><p>Quand une opération est faite sur un bloc, une fenêtre de sélection +apparaît, qui permet de choisir les éléments concernés par l’action.</p></div> +<div class="paragraph"><p>Toutes les commandes ci-dessus peuvent être annulées par cette fenêtre, ou +en appuyant sur la touche <span class="monospaced">Echap</span>.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_legacy_block_selection_dialog.png" alt="images/Pcbnew_legacy_block_selection_dialog.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_unites_utilisees_dans_les_fenetres">3.8. Unités utilisées dans les fenêtres</h3> +<div class="paragraph"><p>Les unités utilisées pour afficher les dimensions sont en pouces (inches) et +en mm. L’unité souhaitée est sélectionnée en cliquant sur une des icônes de +la barre d’outils de gauche : <span class="image"> +<img src="images/icons/unit_inch.png" alt="images/icons/unit_inch.png"> +</span> +<span class="image"> +<img src="images/icons/unit_mm.png" alt="images/icons/unit_mm.png"> +</span>. Mais on peut aussi entrer l’unité utilisée +pour définir une valeur, lors de la saisie d’une nouvelle valeur.</p></div> +<div class="paragraph"><p>Les unités acceptées sont :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:50%;"> +<col style="width:50%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">1 <strong>in</strong></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">1 pouce (inch)</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">1 <strong>"</strong></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">1 pouce (inch)</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">25 <strong>th</strong></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">25 thou (millième de pouce)</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">25 <strong>mi</strong></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">25 mils (identique au thou)</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">6 <strong>mm</strong></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">6 mm</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"><p>Les règles sont :</p></div> +<div class="ulist"><ul> +<li> +<p> +Les espaces entre nombre et unités sont autorisés. +</p> +</li> +<li> +<p> +Seules les deux premières lettres sont significatives. +</p> +</li> +<li> +<p> +Pour les pays utilisant un autre séparateur décimal que la virgule, le point + (<span class="monospaced">.</span>) peut également être utilisé. Ainsi <span class="monospaced">1,5</span> et <span class="monospaced">1.5</span> seront identiques + pour les français. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_barre_de_menus">3.9. Barre de menus</h3> +<div class="paragraph"><p>La barre des menus du haut permet d’accéder aux fichiers (chargement et +enregistrement), aux options de configuration, d’impression, de tracé, et +aux fichiers d’aide.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_top_menu_bar.png" alt="images/Pcbnew_top_menu_bar.png"> +</div> +</div> +<div class="sect3"> +<h4 id="_menu_fichiers">3.9.1. Menu Fichiers</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_file_menu.png" alt="images/Pcbnew_file_menu.png"> +</div> +</div> +<div class="paragraph"><p>Le menu Fichiers permet le chargement, la sauvegarde des fichiers de +circuits imprimés, ainsi que l’impression et le tracé du circuit imprimé. Il +permet l’exportation (au format GenCAD 1,4) du circuit pour l’utilisation +avec des testeurs automatiques.</p></div> +</div> +<div class="sect3"> +<h4 id="_menu_editer">3.9.2. Menu Editer</h4> +<div class="paragraph"><p>Permet quelques actions d'édition globales :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_edit_menu.png" alt="images/Pcbnew_edit_menu.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_menu_affichage">3.9.3. Menu Affichage</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_view_menu.png" alt="images/Pcbnew_view_menu.png"> +</div> +</div> +<div class="paragraph"><p>Fonctions de Zoom et d’affichage du circuit en 3D.</p></div> +<div class="sect4"> +<h5 id="_3d_visualisateur">3D Visualisateur</h5> +<div class="paragraph"><p>Ouvre le visualisateur 3D. Exemple :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Sample_3D_board.png" alt="images/Sample_3D_board.png"> +</div> +</div> +</div> +<div class="sect4"> +<h5 id="_commutation_d_8217_affichages">Commutation d’affichages</h5> +<div class="paragraph"><p>Permet de commuter l’affichage :</p></div> +<div class="ulist"><ul> +<li> +<p> +mode de base (défaut) +</p> +</li> +<li> +<p> +mode OpenGL +</p> +</li> +<li> +<p> +mode Cairo +</p> +</li> +</ul></div> +</div> +</div> +<div class="sect3"> +<h4 id="_menu_placer">3.9.4. Menu Placer</h4> +<div class="paragraph"><p>On y retrouve les fonctions de la barre d’outils de droite.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_place_menu.png" alt="images/Pcbnew_place_menu.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_menu_routage">3.9.5. Menu Routage</h4> +<div class="paragraph"><p>Fonctions de routage.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_route_menu.png" alt="images/Pcbnew_route_menu.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_menu_preferences">3.9.6. Menu Préférences</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_preferences_menu.png" alt="images/Pcbnew_preferences_menu.png"> +</div> +</div> +<div class="paragraph"><p>Permet :</p></div> +<div class="ulist"><ul> +<li> +<p> +Sélection des librairies d’empreintes. +</p> +</li> +<li> +<p> +Afficher/Cacher le Gestionnaire de Couches (sélection des couleurs pour + l’affichage des couches et autres éléments. Permet aussi d’afficher/cacher + les éléments). +</p> +</li> +<li> +<p> +Paramétrage des options générales (unités, etc…). +</p> +</li> +<li> +<p> +Paramétrage des options d’affichage +</p> +</li> +<li> +<p> +Création, édition (et relecture) du fichier des raccourcis clavier. +</p> +</li> +</ul></div> +</div> +<div class="sect3"> +<h4 id="_menu_dimensions">3.9.7. Menu Dimensions</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_dimensions_menu.png" alt="images/Pcbnew_dimensions_menu.png"> +</div> +</div> +<div class="paragraph"><p>Un menu important, qui permet le réglage :</p></div> +<div class="ulist"><ul> +<li> +<p> +De la taille de grille utilisateur. +</p> +</li> +<li> +<p> +Des tailles des textes et de l'épaisseur de ligne des tracés. +</p> +</li> +<li> +<p> +Des dimensions et caractéristiques des pads (pastilles). +</p> +</li> +<li> +<p> +Des valeurs globales pour les couches des masques de soudure et de pâte à + souder. +</p> +</li> +</ul></div> +</div> +<div class="sect3"> +<h4 id="_menu_outils">3.9.8. Menu Outils</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_tools_menu.png" alt="images/Pcbnew_tools_menu.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_menu_regles_de_conception">3.9.9. Menu Règles de Conception</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_design_rules_menu.png" alt="images/Pcbnew_design_rules_menu.png"> +</div> +</div> +<div class="paragraph"><p>Permet d’accéder à deux boites de dialogues :</p></div> +<div class="ulist"><ul> +<li> +<p> +Éditeur des Règles de Conception (dimensions des pistes et vias, distances + d’isolation). +</p> +</li> +<li> +<p> +Options Couches (nombre de couches, activation et noms des couches). +</p> +</li> +</ul></div> +</div> +<div class="sect3"> +<h4 id="_menu_aide">3.9.10. Menu Aide</h4> +<div class="paragraph"><p>Permet d’accéder aux manuels utilisateur et aux informations de version.</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_barre_d_8217_outils_superieure">3.10. Barre d’Outils Supérieure</h3> +<div class="paragraph"><p>Cette barre d’outils donne accès aux principales fonctions de Pcbnew.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_top_toolbar.png" alt="images/Pcbnew_top_toolbar.png"> +</div> +</div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:28%;"> +<col style="width:71%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/new.png" alt="images/icons/new.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Création d’un nouveau circuit imprimé.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/open_brd_file.png" alt="images/icons/open_brd_file.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ouverture d’un circuit imprimé existant.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/save.png" alt="images/icons/save.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sauvegarde d’un circuit imprimé.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/sheetset.png" alt="images/icons/sheetset.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajustage de la feuille de dessin, et modification des propriétés du fichier.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/module_editor.png" alt="images/icons/module_editor.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ouvre l'éditeur des empreintes des librairies ou du circuit.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/modview_icon.png" alt="images/icons/modview_icon.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ouvre le visualisateur des empreintes des librairies ou du circuit.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/undo.png" alt="images/icons/undo.png"> +</span> <span class="image"> +<img src="images/icons/redo.png" alt="images/icons/redo.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Défaire/Refaire les dernières commandes (jusqu'à 10).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/print_button.png" alt="images/icons/print_button.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche la fenêtre d’impression du circuit.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/plot.png" alt="images/icons/plot.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche la fenêtre de tracé du circuit.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/zoom_in.png" alt="images/icons/zoom_in.png"> +</span> <span class="image"> +<img src="images/icons/zoom_out.png" alt="images/icons/zoom_out.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Zoom avant et Zoom arrière (relativement au centre de l'écran).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/zoom_redraw.png" alt="images/icons/zoom_redraw.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Rafraîchit l'écran.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/zoom_fit_in_page.png" alt="images/icons/zoom_fit_in_page.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajuste le zoom au circuit.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/find.png" alt="images/icons/find.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Recherche d’une empreinte ou d’un texte.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/netlist.png" alt="images/icons/netlist.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Opérations sur les Netlistes (sélection, lecture, test et compilation).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/drc.png" alt="images/icons/drc.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Contrôle automatique des pistes : DRC (Design Rule Check).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_toolbar_layer_select_dropdown.png" alt="images/Pcbnew_toolbar_layer_select_dropdown.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection de la couche de travail.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_layer_pair_indicator.png" alt="images/Pcbnew_layer_pair_indicator.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection d’une paire de couches (pour les vias).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Mode Empreinte : si enfoncé, active certaines options d’empreintes du + menu contextuel.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/mode_track.png" alt="images/icons/mode_track.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Mode Routage : si enfoncé, active certaines options de routage du + menu contextuel.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/web_support.png" alt="images/icons/web_support.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Accès direct au routeur Freerouter.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/py_script.png" alt="images/icons/py_script.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche/Cache la console de scripting Python.</p></td> +</tr> +</tbody> +</table> +<div class="sect3"> +<h4 id="_barre_d_8217_outils_auxiliaire">3.10.1. Barre d’Outils Auxiliaire</h4> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:28%;"> +<col style="width:71%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_thickness_dropdown.png" alt="images/Pcbnew_track_thickness_dropdown.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection d’une largeur de piste déjà en utilisation.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_via_size_dropdown.png" alt="images/Pcbnew_via_size_dropdown.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection d’une taille de via déjà en utilisation.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/auto_track_width.png" alt="images/icons/auto_track_width.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Largeur de piste automatique : si activée lors de la création d’une nouvelle piste, + débutant depuis une piste existante, la largeur de la nouvelle piste + est la même que celle existante.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_grid_size_dropdown.png" alt="images/Pcbnew_grid_size_dropdown.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection de la taille de grille.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_zoom_factor_dropdown.png" alt="images/Pcbnew_zoom_factor_dropdown.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection du facteur de zoom.</p></td> +</tr> +</tbody> +</table> +<div style="page-break-after:always"></div> +</div> +</div> +<div class="sect2"> +<h3 id="_barre_d_8217_outils_laterale_droite">3.11. Barre d’Outils Latérale Droite</h3> +<div class="paragraph"><p>Cette barre d’outils contient les outils d'édition pour modifier le circuit +affiché dans Pcbnew.</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:10%;"> +<col style="width:5%;"> +<col style="width:85%;"> +<tbody> +<tr> +<td class="tableblock halign-center valign-middle" rowspan="16" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_right_toolbar.png" alt="images/Pcbnew_right_toolbar.png" width="80%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/cursor.png" alt="images/icons/cursor.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélectionne le mode standard.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/net_highlight.png" alt="images/icons/net_highlight.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Surbrillance de l'équipotentielle sélectionnée en cliquant sur une piste ou une pad.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/tool_ratsnest.png" alt="images/icons/tool_ratsnest.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage du chevelu local (Pad ou Empreinte).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/module.png" alt="images/icons/module.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajoute une empreinte depuis une librairie.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_tracks.png" alt="images/icons/add_tracks.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Placement de pistes et vias.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_zone.png" alt="images/icons/add_zone.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Placement de zones cuivrées remplies.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_keepout_area.png" alt="images/icons/add_keepout_area.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Placement de zones d’exclusion (sur couches cuivrées).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_dashed_line.png" alt="images/icons/add_dashed_line.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Tracé de lignes sur couches techniques (couches non cuivrées).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_circle.png" alt="images/icons/add_circle.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Tracé de cercles sur couches techniques (couches non cuivrées).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_arc.png" alt="images/icons/add_arc.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Tracé d’arcs de cercles sur couches techniques (couches non cuivrées).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_text.png" alt="images/icons/add_text.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Placement de textes.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_dimension.png" alt="images/icons/add_dimension.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Tracé de dimensions sur couches techniques (couches non cuivrées).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_mires.png" alt="images/icons/add_mires.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajout de mires de superposition (visibles sur toutes les couches).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/delete.png" alt="images/icons/delete.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Suppression de l'élément pointé par le curseur.</p> +<p class="tableblock"> <strong>Note :</strong> + lors d’une suppression, si plusieurs éléments pointés sont superposés, + la priorité est donnée au plus petit (dans l’ordre décroissant + des priorités pistes, textes, empreintes). La fonction "Défaire" + de la barre d’outils du haut permet l’annulation de la dernière suppression + d'élement.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/pcb_offset.png" alt="images/icons/pcb_offset.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajustage du point d’origine du perçage et du placement d’empreintes.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/grid_select_axis.png" alt="images/icons/grid_select_axis.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Origine de la grille. Utile principalement pour l'édition et le + placement d’empreintes. Peut aussi être réglé dans le menu Dimensions/Grille.</p></td> +</tr> +</tbody> +</table> +<div class="ulist"><ul> +<li> +<p> +Placement d’empreintes, pistes, zones remplies, textes, etc… +</p> +</li> +<li> +<p> +Surbrillance d'équipotentielles. +</p> +</li> +<li> +<p> +Création de notes, d'éléments graphiques, etc… +</p> +</li> +<li> +<p> +La suppression d'éléments. +</p> +</li> +</ul></div> +<div style="page-break-after:always"></div> +</div> +<div class="sect2"> +<h3 id="_barre_d_8217_outils_laterale_gauche">3.12. Barre d’Outils Latérale Gauche</h3> +<div class="paragraph"><p>La barre d’outils de gauche contient les options de contrôle et d’affichage +qui agissent sur l’interface de Pcbnew.</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:10%;"> +<col style="width:5%;"> +<col style="width:85%;"> +<tbody> +<tr> +<td class="tableblock halign-center valign-middle" rowspan="17" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_left_toolbar.png" alt="images/Pcbnew_left_toolbar.png" width="80%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/drc_off.png" alt="images/icons/drc_off.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Active/Désactive le DRC (Design Rule Checking). <strong>Attention:</strong> quand le DRC + est arrêté, des connexions incorrectes peuvent être réalisées.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/grid.png" alt="images/icons/grid.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche/Cache la grille. <strong>Note :</strong> une grille fine peut ne pas être affichée + en dessous d’un niveau de zoom suffisant.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/polar_coord.png" alt="images/icons/polar_coord.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des coordonnées relatives polaires dans la barre d'état.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/unit_inch.png" alt="images/icons/unit_inch.png"> +</span> <span class="image"> +<img src="images/icons/unit_mm.png" alt="images/icons/unit_mm.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage/Saisie des coordonnées ou des dimensions en inches ou en millimeters.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/cursor_shape.png" alt="images/icons/cursor_shape.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Change la forme du curseur.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/general_ratsnest.png" alt="images/icons/general_ratsnest.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche le chevelu général (connexions incomplètes entre empreintes).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/local_ratsnest.png" alt="images/icons/local_ratsnest.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche le chevelu dynamiquement pendant le déplacement.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/auto_delete_track.png" alt="images/icons/auto_delete_track.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Active/Désactive la suppression automatique d’une piste pendant son redessin.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/show_zone.png" alt="images/icons/show_zone.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche les zones remplies.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/show_zone_disable.png" alt="images/icons/show_zone_disable.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">N’affiche pas les zones remplies.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/show_zone_outline_only.png" alt="images/icons/show_zone_outline_only.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche seulement le contour des zones remplies.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/pad_sketch.png" alt="images/icons/pad_sketch.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des pads en mode contour ou normal.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/via_sketch.png" alt="images/icons/via_sketch.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des vias en mode contour ou normal.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/showtrack.png" alt="images/icons/showtrack.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des pistes en mode contour ou normal.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/contrast_mode.png" alt="images/icons/contrast_mode.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Mode d’affichage haut contraste ou normal. Dans ce mode la couche active + est affichée normalement, tandis que les autres couches sont affichées + en gris. Utile pour le travail sur les circuits multi-couches.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/layers_manager.png" alt="images/icons/layers_manager.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche/Cache le Gestionnaire de Couches.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/mw_toolbar.png" alt="images/icons/mw_toolbar.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Accès aux outils de micro-ondes. En cours de développement.</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect2"> +<h3 id="_menus_contextuels_et_edition_rapide">3.13. Menus contextuels et édition rapide</h3> +<div class="paragraph"><p>Un clic droit de la souris ouvre un menu contextuel dont le contenu dépend +de l'élément pointé par le curseur.</p></div> +<div class="paragraph"><p>Celui-ci donne accès au :</p></div> +<div class="ulist"><ul> +<li> +<p> +Changement d’affichage (centrer l’affichage sur le curseur, zoom + avant-arrière, sélection du facteur de zoom). +</p> +</li> +<li> +<p> +Changement de taille de grille. +</p> +</li> +<li> +<p> +Également, un clic droit sur un élément permet d’en modifier les paramètres + les plus courants. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Les captures d'écrans plus bas montrent à quoi ressemblent ces menus +contextuels.</p></div> +</div> +<div class="sect2"> +<h3 id="_modes_disponibles">3.14. Modes disponibles</h3> +<div class="paragraph"><p>Il y a 3 modes lors de l’utilisation des menus contextuels. Ces modes +ajoutent ou suppriment certaines commandes spécifiques dans les menus +contextuels.</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:28%;"> +<col style="width:71%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span> et + <span class="image"> +<img src="images/icons/mode_track.png" alt="images/icons/mode_track.png"> +</span> désactivés</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Mode Normal</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span> activé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Mode Empreinte</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/mode_track.png" alt="images/icons/mode_track.png"> +</span> activé</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Mode Pistes</p></td> +</tr> +</tbody> +</table> +<div class="sect3"> +<h4 id="_mode_normal">3.14.1. Mode Normal</h4> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel sans sélection : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_normal_mode.png" alt="images/Pcbnew_popup_normal_mode.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel avec une piste sélectionnée : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_normal_mode_track.png" alt="images/Pcbnew_popup_normal_mode_track.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel avec une empreinte sélectionnée : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_normal_mode_footprint.png" alt="images/Pcbnew_popup_normal_mode_footprint.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_mode_empreinte">3.14.2. Mode Empreinte</h4> +<div class="paragraph"><p>Mêmes cas en Mode Empreinte (<span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span> activé)</p></div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel sans sélection : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_footprint_mode.png" alt="images/Pcbnew_popup_footprint_mode.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel avec une piste sélectionnée : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_footprint_mode_track.png" alt="images/Pcbnew_popup_footprint_mode_track.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel avec une empreinte sélectionnée : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_footprint_mode_footprint.png" alt="images/Pcbnew_popup_footprint_mode_footprint.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_mode_pistes">3.14.3. Mode Pistes</h4> +<div class="paragraph"><p>Mêmes cas en Mode Pistes (<span class="image"> +<img src="images/icons/mode_track.png" alt="images/icons/mode_track.png"> +</span> activé)</p></div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel sans sélection : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_track_mode.png" alt="images/Pcbnew_popup_track_mode.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel avec une piste sélectionnée : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_track_mode_track.png" alt="images/Pcbnew_popup_track_mode_track.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Menu contextuel avec une empreinte sélectionnée : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_popup_track_mode_footprint.png" alt="images/Pcbnew_popup_track_mode_footprint.png"> +</div> +</div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_implementation_schematique">4. Implémentation Schématique</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_lier_un_schema_a_un_circuit_imprime">4.1. Lier un schéma à un circuit imprimé</h3> +<div class="paragraph"><p>D’une manière générale, une feuille schématique est liée à un circuit +imprimé au moyen d’un fichier netliste, qui est normalement produit par +l'éditeur utilisé pour faire le schéma. Pcbnew accepte des fichiers de +netliste faits avec Eeschema ou Orcad PCB 2. Le fichier netliste, généré à +partir du schéma, ne contient généralement pas les empreintes associées aux +différents composants. Par conséquent, une étape intermédiaire est +nécessaire. Au cours de cette étape intermédiaire, l’association des +composants schématiques avec des empreintes physiques est effectuée. Dans +KiCad, c’est CvPcb qui est utilisé pour créer cette association et un +fichier nommé <span class="monospaced">*.cmp</span> est produit. CvPcb met également à jour le fichier +netliste en utilisant ces informations.</p></div> +<div class="paragraph"><p>CvPcb peut également produire un "fichier stuff" <span class="monospaced">*.stf</span>, qui peut servir à +la rétro-annotation du champ F2 de chaque composant dans le schéma, +épargnant ainsi la tâche de ré-assignation d’empreintes à chaque passe +d'édition du schéma. Dans Eeschema, la copie d’un composant copiera +également l’affectation de l’empreinte, et marquera la référence comme non +affectée pour l’annotation auto-incrémentielle qui suivra.</p></div> +<div class="paragraph"><p>Pcbnew lit le fichier netliste <span class="monospaced">.net</span> modifié et, s’il existe, le fichier +<span class="monospaced">.cmp</span>. Dans le cas d’une empreinte ayant été changée directement dans +Pcbnew, le fichier <span class="monospaced">.cmp</span> est automatiquement mis à jour, évitant ainsi +l’obligation d’exécuter CvPcb à nouveau.</p></div> +<div class="paragraph"><p>Reportez-vous à la figure du manuel "Getting Started in KiCad" (Démarrer +avec KiCad), section <em>Échanges de données dans KiCad</em> qui illustre le flux +des données de KiCad, et comment sont obtenus les fichiers intermédiaires +utilisés par les différents outils logiciels qui composent KiCad.</p></div> +</div> +<div class="sect2"> +<h3 id="_processus_de_creation_d_8217_un_circuit_imprime">4.2. Processus de création d’un circuit imprimé</h3> +<div class="paragraph"><p>Après avoir créé votre schéma dans Eeschema :</p></div> +<div class="ulist"><ul> +<li> +<p> +Générez la netliste depuis Eeschema. +</p> +</li> +<li> +<p> +Assign each component in your netlist file to the corresponding land pattern + (often called footprint) used on the printed circuit using Cvpcb. +</p> +</li> +<li> +<p> +Lancez Pcbnew, et lisez le fichier netliste. Ceci lira également le fichier + .cmp contenant les associations d’empreintes. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Pcbnew chargera alors automatiquement toutes les empreintes nécessaires. Les +empreintes pourront alors être placées sur la carte, manuellement ou +automatiquement, et les pistes tracées.</p></div> +</div> +<div class="sect2"> +<h3 id="_processus_de_mise_a_jour_d_8217_un_circuit_imprime">4.3. Processus de mise à jour d’un circuit imprimé</h3> +<div class="paragraph"><p>Si le schéma est modifié, après qu’un circuit imprimé ait été généré, les +étapes suivantes doivent être répétées :</p></div> +<div class="ulist"><ul> +<li> +<p> +Générez une nouvelle netliste depuis Eeschema. +</p> +</li> +<li> +<p> +Si les modifications apportées au schéma contiennent de nouveaux composants, + les empreintes correspondantes devront être associées à l’aide de CvPcb. +</p> +</li> +<li> +<p> +Lancez Pcbnew, et lisez le fichier netliste modifié. Ceci relira également + le fichier .cmp contenant les associations d’empreintes. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Pcbnew chargera alors automatiquement les nouvelles empreintes, ajoutera les +nouvelles connexions et supprimera les connexions redondantes. Ce processus, +appelé annotation "vers l’avant" (forward annotation), est un processus très +courant quand un PCB est réalisé et mis à jour.</p></div> +</div> +<div class="sect2"> +<h3 id="_lecture_du_fichier_netliste_chargement_d_8217_empreintes">4.4. Lecture du fichier Netliste - Chargement d’empreintes</h3> +<div class="sect3"> +<h4 id="_boite_de_dialogue">4.4.1. Boite de dialogue</h4> +<div class="paragraph"><p>Accessible par l’icône <span class="image"> +<img src="images/icons/netlist.png" alt="images/icons/netlist.png"> +</span></p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/en/Pcbnew_netlist_dialog.png" alt="images/en/Pcbnew_netlist_dialog.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_options_disponibles">4.4.2. Options disponibles</h4> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:50%;"> +<col style="width:50%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sélection Empreinte</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Lien entre composants et empreintes correspondantes sur le circuit : +le lien normal est par la Référence (option normale). +Le timestamp peut être utilisé, après une réannotation du schéma, +si l’annotation précedente a été détruite (option spéciale)</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Échange Empreinte</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Si une empreinte a changé dans la netliste : garder l’ancienne ou +changer pour la nouvelle.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Pistes non Connectées</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Garder les pistes existantes, ou supprimer les pistes erronées</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Empreintes Supplémentaires</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Supprimer les empreintes du circuit qui ne sont plus en netliste. +Les empreintes avec l’attribut "Verrouillé" ne seront pas supprimées.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Nets avec Pad Unique</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Supprime les nets avec pad unique .</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect3"> +<h4 id="_chargement_de_nouvelles_empreintes">4.4.3. Chargement de nouvelles empreintes</h4> +<div class="paragraph"><p>Avec le backend GAL (Graphics Abstraction Layer), quand de nouvelles +empreintes sont trouvées dans le fichier netliste, elles seront chargées, +étalées, et prêtes à être placées en un groupe où vous le souhaiterez.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_import_spread_footprints.png" alt="images/Pcbnew_import_spread_footprints.png" height="300"> +</div> +</div> +<div class="paragraph"><p>Avec l’ancien backend, quand de nouvelles empreintes sont trouvées dans le +fichier netliste, elles sont automatiquement chargées et placées aux +coordonnées (0,0).</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_stacked_footprints.png" alt="images/Pcbnew_stacked_footprints.png"> +</div> +</div> +<div class="paragraph"><p>Les nouvelles empreintes peuvent être déplacées et disposées une par +une. Une meilleure façon est de les déplacer automatiquement :</p></div> +<div class="paragraph"><p>Activez le Mode Empreinte (<span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span>)</p></div> +<div class="paragraph"><p>Déplacez le curseur sur une zone appropriée (vide de tous composants), et +cliquez sur le bouton droit :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_move_all_modules.png" alt="images/Pcbnew_move_all_modules.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Place Automatiquement Nouvelles Empreintes, s’il y a déjà un circuit avec + des empreintes existantes. +</p> +</li> +<li> +<p> +Place Automatiquement toutes les Empreintes, la première fois (à la création + du circuit). +</p> +</li> +</ul></div> +<div class="paragraph"><p>L’image suivante vous montre le résultat :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_unstacked_footprints.png" alt="images/Pcbnew_unstacked_footprints.png"> +</div> +</div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_les_couches">5. Les Couches</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_introduction">5.1. Introduction</h3> +<div class="paragraph"><p>Pcbnew peut travailler avec 50 différentes couches (ou layers) :</p></div> +<div class="ulist"><ul> +<li> +<p> +Entre 1 et 32 couches cuivrées pour router des pistes. +</p> +</li> +<li> +<p> +14 couches techniques à usage fixe. +</p> +<div class="ulist"><ul> +<li> +<p> +12 couches appairées (avant / arrière): <strong>Adhésif</strong>, <strong>Pâte à souder</strong>, + <strong>Sérigraphie</strong>, <strong>Masque de soudure</strong>, <strong>Courtyard</strong>, <strong>Fabrication</strong> +</p> +</li> +<li> +<p> +2 couches indépendantes : <strong>Contour PCB</strong>, <strong>Marge</strong> +</p> +</li> +</ul></div> +</li> +<li> +<p> +4 couches auxiliaires que vous pouvez utiliser comme bon vous semble : + <strong>Commentaires</strong>, <strong>E.C.O. 1</strong>, <strong>E.C.O. 2</strong>, <strong>Dessins</strong> +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_reglage_des_options_des_couches">5.2. Réglage des options des couches</h3> +<div class="paragraph"><p>Pour ouvrir les <strong>Options Couches</strong> depuis la barre de menu, sélectionnez +<strong>Règles de Conception</strong> → <strong>Options Couches</strong>.</p></div> +<div class="paragraph"><p>Le nombre de couches cuivrées, leurs noms et leurs fonctions seront +configurées ici. Les couches techniques inutilisées peuvent être +désactivées.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_layer_setup_dialog.png" alt="images/Pcbnew_layer_setup_dialog.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_description_des_couches">5.3. Description des Couches</h3> +<div class="sect3"> +<h4 id="_couches_cuivrees">5.3.1. Couches Cuivrées</h4> +<div class="paragraph"><p>Les couches cuivrées sont les couches de travail habituelles utilisées pour +placer ou réorganiser des pistes. Les numéros de couche vont de 0 (la +première couche de cuivre, sur le dessus) à 31 (dessous). Étant donné que +les composants ne peuvent être placés dans les <strong>couches intérieures</strong> (de +nombre 1 à 30), seules les couches 0 et 31 sont des <strong>couches composants</strong>.</p></div> +<div class="paragraph"><p>Le nom de chaque couche cuivrée est modifiable. Les couches cuivrées ont un +attribut fonction qui est utile lors de l’utilisation du routeur externe +<em>Freerouter</em> . Des exemples de noms de couche par défaut sont <strong>F.Cu</strong> ou +<strong>In0</strong> pour la couche numéro 0.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_layer_setup_dialog_layer_properties.png" alt="images/Pcbnew_layer_setup_dialog_layer_properties.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_couches_techniques_appairees">5.3.2. Couches Techniques Appairées</h4> +<div class="paragraph"><p>12 technical layers come in pairs: one for the front, one for the back. You +can recognize them with the "F." or "B." prefix in their names. The elements +making up a footprint (pad, drawing, text) of one of these layers are +automatically mirrored and moved to the complementary layer when the +footprint is flipped.</p></div> +<div class="paragraph"><p>Les couches techniques appairées sont :</p></div> +<div class="dlist"><dl> +<dt class="hdlist1"> +<strong>Adhésif</strong> (F.Adhes et B.Adhes) +</dt> +<dd> +<p> + Elles sont utilisées pour l’application d’adhésif servant à coller les + composants de surface sur le circuit, généralement avant la soudure à la + vague. +</p> +</dd> +<dt class="hdlist1"> +<strong>Pâte à Souder</strong> (F.Paste et B.Paste) +</dt> +<dd> +<p> + Utilisé pour produire un masque permettant de déposer de la pâte à braser + sur les pastilles des composants de surface, en général avant le soudage par + refusion. D’ordinaire, seules les pastilles des composants de surface + occupent ces couches. +</p> +</dd> +<dt class="hdlist1"> +<strong>Sérigraphie</strong> (F.SilkS et B.SilkS) +</dt> +<dd> +<p> + Ce sont les couches où les éléments de dessin des composants + apparaissent. C’est là où vous dessinez des choses comme la polarité des + composants, l’indicateur de la première broche, la référence pour le + montage, etc… +</p> +</dd> +<dt class="hdlist1"> +<strong>Masque de Soudure</strong> (F.Mask et B.Mask) +</dt> +<dd> +<p> + Celles-ci définissent les masques de soudure. Toutes les pastilles doivent + apparaître sur une de ces couches (composants de surfaces), ou sur les deux + (composants traversants), pour empêcher le vernis de venir recouvrir les + pastilles. +</p> +</dd> +<dt class="hdlist1"> +<strong>Courtyard</strong> (F.CrtYd et B.CrtYd) +</dt> +<dd> +<p> + Utilisées pour montrer quel encombrement un composant prend physiquement sur + le PCB. +</p> +</dd> +<dt class="hdlist1"> +<strong>Fabrication</strong> (F.Fab et B.Fab) +</dt> +<dd> +<p> + Footprint assembly (?). +</p> +</dd> +</dl></div> +</div> +<div class="sect3"> +<h4 id="_couches_techniques_independantes">5.3.3. Couches Techniques Indépendantes</h4> +<div class="dlist"><dl> +<dt class="hdlist1"> +<strong>Edge.Cuts</strong> +</dt> +<dd> +<p> + Cette couche est réservé pour le dessin du contour du circuit + imprimé. Chaque élément (graphique, texte, …) placé sur cette couche + apparaîtra sur toutes les autres couches. Utilisez cette couche uniquement + pour dessiner les contours de la carte. +</p> +</dd> +<dt class="hdlist1"> +<strong>Margin</strong> +</dt> +<dd> +<p> + Marge de recul du contour (?). +</p> +</dd> +</dl></div> +</div> +<div class="sect3"> +<h4 id="_couches_a_usage_general">5.3.4. Couches à usage général</h4> +<div class="paragraph"><p>Ces couches sont destinées à n’importe quel usage. Elles peuvent être +utilisées pour des textes, comme des instructions de montage ou de câblage, +des dessins de construction en vue de créer un fichier pour l’assemblage ou +l’usinage. Leurs noms sont :</p></div> +<div class="ulist"><ul> +<li> +<p> +Comments (Cmts.User) +</p> +</li> +<li> +<p> +Eco1.User +</p> +</li> +<li> +<p> +Eco2.User +</p> +</li> +<li> +<p> +Drawings (Dwgs.User) +</p> +</li> +</ul></div> +</div> +</div> +<div class="sect2"> +<h3 id="_selection_de_la_couche_de_travail">5.4. Sélection de la couche de travail</h3> +<div class="paragraph"><p>Le choix de la couche de travail peut se faire de plusieurs façons :</p></div> +<div class="ulist"><ul> +<li> +<p> +En utilisant la barre d’outils de droite (Gestionnaire de Couches). +</p> +</li> +<li> +<p> +En utilisant la barre d’outils du haut. +</p> +</li> +<li> +<p> +Par le menu contextuel (bouton droit de la souris). +</p> +</li> +<li> +<p> +En utilisant les touches + et - (fonctionne seulement avec les couches + cuivrées). +</p> +</li> +<li> +<p> +Par les raccourcis clavier. +</p> +</li> +</ul></div> +<div class="sect3"> +<h4 id="_selection_par_le_gestionnaire_de_couches">5.4.1. Sélection par le gestionnaire de couches</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_layer_manager_pane.png" alt="images/Pcbnew_layer_manager_pane.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_selection_par_la_barre_d_8217_outils_du_haut">5.4.2. Sélection par la barre d’outils du haut</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_layer_selection_dropdown.png" alt="images/Pcbnew_layer_selection_dropdown.png"> +</div> +</div> +<div class="paragraph"><p>Ceci sélectionne directement la couche de travail.</p></div> +<div class="paragraph"><p>Les raccourcis clavier pour sélectionner la couche de travail y sont +affichés.</p></div> +</div> +<div class="sect3"> +<h4 id="_selection_par_le_menu_contextuel">5.4.3. Sélection par le menu contextuel</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_layer_selection_popup.png" alt="images/Pcbnew_layer_selection_popup.png"> +</div> +</div> +<div class="paragraph"><p>Le menu contextuel ouvre une boite de dialogue qui permet de choisir la +couche de travail.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_layer_selection_dialog.png" alt="images/Pcbnew_layer_selection_dialog.png"> +</div> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_selection_de_paires_de_couches_pour_les_vias">5.5. Sélection de paires de Couches pour les Vias</h3> +<div class="paragraph"><p>Si le bouton <strong>Ajouter pistes et vias</strong> est sélectionné sur la barre d’outils +de droite, le menu contextuel offre la possibilité de changer la paire de +couches utilisée pour les vias :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_via_layer_pair_popup.png" alt="images/Pcbnew_via_layer_pair_popup.png"> +</div> +</div> +<div class="paragraph"><p>Cette sélection ouvre une boite de dialogue qui permet le choix des couches +utilisées pour les vias.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_via_layer_pair_dialog.png" alt="images/Pcbnew_via_layer_pair_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Quand une via est placée, la couche de travail (couche active) est +automatiquement positionnée sur l’autre couche de la paire utilisée pour les +vias.</p></div> +<div class="paragraph"><p>One can also switch to another active layer by hot keys, and if a track is +in progress, a via will be inserted.</p></div> +</div> +<div class="sect2"> +<h3 id="_utilisation_du_mode_a_haut_contraste">5.6. Utilisation du mode à haut contraste</h3> +<div class="paragraph"><p>On entre dans ce mode quand l’outil : <span class="image"> +<img src="images/icons/contrast_mode.png" alt="images/icons/contrast_mode.png"> +</span> +est activé (barre d’outils de gauche).</p></div> +<div class="paragraph"><p>Dans ce mode, la couche active est affichée comme dans le mode normal, +tandis que toutes les autres couches sont affichées en gris.</p></div> +<div class="paragraph"><p>Il y a deux cas où c’est utile :</p></div> +<div class="sect3"> +<h4 id="_couches_cuivrees_en_mode_haut_contraste">5.6.1. Couches cuivrées en mode haut contraste</h4> +<div class="paragraph"><p>Quand un circuit utilise plus de 4 couches, ce mode permet à la couche +active d'être plus facile à distinguer :</p></div> +<div class="paragraph"><p><strong>Mode Normal</strong> (couche cuivre de dessous active) :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_copper_layers_contrast_normal.png" alt="images/Pcbnew_copper_layers_contrast_normal.png"> +</div> +</div> +<div class="paragraph"><p><strong>Mode Haut-Contraste</strong> (couche cuivre de dessous active) :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_copper_layers_contrast_high.png" alt="images/Pcbnew_copper_layers_contrast_high.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_couches_techniques">5.6.2. Couches Techniques</h4> +<div class="paragraph"><p>Le second cas est quand il est nécessaire d’examiner les couches de pâte à +souder et masques de soudure qui ne sont normalement pas affichées.</p></div> +<div class="paragraph"><p>Les masques de pastilles sont affichés quand ce mode est actif.</p></div> +<div class="paragraph"><p><strong>Mode Normal</strong> (couche masque de soudure de dessus active) :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_technical_layers_contrast_normal.png" alt="images/Pcbnew_technical_layers_contrast_normal.png"> +</div> +</div> +<div class="paragraph"><p><strong>Mode Haut-Contraste</strong> (couche masque de soudure de dessus active) :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_technical_layers_contrast_high.png" alt="images/Pcbnew_technical_layers_contrast_high.png"> +</div> +</div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_creer_et_modifier_un_circuit">6. Créer et modifier un circuit</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_creation_d_8217_un_circuit">6.1. Création d’un circuit</h3> +<div class="sect3"> +<h4 id="_dessin_du_contour_du_circuit">6.1.1. Dessin du contour du circuit</h4> +<div class="paragraph"><p>C’est en général une bonne idée de définir en premier le contour du +circuit. Le contour est tracé comme une séquence de segments de +ligne. Sélectionnez <em>Edge.Cuts</em> comme couche active et utilisez l’outil +<em>Addition de lignes ou polygones graphiques</em> pour tracer le bord, en +cliquant à la position de chaque sommet, et double-cliquez pour terminer le +contour. Les circuits ayant généralement des dimensions très précises, il +peut être nécessaire d’utiliser l’affichage des coordonnées du curseur tout +en traçant le contour. Rappelez-vous que les coordonnées relatives peuvent +être mises à zéro à tout moment en utilisant la barre d’espace, et que l’on +peut changer les unités par <em>Ctrl-U</em>. Les coordonnées relatives permettent +le dessin de dimensions très précises. Il est aussi possible de dessiner un +contour circulaire (ou arc) :</p></div> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Sélectionnez l’outil <em>Addition de graphiques (Cercle)</em> ou <em>Addition de + graphiques (Arc de Cercle)</em> +</p> +</li> +<li> +<p> +Cliquez pour placer le centre du cercle +</p> +</li> +<li> +<p> +Ajustez le rayon en déplaçant la souris +</p> +</li> +<li> +<p> +Terminez en cliquant à nouveau. +</p> +</li> +</ol></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content">L'épaisseur du contour peut être réglée dans le menu Paramètres (largeur +recommandée = 150 en 1/10 de mils) ou via les Options, mais ce ne sera pas +visible à moins que les graphiques ne soient affichés dans un autre mode que +le mode contour.</td> +</tr></table> +</div> +<div class="paragraph"><p>Le contour résultant peut ressembler à ceci :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_simple_board_outline.png" alt="images/Pcbnew_simple_board_outline.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_utilisation_d_8217_un_dessin_dxf_pour_le_contour_du_circuit">6.1.2. Utilisation d’un dessin DXF pour le contour du circuit</h4> +<div class="paragraph"><p>Un autre moyen de dessiner le contour est d’importer un dessin au format +DXF.</p></div> +<div class="paragraph"><p>L’utilisation de cette fonctionnalité permet de dessiner des circuits aux +formes beaucoup plus complexes qu’avec les possibilités de dessin de Pcbnew.</p></div> +<div class="paragraph"><p>Par exemple, un logiciel de CAO mécanique peut être utilisé pour définir un +circuit qui s’insère dans un boîtier particulier.</p></div> +<div class="sect4"> +<h5 id="_preparation_d_8217_un_dessin_dxf_pour_l_8217_importation_dans_kicad">Préparation d’un dessin DXF pour l’importation dans KiCad</h5> +<div class="paragraph"><p>Les capacités d’importation de <strong>DXF</strong> dans KiCad ne supportent pas les +éléments DXF comme <strong>POLYLINES</strong> ou <strong>ELLIPSES</strong>, et les fichiers DXF qui +utilisent ces fonctionnalités ont besoin de quelques étapes de conversion +pour les préparer à l’importation.</p></div> +<div class="paragraph"><p>Un logiciel comme LibreCAD peut être utilisé pour faire ces conversions.</p></div> +<div class="paragraph"><p>La première étape consiste à briser (Explode) les <strong>POLYLINES</strong> en formes plus +simples. Dans LibreCAD, suivez ces étapes :</p></div> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Ouvrez une copie du fichier DXF. +</p> +</li> +<li> +<p> +Sélectionnez la forme du circuit (les formes sélectionnées sont affichées + avec des pointillés). +</p> +</li> +<li> +<p> +Dans le menu <strong>Modifier</strong>, choisissez <strong>Explode</strong>. +</p> +</li> +<li> +<p> +Appuyez sur Entrée. +</p> +</li> +</ol></div> +<div class="paragraph"><p>L'étape suivante consiste à diviser les courbes complexes comme les +<strong>ELLIPSES</strong>, en segments de ligne qui <em>s’approchent</em> de la forme +requise. Cela se fait automatiquement lorsque le fichier DXF est exporté ou +enregistré dans l’ancien format <strong>DXF R12</strong> (comme le format R12 ne supporte +pas les formes de courbes complexes, les programmes de CAO convertissent +ces formes en segments de ligne. Certaines applications de CAO permettent la +configuration du nombre ou de la longueur des segments de ligne +utilisés). Dans LibreCAD la longueur des segments est généralement +suffisamment petite pour les utiliser dans les contours de cartes.</p></div> +<div class="paragraph"><p>Dans LibreCAD, utilisez les étapes suivantes pour exporter vers le format de +fichier <strong>DXF R12</strong> :</p></div> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Dans le menu Fichier, cliquez sur <strong>Enregistrer Sous…</strong> +</p> +</li> +<li> +<p> +Au bas de la fenêtre <strong>Save Drawing As</strong>, il y a un menu déroulant <strong>Files of + type:</strong>. Choisissez <strong>Drawing Exchange DXF R12</strong>. +</p> +</li> +<li> +<p> +Donnez éventuellement un autre nom au fichier dans le champ <strong>File name:</strong>. +</p> +</li> +<li> +<p> +Cliquez sur <strong>Save</strong> +</p> +</li> +</ol></div> +<div class="paragraph"><p>Votre DXF est maintenant prêt à être importé dans KiCad.</p></div> +</div> +<div class="sect4"> +<h5 id="_importation_du_dessin_dxf_dans_kicad">Importation du dessin DXF dans KiCad</h5> +<div class="paragraph"><p>Les étapes suivantes décrivent l’importation d’un contour de circuit dans +KiCad à partir du fichier DXF préparé. Notez que le comportement +d’importation est légèrement différent selon le mode de <em>canvas</em> utilisé.</p></div> +<div class="paragraph"><p>Utilisation du mode canvas par "défaut" :</p></div> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Dans le menu Fichier, choisissez <strong>Importer</strong>, puis <strong>Fichier DXF</strong>. +</p> +</li> +<li> +<p> +Dans la fenêtre <strong>Importation Fichier DXF</strong> cliquez sur <em>Examiner</em> et + sélectionnez le fichier DXF préparé à importer. +</p> +</li> +<li> +<p> +Dans <em>Placer l’origine DXF (0,0) au point:</em> sélectionnez le positionnement + de l’origine du DXF par rapport aux coordonnées du circuit (le circuit Kicad + a pour (0,0) le coin supérieur gauche). Pour l’option «Position définie par + l’utilisateur", entrez les coordonnées dans les champs «Position X» et + «Position Y '. +</p> +</li> +<li> +<p> +Dans le menu déroulant <em>Couche</em>, sélectionnez la couche du circuit à remplir + avec l’importation. <strong>Edge.Cuts</strong> doit être choisi pour le contour du circuit. +</p> +</li> +<li> +<p> +Cliquez sur <em>Valider</em>. +</p> +</li> +</ol></div> +<div class="paragraph"><p>Utilisation des modes canvas "OpenGL" ou "Cairo" :</p></div> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Dans le menu Fichier, choisissez <strong>Importer</strong>, puis <strong>Fichier DXF</strong>. +</p> +</li> +<li> +<p> +Dans la fenêtre <strong>Importation Fichier DXF</strong> cliquez sur <em>Examiner</em> et + sélectionnez le fichier DXF préparé à importer. +</p> +</li> +<li> +<p> +Les options <em>Placer l’origine DXF (0,0) au point:</em> sont ignorées dans ce + mode. +</p> +</li> +<li> +<p> +Dans le menu déroulant <em>Couche</em>, sélectionnez la couche du circuit à remplir + avec l’importation. <strong>Edge.Cuts</strong> doit être choisi pour le contour du circuit. +</p> +</li> +<li> +<p> +Cliquez sur <em>Valider</em>. +</p> +</li> +<li> +<p> +Le contour est maintenant attaché au curseur de la souris et peut être + déplacé dans la zone de dessin du circuit. +</p> +</li> +<li> +<p> +Cliquez pour poser le contour. +</p> +</li> +</ol></div> +</div> +<div class="sect4"> +<h5 id="_exemple_de_forme_dxf_importee">Exemple de forme DXF importée</h5> +<div class="paragraph"><p>Here is an example of a DXF import with a board that had several elliptical +segments approximated by a number of short line segments:</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_board_outline_imported_from_a_DXF.png" alt="images/Pcbnew_board_outline_imported_from_a_DXF.png"> +</div> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_lecture_de_la_netliste_generee_a_partir_du_schema">6.1.3. Lecture de la netliste générée à partir du schéma</h4> +<div class="paragraph"><p>Cliquez sur l’icône <span class="image"> +<img src="images/icons/netlist.png" alt="images/icons/netlist.png"> +</span> pour afficher la +fenêtre de Netliste :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/en/Pcbnew_netlist_dialog.png" alt="images/en/Pcbnew_netlist_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Si le nom (chemin) de netliste est incorrect, utilisez le bouton <em>Examiner</em> +pour choisir le fichier de netliste souhaité. Puis cliquez sur <em>Lire +Netliste Courante</em>. Tous les empreintes non déjà chargées apparaîtront, +empilées les unes sur les autres (nous verrons ci-dessous comment les +déplacer automatiquement).</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_board_outline_with_dogpile.png" alt="images/Pcbnew_board_outline_with_dogpile.png"> +</div> +</div> +<div class="paragraph"><p>Si aucune des empreintes n’ont été placées, toutes les empreintes +apparaîtront sur le circuit au même endroit, ce qui les rend difficiles à +reconnaître. Il est possible de les étaler automatiquement (en utilisant la +commande «Étalement et placement globaux' accessible par le bouton droit de +la souris). Voici le résultat d’un tel étalement automatique :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_board_outline_with_globally_placed_modules.png" alt="images/Pcbnew_board_outline_with_globally_placed_modules.png"> +</div> +</div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content">Si un circuit est modifié, en remplaçant une empreinte existante par une +nouvelle dans CvPcb (par exemple, pour passer une résistance de 1/8W à +1/2W), il sera nécessaire de supprimer le composant existant avant que +Pcbnew ne charge l’empreinte de remplacement. Toutefois, si une empreinte +doit être remplacée par une empreinte existante, il est plus facile de le +faire en utilisant le menu d’empreinte accessible en cliquant sur le bouton +droit de la souris au-dessus de l’empreinte en question.</td> +</tr></table> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_correction_d_8217_un_circuit">6.2. Correction d’un circuit</h3> +<div class="paragraph"><p>Il est souvent nécessaire de modifier un circuit après un changement dans le +schéma.</p></div> +<div class="sect3"> +<h4 id="_etapes_a_suivre">6.2.1. Étapes à suivre</h4> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Créez une nouvelle netliste à partir du schéma modifié. +Si de nouveaux composants ont été ajoutés, associez les à leurs empreintes +correspondantes dans CvPcb. +</p> +</li> +<li> +<p> +Lisez la netliste dans Pcbnew. +</p> +</li> +</ol></div> +</div> +<div class="sect3"> +<h4 id="_destruction_de_pistes_incorrectes">6.2.2. Destruction de pistes incorrectes</h4> +<div class="paragraph"><p>Pcbnew est capable de supprimer automatiquement les pistes qui sont devenues +incorrectes à la suite de modifications. Pour ce faire, cochez l’option +"Supprimer" dans la case <em>Pistes non connectées</em> de la fenêtre de netliste :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_bad_tracks_deletion_option.png" alt="images/Pcbnew_bad_tracks_deletion_option.png"> +</div> +</div> +<div class="paragraph"><p>Toutefois, il est parfois plus rapide de corriger manuellement ces pistes +(l’outil DRC permet leur identification).</p></div> +</div> +<div class="sect3"> +<h4 id="_composants_supprimes">6.2.3. Composants supprimés</h4> +<div class="paragraph"><p>Pcbnew peut supprimer les empreintes correspondant à des composants ayant +été supprimés du schéma. Ceci est facultatif.</p></div> +<div class="paragraph"><p>Cela est nécessaire car il y a souvent des empreintes (par exemple les trous +de vis de fixation) qui sont ajoutées au PCB mais qui n’apparaissent pas +dans le schéma.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_extra_footprints_deletion_option.png" alt="images/Pcbnew_extra_footprints_deletion_option.png"> +</div> +</div> +<div class="paragraph"><p>Si l’option <em>Supprimer</em> des "Empreintes Supplémentaires" est cochée, les +empreintes correspondant à des composants non trouvés dans la netliste +seront supprimées, sauf si elles ont l’option "Verrouillée" activée. C’est +une bonne idée d’activer cette option pour les empreintes "mécaniques":</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_unlock_footprint_option.png" alt="images/Pcbnew_unlock_footprint_option.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_empreintes_modifiees">6.2.4. Empreintes modifiées</h4> +<div class="paragraph"><p>Si une empreinte est changée dans la netliste (en utilisant CvPcb), mais que +l’empreinte a déjà été placée, elle ne sera pas modifiée par Pcbnew, sauf si +l’option <em>Changer</em> de <em>Échange empreinte</em> a été cochée dans la fenêtre de +netliste :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_exchange_module_option.png" alt="images/Pcbnew_exchange_module_option.png"> +</div> +</div> +<div class="paragraph"><p>Le changement d’une empreinte (par exemple, le remplacement d’une résistance +par une autre de taille différente), peut être effectué directement en +éditant l’empreinte.</p></div> +</div> +<div class="sect3"> +<h4 id="_options_avancees_selection_par_horodatage">6.2.5. Options avancées - sélection par horodatage</h4> +<div class="paragraph"><p>Quelquefois, l’annotation du schéma est modifiée, sans qu’aucun changement +matériel ne soit fait sur le circuit (cela concerne les références - comme +R5, U4 …). Le PCB est donc inchangé (sauf éventuellement pour les +marquages sérigraphiques). Néanmoins, en interne, les composants et les +empreintes y sont représentés par leur référence. Dans ce cas, l’option +<em>Timestamp</em> de la boîte de dialogue netliste peut être choisie avant la +relecture de la netliste :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_module_selection_option.png" alt="images/Pcbnew_module_selection_option.png"> +</div> +</div> +<div class="paragraph"><p>Avec cette option, Pcbnew n’identifiera plus les empreintes par leurs +références, mais par leur horodatage (timestamp). Le timestamp est +automatiquement généré par Eeschema (c’est la date et l’heure à laquelle le +composant a été placé dans le schéma).</p></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Attention</div> +</td> +<td class="content">Le plus grand soin doit être apporté quand on utilise cette option +(enregistrez le fichier avant !). Ceci parce que cette technique est +compliquée dans le cas de composants contenant des unités multiples (ex : le +7400 a 4 portes dans un seul boîtier). Dans ce cas le timestamp n’est pas +défini de façon unique (pour le 7400, il y en aura 4, un par +unité). Néanmoins, l’option timestamp permet habituellement de résoudre les +problèmes de ré-annotation.</td> +</tr></table> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_echange_direct_d_8217_empreintes_deja_placees_sur_le_circuit">6.3. Échange direct d’empreintes déjà placées sur le circuit</h3> +<div class="paragraph"><p>Le changement d’une empreinte (ou plusieurs empreintes identiques) vers une +autre est très utile, et très facile :</p></div> +<div class="olist arabic"><ol class="arabic"> +<li> +<p> +Double-Cliquez sur une empreinte pour ouvrir la fenêtre d'édition. +</p> +</li> +<li> +<p> +Cliquez sur Changer Empreinte. +</p> +</li> +</ol></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_change_modules_button.png" alt="images/Pcbnew_change_modules_button.png"> +</div> +</div> +<div class="paragraph"><p>Options de <em>Changer Empreinte(s)</em> :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_footprint_exchange_options.png" alt="images/Pcbnew_footprint_exchange_options.png"> +</div> +</div> +<div class="paragraph"><p>Il faut choisir un nouveau nom d’empreinte et utiliserc:</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Changer l’empreinte de <em>xx</em></strong> pour l’empreinte courante. +</p> +</li> +<li> +<p> +<strong>Changer empreintes <em>yy</em></strong> pour changer toutes les empreintes identiques à celle courante. +</p> +</li> +<li> +<p> +<strong>Changer empreinte ayant même valeur</strong> pour toutes les empreintes identiques à l’empreinte + courante avec limitation aux composants de même valeur. +</p> +</li> +<li> +<p> +<strong>Update all footprints of the board</strong> for reloading of all footprints on board. +</p> +</li> +</ul></div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_placement_d_8217_empreintes">7. Placement d’empreintes</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_placement_assiste">7.1. Placement assisté</h3> +<div class="paragraph"><p>Lors du déplacement d’empreintes, le chevelu de l’empreinte (les connexions +aux autres composants) peut être affiché pour aider au placement. Pour +afficher ce chevelu, le bouton <span class="image"> +<img src="images/icons/modratsnest.png" alt="images/icons/modratsnest.png"> +</span> de la +barre d’outils de gauche doit être activé.</p></div> +</div> +<div class="sect2"> +<h3 id="_placement_manuel">7.2. Placement manuel</h3> +<div class="paragraph"><p>Sélectionnez l’empreinte avec le bouton droit de la souris, puis choisissez +la commande Déplacer dans le sous-menu de l’empreinte. Déplacez l’empreinte +à la position désirée et placez la avec le bouton gauche de la souris. Si +nécessaire, l’empreinte sélectionnée peut également être tournée, renversée +ou modifiée. Sélectionnez Annuler dans le menu (ou appuyez sur la touche +Echap) pour annuler.</p></div> +<div class="paragraph"><p>Ici vous pouvez voir l’affichage du chevelu de l’empreinte lors d’un +déplacement :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_ratsnest_during_move.png" alt="images/Pcbnew_ratsnest_during_move.png"> +</div> +</div> +<div class="paragraph"><p>Le circuit, une fois que toutes les empreintes ont été placées, peut +ressembler à ça :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_circuit_after_placement.png" alt="images/Pcbnew_circuit_after_placement.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_distribution_automatique_d_8217_empreintes">7.3. Distribution Automatique d’Empreintes</h3> +<div class="paragraph"><p>D’une manière générale, les empreintes ne peuvent être déplacées que si +elles n’ont pas été "Verrouillées". Cet attribut peut être activé ou +désactivé à partir du menu contextuel (clic droit de la souris sur +l’empreinte), en étant en Mode empreinte, ou par le menu Éditer Paramètres +de l’empreinte.</p></div> +<div class="paragraph"><p>Comme indiqué dans le chapitre précédent, les nouvelles empreintes chargées +lors de la lecture de la netliste apparaissent empilées en un seul endroit +du circuit. Pcbnew permet la répartition automatique des empreintes, afin de +les sélectionner et les placer à la main plus facilement.</p></div> +<div class="ulist"><ul> +<li> +<p> +Sélectionnez le "Mode empreinte", bouton + <span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span> de la barre d’outils du haut. +</p> +</li> +<li> +<p> +Le menu contextuel, activé du bouton droit de la souris, devient : +</p> +</li> +</ul></div> +<div class="paragraph"><p>S’il y a une empreinte sous le curseur :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_context_module_mode_module_under_cursor.png" alt="images/Pcbnew_context_module_mode_module_under_cursor.png"> +</div> +</div> +<div class="paragraph"><p>S’il n’y a rien sous le curseur :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_context_module_mode_no_module_under_cursor.png" alt="images/Pcbnew_context_module_mode_no_module_under_cursor.png"> +</div> +</div> +<div class="paragraph"><p>Dans les deux cas, les commandes suivantes sont disponibles :</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Étaler Toutes les Empreintes</strong> permet la distribution automatique de toutes les + empreintes non verrouillées. Ceci est généralement utilisé après la première lecture de + la netliste. +</p> +</li> +<li> +<p> +<strong>Étaler Toutes les Empreintes non déjà sur le C.I.</strong> permet la distribution + automatique de toutes les empreintes qui n’ont pas encore été placées à + l’intérieur du contour du PCB. Cette commande requiert que le contour + du circuit ait été tracé pour savoir quelle empreintes doivent être + automatiquement distribuées. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_placement_automatique_d_8217_empreintes">7.4. Placement Automatique d’Empreintes</h3> +<div class="sect3"> +<h4 id="_caracteristiques_du_placement_automatique">7.4.1. Caractéristiques du placement automatique</h4> +<div class="paragraph"><p>La fonction de placement automatique permet le placement des empreintes sur +les 2 faces du circuit imprimé (toutefois, le basculement des empreintes +entre les couches cuivrées n’est pas automatique).</p></div> +<div class="paragraph"><p>It also seeks the best orientation (0, 90, -90, 180 degrees) of the +footprint. The placement is made according to an optimization algorithm, +which seeks to minimize the length of the ratsnest, and which seeks to +create space between the larger footprints with many pads. The order of +placement is optimized to initially place these larger footprints with many +pads.</p></div> +</div> +<div class="sect3"> +<h4 id="_preparation">7.4.2. Préparation</h4> +<div class="paragraph"><p>Pcbnew peut donc placer automatiquement les empreintes, mais il est +nécessaire de guider ce placement, car aucun logiciel ne peut deviner à quoi +l’utilisateur veut arriver.</p></div> +<div class="paragraph"><p>Avant le placement automatique, on doit :</p></div> +<div class="ulist"><ul> +<li> +<p> +Créer le contour de la carte (il peut être complexe, mais doit être fermé si + sa forme n’est pas rectangulaire). +</p> +</li> +<li> +<p> +Placer manuellement les composants dont la position est imposée + (connecteurs, trous de fixations, etc…). +</p> +</li> +<li> +<p> +De même, si certaines empreintes CMS ou des composants critiques (les + grandes empreintes par exemple) doivent être sur un côté ou dans une + position spécifiques du circuit, ce doit être fait manuellement. +</p> +</li> +<li> +<p> +Avoir "Verrouillé" ces empreintes placées manuellement pour empêcher leur + déplacement. En Mode empreinte, bouton <span class="image"> +<img src="images/icons/mode_module.png" alt="images/icons/mode_module.png"> +</span> + activé, cliquer du bouton droit et choisir "Verrouille Empreinte" dans le + menu contextuel. On peut également le faire par le sous-menu "Éditer + Paramètres" de l’empreinte. +</p> +</li> +<li> +<p> +Le placement automatique peut alors être effectué. Mode empreinte activé, + cliquez du bouton droit et sélectionnez <strong>Étalements et Placements Globaux</strong>, + puis <strong>Placer Automatiquement toutes les Empreintes</strong>. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Lors du placement automatique, si nécessaire, Pcbnew peut optimiser +l’orientation des empreintes. Cependant cette rotation ne sera tentée que si +cela a été autorisé pour l’empreinte (voir les options de "Éditer +Paramètres").</p></div> +<div class="paragraph"><p>Habituellement, les résistances et les condensateurs non polarisés sont +autorisés à une rotation de 180 degrés. Certaines empreintes (petits +transistors par exemple), peuvent être autorisés à des rotations de +/- 90 +et 180 degrés.</p></div> +<div class="paragraph"><p>Pour chaque empreinte, un curseur autorise la rotation sur 90 degrés et un +deuxième sur 180 degrés. Un réglage de 0 empêche la rotation, un réglage de +10 l’autorise, et une valeur intermédiaire indique plus ou moins la +préférence de rotation.</p></div> +<div class="paragraph"><p>L’autorisation de rotation peut être réglée en modifiant l’empreinte une +fois qu’elle est placée sur le circuit. Toutefois, il est préférable de +définir les options requises pour l’empreinte en librairie, afin que ces +paramètres soient hérités à chaque fois que l’empreinte est utilisée.</p></div> +</div> +<div class="sect3"> +<h4 id="_placement_automatique_interactif">7.4.3. Placement automatique interactif</h4> +<div class="paragraph"><p>Il peut être nécessaire d’interrompre le placement automatique (appuyez sur +la touche Esc), et de repositionner manuellement une +empreinte. L’utilisation de la commande <strong>Placer Automatiquement Empreintes +Suivantes</strong> va reprendre le placement automatique à partir du moment où il a +été arrêté.</p></div> +<div class="paragraph"><p>La commande <strong>Placer Automatiquement Nouvelles Empreintes</strong> permet le +placement automatique des empreintes qui n’ont pas déjà été placées à +l’intérieur du contour du PCB. Elle ne bougera pas celles situées dans le +contour de PCB, même si elles ne sont pas "verrouillées".</p></div> +<div class="paragraph"><p>The command Autoplace Footprint makes it possible to execute an +autoplacement on the footprint pointed to by the mouse, even if its <em>fixed</em> +attribute is active.</p></div> +</div> +<div class="sect3"> +<h4 id="_notes_additionnelles">7.4.4. Notes additionnelles</h4> +<div class="paragraph"><p>Pcbnew détermine automatiquement la zone possible de placement des +empreintes en suivant la forme du contour de carte, qui ne sera pas +forcément rectangulaire (elle peut être ronde, avoir des découpes, etc…).</p></div> +<div class="paragraph"><p>Si le circuit n’est pas rectangulaire, son contour doit être fermé, de sorte +que Pcbnew puisse déterminer ce qui est à l’intérieur et ce qui est en +dehors. De la même façon, s’il y a des découpes internes, leurs contours +devront être fermés.</p></div> +<div class="paragraph"><p>Pcbnew calcule la zone possible de placement des empreintes à l’aide du +contour de la carte, puis promène les empreintes tour à tour sur cette zone, +afin de déterminer la position optimale où les placer.</p></div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_reglage_des_parametres_du_routage">8. Réglage des paramètres du routage</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_parametres_actuels">8.1. Paramètres actuels</h3> +<div class="sect3"> +<h4 id="_acces_a_la_boite_de_dialogue_principale">8.1.1. Accès à la boite de dialogue principale</h4> +<div class="paragraph"><p>On accède aux paramètres les plus importants par le menu suivant :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_design_rules_dropdown.png" alt="images/Pcbnew_design_rules_dropdown.png"> +</div> +</div> +<div class="paragraph"><p>et on les ajuste dans la fenêtre Règles de Conception.</p></div> +</div> +<div class="sect3"> +<h4 id="_parametres_actuels_2">8.1.2. Paramètres actuels</h4> +<div class="paragraph"><p>Les réglages actuels sont affichés dans la barre d’outils du haut.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_design_rules_top_toolbar.png" alt="images/Pcbnew_design_rules_top_toolbar.png"> +</div> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_options_generales">8.2. Options générales</h3> +<div class="paragraph"><p>Les options générales sont accessibles par le menu Préférences → Général.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_preferences_menu.png" alt="images/Pcbnew_preferences_menu.png"> +</div> +</div> +<div class="paragraph"><p>La fenêtre ressemble à ceci :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_general_options_dialog.png" alt="images/Pcbnew_general_options_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Pour la création de pistes, les paramètres nécessaires sont :</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Limiter les pistes à 45°</strong> : Les directions de segments de pistes autorisées sont 0, 45 ou + 90 degrés. +</p> +</li> +<li> +<p> +<strong>Utiliser deux segments pour piste</strong> : Lors de la création de pistes, 2 segments seront + affichés. +</p> +</li> +<li> +<p> +<strong>Suppression automatique de pistes</strong> : Quand on recrée une piste, l’ancienne sera + automatiquement supprimée si elle fait doublon. +</p> +</li> +<li> +<p> +<strong>Pads Magnétiques</strong> : Le curseur graphique devient une pastille(pad), centré + sur la zone de la pastille. +</p> +</li> +<li> +<p> +<strong>Pistes Magnétiques</strong> : Le curseur graphique devient l’axe de la piste. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_netclasses">8.3. Netclasses</h3> +<div class="paragraph"><p>Pcbnew vous permet de définir différents paramètres de routage, pour chaque +équipotentielle (ou net). Les paramètres sont définis pour des groupes de +nets.</p></div> +<div class="ulist"><ul> +<li> +<p> +Un groupe de nets est appelé une Netclasse. +</p> +</li> +<li> +<p> +Il y a toujours une netclasse nommée "Default". +</p> +</li> +<li> +<p> +L’utilisateur peut ajouter d’autres Netclasses. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Une netclasse spécifie :</p></div> +<div class="ulist"><ul> +<li> +<p> +La largeur des pistes, les diamètres et les perçages des vias. +</p> +</li> +<li> +<p> +La distance d’isolement entre les pastilles (ou les vias) et les pistes. +</p> +</li> +<li> +<p> +Lors du routage, Pcbnew sélectionne automatiquement la netclasse + correspondant à l'équipotentielle (net) de la piste à créer ou à modifier, + et les paramètres de routage correspondants. +</p> +</li> +</ul></div> +<div class="sect3"> +<h4 id="_reglage_des_parametres_du_routage_2">8.3.1. Réglage des paramètres du routage</h4> +<div class="paragraph"><p>Ces choix sont faits par le menu : Règles de Conception → Règles de +Conception.</p></div> +</div> +<div class="sect3"> +<h4 id="_editeur_de_netclasse">8.3.2. Éditeur de Netclasse</h4> +<div class="paragraph"><p>L'éditeur de Netclasse vous permet de :</p></div> +<div class="ulist"><ul> +<li> +<p> +Ajouter ou supprimer des Netclasses. +</p> +</li> +<li> +<p> +Ajuster les paramètres : isolation, largeur piste, dimensions des vias. +</p> +</li> +<li> +<p> +Regrouper des nets en netclasses. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_design_rules_editor_netclass_tab.png" alt="images/Pcbnew_design_rules_editor_netclass_tab.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_regles_de_conception_globales">8.3.3. Règles de Conception Globales</h4> +<div class="paragraph"><p>Les règles de conception globales sont :</p></div> +<div class="ulist"><ul> +<li> +<p> +Autoriser/Interdire l’usage des vias aveugles/enterrées. +</p> +</li> +<li> +<p> +Autoriser/Interdire l’usage des micro-vias. +</p> +</li> +<li> +<p> +Valeurs minimum autorisées pour les pistes et vias. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Le DRC générera une erreur quand une valeur inférieure au minimum spécifié +sera rencontrée. Le deuxième onglet de la fenêtre :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_design_rules_editor_global_tab.png" alt="images/Pcbnew_design_rules_editor_global_tab.png"> +</div> +</div> +<div class="paragraph"><p>This dialog also allows to enter a "stock" of tracks and via sizes.</p></div> +<div class="paragraph"><p>Pendant le routage, on peut choisir une de ces dimensions, pour créer une +piste ou une via, au lieu d’utiliser la valeur par défaut de la netclasse.</p></div> +<div class="paragraph"><p>C’est utile dans des cas critiques, où une partie de piste doit avoir une +dimension spécifique.</p></div> +</div> +<div class="sect3"> +<h4 id="_parametres_des_vias">8.3.4. Paramètres des vias</h4> +<div class="paragraph"><p>Pcbnew gère trois types de vias :</p></div> +<div class="ulist"><ul> +<li> +<p> +Vias traversantes (les plus courantes). +</p> +</li> +<li> +<p> +Vias aveugles, ou enterrées. +</p> +</li> +<li> +<p> +Micro Vias, identiques aux vias enterrées, mais limitées entre une couche + externe et sa voisine la plus proche. Elles sont destinées à connecter les + pins BGA à la couche intérieure la plus proche. Leur diamètre est + généralement très faible et elles sont percées au laser. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Par défaut, tous les vias ont le même diamètre de perçage.</p></div> +<div class="paragraph"><p>Cette fenêtre spécifie les plus petites valeurs acceptables pour les +vias. Sur un circuit, une via plus petite que spécifiée générera une erreur +DRC.</p></div> +</div> +<div class="sect3"> +<h4 id="_parametres_des_pistes">8.3.5. Paramètres des pistes</h4> +<div class="paragraph"><p>Spécifie les plus petites valeurs acceptables pour les pistes. Sur un +circuit, une piste plus petite que spécifiée générera une erreur DRC.</p></div> +</div> +<div class="sect3"> +<h4 id="_tailles_specifiques">8.3.6. Tailles spécifiques</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_specific_size_options.png" alt="images/Pcbnew_specific_size_options.png"> +</div> +</div> +<div class="paragraph"><p>One can enter a set of extra tracks and/or via sizes. While routing a track, +these values can be used on demand instead of the values from the current +netclass values.</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_exemples_et_dimensions_typiques">8.4. Exemples et dimensions typiques</h3> +<div class="sect3"> +<h4 id="_largeur_de_piste">8.4.1. Largeur de piste</h4> +<div class="paragraph"><p>Utilisez la plus grande valeur possible, conforme aux dimensions minimales +indiquées ici.</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<thead> +<tr> +<th class="tableblock halign-left valign-top" > Unités </th> +<th class="tableblock halign-left valign-top" > CLASS 1 </th> +<th class="tableblock halign-left valign-top" > CLASS 2 </th> +<th class="tableblock halign-left valign-top" > CLASS 3 </th> +<th class="tableblock halign-left valign-top" > CLASS 4 </th> +<th class="tableblock halign-left valign-top" > CLASS 5</th> +</tr> +</thead> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">mm</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.8</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.5</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.4</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.25</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.15</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">mils</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">31</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">20</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">16</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">10</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">6</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect3"> +<h4 id="_isolation_distance">8.4.2. Isolation (distance)</h4> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<col style="width:16%;"> +<thead> +<tr> +<th class="tableblock halign-left valign-top" > Unités </th> +<th class="tableblock halign-left valign-top" > CLASS 1 </th> +<th class="tableblock halign-left valign-top" > CLASS 2 </th> +<th class="tableblock halign-left valign-top" > CLASS 3 </th> +<th class="tableblock halign-left valign-top" > CLASS 4 </th> +<th class="tableblock halign-left valign-top" > CLASS 5</th> +</tr> +</thead> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">mm</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.7</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.5</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.35</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.23</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">0.15</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">mils</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">27</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">20</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">14</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">9</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">6</p></td> +</tr> +</tbody> +</table> +<div class="paragraph"><p>Habituellement, la distance minimale d’isolement sera très similaire à la +largeur minimale de piste.</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_exemples">8.5. Exemples</h3> +<div class="sect3"> +<h4 id="_rustique">8.5.1. Rustique</h4> +<div class="ulist"><ul> +<li> +<p> +Clearance: 0.35 mm (0.0138 inches). +</p> +</li> +<li> +<p> +Track width: 0.8 mm (0.0315 inches). +</p> +</li> +<li> +<p> +Pad diameter for ICs and vias: 1.91 mm (0.0750 inches). +</p> +</li> +<li> +<p> +Pad diameter for discrete components: 2.54 mm (0.1 inches). +</p> +</li> +<li> +<p> +Ground track width: 2.54 mm (0.1 inches). +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_dr_example_rustic.png" alt="images/Pcbnew_dr_example_rustic.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_standard">8.5.2. Standard</h4> +<div class="ulist"><ul> +<li> +<p> +Isolation : 0.35mm (0.0138 inches). +</p> +</li> +<li> +<p> +Largeur piste : 0.5mm (0.0127 inches). +</p> +</li> +<li> +<p> +Pad diameter for ICs: make them elongated in order to allow tracks to pass + between IC pads and yet have the pads offer a sufficient adhesive surface + (1.27 x 2.54 mm -→ 0.05 x 0.1 inches). +</p> +</li> +<li> +<p> +Vias: 1.27 mm (0.0500 inches). +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_dr_example_standard.png" alt="images/Pcbnew_dr_example_standard.png"> +</div> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_routage_manuel">8.6. Routage manuel</h3> +<div class="paragraph"><p>Manual routing is often recommended, because it is the only method offering +control over routing priorities. For example, it is preferable to start by +routing power tracks, making them wide and short and keeping analog and +digital supplies well separated. Later, sensitive signal tracks should be +routed. Amongst other problems, automatic routing often requires many +vias. However, automatic routing can offer a useful insight into the +positioning of footprints. With experience, you will probably find that the +automatic router is useful for quickly routing the <em>obvious</em> tracks, but the +remaining tracks will best be routed by hand.</p></div> +</div> +<div class="sect2"> +<h3 id="_aide_lors_de_la_creation_des_pistes">8.7. Aide lors de la création des pistes</h3> +<div class="paragraph"><p>Pcbnew peut afficher le chevelu complet, si le bouton +<span class="image"> +<img src="images/icons/modratsnest.png" alt="images/icons/modratsnest.png"> +</span> est activé.</p></div> +<div class="paragraph"><p>Le bouton <span class="image"> +<img src="images/icons/net_highlight.png" alt="images/icons/net_highlight.png"> +</span> permet de mettre en +surbrillance un net (équipotentielle). Cliquez sur une pastille ou sur une +piste pour mettre en surbrillance le net correspondant.</p></div> +<div class="paragraph"><p>La vérification des règles électriques (DRC) vérifie le tracé des pistes en +temps réel pendant la création. On ne peut pas créer une piste qui ne +corresponde pas aux règles de la DRC. Il est possible de désactiver la DRC +en cliquant sur un bouton. Ceci n’est cependant pas recommandé, et il ne +faudra l’utiliser que dans des cas spécifiques.</p></div> +<div class="sect3"> +<h4 id="_creation_de_pistes">8.7.1. Création de pistes</h4> +<div class="paragraph"><p>Une piste peut être créée en cliquant sur le bouton: +<span class="image"> +<img src="images/icons/add_tracks.png" alt="images/icons/add_tracks.png"> +</span>. Une nouvelle piste doit débuter sur un +pad ou sur une autre piste, parce que Pcbnew doit connaître le net utilisé +pour la nouvelle piste (afin de respecter les règles de la DRC).</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_creating_new_track.png" alt="images/Pcbnew_creating_new_track.png"> +</div> +</div> +<div class="paragraph"><p>Lors de la création d’une nouvelle piste, Pcbnew affiche les liens vers les +pads non connectées les plus proches. Le nombre de ces liens est défini dans +l’option "Liens Max." des Options générales.</p></div> +<div class="paragraph"><p>Terminez la piste en double-cliquant, ou par le menu contextuel, ou encore +par le raccourci clavier <em>Fin</em> (End).</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_track_in_progres_context.png" alt="images/Pcbnew_track_in_progres_context.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_deplacement_et_traction_de_pistes">8.7.2. Déplacement et traction de pistes</h4> +<div class="paragraph"><p>Lorsque le bouton <span class="image"> +<img src="images/icons/add_tracks.png" alt="images/icons/add_tracks.png"> +</span> est actif, la piste +sous la position du curseur peut être déplacée (move) avec le raccourci +clavier <em>M</em>. Si vous voulez tirer (drag) la piste, vous utiliserez le +raccourci clavier <em>G</em>.</p></div> +</div> +<div class="sect3"> +<h4 id="_insertion_de_vias">8.7.3. Insertion de Vias</h4> +<div class="paragraph"><p>Une via ne peut être insérée que si le tracé d’une piste est en cours :</p></div> +<div class="ulist"><ul> +<li> +<p> +Par le menu contextuel. +</p> +</li> +<li> +<p> +Par le raccourci clavier <em>V</em>. +</p> +</li> +<li> +<p> +En basculant sur une autre couche cuivrée par le raccourci correspondant. +</p> +</li> +</ul></div> +</div> +</div> +<div class="sect2"> +<h3 id="_selection_edition_de_largeur_de_piste_et_taille_de_via">8.8. Sélection/édition de largeur de piste et taille de via</h3> +<div class="paragraph"><p>When clicking on a track or a pad, Pcbnew automatically selects the +corresponding Netclass, and the track size and via dimensions are derived +from this netclass.</p></div> +<div class="paragraph"><p>As previously seen, the Global Design Rules editor has a tool to insert +extra tracks and via sizes.</p></div> +<div class="ulist"><ul> +<li> +<p> +La barre d’outil du haut peut être utilisée pour choisir une dimension. +</p> +</li> +<li> +<p> +Quand le bouton <span class="image"> +<img src="images/icons/add_tracks.png" alt="images/icons/add_tracks.png"> +</span> est actif, la largeur de + la piste en cours peut être choisie par le menu contextuel (accessible aussi + à la création d’une piste). +</p> +</li> +<li> +<p> +L’utilisateur peut utiliser les valeurs par défaut des Netclasses ou une + valeur spécifique. +</p> +</li> +</ul></div> +<div class="sect3"> +<h4 id="_utilisation_de_la_barre_d_8217_outils_horizontale">8.8.1. Utilisation de la barre d’outils horizontale</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_track_toolbar.png" alt="images/Pcbnew_track_toolbar.png"> +</div> +</div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:40%;"> +<col style="width:60%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_toolbar_track_width_selection.png" alt="images/Pcbnew_track_toolbar_track_width_selection.png" width="70%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Track width selection. The symbol * is a mark for default Netclass +value selection.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_toolbar_track_width_selection_in_use.png" alt="images/Pcbnew_track_toolbar_track_width_selection_in_use.png" width="70%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Selecting a specific track width value. +The first value in the list is always the netclass value. +Other values are tracks widths entered from the Global Design Rules editor.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_toolbar_via_size_selection.png" alt="images/Pcbnew_track_toolbar_via_size_selection.png" width="70%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Via size selection. +The symbol * is a mark for default Netclass value selection.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_toolbar_via_size_selection_in_use.png" alt="images/Pcbnew_track_toolbar_via_size_selection_in_use.png" width="70%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Selecting a specific via dimension value. +The first value in the list is always the netclass value. +Other values are via dimensions entered from the Global Design Rules editor.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/auto_track_width.png" alt="images/icons/auto_track_width.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">When enabled: Automatic track width selection. +When starting a track on an existing track, the new track has the same width as the existing track.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_toolbar_grid_size_selection.png" alt="images/Pcbnew_track_toolbar_grid_size_selection.png" width="70%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Grid size selection.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/Pcbnew_track_toolbar_zoom_selection.png" alt="images/Pcbnew_track_toolbar_zoom_selection.png" width="70%"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Zoom selection.</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect3"> +<h4 id="_utilisation_du_menu_contextuel">8.8.2. Utilisation du menu contextuel</h4> +<div class="paragraph"><p>On peut choisir une nouvelle taille pour le routage, ou changer pour celle +d’une via, ou d’une piste, déjà créée :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_track_context_menu.png" alt="images/Pcbnew_track_context_menu.png"> +</div> +</div> +<div class="paragraph"><p>Si vous voulez changer la taille de plusieurs vias (ou de pistes), le +meilleur moyen est d’utiliser une Netclasse spécifique pour le ou les nets +qui doivent être modifiés (voir changements globaux).</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_edition_et_modification_de_pistes">8.9. Édition et modification de pistes</h3> +<div class="sect3"> +<h4 id="_modification_de_piste">8.9.1. Modification de piste</h4> +<div class="paragraph"><p>Très souvent, il est nécessaire de redessiner une piste.</p></div> +<div class="paragraph"><p>Nouvelle piste (en cours de tracé) :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_new_track_in_progress.png" alt="images/Pcbnew_new_track_in_progress.png"> +</div> +</div> +<div class="paragraph"><p>Une fois finie :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_new_track_completed.png" alt="images/Pcbnew_new_track_completed.png"> +</div> +</div> +<div class="paragraph"><p>Pcbnew détruira automatiquement l’ancienne piste si elle fait doublon.</p></div> +</div> +<div class="sect3"> +<h4 id="_changements_globaux">8.9.2. Changements globaux</h4> +<div class="paragraph"><p>La fenêtre d'édition globale des tailles de pistes et de vias est accessible +par le menu contextuel en cliquant du bouton droit sur une piste :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_track_global_edit_context_menu.png" alt="images/Pcbnew_track_global_edit_context_menu.png"> +</div> +</div> +<div class="paragraph"><p>Cette boite de dialogue permet des changements globaux de pistes ou vias +pour :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le net actuel. +</p> +</li> +<li> +<p> +Le circuit entier. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_track_global_edit_dialog.png" alt="images/Pcbnew_track_global_edit_dialog.png"> +</div> +</div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_routeur_interactif">9. Routeur Interactif</h2> +<div class="sectionbody"> +<div class="paragraph"><p>Le routeur interactif vous permet de router rapidement et efficacement vos +PCB, en repoussant ou en contournant les éléments du PCB qui s’interposent +sur le chemin de la piste que vous êtes en train de tracer.</p></div> +<div class="paragraph"><p>Les modes suivants sont supportés :</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Surbrillance des Collisions</strong>, qui met en surbrillance tous les objets posant problème au moyen + d’une jolie et brillante couleur verte, et qui indique les zones violant l’isolation. +</p> +</li> +<li> +<p> +<strong>Pousser</strong>, qui essaie de pousser et traverser tous les éléments qui entrent en collision avec la + piste en cours de routage. +</p> +</li> +<li> +<p> +<strong>Contourner</strong>, qui essaie d'éviter les obstacles en les rasant et en les + contournant. +</p> +</li> +</ul></div> +<div class="sect2"> +<h3 id="_reglages">9.1. Réglages</h3> +<div class="paragraph"><p>Avant d’utiliser le routeur interactif, veuillez effectuer les deux choses +suivantes :</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Paramètres d’isolation</strong> Pour régler les distances d’isolation, ouvrez la fenêtre + des Règles de Conception, et assurez-vous que la valeur par défaut a l’air + correcte. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/en/rules_editor.png" alt="Rules editor"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +<strong>Passez en mode OpenGL</strong>, menu <em>Affichage → Commuter l’affichage sur OpenGL</em>, + ou en appuyant sur <strong>F11</strong>. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/en/opengl_menu.png" alt="OpenGL mode"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_trace_des_pistes">9.2. Tracé des pistes</h3> +<div class="paragraph"><p>Pour activer l’outil de routage, appuyez sur le bouton du Routeur Interactif +<span class="image"> +<img src="images/route_icon.png" alt="Interactive Router Button"> +</span>, ou sur la touche +<strong>X</strong>. Le curseur va se transformer en une croix, et le nom de l’outil +apparaîtra dans la barre d'état.</p></div> +<div class="paragraph"><p>Pour débuter une piste, cliquez sur un élément (pastille, piste ou via), ou +appuyez sur la touche <strong>X</strong>, tout en survolant un élément avec la souris. La +nouvelle piste utilise le net de l'élément de départ. Un clic, ou l’appui +sur <strong>X</strong>, sur un circuit vide, démarre une piste sans aucun net assigné.</p></div> +<div class="paragraph"><p>Déplacez la souris pour définir la forme de la piste. Suivant le mode, le +routeur essayera de suivre la trace de la souris, en contournant les +obstacles immobiles (comme les pastilles) et en repoussant les pistes/vias +gênantes sur le parcours. Le retrait du curseur de la souris remettra à +leurs anciens emplacements les éléments repoussés.</p></div> +<div class="paragraph"><p>Un clic sur un élément, pastille/piste/via, appartenant à la même +équipotentielle (net) termine le tracé. Un clic sur un espace vide fixe les +segments de piste déjà tracés et continue le routage de la piste.</p></div> +<div class="paragraph"><p>Pour interrompre le tracé et annuler les changements (éléments repoussés, +etc…), appuyez simplement sur <strong>Echap</strong>.</p></div> +<div class="paragraph"><p>Pendant le tracé d’une piste, un appui sur <strong>V</strong>, ou la sélection de <em>Placer +Via Traversante</em> du menu contextuel, permet d’insérer une via au bout de la +piste en cours de tracé. En appuyant à nouveau sur <strong>V</strong> on annule l’insertion +de la via. En cliquant à n’importe quel autre endroit, la via est insérée et +le tracé continue.</p></div> +<div class="paragraph"><p>En appuyant sur <strong>/</strong>, ou en sélectionnant <em>Commuter Orientation</em> dans le menu +contextuel, on bascule la direction initiale du segment de piste entre +directe ou diagonale.</p></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content">Par défaut, le routeur va être attiré et va coller aux centres/axes des +éléments. Cette attraction peut être désactivée en appuyant sur +<strong>Shift(Majuscule)</strong> pendant le tracé ou la sélection des éléments.</td> +</tr></table> +</div> +</div> +<div class="sect2"> +<h3 id="_parametrage_des_dimensions_des_pistes_et_des_vias">9.3. Paramétrage des dimensions des pistes et des vias</h3> +<div class="paragraph"><p>Il y a plusieurs façons de sélectionner une largeur de piste / taille de +via, ou de la changer pendant le routage :</p></div> +<div class="ulist"><ul> +<li> +<p> +En utilisant les raccourcis standards de KiCad. +</p> +</li> +<li> +<p> +En appuyant sur <strong>Q</strong>, ou en sélectionnant <em>Dim Utilisateur des Pistes et + Vias</em> dans le menu contextuel, pour saisir une largeur de piste, ou une + taille de via, personnalisée. +</p> +</li> +<li> +<p> +En choisissant une largeur prédéfinie du sous-menu contextuel <em>Sélection + Largeur Piste/Via</em>. +</p> +</li> +<li> +<p> +En sélectionnant <em>Utiliser la largeur de la piste de départ</em> du sous-menu + contextuel <em>Sélection Largeur Piste/Via</em> pour reprendre la largeur de piste + de l'élément de départ, ou des pistes qui y sont déjà connectées. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_traction_d_8217_une_piste_drag">9.4. Traction d’une piste (Drag)</h3> +<div class="paragraph"><p>Le routeur peut faire glisser des segments de piste, des virages et des +vias. Pour tracter un élément, cliquez dessus avec la touche <strong>Ctrl</strong> +enfoncée, ou survolez le à la souris et appuyez sur <strong>G</strong>, ou encore +sélectionnez <em>Drag Piste/Via</em> dans le menu contextuel. Terminez le +déplacement en cliquant à nouveau, ou annulez en appuyant sur <em>Echap</em>.</p></div> +</div> +<div class="sect2"> +<h3 id="_options">9.5. Options</h3> +<div class="paragraph"><p>The router behavior can be configured by pressing <em>E</em> or selecting <em>Routing +Options</em> from the context menu while in the Track mode. It opens a window +like the one below:</p></div> +<div class="paragraph"><p>Les options sont :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/en/router_options.png" alt="Router options window screenshot"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +<strong>Mode</strong> - sélectionne comment le routeur gère les violations des règles de conception (DRC) (pousser, + contourner, etc…) +</p> +</li> +<li> +<p> +<strong>Pousser les vias</strong> - si désactivée, les vias sont considérées comme des objets inamovibles + et seront contournées plutôt que poussées. +</p> +</li> +<li> +<p> +<strong>Sauter les obstacles</strong> - si activée, le routeur tente de déplacer les pistes + en collision derrière les obstacles fixes (par exemple les pastilles) au lieu de + les "réfléchir" derrière la collision +</p> +</li> +<li> +<p> +<strong>Supprimer les pistes redondantes</strong> - supprime les boucles pendant le routage (par ex. si la + nouvelle piste assure la même connectivité qu’une déjà existante, l’ancienne piste sera + supprimée). La suppression de boucle fonctionne localement (seulement entre le début + et la fin de la piste en cours de tracé). +</p> +</li> +<li> +<p> +<strong>Rétrécissement automatique</strong> - si activée, le routeur tente de passer à travers + les pads/vias de manière propre, en évitant les pistes traversantes avec des + angles aigus et dentelés +</p> +</li> +<li> +<p> +<strong>Lissage du drag des segments</strong> - si activée, le routeur tente de fusionner + plusieurs segments dentelés en un seul bien droit (en mode drag). +</p> +</li> +<li> +<p> +<strong>Autoriser les violations de DRC</strong> (mode <em>Surbrillance des Collisions</em> seulement) - permet + de tracer une piste, même si on viole les règles de conception. +</p> +</li> +<li> +<p> +<strong>Effort de l’Optimisation</strong> - définit combien de temps le routeur doit passer à + optimiser les pistes routées/poussées. Plus d’effort signifie un routage plus propre + (mais plus lent), moins d’effort un routage plus rapide, mais des pistes un + peu dentelées. +</p> +</li> +</ul></div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_creation_de_zones_cuivrees_remplies">10. Création de zones cuivrées remplies</h2> +<div class="sectionbody"> +<div class="paragraph"><p>Les zones cuivrées sont délimitées par un contour (polygone fermé), et +peuvent comporter des trous (polygones fermés à l’intérieur du contour). Une +zone peut être dessinée sur une couche cuivre, ou autrement sur une couche +technique.</p></div> +<div class="sect2"> +<h3 id="_creation_de_zones_sur_couches_cuivrees">10.1. Création de zones sur couches cuivrées</h3> +<div class="paragraph"><p>Les connexions de pastilles (et pistes) vers les zones de cuivre remplies +sont vérifiées par le moteur de la DRC. Pour connecter les pads, une zone +doit être remplie (et pas seulement créée). Pcbnew se sert de segments de +piste ou de polygones pour remplir les zones de cuivre.</p></div> +<div class="paragraph"><p>Chaque option a ses avantages et ses inconvénients, le principal +inconvénient étant une augmentation du temps de rafraîchissement de l'écran +sur les machines les plus lentes. Le résultat final sera toutefois le même.</p></div> +<div class="paragraph"><p>Pour des raisons de temps de calcul, le remplissage de la zone n’est pas +refait après chaque changement, mais seulement :</p></div> +<div class="ulist"><ul> +<li> +<p> +Quand une commande de remplissage est demandée. +</p> +</li> +<li> +<p> +Quand le test des Règles de Conception (DRC) est effectué. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Les zones cuivrées doivent être remplies ou re-remplies après avoir fait des +modifications de pistes ou de pastilles. Les zones cuivrées (généralement +les plans de masse et de puissance) sont généralement rattachées à une +équipotentielle (net).</p></div> +<div class="paragraph"><p>Pour créer une zone cuivrée, vous devez :</p></div> +<div class="ulist"><ul> +<li> +<p> +Régler les paramètres (nom de net, couche..). L’activation de la couche et + la mise en surbrillance de ce net ne sont pas obligatoires, mais c’est une + pratique recommandée. +</p> +</li> +<li> +<p> +Créer les limites de la zone (sinon, le circuit entier sera rempli). +</p> +</li> +<li> +<p> +Remplir la zone. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Pcbnew essaie de remplir toutes les zones en une seule pièce et, +normalement, il n’y a pas des blocs de cuivre non connectés. Il peut arriver +que certaines zones ne soient pas remplies. Les zones ne faisant partie +d’aucun net ne sont pas nettoyées et peuvent avoir des zones isolées.</p></div> +</div> +<div class="sect2"> +<h3 id="_creation_de_zone">10.2. Création de zone</h3> +<div class="sect3"> +<h4 id="_creation_des_limites_de_la_zone">10.2.1. Création des limites de la zone</h4> +<div class="paragraph"><p>Utilisez l’outil <span class="image"> +<img src="images/icons/add_zone.png" alt="images/icons/add_zone.png"> +</span>. La couche active doit +être une couche cuivrée. En cliquant pour débuter le contour de la zone, la +fenêtre ci-dessous s’ouvre.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_properties_dialog.png" alt="images/Pcbnew_zone_properties_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Vous pouvez spécifier tous les paramètres pour cette zone :</p></div> +<div class="ulist"><ul> +<li> +<p> +Net (équipotentielle) +</p> +</li> +<li> +<p> +Couche +</p> +</li> +<li> +<p> +Options de remplissage +</p> +</li> +<li> +<p> +Options pour les pastilles +</p> +</li> +<li> +<p> +Niveau de priorité +</p> +</li> +</ul></div> +<div class="paragraph"><p>Draw the zone limit on this layer. This zone limit is a polygon, created by +left-clicking at each corner. A double-click will end and close the +polygon. If the starting point and ending point are not at the same +coordinate, Pcbnew will add a segment from the end point to the start point.</p></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content"> +<div class="ulist"><ul> +<li> +<p> +Le contrôle DRC est actif pendant la création de contours de zones. +</p> +</li> +<li> +<p> +Un coin qui génère une erreur DRC ne sera pas accepté par Pcbnew. +</p> +</li> +</ul></div> +</td> +</tr></table> +</div> +<div class="paragraph"><p>Dans l’image qui suit, vous pouvez voir un exemple de limite de zone +(polygone avec la fine ligne hachurée) :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_limit_example.png" alt="images/Pcbnew_zone_limit_example.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_niveau_de_priorite">10.2.2. Niveau de priorité</h4> +<div class="paragraph"><p>Quelquefois on a besoin de créer une petite zone à l’intérieur d’une grande.</p></div> +<div class="paragraph"><p>Ceci est possible si la petite zone a une priorité supérieure à celle de la +grande.</p></div> +<div class="paragraph"><p>Réglage du niveau de priorité :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_priority_level_setting.png" alt="images/Pcbnew_zone_priority_level_setting.png"> +</div> +</div> +<div class="paragraph"><p>Voici un exemple :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_priority_example.png" alt="images/Pcbnew_zone_priority_example.png"> +</div> +</div> +<div class="paragraph"><p>Après remplissage :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_priority_example_after_filling.png" alt="images/Pcbnew_zone_priority_example_after_filling.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_remplissage_de_la_zone">10.2.3. Remplissage de la zone</h4> +<div class="paragraph"><p>Lors du remplissage d’une zone, Pcbnew enlève tous les ilôts de cuivre non +connectés. Pour accéder aux commandes de remplissage, cliquez du bouton +droit sur le bord de la zone.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_context_menu.png" alt="images/Pcbnew_zone_context_menu.png"> +</div> +</div> +<div class="paragraph"><p>Exécutez la commande "Remplir Zone". Ci-dessous le résultat du remplissage +pour un point de départ à l’intérieur du polygone :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_filling_result.png" alt="images/Pcbnew_zone_filling_result.png"> +</div> +</div> +<div class="paragraph"><p>Le polygone est la limite de la zone de remplissage. Vous pouvez voir une +surface non-remplie à l’intérieur de la zone, car cette surface n’est pas +accessible :</p></div> +<div class="ulist"><ul> +<li> +<p> +Une piste vient créer une barrière, et +</p> +</li> +<li> +<p> +Il n’y a pas de point de départ pour le remplissage de cette surface. +</p> +</li> +</ul></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content">Vous pouvez utiliser plusieurs polygones pour créer des zones vides. Vous +pouvez voir un exemple ici :</td> +</tr></table> +</div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_filled_with_cutout.png" alt="images/Pcbnew_zone_filled_with_cutout.png"> +</div> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_options_de_remplissage">10.3. Options de remplissage</h3> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_filling_options.png" alt="images/Pcbnew_zone_filling_options.png"> +</div> +</div> +<div class="paragraph"><p>Quand vous remplissez une zone, vous devez choisir :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le mode de remplissage. +</p> +</li> +<li> +<p> +La distance d’isolation et l'épaisseur minimale de cuivre. +</p> +</li> +<li> +<p> +De quelle façon les pastilles seront dessinées, ou connectées à cette zone. +</p> +</li> +<li> +<p> +Les paramètres des freins thermiques. +</p> +</li> +</ul></div> +<div class="sect3"> +<h4 id="_mode_de_remplissage">10.3.1. Mode de remplissage</h4> +<div class="paragraph"><p>Les zones peuvent être remplies en utilisant des polygones, ou des +segments. Le résultat est le même. Si vous avez des problèmes avec le mode +polygone (rafraîchissement lent de l'écran), utilisez plutôt des segments.</p></div> +</div> +<div class="sect3"> +<h4 id="_isolation_et_epaisseur_de_cuivre_minimale">10.3.2. Isolation et épaisseur de cuivre minimale</h4> +<div class="paragraph"><p>Un bon choix pour l’isolation est une grille qui est un peu plus grande que +la grille de routage. L'épaisseur de cuivre minimale permet de s’assurer +qu’il n’y aura pas de surfaces de cuivre trop petites.</p></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Attention</div> +</td> +<td class="content">Si cette valeur est trop grande, les petites formes comme les pistes des +freins thermiques ne pourront pas être tracées.</td> +</tr></table> +</div> +</div> +<div class="sect3"> +<h4 id="_options_pour_les_pastilles">10.3.3. Options pour les pastilles</h4> +<div class="paragraph"><p>Les pastilles appartenant au net peuvent être inclues ou exclues de la zone, +ou connectées avec des freins thermiques.</p></div> +<div class="ulist"><ul> +<li> +<p> +Si elles sont inclues, leur soudage ou leur dessoudage peuvent être assez + difficiles, à cause de l’importante masse thermique de la zone à chauffer. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_include_pads.png" alt="images/Pcbnew_zone_include_pads.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Si elles sont exclues, leur connexion à la zone ne sera pas très bonne. +</p> +<div class="ulist"><ul> +<li> +<p> +The zone can be filled only if tracks exists to connect zone areas. +</p> +</li> +<li> +<p> +Les pastilles doivent être connectées par des pistes. +</p> +</li> +</ul></div> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_exclude_pads.png" alt="images/Pcbnew_zone_exclude_pads.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Le frein thermique est un bon compromis. +</p> +<div class="ulist"><ul> +<li> +<p> +Pastilles connectées par 4 segments de piste. +</p> +</li> +<li> +<p> +La largeur des segments de piste est la valeur courante utilisée pour la largeur de piste. +</p> +</li> +</ul></div> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_thermal_relief.png" alt="images/Pcbnew_zone_thermal_relief.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_thermal_relief_parameters">10.3.4. Thermal relief parameters</h4> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_thermal_relief_settings.png" alt="images/Pcbnew_thermal_relief_settings.png"> +</div> +</div> +<div class="paragraph"><p>Vous pouvez régler deux paramètres pour les freins thermiques :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_thermal_relief_parameters.png" alt="images/Pcbnew_thermal_relief_parameters.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_choix_des_parametres">10.3.5. Choix des paramètres</h4> +<div class="paragraph"><p>La valeur de l'épaisseur de cuivre pour les freins thermiques doit être plus +grande que la valeur de l'épaisseur minimum pour la zone de cuivre. Sinon, +ils ne pourront pas être tracés.</p></div> +<div class="paragraph"><p>De la même façon, une valeur trop grande pour ce paramètre, ou pour la +taille de l’antipad ne nous permettra pas de créer un frein thermique pour +les petites pastilles (comme celles des composants CMS).</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_ajout_d_8217_une_zone_vide_a_l_8217_interieur_d_8217_une_zone_remplie">10.4. Ajout d’une zone vide à l’intérieur d’une zone remplie</h3> +<div class="paragraph"><p>Une zone remplie doit être existante. Pour ajouter une zone vide (une +surface non-remplie à l’intérieur de la zone remplie) :</p></div> +<div class="ulist"><ul> +<li> +<p> +Faites un clic droit sur la bordure de la zone existante. +</p> +</li> +<li> +<p> +Choisissez Addition d’une Zone interdite du sous-menu Zones. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_add_cutout_menu_item.png" alt="images/Pcbnew_add_cutout_menu_item.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Créez le nouveau contour. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_unfilled_cutout_outline.png" alt="images/Pcbnew_zone_unfilled_cutout_outline.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_modification_des_contours">10.5. Modification des contours</h3> +<div class="paragraph"><p>Un contour de zone peut être modifié par :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le déplacement d’un angle ou d’un bord. +</p> +</li> +<li> +<p> +L’ajout ou la suppression d’un angle. +</p> +</li> +<li> +<p> +L’ajout d’une zone semblable, ou d’une zone interdite. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Si des polygones se chevauchent, ils seront combinés.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_modification_menu_items.png" alt="images/Pcbnew_zone_modification_menu_items.png"> +</div> +</div> +<div class="paragraph"><p>Pour cela, cliquez du bouton droit sur un angle ou un bord, et choisissez la +commande appropriée.</p></div> +<div class="paragraph"><p>Voici un angle de zone interdite qui a été déplacé :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_corner_move_during.png" alt="images/Pcbnew_zone_corner_move_during.png"> +</div> +</div> +<div class="paragraph"><p>Voici le résultat final :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_corner_move_after.png" alt="images/Pcbnew_zone_corner_move_after.png"> +</div> +</div> +<div class="paragraph"><p>Les polygones ont été combinés.</p></div> +<div class="sect3"> +<h4 id="_ajout_d_8217_une_zone_semblable">10.5.1. Ajout d’une zone semblable</h4> +<div class="paragraph"><p>Addition de la zone semblable :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_add_similar_during.png" alt="images/Pcbnew_zone_add_similar_during.png"> +</div> +</div> +<div class="paragraph"><p>Résultat final :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_zone_add_similar_after.png" alt="images/Pcbnew_zone_add_similar_after.png"> +</div> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_edition_des_parametres_de_zone">10.6. Édition des paramètres de zone</h3> +<div class="paragraph"><p>Par un clic droit sur le contour, et en choisissant <em>Éditer les propriétés +de la Zone</em>, on ouvre la fenêtre des paramètres de la zone. Les paramètres +initiaux peuvent y être rentrés. Si la zone est déjà remplie, elle devra +être re-remplie.</p></div> +</div> +<div class="sect2"> +<h3 id="_remplissage_final">10.7. Remplissage final</h3> +<div class="paragraph"><p>Quand le circuit est terminé, on doit remplir ou re-remplir toutes les +zones. Pour celà :</p></div> +<div class="ulist"><ul> +<li> +<p> +Activez l’outil Zones, bouton <span class="image"> +<img src="images/icons/add_zone.png" alt="images/icons/add_zone.png"> +</span>. +</p> +</li> +<li> +<p> +Clic droit pour faire apparaître le menu contextuel. +</p> +</li> +<li> +<p> +Choisissez Remplir ou Re-remplir Toutes les Zones : + <span class="image"> +<img src="images/Pcbnew_fill_refill_all_zones.png" alt="images/Pcbnew_fill_refill_all_zones.png"> +</span> +</p> +</li> +</ul></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Attention</div> +</td> +<td class="content">Le calcul peut prendre un certain temps si la grille de remplissage est +fine.</td> +</tr></table> +</div> +</div> +<div class="sect2"> +<h3 id="_changement_des_noms_de_nets_des_zones">10.8. Changement des noms de nets des zones</h3> +<div class="paragraph"><p>Après la modification d’un schéma, vous pouvez changer le nom de chaque +net. Par exemple, VCC peut être changé pour +5V.</p></div> +<div class="paragraph"><p>Lors de la vérification globale des règles de conception, Pcbnew vérifie si +le nom de net d’une zone existe, et affiche une erreur dans le cas +contraire.</p></div> +<div class="paragraph"><p>Il faudra modifier manuellement les paramètres de zone, pour remplacer +l’ancien nom de net par le nouveau.</p></div> +</div> +<div class="sect2"> +<h3 id="_creation_de_zones_sur_les_couches_techniques">10.9. Création de zones sur les couches techniques</h3> +<div class="sect3"> +<h4 id="_creation_des_limites_de_zone">10.9.1. Création des limites de zone</h4> +<div class="paragraph"><p>This is done using the button <span class="image"> +<img src="images/icons/add_zone.png" alt="images/icons/add_zone.png"> +</span>. The active +layer must be a technical layer.</p></div> +<div class="literalblock"> +<div class="content monospaced"> +<pre> En cliquant pour débuter le contour de la zone, la fenêtre ci-dessous +s'ouvre :</pre> +</div></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_technical_layer_zone_dialog.png" alt="images/Pcbnew_technical_layer_zone_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Choisissez la couche technique où placer la zone, et dessinez le contour de +la même façon que pour les couches cuivrées.</p></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Note</div> +</td> +<td class="content"> +<div class="ulist"><ul> +<li> +<p> +Pour modifier les contours de zones, utilisez aussi la même méthode que pour + les couches cuivrées. +</p> +</li> +<li> +<p> +Si nécessaire, des zones interdites peuvent être ajoutées. +</p> +</li> +</ul></div> +</td> +</tr></table> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_creation_d_8217_une_zone_interdite">10.10. Création d’une zone interdite</h3> +<div class="paragraph"><p>Sélectionnez l’outil <span class="image"> +<img src="images/icons/add_keepout_area.png" alt="images/icons/add_keepout_area.png"> +</span></p></div> +<div class="paragraph"><p>La couche active doit être une couche cuivrée.</p></div> +<div class="paragraph"><p>Après un clic sur le point de départ, cette fenêtre s’ouvre :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_keepout_area_properties.png" alt="images/Pcbnew_keepout_area_properties.png"> +</div> +</div> +<div class="paragraph"><p>On peut choisir les éléments interdits :</p></div> +<div class="ulist"><ul> +<li> +<p> +Pas de pistes. +</p> +</li> +<li> +<p> +Pas de vias. +</p> +</li> +<li> +<p> +Sans zone cuivre. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Quand une piste ou une via est à l’intérieur d’une zone interdite qui ne +l’autorise pas, une erreur DRC sera générée.</p></div> +<div class="paragraph"><p>Pour les zones cuivrées, la surface à l’intérieur d’une zone interdite sans +zone cuivre ne sera pas remplie. Une zone interdite est comme une zone +remplie, l'édition de son contour est identique à celle des zones cuivrées.</p></div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_fichiers_de_fabrication_du_circuit">11. Fichiers de fabrication du circuit</h2> +<div class="sectionbody"> +<div class="paragraph"><p>Voyons maintenant les étapes nécessaires à la création des fichiers pour la +production de votre circuit imprimé.</p></div> +<div class="paragraph"><p>Tous les fichiers générés par KiCad sont situés dans le répertoire de +travail qui est le même répertoire qui contient le fichier xxxx.kicad_brd +pour le circuit imprimé.</p></div> +<div class="sect2"> +<h3 id="_derniers_preparatifs">11.1. Derniers préparatifs</h3> +<div class="paragraph"><p>La génération des fichiers nécessaires à la production de votre circuit +imprimé comprend les étapes préparatoires suivantes.</p></div> +<div class="ulist"><ul> +<li> +<p> +Marquez chaque couche (par exemple, <em>top ou front</em> et <em>bottom ou back</em>) avec + le nom du projet, en mettant le texte approprié sur chacune des couches. +</p> +</li> +<li> +<p> +Tout les textes sur les couches cuivrées (parfois appelées <em>soudure</em> ou + <em>bas</em>) doivent être en miroir. +</p> +</li> +<li> +<p> +Créez les plans de masse, en modifiant les pistes si nécessaire pour + s’assurer qu’ils sont contigus. +</p> +</li> +<li> +<p> +Placez des mires d’alignement et éventuellement les dimensions du contour de + carte (ceux-ci sont habituellement placés sur l’une des couches à usage + général). +</p> +</li> +</ul></div> +<div class="paragraph"><p>Voici un exemple montrant l’ensemble de ces éléments, à l’exception des +plans de masse qui ont été omis pour une meilleure visibilité :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_final_preparation_example_board.png" alt="images/Pcbnew_final_preparation_example_board.png"> +</div> +</div> +<div class="paragraph"><p>Un repère de couleur pour les 4 couches cuivrées a également été ajouté : +<span class="image"> +<img src="images/Pcbnew_layer_colour_key.png" alt="images/Pcbnew_layer_colour_key.png"> +</span></p></div> +</div> +<div class="sect2"> +<h3 id="_test_drc_final">11.2. Test DRC final</h3> +<div class="paragraph"><p>Avant de générer les fichiers de fabrication, un dernier test global de la +DRC est très fortement conseillé.</p></div> +<div class="paragraph"><p>Les zones seront remplies ou re-remplies au lancement de le DRC. Appuyez le +bouton <span class="image"> +<img src="images/icons/drc.png" alt="images/icons/drc.png"> +</span> pour ouvrir la fenêtre de la DRC :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_DRC_dialog.png" alt="images/Pcbnew_DRC_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Réglez les paramètres en conséquence, puis appuyez sur le bouton "Démarrer +DRC".</p></div> +<div class="paragraph"><p>Cette vérification finale vous permettra d'éviter de mauvaises surprises.</p></div> +</div> +<div class="sect2"> +<h3 id="_reglage_de_l_8217_origine_des_coordonnees">11.3. Réglage de l’origine des coordonnées</h3> +<div class="paragraph"><p>Définissez le point d’origine des coordonnées pour le photo-traceur et les +fichiers de perçage, il faut placer l’axe auxiliaire sur cet +origine. Utilisez l’icône <span class="image"> +<img src="images/icons/pcb_offset.png" alt="images/icons/pcb_offset.png"> +</span>. Déplacer +l’axe auxiliaire par un clic gauche sur l’emplacement choisi.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_setting_pcb_origin.png" alt="images/Pcbnew_setting_pcb_origin.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_generation_des_fichiers_pour_le_photo_traceur">11.4. Génération des fichiers pour le photo-traceur</h3> +<div class="paragraph"><p>Cela se fait par le menu Fichiers/Tracer, qui fait apparaître la fenêtre +suivante :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_plot_dialog.png" alt="images/Pcbnew_plot_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Habituellement, les fichiers sont au format GERBER. Néanmoins, il est +possible de produire des fichiers aux formats HPGL ou Postscript. Si le +format Postscript est sélectionné, cette boîte de dialogue apparaîtra.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_plot_postscript_dialog.png" alt="images/Pcbnew_plot_postscript_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Pour ces formats, un ajustage fin de l'échelle pourra être effectué pour +compenser la précision du traceur et avoir une véritable échelle 1 en sortie +:</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_plot_fine_scale_setting.png" alt="images/Pcbnew_plot_fine_scale_setting.png"> +</div> +</div> +<div class="sect3"> +<h4 id="_format_gerber">11.4.1. Format GERBER</h4> +<div class="paragraph"><p>Pour chaque couche, Pcbnew génère un fichier séparé respectant le standard +GERBER 274X, par défaut au format 4.6 (chaque coordonnée dans le fichier est +représentée par 10 chiffres, 4 avant la virgule et 6 après), les unités sont +en pouces, et l'échelle est de 1.</p></div> +<div class="paragraph"><p>Normalement, il est nécessaire de créer des fichiers pour toutes les couches +de cuivre et, en fonction du circuit, pour la sérigraphie et les couches +masque de soudure et pâte à souder . Tous ces fichiers peuvent être produits +en une seule étape, en cochant les cases appropriées.</p></div> +<div class="paragraph"><p>Par exemple, pour un circuit double face avec sérigraphie, masque de soudure +et pâte à souder (pour les composants CMS), 8 fichiers devront être générés +(«xxxx» représente le nom du fichier .kicad_brd).</p></div> +<div class="ulist"><ul> +<li> +<p> +xxxx-F_Cu.gbr pour le côté composants. +</p> +</li> +<li> +<p> +xxxx-B_Cu.gbr pour le côté cuivre. +</p> +</li> +<li> +<p> +xxxx-F_SilkS.gbr pour la sérigraphie côté composants. +</p> +</li> +<li> +<p> +xxxx-B_SilkS.gbr pour la sérigraphie côté cuivre. +</p> +</li> +<li> +<p> +xxxx-F_Paste.gbr pour la pâte à souder côté composants. +</p> +</li> +<li> +<p> +xxxx-B_Paste.gbr pour la pâte à souder côté cuivre. +</p> +</li> +<li> +<p> +xxxx-F_Mask.gbr pour le masque de soudure côté composants. +</p> +</li> +<li> +<p> +xxxx-B_Mask.gbr pour le masque de soudure côté cuivre. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Format des fichiers GERBER :</p></div> +<div class="paragraph"><p>Le format utilisé par Pcbnew est le format RS274X 4.6, impérial, zéros non +significatifs omis, format Abs. Ce sont des paramètres très habituels.</p></div> +</div> +<div class="sect3"> +<h4 id="_format_postscript">11.4.2. Format POSTSCRIPT</h4> +<div class="paragraph"><p>L’extension standard des fichiers, dans le cas d’une sortie postscript, est +.ps. Comme pour la sortie HPGL, le tracé peut être ajusté à une échelle +choisie par l’utilisateur et peut être mis en miroir. Si l’option Org = +Centre est actif, l’origine des coordonnées du photo-traceur est supposé +être au centre du dessin.</p></div> +<div class="paragraph"><p>Si l’option <em>Imprimer cartouche sur toutes les couches</em> est cochée, le +cartouche sera tracé.</p></div> +</div> +<div class="sect3"> +<h4 id="_options_de_trace">11.4.3. Options de tracé</h4> +<div class="paragraph"><p>Format Gerber :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_plot_options_gerber.png" alt="images/Pcbnew_plot_options_gerber.png"> +</div> +</div> +<div class="paragraph"><p>Autres formats :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_plot_options_other_formats.png" alt="images/Pcbnew_plot_options_other_formats.png"> +</div> +</div> +<div class="paragraph"><p>Options spécifiques au format Gerber :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:50%;"> +<col style="width:50%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Utiliser extensions Gerber Protel</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Utilise .gbl .gtl .gbs .gts .gbp .gtp .gbo .gto au lieu de .gbr comme extensions de fichiers.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Inclure attributs étendus</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Sortie des attributs étendus dans un fichier.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Soustraire masque de la couche sérigraphie</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Enlève la sérigraphie sur les zones de pâte à souder.</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect3"> +<h4 id="_autres_formats">11.4.4. Autres formats</h4> +<div class="paragraph"><p>L’extension standard dépend du type de fichier de sortie.</p></div> +<div class="paragraph"><p>Certaines options ne sont pas disponibles pour certains formats.</p></div> +<div class="paragraph"><p>Le tracé peut être fait à une échelle choisie par l’utilisateur et peut être +mis en miroir.</p></div> +<div class="paragraph"><p>Les options Marques de perçage offrent la possibilité d’avoir des pastilles +remplies, percées au diamètre correct ou percées d’un même petit trou (pour +centrer, lors d’un perçage à la main).</p></div> +<div class="paragraph"><p>Si l’option <em>Imprimer cartouche sur toutes les couches</em> est cochée, le +cartouche sera tracé.</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_reglage_des_marges_globales_pour_le_masque_de_soudure_ou_vernis_epargne_et_le_masque_de_pate_a_souder">11.5. Réglage des marges globales pour le masque de soudure (ou vernis épargne) et le masque de pâte à souder</h3> +<div class="paragraph"><p>Les marges des masques peuvent être réglées globalement pour les couches +masque de soudure et pâte à souder. Ces marges peuvent être ajustées aux +niveaux suivants.</p></div> +<div class="ulist"><ul> +<li> +<p> +Au niveau des pastilles. +</p> +</li> +<li> +<p> +Au niveau des empreintes. +</p> +</li> +<li> +<p> +Globalement. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Et Pcbnew utilise, par ordre de priorité :</p></div> +<div class="ulist"><ul> +<li> +<p> +La valeur de la pastille. Si nulle : +</p> +</li> +<li> +<p> +La valeur de l’empreinte. Si nulle : +</p> +</li> +<li> +<p> +Les valeurs globales. +</p> +</li> +</ul></div> +<div class="sect3"> +<h4 id="_acces">11.5.1. Accès</h4> +<div class="paragraph"><p>On accède à ces options par le menu Dimensions/Marges Masque des Pads :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_pad_mask_clearance_menu_item.png" alt="images/Pcbnew_pad_mask_clearance_menu_item.png"> +</div> +</div> +<div class="paragraph"><p>La fenêtre de réglage est celle-ci :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_pad_mask_settings_dialog.png" alt="images/Pcbnew_pad_mask_settings_dialog.png"> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_marge_du_masque_vernis_epargne">11.5.2. Marge du masque vernis épargne</h4> +<div class="paragraph"><p>une valeur proche de 0.2mm est généralement bonne. Cette valeur est positive +parce que le masque est habituellement plus grand que la pastille</p></div> +<div class="paragraph"><p>on peut donner une valeur minimum pour la largeur du masque, entre deux +pastilles.</p></div> +<div class="paragraph"><p>Si la valeur courante est plus petite que la valeur minimum, les deux +masques de soudure seront fusionnés.</p></div> +</div> +<div class="sect3"> +<h4 id="_marge_du_masque_pate_a_souder">11.5.3. Marge du masque pâte à souder</h4> +<div class="paragraph"><p>La marge finale est la somme de la marge de la pâte à souder et d’un +pourcentage de la taille de la pastille.</p></div> +<div class="paragraph"><p>Cette valeur est négative parce que le masque est habituellement plus petit +que la pastille</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_generation_des_fichiers_de_percage">11.6. Génération des fichiers de perçage</h3> +<div class="paragraph"><p>La création d’un fichier de perçage xxxx.drl au standard EXCELLON est +toujours nécessaire.</p></div> +<div class="paragraph"><p>On peut aussi produire, optionnellement, un fichier rapport ou un plan de +perçage.</p></div> +<div class="ulist"><ul> +<li> +<p> +Le plan de perçage peut être tracé au moyen de différents formats. +</p> +</li> +<li> +<p> +Le fichier de rapport est un simple fichier texte. +</p> +</li> +</ul></div> +<div class="paragraph"><p>La génération de ces fichiers se fait par :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le bouton "Créer un fichier de perçage", ou +</p> +</li> +<li> +<p> +Le menu Fichiers/Fichiers de Fabrication/Fichier (.drl) de Perçage. +</p> +</li> +</ul></div> +<div class="paragraph"><p>La fenêtre des options de perçage est la suivante :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_drill_file_dialog.png" alt="images/Pcbnew_drill_file_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Pour fixer l’origine des coordonnées, la zone de dialogue suivante est +utilisée :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_drill_origin_setting.png" alt="images/Pcbnew_drill_origin_setting.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Absolue : le système de coordonnées absolues sera utilisé. +</p> +</li> +<li> +<p> +Axe Auxiliaire : les coordonnées seront relatives à l’axe auxiliaire, + utilisez le bouton de la barre d’outils de droite pour le fixer. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_generation_de_l_8217_implantation">11.7. Génération de l’implantation</h3> +<div class="paragraph"><p>Pour produire les fichiers d’implantation, les couches sérigraphie +composants et cuivre peuvent être tracées. Habituellement, la sérigraphie +côté composant seule est suffisante pour le câblage d’un PCB. Si la +sérigraphie côté cuivre est utilisée, le texte qu’elle contient devra être +mis en miroir afin d'être lisible.</p></div> +</div> +<div class="sect2"> +<h3 id="_generation_de_fichiers_pour_le_placement_automatique_de_composants">11.8. Génération de fichiers pour le placement automatique de composants</h3> +<div class="paragraph"><p>Cette option est accessible via le menu Fichiers/Exporter/Fichier (.cmp) de +Composants. Aucun fichier ne sera toutefois généré, sauf si au moins une +empreinte a l’attribut Normal + Insert activé (voir Édition +d’Empreintes). Un ou deux fichiers seront produits, selon que des composants +insérables seront présents sur l’une ou sur les deux faces du circuit +imprimé. Une boîte de dialogue affiche les noms des fichiers créés.</p></div> +</div> +<div class="sect2"> +<h3 id="_options_de_trace_avancees">11.9. Options de tracé avancées</h3> +<div class="paragraph"><p>Les options décrites ci-dessous (faisant partie de la fenêtre +Fichiers/Tracer) permettent de contrôler finement le processus de +tracé. Elles sont particulièrement utiles pour l’impression du marquage +sérigraphique pour la documentation d’implantation.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_advanced_tracing_options.png" alt="images/Pcbnew_advanced_tracing_options.png"> +</div> +</div> +<div class="paragraph"><p>Les options disponibles sont :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:33%;"> +<col style="width:66%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Plot sheet reference on all layers</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Trace sheet outline and the cartridge.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Plot pads on silkscreen</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Enables/disables printing of pad outlines on the silkscreen layers (if the pads +have already been declared to appear on these layers). Prevents any pads from +being printed in the disabled mode.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Plot footprint values</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Enables printing of VALUE text on the silkscreen.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Plot footprint references</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Enables printing of the REFERENCE text on the silkscreen.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Force plotting of invisible values/references</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Forces printing of fields (reference, value) declared as invisible. +In combination with <em>Plot footprint values</em> and <em>Plot footprint references</em>, +this option enables production of documents for guiding wiring and repair. +These options have proven necessary for circuits using components that are too +small (SMD) to allow readable placement of two separate text fields.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Do not tent vias</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Delete the mask over the vias.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Exclude PCB edge layer from other layers</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">GERBER format specific. Do not plot graphic items on edge layer.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Use Protel filename extensions</p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">GERBER format specific. +When creating files, use specific extensions for each file. +If disabled the Gerber file extension is .gbr.</p></td> +</tr> +</tbody> +</table> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_editeur_d_8217_empreintes_gestion_des_librairies">12. Éditeur d’Empreintes - Gestion des Librairies</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_vue_d_8217_ensemble_de_l_editeur_d_8217_empreinte">12.1. Vue d’ensemble de l'Éditeur d’Empreinte</h3> +<div class="paragraph"><p>Pcbnew peut utiliser simultanément plusieurs librairies. Ainsi, lorsqu’une +empreinte est chargée, toutes les librairies qui apparaissent dans la liste +des librairies sont parcourues jusqu'à ce que la première instance de +l’empreinte soit trouvée. Dans ce qui suit, notez que la librairie active +est celle sélectionnée dans l'éditeur d’empreintes, le programme va +maintenant être présenté.</p></div> +<div class="paragraph"><p>L'Éditeur d’Empreintes permet la création et la modification d’empreintes :</p></div> +<div class="ulist"><ul> +<li> +<p> +L’ajout et la suppression de pastilles (pads). +</p> +</li> +<li> +<p> +La modification des propriétés des pastilles (forme, couche) pour une seule + pastille ou, globalement, pour toutes celles d’une empreinte. +</p> +</li> +<li> +<p> +La modification des éléments graphiques (lignes, textes). +</p> +</li> +<li> +<p> +La modification des champs d’information (valeur, référence). +</p> +</li> +<li> +<p> +L'édition de la documentation associée (description, mots-clefs). +</p> +</li> +</ul></div> +<div class="paragraph"><p>L'Éditeur d’Empreinte permet également la maintenance de la librairie active +:</p></div> +<div class="ulist"><ul> +<li> +<p> +Liste des empreintes de la librairie active. +</p> +</li> +<li> +<p> +Suppression d’une empreinte de la librairie active. +</p> +</li> +<li> +<p> +Sauvegarde d’une empreinte en librairie active. +</p> +</li> +<li> +<p> +Sauvegarde de toutes les empreintes contenues dans un circuit imprimé. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Il est aussi possible de créer de nouvelles librairies.</p></div> +<div class="paragraph"><p>Les extensions des fichiers librairies sont <span class="monospaced">.kicad_mod</span>, ou +<span class="monospaced">.mod</span>(anciennes versions).</p></div> +</div> +<div class="sect2"> +<h3 id="_acces_a_l_editeur_d_8217_empreintes">12.2. Accès à l'Éditeur d’Empreintes</h3> +<div class="paragraph"><p>On peut accéder à l'éditeur d’empreintes de plusieurs façons :</p></div> +<div class="ulist"><ul> +<li> +<p> +Directement, par l’icône <span class="image"> +<img src="images/icons/module_editor.png" alt="images/icons/module_editor.png"> +</span> de la barre + d’outils du haut de Pcbnew. +</p> +</li> +<li> +<p> +Depuis la fenêtre d'édition des paramètres de l’empreinte active (voir + figure ci-dessous : accessible par le menu contextuel), il y a un bouton + Éditeur d’Empreintes. +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_module_properties.png" alt="images/Pcbnew_module_properties.png"> +</div> +</div> +<div class="paragraph"><p>Dans ce cas, l’empreinte active du circuit est automatiquement chargée dans +l'éditeur, permettant sa modification immédiate, ou son archivage.</p></div> +</div> +<div class="sect2"> +<h3 id="_interface_de_l_editeur_d_8217_empreintes">12.3. Interface de l'Éditeur d’Empreintes</h3> +<div class="paragraph"><p>Au lancement de l'éditeur d’empreintes, la fenêtre ci-dessous apparaît :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_main_window.png" alt="images/Modedit_main_window.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_barre_d_8217_outils_superieure_de_l_editeur_d_8217_empreintes">12.4. Barre d’outils supérieure de l'Éditeur d’Empreintes</h3> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_top_toolbar.png" alt="images/Modedit_top_toolbar.png"> +</div> +</div> +<div class="paragraph"><p>Depuis cette barre d’outils, les fonctions suivantes sont disponibles :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:20%;"> +<col style="width:80%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/library.png" alt="images/icons/library.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Select the active library.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/save_library.png" alt="images/icons/save_library.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Save the current footprint to the active library, and write it to disk.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/new_library.png" alt="images/icons/new_library.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Create a new library and save the current footprint in it.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/modview_icon.png" alt="images/icons/modview_icon.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Open the Footprint Viewer</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/delete.png" alt="images/icons/delete.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Access a dialog for deleting a footprint from the active library.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/new_footprint.png" alt="images/icons/new_footprint.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Create a new footprint.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/module_wizard.png" alt="images/icons/module_wizard.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Create a footprint using a wizard</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/load_module_lib.png" alt="images/icons/load_module_lib.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Load a footprint from the active library.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/load_module_board.png" alt="images/icons/load_module_board.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Load (import) a footprint from the printed circuit board.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/update_module_board.png" alt="images/icons/update_module_board.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Export the current footprint to the printed circuit board. when the +footprint was previously imported from the current board. It will replace +the corresponding footprint on the board (i.e., respecting position and +orientation).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/insert_module_board.png" alt="images/icons/insert_module_board.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Export the current footprint to the printed circuit board. It will be +copied on to the printed circuit board at position 0.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/import_module.png" alt="images/icons/import_module.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Import a footprint from a file created by the Export command.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/export_module.png" alt="images/icons/export_module.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Export a footprint. This command is essentially identical to that for +creating a library, the only difference being that it creates a library +in the user directory, while creating a library in the standard library +directory (usually kicad/modules).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/undo.png" alt="images/icons/undo.png"> +</span> <span class="image"> +<img src="images/icons/redo.png" alt="images/icons/redo.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Undo and Redo</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/module_options.png" alt="images/icons/module_options.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Invokes the footprint properties dialog.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/print_button.png" alt="images/icons/print_button.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Call the print dialog.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/zoom_in.png" alt="images/icons/zoom_in.png"> +</span> +<span class="image"> +<img src="images/icons/zoom_out.png" alt="images/icons/zoom_out.png"> +</span> +<span class="image"> +<img src="images/icons/zoom_redraw.png" alt="images/icons/zoom_redraw.png"> +</span> +<span class="image"> +<img src="images/icons/zoom_fit_in_page.png" alt="images/icons/zoom_fit_in_page.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Standard zoom commands.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/options_pad.png" alt="images/icons/options_pad.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Call the pad editor.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/module_check.png" alt="images/icons/module_check.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Perform a check of footprint correctness</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect2"> +<h3 id="_creation_d_8217_une_nouvelle_librairie">12.5. Création d’une nouvelle librairie</h3> +<div class="paragraph"><p>La création d’une nouvelle librairie se fait par le bouton +<span class="image"> +<img src="images/icons/new_library.png" alt="images/icons/new_library.png"> +</span>, dans ce cas, le fichier sera créé par +défaut dans le dossier des librairies, ou par le bouton +<span class="image"> +<img src="images/icons/export_module.png" alt="images/icons/export_module.png"> +</span>, dans ce cas, le fichier sera créé +par défaut dans votre répertoire de travail.</p></div> +<div class="paragraph"><p>Une fenêtre de sélection de fichier permet de donner un nom à la librairie +et changer son répertoire. Dans les deux cas, la librairie contiendra +l’empreinte en cours d'édition.</p></div> +<div class="admonitionblock"> +<table><tr> +<td class="icon"> +<div class="title">Attention</div> +</td> +<td class="content">Si une librairie de même nom existe, elle sera écrasée sans avertissement.</td> +</tr></table> +</div> +</div> +<div class="sect2"> +<h3 id="_sauvegarde_d_8217_une_empreinte_en_librairie_active">12.6. Sauvegarde d’une empreinte en librairie active</h3> +<div class="paragraph"><p>L’action de sauvegarder d’une empreinte (et donc de modifier le fichier de +la librairie active) est effectuée en utilisant le bouton +<span class="image"> +<img src="images/icons/save_library.png" alt="images/icons/save_library.png"> +</span>. Si une empreinte de même nom existe, +elle sera remplacée. Comme vous dépendez de la précision des empreintes de +la librairie, il est préférable de contrôler deux fois l’empreinte avant de +l’enregistrer.</p></div> +<div class="paragraph"><p>Il est recommandé de donner comme référence ou comme valeur à l’empreinte le +nom par lequel elle sera identifiée en librairie,.</p></div> +</div> +<div class="sect2"> +<h3 id="_transfert_d_8217_une_empreinte_d_8217_une_librairie_a_une_autre">12.7. Transfert d’une empreinte d’une librairie à une autre</h3> +<div class="ulist"><ul> +<li> +<p> +Choisissez la librairie d’origine par le bouton + <span class="image"> +<img src="images/icons/library.png" alt="images/icons/library.png"> +</span>. +</p> +</li> +<li> +<p> +Chargez l’empreinte par le bouton <span class="image"> +<img src="images/icons/load_module_lib.png" alt="images/icons/load_module_lib.png"> +</span>. +</p> +</li> +<li> +<p> +Choisissez la librairie de destination par le bouton + <span class="image"> +<img src="images/icons/library.png" alt="images/icons/library.png"> +</span>. +</p> +</li> +<li> +<p> +Sauvez l’empreinte avec le bouton <span class="image"> +<img src="images/icons/save_library.png" alt="images/icons/save_library.png"> +</span>. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Vous pouvez aussi vouloir supprimer l’empreinte d’origine.</p></div> +<div class="ulist"><ul> +<li> +<p> +Sélectionnez à nouveau la librairie d’origine par le bouton + <span class="image"> +<img src="images/icons/library.png" alt="images/icons/library.png"> +</span> +</p> +</li> +<li> +<p> +Supprimez l’empreinte avec le bouton <span class="image"> +<img src="images/icons/delete.png" alt="images/icons/delete.png"> +</span> +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_sauvegarde_de_toutes_les_empreintes_de_votre_circuit_dans_la_librairie_active">12.8. Sauvegarde de toutes les empreintes de votre circuit dans la librairie active.</h3> +<div class="paragraph"><p>Il est possible de copier toutes les empreintes d’un circuit donné en +librairie active. Ces empreintes conserveront leurs noms actuels. Cette +commande a deux utilités :</p></div> +<div class="ulist"><ul> +<li> +<p> +Créer une archive ou compléter une librairie avec les empreintes d’un + circuit, dans le cas de la perte d’une librairie. +</p> +</li> +<li> +<p> +Et plus important, elle facilite la maintenance des librairies en permettant + la production d’une documentation pour la librairie, comme décrit + ci-dessous. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_documentation_des_empreintes_d_8217_une_librairie">12.9. Documentation des empreintes d’une librairie</h3> +<div class="paragraph"><p>Il est fortement recommandé de documenter les empreintes que vous créez, +afin de permettre une recherche rapide et fiable.</p></div> +<div class="paragraph"><p>Par exemple, qui est capable de se souvenir des multiples variantes du +brochage d’un boitier TO92? La fenêtre des Propriétés de l’Empreinte offre +une solution simple à ce problème.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_module_properties.png" alt="images/Modedit_module_properties.png"> +</div> +</div> +<div class="paragraph"><p>Cette fenêtre accepte :</p></div> +<div class="ulist"><ul> +<li> +<p> +Un commentaire/description sur une ligne. +</p> +</li> +<li> +<p> +De multiples mots-clés. +</p> +</li> +</ul></div> +<div class="paragraph"><p>La description est affichée avec la liste des composants dans Cvpcb et, dans +Pcbnew, elle est utilisée dans les boîtes de dialogue de sélection +d’empreinte.</p></div> +<div class="paragraph"><p>Les mots-clés permettent aux recherches de se limiter aux empreintes +correspondant à ces mots clés.</p></div> +<div class="paragraph"><p>Lors du chargement direct d’une empreinte (bouton +<span class="image"> +<img src="images/icons/module.png" alt="images/icons/module.png"> +</span> de la barre d’outils de droite de Pcbnew), +des mots-clés peuvent être saisis dans la boîte de dialogue. Ainsi, la +saisie du texte <span class="monospaced">=CONN</span> provoquera l’affichage de la liste des empreintes +dont les mots clés contiennent le mot <span class="monospaced">CONN</span>.</p></div> +</div> +<div class="sect2"> +<h3 id="_documentation_des_librairies_pratiques_recommandees">12.10. Documentation des librairies - Pratiques recommandées</h3> +<div class="paragraph"><p>Il est recommandé de créer les librairies indirectement, en créant un ou +plusieurs circuits auxiliaires qui constitueront la source (d’une partie) de +la librairie, comme suit : Créer un circuit imprimé au format A4, afin +d'être capable de l’imprimer facilement à l'échelle (échelle 1).</p></div> +<div class="paragraph"><p>Créer les empreintes que la librairie contiendra sur ce circuit imprimé. La +librairie elle-même sera créée par le menu Fichiers/Archiver Modules/Créer +une Librairie et Archiver les empreintes.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_archive_footprints_menu.png" alt="images/Pcbnew_archive_footprints_menu.png"> +</div> +</div> +<div class="paragraph"><p>La "vraie source" de la librairie sera donc le circuit auxiliaire, et c’est +sur ce circuit que toute modification ultérieure des empreintes devra être +faite. Naturellement, plusieurs circuits imprimés peuvent être enregistrés +dans une même librairie.</p></div> +<div class="paragraph"><p>C’est généralement une bonne idée de faire des librairies différentes pour +les différents types de composants (connecteurs, discrets, …), comme +Pcbnew est en mesure de rechercher parmi de multiples librairies lors du +chargement d’empreintes.</p></div> +<div class="paragraph"><p>Voici l’exemple d’une telle source de librairie :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_example_library.png" alt="images/Pcbnew_example_library.png"> +</div> +</div> +<div class="paragraph"><p>Cette technique présente plusieurs avantages :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le circuit pourra être imprimé à l'échelle et servir de documentation pour + la librairie sans effort supplémentaire. +</p> +</li> +<li> +<p> +Des modifications futures de Pcbnew peuvent exiger la régénération des + librairies, ce qui peut être fait très rapidement si des circuits sources de + ce type ont été utilisés. Ceci est important, car les formats de fichiers de + circuits imprimés sont garantis de rester compatibles au fur et à mesure du + développement, mais ceci n’est pas forcément le cas pour le format des + fichiers des librairies. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_gestion_des_librairies_d_8217_empreintes">12.11. Gestion des Librairies d’Empreintes</h3> +<div class="paragraph"><p>La liste des librairies d’empreintes dans Pcbnew peut être modifiée à l’aide +du Gestionnaire des Librairies d’Empreintes. Celui-ci vous permet d’ajouter +ou de supprimer des librairies d’empreintes manuellement, et vous permet +également d’invoquer l’Assistant d’Ajout de Librairies d’Empreintes en +cliquant sur le bouton "Ajouter avec l’Assistant".</p></div> +<div class="paragraph"><p>L’Assistant d’Ajout de Librairies d’Empreintes peut également être lancé +depuis le menu Préférences, et peut automatiquement ajouter une librairie +(avec détection de son type) à partir d’un fichier ou à partir d’une URL +GitHub. L’URL des librairies officielles est : <a href="https://github.com/KiCad">https://github.com/KiCad</a>.</p></div> +<div class="paragraph"><p>Plus de détails sur les tables de librairies d’empreintes, le gestionnaire +et l’assistant peuvent être trouvés dans le manuel de référence de CvPcb à +la section Table des Librairies d’Empreintes.</p></div> +</div> +<div class="sect2"> +<h3 id="_gestion_des_librairies_de_formes_3d">12.12. Gestion des Librairies de Formes 3D</h3> +<div class="paragraph"><p>Les librairies de formes 3D peuvent être téléchargées par l’Assistant +d’Ajout de Librairies de Formes 3D. Il est invoqué par le menu Préférences +→ Téléchargement des Librairies de Formes 3D.</p></div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_editeur_d_8217_empreintes_creation_et_modification_d_8217_empreintes">13. Éditeur d’empreintes - Création et Modification d’Empreintes</h2> +<div class="sectionbody"> +<div class="sect2"> +<h3 id="_vue_d_8217_ensemble_de_l_editeur_d_8217_empreintes">13.1. Vue d’ensemble de l'Éditeur d’Empreintes</h3> +<div class="paragraph"><p>L'Éditeur d’Empreintes est utilisé pour l'édition et la création +d’empreintes de PCB. Ceci comprend :</p></div> +<div class="ulist"><ul> +<li> +<p> +L’ajout et la suppression de pastilles (pads). +</p> +</li> +<li> +<p> +La modification de pads (forme, couche), individuelle ou pour toutes les + pads d’une empreinte. +</p> +</li> +<li> +<p> +L’ajout et la modification d'éléments graphiques (contours, textes). +</p> +</li> +<li> +<p> +L'édition des champs (référence, valeur, etc..). +</p> +</li> +<li> +<p> +L'édition de la documentation associée (description, mots-clefs). +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_elements_d_8217_empreintes">13.2. Éléments d’empreintes</h3> +<div class="paragraph"><p>Une empreinte est la représentation physique de la pièce à insérer dans un +circuit imprimé et elle doit être liée au composant symbolique correspondant +de votre schéma. Chaque empreinte comporte trois éléments différents :</p></div> +<div class="ulist"><ul> +<li> +<p> +Des pastilles (ou pads). +</p> +</li> +<li> +<p> +Des contours graphiques et des textes. +</p> +</li> +<li> +<p> +Des champs. +</p> +</li> +</ul></div> +<div class="paragraph"><p>De plus, un certain nombre d’autres paramètres doivent être correctement +définis si la fonction d’auto-placement doit être utilisée. Il en va de même +pour la production des fichiers d’auto-insertion.</p></div> +<div class="sect3"> +<h4 id="_pastilles">13.2.1. Pastilles</h4> +<div class="paragraph"><p>Deux propriétés des pads sont importantes .</p></div> +<div class="ulist"><ul> +<li> +<p> +La géométrie (forme, couches, perçage). +</p> +</li> +<li> +<p> +Le numéro de pad, qui comporte jusqu'à quatre caractères + alphanumériques. Ainsi, les éléments suivants sont tous des numéros de + pastilles valides: 1, 45 et 9999, mais aussi AA56 et ANODE. Le numéro de pad + doit être identique au numéro de pin correspondant dans le schéma, car il + définit la correspondance des numéros de pins et pad que Pcbnew utilise pour + relier les autres pins et pads. +</p> +</li> +</ul></div> +</div> +<div class="sect3"> +<h4 id="_contours">13.2.2. Contours</h4> +<div class="paragraph"><p>Les contours graphiques sont utilisés pour dessiner la forme physique de +l’empreinte. Plusieurs types de contours différents sont disponibles : +lignes, cercles, arcs, et texte. Les contours n’ont aucune signification +électrique, ils sont tout simplement des aides graphiques.</p></div> +</div> +<div class="sect3"> +<h4 id="_champs">13.2.3. Champs</h4> +<div class="paragraph"><p>Ce sont des éléments de texte associés à une empreinte. Deux sont +obligatoires et toujours présents : le champ de référence et le champ de +valeur. Ceux-ci sont lus automatiquement et mis à jour par Pcbnew lorsqu’une +netliste est lue, lors du chargement d’empreintes dans votre circuit. La +référence est remplacée par la référence schématique appropriée (U1, IC3, +etc.). La valeur est remplacée par la valeur de la pièce correspondante dans +le schéma (47K, 74LS02, etc.). D’autres champs peuvent être ajoutés et +ceux-ci se comportent alors comme du texte graphique.</p></div> +</div> +</div> +<div class="sect2"> +<h3 id="_lancement_de_l_editeur_et_selection_d_8217_une_empreinte_a_modifier">13.3. Lancement de l'éditeur et sélection d’une empreinte à modifier</h3> +<div class="paragraph"><p>On peut lancer l'éditeur d’empreintes de deux façons :</p></div> +<div class="ulist"><ul> +<li> +<p> +Directement, par l’icône <span class="image"> +<img src="images/icons/module_editor.png" alt="images/icons/module_editor.png"> +</span> de la barre + d’outils du haut de Pcbnew. Ceci permet la création ou la modification d’une + empreinte de la librairie. +</p> +</li> +<li> +<p> +Un double-clic sur une empreinte lancera le menu <em>Propriétés de + l’Empreinte</em>, qui contient un bouton <em>Editeur d’Empreintes</em>. Quand cette + option est utilisée, l’empreinte du circuit sera chargée dans l'éditeur, + pour la modifier ou pour la sauvegarder. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_barres_d_8217_outils_de_l_editeur_d_8217_empreintes">13.4. Barres d’outils de l'éditeur d’empreintes</h3> +<div class="paragraph"><p>Au lancement de l'éditeur d’empreintes, la fenêtre ci-dessous apparaît :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_main_window.png" alt="images/Modedit_main_window.png"> +</div> +</div> +<div class="sect3"> +<h4 id="_barre_d_8217_outils_d_edition_cote_droit">13.4.1. Barre d’outils d'édition (côté droit)</h4> +<div class="paragraph"><p>Cette barre d’outils contient les outils pour :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le placement de pads. +</p> +</li> +<li> +<p> +L’ajout d'éléments graphiques (contours, textes). +</p> +</li> +<li> +<p> +Le placement du point d’ancrage d’un composant. +</p> +</li> +<li> +<p> +La suppression d'éléments. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Leurs fonctions spécifiques sont les suivantes :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:20%;"> +<col style="width:80%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/cursor.png" alt="images/icons/cursor.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Pas d’outil.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/pad.png" alt="images/icons/pad.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajout de pads.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_polygon.png" alt="images/icons/add_polygon.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Dessin de segments de lignes et de polygones.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_circle.png" alt="images/icons/add_circle.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Dessin de cercles.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_arc.png" alt="images/icons/add_arc.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Dessin d’arcs de cercles.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/add_text.png" alt="images/icons/add_text.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Ajout de textes graphiques (les champs ne sont pas gérés avec cet outil).</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/anchor.png" alt="images/icons/anchor.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Placement du point d’ancrage de l’empreinte.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/delete.png" alt="images/icons/delete.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Suppression d'éléments.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/grid_select_axis.png" alt="images/icons/grid_select_axis.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Origine de la grille. (décalage grille). Utile pour le placement de pads. +L’origine de la grille peut être placé à un endroit donné (le premier pad à placer), +et ensuite, la taille de grille réglée à la taille d’espacement. +Le placement de pads sera ainsi très facile.</p></td> +</tr> +</tbody> +</table> +</div> +<div class="sect3"> +<h4 id="_barre_d_8217_outils_d_8217_affichage_cote_gauche">13.4.2. Barre d’outils d’affichage (côté gauche)</h4> +<div class="paragraph"><p>Ces outils gèrent les options d’affichage de l'éditeur d’empreintes :</p></div> +<table class="tableblock frame-all grid-all" +style=" +width:100%; +"> +<col style="width:20%;"> +<col style="width:80%;"> +<tbody> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/grid.png" alt="images/icons/grid.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affiche la grille.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/polar_coord.png" alt="images/icons/polar_coord.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage en coordonnées polaires.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/unit_mm.png" alt="images/icons/unit_mm.png"> +</span> <span class="image"> +<img src="images/icons/unit_inch.png" alt="images/icons/unit_inch.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Unités en mm ou en inches.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/cursor_shape.png" alt="images/icons/cursor_shape.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Change la forme du curseur.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/pad_sketch.png" alt="images/icons/pad_sketch.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des pads en mode contour.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/text_sketch.png" alt="images/icons/text_sketch.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des textes en mode contour.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/show_mod_edge.png" alt="images/icons/show_mod_edge.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage des contours en mode détouré.</p></td> +</tr> +<tr> +<td class="tableblock halign-left valign-top" ><p class="tableblock"><span class="image"> +<img src="images/icons/contrast_mode.png" alt="images/icons/contrast_mode.png"> +</span></p></td> +<td class="tableblock halign-left valign-top" ><p class="tableblock">Affichage en mode fort-contraste.</p></td> +</tr> +</tbody> +</table> +</div> +</div> +<div class="sect2"> +<h3 id="_menus_contextuels">13.5. Menus Contextuels</h3> +<div class="paragraph"><p>Le bouton droit de la souris fait apparaître des menus qui dépendent de +l'élément sous le curseur.</p></div> +<div class="paragraph"><p>Le menu contextuel pour éditer les paramètres de l’empreinte :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_context_menu_module_parameters.png" alt="images/Modedit_context_menu_module_parameters.png"> +</div> +</div> +<div class="paragraph"><p>Le menu contextuel pour éditer les pads:</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_context_menu_pads.png" alt="images/Modedit_context_menu_pads.png"> +</div> +</div> +<div class="paragraph"><p>Le menu contextuel pour éditer les éléments graphiques :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_context_menu_graphics.png" alt="images/Modedit_context_menu_graphics.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_fenetre_des_proprietes_des_empreintes">13.6. Fenêtre des propriétés des empreintes</h3> +<div class="paragraph"><p>Cette fenêtre peut être ouverte lorsque le curseur est sur une empreinte, en +cliquant du bouton droit de la souris, puis en sélectionnant <em>Éditer +Paramètres</em></p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_module_properties_dialog.png" alt="images/Modedit_module_properties_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Cette fenêtre peut être utilisée pour définir les paramètres principaux de +l’empreinte.</p></div> +</div> +<div class="sect2"> +<h3 id="_creation_d_8217_une_nouvelle_empreinte">13.7. Création d’une nouvelle empreinte</h3> +<div class="paragraph"><p>Une nouvelle empreinte peut être créée par le bouton +<span class="image"> +<img src="images/icons/new_footprint.png" alt="images/icons/new_footprint.png"> +</span>. Le nom de la nouvelle empreinte sera +demandé. Ce sera le nom par lequel l’empreinte sera identifiée dans la +librairie.</p></div> +<div class="paragraph"><p>This text also serves as the footprint value, which is ultimately replaced +by the real value (100 µF_16 V, 100 Ω_0.5 W, …).</p></div> +<div class="paragraph"><p>La nouvelle empreinte nécessitera :</p></div> +<div class="ulist"><ul> +<li> +<p> +Des contours (et éventuellement des textes graphiques). +</p> +</li> +<li> +<p> +Des pastilles. +</p> +</li> +<li> +<p> +Une valeur (texte caché qui sera ensuite remplacé par la valeur réelle une + fois utilisée). +</p> +</li> +</ul></div> +<div class="paragraph"><p>Autre méthode :</p></div> +<div class="paragraph"><p>Quand une nouvelle empreinte est similaire à une empreinte existante d’une +librairie ou d’un circuit, voici une méthode alternative et plus rapide pour +créer la nouvelle empreinte :</p></div> +<div class="ulist"><ul> +<li> +<p> +Chargez l’empreinte similaire (<span class="image"> +<img src="images/icons/load_module_lib.png" alt="images/icons/load_module_lib.png"> +</span>, + <span class="image"> +<img src="images/icons/load_module_board.png" alt="images/icons/load_module_board.png"> +</span> ou + <span class="image"> +<img src="images/icons/import_module.png" alt="images/icons/import_module.png"> +</span>). +</p> +</li> +<li> +<p> +Modifiez le champ "Nom de l’Empreinte en Librairie" pour générer un nouvel + identifiant (nom). +</p> +</li> +<li> +<p> +Modifiez et sauvegardez la nouvelle empreinte. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_ajout_et_modification_de_pastilles">13.8. Ajout et modification de pastilles</h3> +<div class="paragraph"><p>Une fois l’empreinte créée, des pastilles peuvent être ajoutées, supprimées +ou modifiées. La modification des pastilles peut être locale, affecter +seulement la pastille sous le curseur, ou globale, affecter toutes les +pastilles de l’empreinte.</p></div> +<div class="sect3"> +<h4 id="_ajout_de_pastilles">13.8.1. Ajout de pastilles</h4> +<div class="paragraph"><p>Sélectionnez l’icône <span class="image"> +<img src="images/icons/pad.png" alt="images/icons/pad.png"> +</span> de la barre d’outils de +droite. Les pastilles peuvent être ajoutées en cliquant à la position +désirée du bouton gauche de la souris. Les propriétés des pastilles sont +prédéfinies dans le menu des propriétés.</p></div> +<div class="paragraph"><p>N’oubliez pas de donner un numéro à la pastille.</p></div> +</div> +<div class="sect3"> +<h4 id="_reglage_des_proprietes_des_pastilles">13.8.2. Réglage des propriétés des pastilles</h4> +<div class="paragraph"><p>On peut le faire de plusieurs façons :</p></div> +<div class="ulist"><ul> +<li> +<p> +En sélectionnant l’icône <span class="image"> +<img src="images/icons/options_pad.png" alt="images/icons/options_pad.png"> +</span> de la barre + d’outils horizontale. +</p> +</li> +<li> +<p> +En cliquant sur une pastille existante et et choisissant <em>Editer Pad</em>. Les + propriétés de la pastille peuvent ensuite être modifiées. +</p> +</li> +<li> +<p> +En cliquant sur une pastille existante et et choisissant <em>Exporter + Caracts. Pad</em>. Dans ce cas, les propriétés géométriques de la pastille + sélectionnée deviennent les propriétés par défaut. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Dans les deux premiers cas, la fenêtre suivante apparaîtra :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_pad_properties_dialog.png" alt="images/Modedit_pad_properties_dialog.png"> +</div> +</div> +<div class="paragraph"><p>Un grand soin devra être pris pour définir correctement les couches +auxquelles le pad appartiendra. En particulier, bien que les couches cuivre +soient faciles à définir, la gestion des couches non-cuivre (masque de +soudure, pâte à souder …) est également importante pour la fabrication et +la documentation du circuit.</p></div> +<div class="paragraph"><p>Le sélecteur du Type de Pad déclenche une sélection automatique des couches +qui est généralement suffisante.</p></div> +<div class="sect4"> +<h5 id="_pastilles_rectangulaires">Pastilles rectangulaires</h5> +<div class="paragraph"><p>Pour les empreintes CMS de type VQFP/PQFP qui ont des pads rectangulaires +sur les quatre côtés (à la fois horizontaux et verticaux), il est recommandé +d’utiliser une seule forme (par exemple, un rectangle horizontal) et de le +placer avec différentes orientations (0 pour l’horizontale et 90 degrés pour +la verticale). Un redimensionnement global des pastilles pourra ensuite être +effectué en une seule opération.</p></div> +</div> +<div class="sect4"> +<h5 id="_rotation_de_pastilles">Rotation de pastilles</h5> +<div class="paragraph"><p>Les rotations de pastilles de -90 ou -180 degrés ne sont nécessaires que +pour les pads trapézoïdaux utilisés pour des empreintes micro-ondes.</p></div> +</div> +<div class="sect4"> +<h5 id="_pastilles_traversantes_non_metallisees">Pastilles traversantes non-métallisées</h5> +<div class="paragraph"><p>Les pastilles peuvent être définies comme Pads à Trous Non-Métallisés +(NPTH).</p></div> +<div class="paragraph"><p>Ces pastilles doivent être définies sur une ou toutes les couches de cuivre +(de toute évidence, le trou existe sur toutes les couches cuivre).</p></div> +<div class="paragraph"><p>Ce choix permet de définir des paramètres de marge spécifiques (pour le jeu +d’une vis, par exemple).</p></div> +<div class="paragraph"><p>Lorsque la taille du trou de pad est la même que la taille du pad, pour un +pad rond ou ovale, ce pad ne sera PAS tracé sur les couches cuivre dans les +fichiers GERBER.</p></div> +<div class="paragraph"><p>Ces pastilles sont utilisées à des fins mécaniques, par conséquent aucun de +nom de pad ou de net n’est autorisé. La connexion à un net est impossible.</p></div> +</div> +<div class="sect4"> +<h5 id="_pastilles_sur_couches_non_cuivrees">Pastilles sur couches non-cuivrées</h5> +<div class="paragraph"><p>Ce sont des pastilles inhabituelles. Cette option sera utilisée pour créer +des repères ou des masques sur des couches techniques.</p></div> +</div> +<div class="sect4"> +<h5 id="_parametres_de_decalage">Paramètres de décalage</h5> +<div class="paragraph"><p>La pastille 3 a un décalage Y de 15 mils :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_pad_offset_example.png" alt="images/Modedit_pad_offset_example.png"> +</div> +</div> +</div> +<div class="sect4"> +<h5 id="_parametre_de_delta_pastilles_trapezoidales">Paramètre de Delta (pastilles trapézoïdales)</h5> +<div class="paragraph"><p>La pastille 1 a son paramètre Delta réglé à 10 mils</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_pad_delta_example.png" alt="images/Modedit_pad_delta_example.png"> +</div> +</div> +</div> +</div> +<div class="sect3"> +<h4 id="_reglage_des_marges_pour_les_couches_masque_de_soudure_et_masque_de_pate_a_souder">13.8.3. Réglage des marges pour les couches masque de soudure et masque de pâte à souder</h4> +<div class="paragraph"><p>Le réglage de la marge peut s’effectuer à trois niveaux :</p></div> +<div class="ulist"><ul> +<li> +<p> +Au niveau global. +</p> +</li> +<li> +<p> +Au niveau de l’empreinte. +</p> +</li> +<li> +<p> +Au niveau de la pastille. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Pcbnew utilisera, pour calculer les marges :</p></div> +<div class="ulist"><ul> +<li> +<p> +Les réglages au niveau pastille. Si nuls, +</p> +</li> +<li> +<p> +Les réglages au niveau empreinte. Si nuls, +</p> +</li> +<li> +<p> +Les réglages globaux. +</p> +</li> +</ul></div> +<div class="sect4"> +<h5 id="_remarques">Remarques</h5> +<div class="paragraph"><p>La forme d’une pastille du masque de soudure est généralement plus grande +que la pastille elle-même. Donc la valeur du jeu sera positive. Une pastille +du masque de pâte de soudure est généralement plus petite que la pastille +elle-même. Donc, la valeur de la marge sera négative.</p></div> +</div> +<div class="sect4"> +<h5 id="_parametres_du_masque_pate_a_souder">Paramètres du masque pâte à souder</h5> +<div class="paragraph"><p>Pour le masque pâte à souder, il y a deux paramètres :</p></div> +<div class="ulist"><ul> +<li> +<p> +Une valeur fixe. +</p> +</li> +<li> +<p> +Un pourcentage de la taille de la pastille. +</p> +</li> +</ul></div> +<div class="paragraph"><p>La valeur réelle sera la somme de ces deux valeurs.</p></div> +<div class="paragraph"><p>Réglages au niveau empreinte :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_footprint_level_pad_settings.png" alt="images/Modedit_footprint_level_pad_settings.png"> +</div> +</div> +<div class="paragraph"><p>Réglages au niveau pastille :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_pad_level_pad_settings.png" alt="images/Modedit_pad_level_pad_settings.png"> +</div> +</div> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_proprietes_des_champs">13.9. Propriétés des champs</h3> +<div class="paragraph"><p>Il y a deux champs au moins : référence et valeur.</p></div> +<div class="paragraph"><p>Leurs paramètres (attributs, taille, largeur) doivent être mis à jour. Vous +pouvez y accéder par le menu contextuel, ou en double-cliquant sur le champ, +ou encore par la fenêtre des propriétés de l’empreinte :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_footprint_text_properties.png" alt="images/Modedit_footprint_text_properties.png"> +</div> +</div> +</div> +<div class="sect2"> +<h3 id="_placement_automatique_d_8217_une_empreinte">13.10. Placement automatique d’une empreinte</h3> +<div class="paragraph"><p>If the user wishes to exploit the full capabilities of the auto-placement +functions, it is necessary to define the allowed orientations of the +footprint (Footprint Properties dialog).</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_module_autoplace_settings.png" alt="images/Modedit_module_autoplace_settings.png"> +</div> +</div> +<div class="paragraph"><p>Habituellement, une rotation de 180 degrés est autorisée pour les +résistances, les condensateurs non-polarisés et les autres composants +symétriques.</p></div> +<div class="paragraph"><p>Certaines empreintes (petits transistors, par exemple) sont souvent +autorisés à tourner de +/- 90 ou 180 degrés. Par défaut, une nouvelle +empreinte aura son autorisation de rotation à zéro. Celle-ci peut être +ajustée en fonction de la règle suivante :</p></div> +<div class="paragraph"><p>Une valeur de 0 rend la rotation impossible, 10 l’autorise complètement, et +toute valeur intermédiaire représentera une rotation limitée. Par exemple, +une résistance pourrait avoir une permission de 10 pour une rotation de 180 +degrés (pas de limitation) et une autorisation de 5 pour une rotation +/- 90 +degrés (permise, mais pas conseillée).</p></div> +</div> +<div class="sect2"> +<h3 id="_attributs">13.11. Attributs</h3> +<div class="paragraph"><p>La zone de dialogue des attributs est celle-ci :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_module_attributes.png" alt="images/Modedit_module_attributes.png"> +</div> +</div> +<div class="ulist"><ul> +<li> +<p> +Normal est l’attribut standard. +</p> +</li> +<li> +<p> +Normal + Insert indique que l’empreinte doit apparaître dans le fichier + d’insertion automatique (pour les machines d’insertion automatique). Cet + attribut est le plus utile pour les composants de surface (CMS). +</p> +</li> +<li> +<p> +Virtuel indique qu’un composant est formé directement par le circuit + imprimé. Des exemples sont les connecteurs nez de cartes, ou des bobines, + antennes créés au moyen d’une piste de forme particulière (comme vu parfois + dans les empreintes micro-ondes). +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_documentation_des_empreintes_d_8217_une_librairie_2">13.12. Documentation des empreintes d’une librairie</h3> +<div class="paragraph"><p>Il est fortement recommandé de documenter les empreintes nouvellement +créées, afin de faciliter une recherche rapide et précise. Qui est capable +de se rappeler le brochage des multiples variantes d’une empreinte TO92 ?</p></div> +<div class="paragraph"><p>La fenêtre Propriétés de L’Empreinte offre un moyen simple mais puissant +pour générer la documentation.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_module_properties_documentation_fields.png" alt="images/Modedit_module_properties_documentation_fields.png"> +</div> +</div> +<div class="paragraph"><p>Ce menu permet :</p></div> +<div class="ulist"><ul> +<li> +<p> +La saisie d’une ligne de commentaire (description). +</p> +</li> +<li> +<p> +De multiples mots-clés. +</p> +</li> +</ul></div> +<div class="paragraph"><p>La ligne de commentaire est affichée avec la liste de composants dans CvPcb, +et dans les menus de sélection d’empreinte dans Pcbnew. Les mots-clés sont +utilisés pour limiter les recherches aux pièces possédant ces mots-clés.</p></div> +<div class="paragraph"><p>Ainsi, en utilisant la commande Ajouter Empreinte (icône de la barre +d’outils de droite dans Pcbnew), il est possible de saisir le texte <span class="monospaced">= +TO220</span> dans la boîte de dialogue pour que Pcbnew affiche la liste des +empreintes possédant le mot-clé <span class="monospaced">TO220</span>.</p></div> +</div> +<div class="sect2"> +<h3 id="_visualisation_en_3d">13.13. Visualisation en 3D</h3> +<div class="paragraph"><p>Une empreinte peut avoir été associée à un fichier contenant sa +représentation tridimensionnelle. Afin d’associer un tel fichier à une +empreinte, sélectionnez l’onglet 3D Caract. Le panneau des options est le +suivant :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_module_3d_options.png" alt="images/Modedit_module_3d_options.png"> +</div> +</div> +<div class="paragraph"><p>Les informations à fournir :</p></div> +<div class="ulist"><ul> +<li> +<p> +Le fichier contenant la représentation 3D (créée par le modeleur 3D Wings3D, + au format VRML, par la commande exporter en VRML). +</p> +</li> +<li> +<p> +Le chemin par défaut est kicad/modules/package3d. Dans l’exemple, le nom du + fichier est discret/to_220horiz.wrl, en utilisant le chemin par défaut). +</p> +</li> +<li> +<p> +Les échelles x, y et z. +</p> +</li> +<li> +<p> +Le décalage par rapport au point d’ancrage de l’empreinte (généralement + zéro). +</p> +</li> +<li> +<p> +La rotation initiale en degrés suivant chaque axe (habituellement zero). +</p> +</li> +</ul></div> +<div class="paragraph"><p>L’ajustage de l'échelle permet :</p></div> +<div class="ulist"><ul> +<li> +<p> +D’utiliser le même fichier 3D pour des empreintes qui ont des formes + similaires, mais différentes tailles (résistances, condensateurs, composants + CMS …). +</p> +</li> +<li> +<p> +Pour les petits (ou les très grands) boitiers, une meilleure utilisation de + la grille Wings 3D est d’avoir l'échelle de <strong>0,1 pouce dans Pcbnew = 1 unité + de grille</strong> dans Wings3D. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Si un tel fichier a été spécifié, il est possible de voir le composant en +3D.</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Modedit_footprint_3d_preview.png" alt="images/Modedit_footprint_3d_preview.png"> +</div> +</div> +<div class="paragraph"><p>Le modèle 3D apparaîtra automatiquement dans la représentation 3D du circuit +imprimé.</p></div> +</div> +<div class="sect2"> +<h3 id="_sauvegarde_d_8217_une_empreinte_en_librairie_active_2">13.14. Sauvegarde d’une empreinte en librairie active</h3> +<div class="paragraph"><p>La commande sauver (modification du fichier de la librairie active) est +effectué par le bouton <span class="image"> +<img src="images/icons/save_library.png" alt="images/icons/save_library.png"> +</span>.</p></div> +<div class="paragraph"><p>Si une empreinte de même nom existe (une version plus ancienne), elle sera +écrasée. Comme il est important d’avoir confiance dans ses librairies +d’empreintes, ça vaut la peine de contrôler deux fois son empreinte, pour +détecter des erreurs, avant de l’enregistrer.</p></div> +<div class="paragraph"><p>Avant d’enregistrer, il est également recommandé de modifier la référence, +ou la valeur de l’empreinte, pour qu’elle corresponde au nom de l’empreinte +dans la librairie.</p></div> +</div> +<div class="sect2"> +<h3 id="_sauver_une_empreinte_vers_le_circuit">13.15. Sauver une empreinte vers le circuit</h3> +<div class="paragraph"><p>Si l’empreinte modifiée provient du circuit actuel, le bouton +<span class="image"> +<img src="images/icons/update_module_board.png" alt="images/icons/update_module_board.png"> +</span> la mettra à jour sur la carte.</p></div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_outils_avances_d_edition_de_pcb">14. Outils avancés d'édition de PCB</h2> +<div class="sectionbody"> +<div class="paragraph"><p>Il y a quelques outils d'édition plus avancés, dans Pcbnew et l'Éditeur +d’Empreintes, qui peuvent vous aider à disposer efficacement les composants +sur le circuit.</p></div> +<div class="sect2"> +<h3 id="_elements_dupliques">14.1. Éléments dupliqués</h3> +<div class="paragraph"><p>La duplication est une méthode pour cloner un élément et le sélectionner +dans la même action. Il est grosso-modo similaire à un copier-coller, mais +il vous permet de "saupoudrer" les composants sur le PCB, et il vous permet +de placer manuellement les composants plus facilement en utilisant l’outil +"Déplacer Empreinte Exactement" (voir ci-dessous).</p></div> +<div class="paragraph"><p>La duplication se fait en utilisant le raccourci clavier (Ctrl-D par +défaut), ou par l’option Dupliquer Empreinte du menu contextuel. Dans +l’ancien affichage, ils apparaissent comme ci-dessous, en fonction du type +d'élément :</p></div> +<div class="paragraph"><p><span class="image"> +<img src="images/icons/duplicate_pad.png" alt="images/icons/duplicate_pad.png"> +</span> +<span class="image"> +<img src="images/icons/duplicate_line.png" alt="images/icons/duplicate_line.png"> +</span> +<span class="image"> +<img src="images/icons/duplicate_text.png" alt="images/icons/duplicate_text.png"> +</span> +<span class="image"> +<img src="images/icons/duplicate_module.png" alt="images/icons/duplicate_module.png"> +</span> +<span class="image"> +<img src="images/icons/duplicate_target.png" alt="images/icons/duplicate_target.png"> +</span> +<span class="image"> +<img src="images/icons/duplicate_zone.png" alt="images/icons/duplicate_zone.png"> +</span></p></div> +</div> +<div class="sect2"> +<h3 id="_deplacement_exact_d_elements">14.2. Déplacement exact d'éléments</h3> +<div class="paragraph"><p>L’outil "Déplacer Empreinte Exactement" vous permet de déplacer un élément +(ou un groupe d'éléments) d’une certaine quantité, qui peut être saisie dans +les formats cartésiens ou polaires, et dans toutes les unités prises en +compte. Ceci est utile lorsqu’il serait plus rébarbatif autrement de changer +de taille de grille, ou lorsqu’une fonction n’utilise pas l’espacement des +grilles existantes.</p></div> +<div class="paragraph"><p>To use this tool, select the items you wish to move and then use either the +hotkey (defaults to Ctrl-M) or the context menu items to invoke the +dialog. You can also invoke the dialog with the hotkey when moving or +duplicating items, which can make it easy to repeatedly apply an offset to +multiple components.</p></div> +<div class="paragraph"><p>Déplacement exact par la saisie d’un vecteur de déplacement cartésien</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_move_exact_cartesian.png" alt="images/Pcbnew_move_exact_cartesian.png"> +</div> +</div> +<div class="paragraph"><p>Déplacement exact par la saisie d’un vecteur de déplacement polaire</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_move_exact_polar.png" alt="images/Pcbnew_move_exact_polar.png"> +</div> +</div> +<div class="paragraph"><p>La case à cocher vous permet de basculer entre les coordonnées cartésiennes +(ou rectangulaires) et polaires. Tout ce qui est affiché dans le formulaire +sera automatiquement converti vers l’autre système de coordonnées.</p></div> +<div class="paragraph"><p>Vous entrez ensuite le vecteur de déplacement souhaité. Vous pouvez utiliser +les unités indiquées par les étiquettes ("mm" dans les images ci-dessus), ou +vous pouvez spécifier les unités vous-même (par exemple "1 in" pour un +pouce, ou "2 rad" pour 2 radians).</p></div> +<div class="paragraph"><p>En cliquant sur OK, cela appliquera la translation à la sélection. Sur +Annuler, cela fermera la fenêtre, et les éléments ne seront pas déplacés. Si +vous appuyez sur OK, le vecteur de déplacement sera sauvegardé et pré-rempli +pour la prochaine fois où la boîte de dialogue sera ouverte, ce qui permet +l’application répétée du même vecteur à de multiples objets.</p></div> +</div> +<div class="sect2"> +<h3 id="_outils_de_matricage">14.3. Outils de Matriçage</h3> +<div class="paragraph"><p>Pcbnew et l'Éditeur d’Empreintes ont tous les deux des assistants pour créer +des matrices (ou réseaux) d'éléments ou de composants, qui peuvent être +utilisés pour distribuer facilement et avec précision des éléments +répétitifs sur les PCBs, et dans les empreintes.</p></div> +<div class="sect3"> +<h4 id="_activation_de_l_8217_outil_de_matricage">14.3.1. Activation de l’outil de matriçage</h4> +<div class="paragraph"><p>L’outil de matriçage agit sur le composant sous le curseur, ou, en mode GAL, +sur une sélection. On y accède soit par le menu contextuel de la sélection, +soit par un raccourci clavier (Ctrl-N par défaut). Dans l’ancien affichage, +les icônes du menu contextuel montrent une matrice du type d'élément +sélectionné :</p></div> +<div class="paragraph"><p><span class="image"> +<img src="images/icons/array_pad.png" alt="images/icons/array_pad.png"> +</span> <span class="image"> +<img src="images/icons/array_line.png" alt="images/icons/array_line.png"> +</span> +<span class="image"> +<img src="images/icons/array_text.png" alt="images/icons/array_text.png"> +</span> <span class="image"> +<img src="images/icons/array_module.png" alt="images/icons/array_module.png"> +</span> +<span class="image"> +<img src="images/icons/array_target.png" alt="images/icons/array_target.png"> +</span> <span class="image"> +<img src="images/icons/array_zone.png" alt="images/icons/array_zone.png"> +</span></p></div> +<div class="paragraph"><p>The array tool is presented as a dialog window, with a pane for the types of +arrays. There are two types of arrays supported so far: grid, and circular.</p></div> +<div class="paragraph"><p>Chaque type de réseau peut être entièrement décrit dans son onglet +respectif. Les options de géométrie (comment la grille sera remplie) sont +sur la gauche ; les options de numérotation (y compris la progression des +numéros à travers la grille) sont sur la droite.</p></div> +</div> +<div class="sect3"> +<h4 id="_reseaux_en_grille">14.3.2. Réseaux en grille</h4> +<div class="paragraph"><p>Le réseaux en grille sont des matrices de composants disposés selon une +grille carrée à deux dimensions. Ce type de réseau peut également servir à +produire un réseau linéaire, comportant une seule ligne ou une seule +colonne.</p></div> +<div class="paragraph"><p>Le panneau de réglages pour les réseaux en grille ressemble à ceci :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_array_dialog_grid.png" alt="images/Pcbnew_array_dialog_grid.png"> +</div> +</div> +<div class="sect4"> +<h5 id="_options_geometriques">Options géométriques</h5> +<div class="paragraph"><p>Les options géométriques sont les suivantes :</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Compte horizontal</strong> : le nombre de "colonnes" de la matrice. +</p> +</li> +<li> +<p> +<strong>Compte vertical</strong> : le nombre de "rangées" de la matrice. +</p> +</li> +<li> +<p> +*Espacement horizontal * : la distance horizontale entre les éléments d’une même ligne + et la colonne suivante. Si le chiffre est négatif, la grille progressera de droite à gauche. +</p> +</li> +<li> +<p> +*Espacement vertical * : la distance verticale entre les éléments d’une même colonne + et la rangée suivante. Si le chiffre est négatif, la grille progressera de bas en haut. +</p> +</li> +<li> +<p> +<strong>Décalage horizontal</strong> : débute chaque rangée décalée de cette distance à droite de la rangée + précédente +</p> +</li> +<li> +<p> +<strong>Décalage vertical</strong> : débute chaque colonne décalée de cette distance sous la colonne + précédente +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_array_grid_offsets.png" alt="images/Pcbnew_array_grid_offsets.png"> +</div> +<div class="title">Figure 1. Grille 3x3 avec des décalages en X et Y</div> +</div> +<div class="ulist"><ul> +<li> +<p> +<strong>Quinconce/Balayage</strong> : ajoute un décalage à chaque série de "n" rangées/colonnes, chaque rangée + progressant d’1/n’ième de la dimension d’espacement correspondante : +</p> +</li> +</ul></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_array_grid_stagger_rows_2.png" alt="images/Pcbnew_array_grid_stagger_rows_2.png"> +</div> +<div class="title">Figure 2. Grille 3x3 en quinconce toutes les 2 rangées</div> +</div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_array_grid_stagger_cols_3.png" alt="images/Pcbnew_array_grid_stagger_cols_3.png"> +</div> +<div class="title">Figure 3. Grille 4x3 en quinconce toutes les 3 colonnes</div> +</div> +</div> +<div class="sect4"> +<h5 id="_options_de_numerotation">Options de numérotation</h5> +<div class="ulist"><ul> +<li> +<p> +<strong>Numbering Direction</strong>: Determines whether numbers proceed along rows and then + moves to the next row, or down columns and then to the next column. Note that + the direction on numbering is defined by the sign of the spacing: a negative + spacing will result in right-to-left or bottom-to-top numbering. +</p> +</li> +<li> +<p> +<strong>Numérotation inversée sur des rangées ou des colonnes alternées</strong> : si sélectionnée, numérotation + alternée (de gauche à droite ou de droite à gauche, par exemple), des lignes ou des colonnes. + Comment les lignes ou les colonnes sont alternées dépend de la direction de numérotation. Cette + option est utile pour les boîtiers comme les DIPs, où la numérotation s’incrémente sur un + côté et change de sens sur l’autre. +</p> +</li> +<li> +<p> +<strong>Restart numbering</strong>: if laying out using items that already have numbers, + reset to the start, otherwise continue if possible from this item’s number +</p> +</li> +<li> +<p> +<strong>Arrangement de Numérotation</strong> +</p> +<div class="ulist"><ul> +<li> +<p> +<strong>Continu</strong> : la numérotation continue par delà une rupture de ligne/colonne - si + le dernier élément de la première ligne est numéroté "7", le premier élément + de la deuxième ligne sera "8". +</p> +</li> +<li> +<p> +<strong>Coordonné</strong> : la numérotation utilise un système à deux axes où le numéro + est composé de l’index de sa ligne et de sa colonne. Celui qui vient en premier + (ligne ou colonne) est défini par la direction de numérotation. +</p> +</li> +</ul></div> +</li> +<li> +<p> +<strong>Axes de numérotation</strong>: quel "alphabet" utiliser pour numéroter les axes. Les choix sont : +</p> +<div class="ulist"><ul> +<li> +<p> +<strong>Numérique</strong> pour une indexation avec des chiffres entiers normaux. +</p> +</li> +<li> +<p> +<strong>Hexadécimal</strong> pour une indexation avec des chiffres en base 16. +</p> +</li> +<li> +<p> +<strong>Alphabétique, moins IOSQXZ</strong>, un arrangement courant pour les composants électroniques, + recommandé par ASME Y14.35M-1997 sec. 5.2 (anciennement MIL-STD-100 sec. 406.5) + pour éviter la confusion entre numéros. +</p> +</li> +<li> +<p> +<strong>Alphabet complet</strong>, de A à Z. +</p> +</li> +</ul></div> +</li> +</ul></div> +</div> +</div> +<div class="sect3"> +<h4 id="_reseaux_circulaires">14.3.3. Réseaux circulaires</h4> +<div class="paragraph"><p>Les réseaux circulaires distribuent les éléments autour d’un cercle ou d’un +arc de cercle. Le cercle est défini par l’emplacement de la sélection (ou le +centre d’un groupe sélectionné), et un point central qui est +spécifié. Ci-dessous, le panneau de configuration d’un réseau circulaire :</p></div> +<div class="imageblock"> +<div class="content"> +<img src="images/Pcbnew_array_dialog_circular.png" alt="images/Pcbnew_array_dialog_circular.png"> +</div> +</div> +<div class="sect4"> +<h5 id="_options_geometriques_2">Options géométriques</h5> +<div class="ulist"><ul> +<li> +<p> +<strong>Centre horizontal</strong>, <strong>Centre Vertical</strong>: le centre du cercle. Le champ Rayon + en-dessous se met automatiquement à jour lorsque vous les ajustez. +</p> +</li> +<li> +<p> +<strong>Angle</strong> : différence angulaire entre deux éléments adjacents dans la grille. + Mettre à zéro pour diviser le cercle en "Nombre" d'éléments égaux. +</p> +</li> +<li> +<p> +<strong>Nombre</strong> : Nombre d'éléments du réseau (y compris l'élément d’origine). +</p> +</li> +<li> +<p> +<strong>Rotation</strong> : Pivoter chaque élément autour de sa propre position. Dans le cas contraire, + l'élément sera décalé, mais pas tourné (par exemple, une pastille carrée sera toujours + axée verticalement si cette option est désactivée). +</p> +</li> +</ul></div> +</div> +<div class="sect4"> +<h5 id="_options_de_numerotation_2">Options de numérotation</h5> +<div class="paragraph"><p>Les réseaux circulaires ont seulement une dimension, et une géométrie plus +simple que les grilles. La signification des options disponibles est la même +que pour les grilles. Les éléments sont numérotés dans le sens horaire. Pour +un réseau de sens trigonométrique, spécifiez un angle négatif.</p></div> +</div> +</div> +</div> +</div> +</div> +<div class="sect1"> +<h2 id="_kicad_scripting_reference">15. KiCad Scripting Reference</h2> +<div class="sectionbody"> +<div class="paragraph"><p>Scripting allows you to automate tasks within KiCad using the +<a href="https://www.python.org/">Python</a> language.</p></div> +<div class="paragraph"><p>Voyez aussi la documentation de doxygen sur +<a href="http://ci.kicad-pcb.org/job/kicad-doxygen/ws/build/pcbnew/doxygen-python/html/index.html">Python +Scripting Reference</a>.</p></div> +<div class="paragraph"><p>Vous pouvez obtenir l’aide du module python en tapant <span class="monospaced">pydoc pcbnew</span> dans +votre terminal.</p></div> +<div class="paragraph"><p>Avec des scripts vous pouvez créer des :</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>Plugins</strong> : ce type de script est chargé au démarrage de KiCad. Exemples : +</p> +<div class="ulist"><ul> +<li> +<p> +<strong>Assistants d’Empreintes</strong> : Pour vous faciliter la fabrication d’empreintes en remplissant des paramètres. Voir ci-dessous la section dédiée <a href="#Footprint_Wizards">Assistants d’Empreintes</a>. +</p> +</li> +<li> +<p> +<strong>Fichier I/O</strong> <em>(en projet)</em> : Pour vous permettre d'écrire des plugins d’import/export d’autres types de fichiers. +</p> +</li> +<li> +<p> +<strong>Actions</strong> <em>(en projet)</em> : Pour associer des actions de scripts à des événements, ou ajouter de nouveaux menus ou icônes de barres d’outils. +</p> +</li> +</ul></div> +</li> +<li> +<p> +<strong>Scripts en Ligne de Commande</strong> : ces scripts, utilisables en ligne de commande, peuvent charger des circuits ou des librairies, les modifier, et produire en sortie des rendus ou de nouveaux circuits. +</p> +</li> +</ul></div> +<div class="paragraph"><p>Il faut noter que la seule application de KiCad qui permette l’utilisation +de scripts est Pcbnew. Il est prévu de pouvoir le faire avec Eeschema aussi +dans le futur.</p></div> +<div class="sect2"> +<h3 id="_objets_de_kicad">15.1. Objets de KiCad</h3> +<div class="paragraph"><p>L’API de scripting reflète la structure interne des objets dans +KiCad/Pcbnew. BOARD est l’objet principal. Il a un jeu de propriétés et un +jeu de MODULEs, TRACKs/VIAs, TEXTE_PCB, DIMENSION, DRAWSEGMENT. Les MODULEs +ont ensuite des D_PADs, EDGEs, etc…</p></div> +<div class="ulist"><ul> +<li> +<p> +Voir la section BOARD ci-dessous. +</p> +</li> +</ul></div> +</div> +<div class="sect2"> +<h3 id="_reference_de_base_de_l_8217_api">15.2. Référence de Base de l’API</h3> +<div class="paragraph"><p>All the pcbnew API is provided from the "pcbnew" module in Python. +GetBoard() method will return the current pcb open at editor, useful for +commands written from the integrated scripting shell inside pcbnew or action +plugins.</p></div> +</div> +<div class="sect2"> +<h3 id="_charger_et_sauvegarder_un_circuit">15.3. Charger et Sauvegarder un Circuit</h3> +<div class="ulist"><ul> +<li> +<p> +<strong>LoadBoard(nom_du_fichier) :</strong> + charge un circuit depuis un fichier et retourne un objet de type BOARD, en utilisant le format de fichier correspondant à l’extension du fichier. +</p> +</li> +<li> +<p> +<strong>SaveBoard(nom_du_fichier,circuit) :</strong> + sauvegarde un objet BOARD dans le fichier, en utilisant le format de fichier correspondant à l’extension du fichier. +</p> +</li> +<li> +<p> +<strong>circuit.Save(nom_du_fichier) :</strong> + identique au précédent, mais cette fois par la méthode de l’objet BOARD. +</p> +</li> +</ul></div> +<div class="listingblock"> +<div class="title">Un exemple qui charge un circuit, cache toutes les valeurs et montre toutes les références</div> +<div class="content"><!-- Generator: GNU source-highlight 3.1.7 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><span style="font-style: italic"><span style="color: #9A1900">#!/usr/bin/env python2.7</span></span> +<span style="font-weight: bold"><span style="color: #000080">import</span></span> sys +<span style="font-weight: bold"><span style="color: #000080">from</span></span> pcbnew <span style="font-weight: bold"><span style="color: #000080">import</span></span> <span style="color: #990000">*</span> + +filename<span style="color: #990000">=</span>sys<span style="color: #990000">.</span>argv<span style="color: #990000">[</span><span style="color: #993399">1</span><span style="color: #990000">]</span> + +pcb <span style="color: #990000">=</span> <span style="font-weight: bold"><span style="color: #000000">LoadBoard</span></span><span style="color: #990000">(</span>filename<span style="color: #990000">)</span> +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> module <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetModules</span></span><span style="color: #990000">():</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"* Module: %s"</span><span style="color: #990000">%</span>module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetReference</span></span><span style="color: #990000">()</span> + module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Value</span></span><span style="color: #990000">().</span><span style="font-weight: bold"><span style="color: #000000">SetVisible</span></span><span style="color: #990000">(</span>False<span style="color: #990000">)</span> <span style="font-style: italic"><span style="color: #9A1900"># set Value as Hidden</span></span> + module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Reference</span></span><span style="color: #990000">().</span><span style="font-weight: bold"><span style="color: #000000">SetVisible</span></span><span style="color: #990000">(</span>True<span style="color: #990000">)</span> <span style="font-style: italic"><span style="color: #9A1900"># set Reference as Visible</span></span> + +pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Save</span></span><span style="color: #990000">(</span><span style="color: #FF0000">"mod_"</span><span style="color: #990000">+</span>filename<span style="color: #990000">)</span></tt></pre></div></div> +</div> +<div class="sect2"> +<h3 id="_lister_et_charger_des_librairies">15.4. Lister et Charger des Librairies</h3> +<div class="listingblock"> +<div class="title">Énumérer une librairie, ses modules, et leurs pads</div> +<div class="content"><!-- Generator: GNU source-highlight 3.1.7 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><span style="font-style: italic"><span style="color: #9A1900">#!/usr/bin/python</span></span> + +<span style="font-weight: bold"><span style="color: #000080">from</span></span> pcbnew <span style="font-weight: bold"><span style="color: #000080">import</span></span> <span style="color: #990000">*</span> + +libpath <span style="color: #990000">=</span> <span style="color: #FF0000">"/usr/share/kicad/modules/Sockets.pretty"</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">">> enumerate footprints, pads of"</span><span style="color: #990000">,</span>libpath + +<span style="font-style: italic"><span style="color: #9A1900"># Load the suitable plugin to read/write the .pretty library</span></span> +<span style="font-style: italic"><span style="color: #9A1900"># (containing the .kicad_mod footprint files)</span></span> +src_type <span style="color: #990000">=</span> IO_MGR<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GuessPluginTypeFromLibPath</span></span><span style="color: #990000">(</span> libpath <span style="color: #990000">);</span> +<span style="font-style: italic"><span style="color: #9A1900"># Rem: we can force the plugin type by using IO_MGR.PluginFind( IO_MGR.KICAD )</span></span> +plugin <span style="color: #990000">=</span> IO_MGR<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">PluginFind</span></span><span style="color: #990000">(</span> src_type <span style="color: #990000">)</span> + +<span style="font-style: italic"><span style="color: #9A1900"># Print plugin type name: (Expecting "KiCad" for a .pretty library)</span></span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Selected plugin type: %s"</span> <span style="color: #990000">%</span> plugin<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">PluginName</span></span><span style="color: #990000">()</span> <span style="color: #990000">)</span> + +list_of_footprints <span style="color: #990000">=</span> plugin<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">FootprintEnumerate</span></span><span style="color: #990000">(</span>libpath<span style="color: #990000">)</span> + +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> name <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> list_of_footprints<span style="color: #990000">:</span> + fp <span style="color: #990000">=</span> plugin<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">FootprintLoad</span></span><span style="color: #990000">(</span>libpath<span style="color: #990000">,</span>name<span style="color: #990000">)</span> + <span style="font-style: italic"><span style="color: #9A1900"># print the short name of the footprint</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> name <span style="font-style: italic"><span style="color: #9A1900"># this is the name inside the loaded library</span></span> + <span style="font-style: italic"><span style="color: #9A1900"># followed by ref field, value field, and decription string:</span></span> + <span style="font-style: italic"><span style="color: #9A1900"># Remember ref and value texts are dummy texts, replaced by the schematic values</span></span> + <span style="font-style: italic"><span style="color: #9A1900"># when reading a netlist.</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">" ->"</span><span style="color: #990000">,</span> fp<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetReference</span></span><span style="color: #990000">(),</span> fp<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetValue</span></span><span style="color: #990000">(),</span> fp<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetDescription</span></span><span style="color: #990000">()</span> + + <span style="font-style: italic"><span style="color: #9A1900"># print pad info: GetPos0() is the pad position relative to the footrint position</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">for</span></span> pad <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> fp<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Pads</span></span><span style="color: #990000">():</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">" pad [%s]"</span> <span style="color: #990000">%</span> pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPadName</span></span><span style="color: #990000">(),</span> <span style="color: #FF0000">"at"</span><span style="color: #990000">,\</span> + <span style="color: #FF0000">"pos0"</span><span style="color: #990000">,</span> <span style="font-weight: bold"><span style="color: #000000">ToMM</span></span><span style="color: #990000">(</span>pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPos0</span></span><span style="color: #990000">().</span>x<span style="color: #990000">),</span> <span style="font-weight: bold"><span style="color: #000000">ToMM</span></span><span style="color: #990000">(</span>pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPos0</span></span><span style="color: #990000">().</span>y<span style="color: #990000">),</span><span style="color: #FF0000">"mm"</span><span style="color: #990000">,\</span> + <span style="color: #FF0000">"shape offset"</span><span style="color: #990000">,</span> <span style="font-weight: bold"><span style="color: #000000">ToMM</span></span><span style="color: #990000">(</span>pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetOffset</span></span><span style="color: #990000">().</span>x<span style="color: #990000">),</span> <span style="font-weight: bold"><span style="color: #000000">ToMM</span></span><span style="color: #990000">(</span>pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetOffset</span></span><span style="color: #990000">().</span>y<span style="color: #990000">),</span> <span style="color: #FF0000">"mm"</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">""</span></tt></pre></div></div> +</div> +<div class="sect2"> +<h3 id="_board">15.5. BOARD</h3> +<div class="paragraph"><p>BOARD est l’objet de base dans Pcbnew de KiCad, c’est le document.</p></div> +<div class="paragraph"><p>BOARD contient un jeu de listes d’objets qui peuvent être atteintes par les +méthodes suivantes, qui retournent des listes itérables pouvant être itérées +en utilisant "for obj in list:"</p></div> +<div class="ulist"><ul> +<li> +<p> +<strong>circuit.GetModules() :</strong> retourne la liste des objets de type MODULE. Tous les modules présents sur le circuit y seront représentés. +</p> +</li> +<li> +<p> +<strong>circuit.GetDrawings() :</strong> retourne la liste des BOARD_ITEMS qui sont des éléments graphiques du circuit. +</p> +</li> +<li> +<p> +<strong>board.GetTracks() :</strong> retourne la liste des objets de type TRACKs et VIAs d’un objet BOARD. +</p> +</li> +<li> +<p> +<strong>board.GetFullRatsnest() :</strong> retourne la liste des ratsnest (connexions encore non routées). +</p> +</li> +<li> +<p> +<strong>circuit.GetNetClasses() :</strong> retourne la liste des net classes. +</p> +</li> +<li> +<p> +<strong>circuit.GetCurrentNetClassName() :</strong> retourne la net class courante. +</p> +</li> +<li> +<p> +<strong>circuit.GetViasDimensionsList() :</strong> retourne la liste des dimensions des vias disponibles dans le circuit. +</p> +</li> +<li> +<p> +<strong>circuit.GetTrackWidthList() :</strong> retourne la liste des largeurs de piste disponibles dans le circuit. +</p> +</li> +</ul></div> +<div class="listingblock"> +<div class="title">Exemple d’Inspection d’un Circuit</div> +<div class="content"><!-- Generator: GNU source-highlight 3.1.7 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><span style="font-style: italic"><span style="color: #9A1900">#!/usr/bin/env python</span></span> +<span style="font-weight: bold"><span style="color: #000080">import</span></span> sys +<span style="font-weight: bold"><span style="color: #000080">from</span></span> pcbnew <span style="font-weight: bold"><span style="color: #000080">import</span></span> <span style="color: #990000">*</span> + +filename<span style="color: #990000">=</span>sys<span style="color: #990000">.</span>argv<span style="color: #990000">[</span><span style="color: #993399">1</span><span style="color: #990000">]</span> + +pcb <span style="color: #990000">=</span> <span style="font-weight: bold"><span style="color: #000000">LoadBoard</span></span><span style="color: #990000">(</span>filename<span style="color: #990000">)</span> + +ToUnits <span style="color: #990000">=</span> ToMM +FromUnits <span style="color: #990000">=</span> FromMM +<span style="font-style: italic"><span style="color: #9A1900">#ToUnits=ToMils</span></span> +<span style="font-style: italic"><span style="color: #9A1900">#FromUnits=FromMils</span></span> + +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"LISTING VIAS:"</span> + +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> item <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetTracks</span></span><span style="color: #990000">():</span> + <span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #000000">type</span></span><span style="color: #990000">(</span>item<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">is</span></span> VIA<span style="color: #990000">:</span> + + pos <span style="color: #990000">=</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPosition</span></span><span style="color: #990000">()</span> + drill <span style="color: #990000">=</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetDrillValue</span></span><span style="color: #990000">()</span> + width <span style="color: #990000">=</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetWidth</span></span><span style="color: #990000">()</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">" * Via: %s - %f/%f "</span><span style="color: #990000">%(</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>pos<span style="color: #990000">),</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>drill<span style="color: #990000">),</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>width<span style="color: #990000">))</span> + + <span style="font-weight: bold"><span style="color: #0000FF">elif</span></span> <span style="font-weight: bold"><span style="color: #000000">type</span></span><span style="color: #990000">(</span>item<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">is</span></span> TRACK<span style="color: #990000">:</span> + + start <span style="color: #990000">=</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetStart</span></span><span style="color: #990000">()</span> + end <span style="color: #990000">=</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetEnd</span></span><span style="color: #990000">()</span> + width <span style="color: #990000">=</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetWidth</span></span><span style="color: #990000">()</span> + + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">" * Track: %s to %s, width %f"</span> <span style="color: #990000">%</span> <span style="color: #990000">(</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>start<span style="color: #990000">),</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>end<span style="color: #990000">),</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>width<span style="color: #990000">))</span> + + <span style="font-weight: bold"><span style="color: #0000FF">else</span></span><span style="color: #990000">:</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"Unknown type %s"</span> <span style="color: #990000">%</span> <span style="font-weight: bold"><span style="color: #000000">type</span></span><span style="color: #990000">(</span>item<span style="color: #990000">)</span> + +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">""</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"LIST DRAWINGS:"</span> + +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> item <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetDrawings</span></span><span style="color: #990000">():</span> + <span style="font-weight: bold"><span style="color: #0000FF">if</span></span> <span style="font-weight: bold"><span style="color: #000000">type</span></span><span style="color: #990000">(</span>item<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">is</span></span> TEXTE_PCB<span style="color: #990000">:</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"* Text: '%s' at %s"</span><span style="color: #990000">%(</span>item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetText</span></span><span style="color: #990000">(),</span> item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPosition</span></span><span style="color: #990000">())</span> + <span style="font-weight: bold"><span style="color: #0000FF">elif</span></span> <span style="font-weight: bold"><span style="color: #000000">type</span></span><span style="color: #990000">(</span>item<span style="color: #990000">)</span> <span style="font-weight: bold"><span style="color: #0000FF">is</span></span> DRAWSEGMENT<span style="color: #990000">:</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"* Drawing: %s"</span><span style="color: #990000">%</span>item<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetShapeStr</span></span><span style="color: #990000">()</span> <span style="font-style: italic"><span style="color: #9A1900"># dir(item)</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">else</span></span><span style="color: #990000">:</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="font-weight: bold"><span style="color: #000000">type</span></span><span style="color: #990000">(</span>item<span style="color: #990000">)</span> + +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">""</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"LIST MODULES:"</span> + +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> module <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetModules</span></span><span style="color: #990000">():</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"* Module: %s at %s"</span><span style="color: #990000">%(</span>module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetReference</span></span><span style="color: #990000">(),</span><span style="font-weight: bold"><span style="color: #000000">ToUnits</span></span><span style="color: #990000">(</span>module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPosition</span></span><span style="color: #990000">()))</span> + +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">""</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"Ratsnest cnt:"</span><span style="color: #990000">,</span><span style="font-weight: bold"><span style="color: #000000">len</span></span><span style="color: #990000">(</span>pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetFullRatsnest</span></span><span style="color: #990000">())</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"track w cnt:"</span><span style="color: #990000">,</span><span style="font-weight: bold"><span style="color: #000000">len</span></span><span style="color: #990000">(</span>pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetTrackWidthList</span></span><span style="color: #990000">())</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"via s cnt:"</span><span style="color: #990000">,</span><span style="font-weight: bold"><span style="color: #000000">len</span></span><span style="color: #990000">(</span>pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetViasDimensionsList</span></span><span style="color: #990000">())</span> + +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">""</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"LIST ZONES:"</span><span style="color: #990000">,</span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetAreaCount</span></span><span style="color: #990000">()</span> + +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> idx <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> <span style="font-weight: bold"><span style="color: #000000">range</span></span><span style="color: #990000">(</span><span style="color: #993399">0</span><span style="color: #990000">,</span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetAreaCount</span></span><span style="color: #990000">()):</span> + zone<span style="color: #990000">=</span>pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetArea</span></span><span style="color: #990000">(</span>idx<span style="color: #990000">)</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"zone:"</span><span style="color: #990000">,</span> idx<span style="color: #990000">,</span> <span style="color: #FF0000">"priority:"</span><span style="color: #990000">,</span> zone<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPriority</span></span><span style="color: #990000">(),</span> <span style="color: #FF0000">"netname"</span><span style="color: #990000">,</span> zone<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetNetname</span></span><span style="color: #990000">()</span> + +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">""</span> +<span style="font-weight: bold"><span style="color: #0000FF">print</span></span> <span style="color: #FF0000">"NetClasses:"</span><span style="color: #990000">,</span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetNetClasses</span></span><span style="color: #990000">().</span><span style="font-weight: bold"><span style="color: #000000">GetCount</span></span><span style="color: #990000">(),</span></tt></pre></div></div> +</div> +<div class="sect2"> +<h3 id="_exemples_2">15.6. Exemples</h3> +<div class="sect3"> +<h4 id="_changer_la_marge_du_masque_de_soudure_des_pins_d_8217_un_composant">15.6.1. Changer la marge du masque de soudure des pins d’un composant</h4> +<div class="listingblock"> +<div class="title">We only want to change pins from 1 to 14, 15 is a thermal pad that must be kept as it is.</div> +<div class="content"><!-- Generator: GNU source-highlight 3.1.7 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><span style="font-style: italic"><span style="color: #9A1900">#!/usr/bin/env python2.7</span></span> +<span style="font-weight: bold"><span style="color: #000080">import</span></span> sys +<span style="font-weight: bold"><span style="color: #000080">from</span></span> pcbnew <span style="font-weight: bold"><span style="color: #000080">import</span></span> <span style="color: #990000">*</span> + +filename<span style="color: #990000">=</span>sys<span style="color: #990000">.</span>argv<span style="color: #990000">[</span><span style="color: #993399">1</span><span style="color: #990000">]</span> +pcb <span style="color: #990000">=</span> <span style="font-weight: bold"><span style="color: #000000">LoadBoard</span></span><span style="color: #990000">(</span>filename<span style="color: #990000">)</span> + +<span style="font-style: italic"><span style="color: #9A1900"># Find module U304</span></span> +u304 <span style="color: #990000">=</span> pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">FindModuleByReference</span></span><span style="color: #990000">(</span><span style="color: #FF0000">'U304'</span><span style="color: #990000">)</span> +pads <span style="color: #990000">=</span> u304<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Pads</span></span><span style="color: #990000">()</span> + +<span style="font-style: italic"><span style="color: #9A1900"># Iterate over pads, printing solder paste margin</span></span> +<span style="font-weight: bold"><span style="color: #0000FF">for</span></span> p <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> pads<span style="color: #990000">:</span> + <span style="font-weight: bold"><span style="color: #0000FF">print</span></span> p<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPadName</span></span><span style="color: #990000">(),</span> <span style="font-weight: bold"><span style="color: #000000">ToMM</span></span><span style="color: #990000">(</span>p<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetLocalSolderPasteMargin</span></span><span style="color: #990000">())</span> + id <span style="color: #990000">=</span> <span style="font-weight: bold"><span style="color: #000000">int</span></span><span style="color: #990000">(</span>p<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetPadName</span></span><span style="color: #990000">())</span> + <span style="font-style: italic"><span style="color: #9A1900"># Set margin to 0 for all but pad (pin) 15</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">if</span></span> id<span style="color: #990000"><</span><span style="color: #993399">15</span><span style="color: #990000">:</span> p<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetLocalSolderPasteMargin</span></span><span style="color: #990000">(</span><span style="color: #993399">0</span><span style="color: #990000">)</span> + +pcb<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Save</span></span><span style="color: #990000">(</span><span style="color: #FF0000">"mod_"</span><span style="color: #990000">+</span>filename<span style="color: #990000">)</span></tt></pre></div></div> +</div> +</div> +<div class="sect2"> +<h3 id="Footprint_Wizards">15.7. Assistants d’Empreintes</h3> +<div class="paragraph"><p>The footprint wizards are a collection of python scripts that can be +accessed from the Footprint Editor. If you invoke the footprint dialog you +select a given wizard that allows you to see the footprint rendered, and you +have some parameters you can edit.</p></div> +<div class="paragraph"><p>Si les plugins ne sont pas tous installés pour votre système, vous pouvez +trouver les dernières versions dans les sources de KiCad sur +<a href="https://git.launchpad.net/kicad/tree/pcbnew/python/plugins">launchpad</a>.</p></div> +<div class="paragraph"><p>Ils devront être enregistrés par exemple dans <span class="monospaced">C:\Program +Files\KiCad\share\kicad\scripting\plugins</span>.</p></div> +<div class="paragraph"><p>Sous Linux, vous pouvez aussi stocker vos plugins utilisateur dans +<span class="monospaced">$HOME/.kicad_plugins</span>.</p></div> +<div class="listingblock"> +<div class="title">Construire facilement des empreintes en remplissant des paramètres.</div> +<div class="content"><!-- Generator: GNU source-highlight 3.1.7 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre><tt><span style="font-weight: bold"><span style="color: #000080">from</span></span> __future__ <span style="font-weight: bold"><span style="color: #000080">import</span></span> division +<span style="font-weight: bold"><span style="color: #000080">import</span></span> pcbnew + +<span style="font-weight: bold"><span style="color: #000080">import</span></span> HelpfulFootprintWizardPlugin as HFPW + + +<span style="font-weight: bold"><span style="color: #0000FF">class</span></span> <span style="font-weight: bold"><span style="color: #000000">FPC_FootprintWizard</span></span><span style="color: #990000">(</span>HFPW<span style="color: #990000">.</span>HelpfulFootprintWizardPlugin<span style="color: #990000">):</span> + + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">GetName</span></span><span style="color: #990000">(</span>self<span style="color: #990000">):</span> + <span style="font-weight: bold"><span style="color: #0000FF">return</span></span> <span style="color: #FF0000">"FPC (SMT connector)"</span> + + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">GetDescription</span></span><span style="color: #990000">(</span>self<span style="color: #990000">):</span> + <span style="font-weight: bold"><span style="color: #0000FF">return</span></span> <span style="color: #FF0000">"FPC (SMT connector) Footprint Wizard"</span> + + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">GetValue</span></span><span style="color: #990000">(</span>self<span style="color: #990000">):</span> + pins <span style="color: #990000">=</span> self<span style="color: #990000">.</span>parameters<span style="color: #990000">[</span><span style="color: #FF0000">"Pads"</span><span style="color: #990000">][</span><span style="color: #FF0000">"*n"</span><span style="color: #990000">]</span> + <span style="font-weight: bold"><span style="color: #0000FF">return</span></span> <span style="color: #FF0000">"FPC_%d"</span> <span style="color: #990000">%</span> pins + + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">GenerateParameterList</span></span><span style="color: #990000">(</span>self<span style="color: #990000">):</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Pads"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"n"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uNatural<span style="color: #990000">,</span> <span style="color: #993399">40</span> <span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Pads"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"pitch"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">0.5</span> <span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Pads"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"width"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">0.25</span> <span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Pads"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"height"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">1.6</span><span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Shield"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"shield_to_pad"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">1.6</span> <span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Shield"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"from_top"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">1.3</span> <span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Shield"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"width"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">1.5</span> <span style="color: #990000">)</span> + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">AddParam</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Shield"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"height"</span><span style="color: #990000">,</span> self<span style="color: #990000">.</span>uMM<span style="color: #990000">,</span> <span style="color: #993399">2</span> <span style="color: #990000">)</span> + + + <span style="font-style: italic"><span style="color: #9A1900"># build a rectangular pad</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">smdRectPad</span></span><span style="color: #990000">(</span>self<span style="color: #990000">,</span>module<span style="color: #990000">,</span>size<span style="color: #990000">,</span>pos<span style="color: #990000">,</span>name<span style="color: #990000">):</span> + pad <span style="color: #990000">=</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">D_PAD</span></span><span style="color: #990000">(</span>module<span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetSize</span></span><span style="color: #990000">(</span>size<span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetShape</span></span><span style="color: #990000">(</span>pcbnew<span style="color: #990000">.</span>PAD_SHAPE_RECT<span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetAttribute</span></span><span style="color: #990000">(</span>pcbnew<span style="color: #990000">.</span>PAD_ATTRIB_SMD<span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetLayerSet</span></span><span style="color: #990000">(</span> pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SMDMask</span></span><span style="color: #990000">()</span> <span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetPos0</span></span><span style="color: #990000">(</span>pos<span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetPosition</span></span><span style="color: #990000">(</span>pos<span style="color: #990000">)</span> + pad<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">SetPadName</span></span><span style="color: #990000">(</span>name<span style="color: #990000">)</span> + <span style="font-weight: bold"><span style="color: #0000FF">return</span></span> pad + + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">CheckParameters</span></span><span style="color: #990000">(</span>self<span style="color: #990000">):</span> + p <span style="color: #990000">=</span> self<span style="color: #990000">.</span>parameters + self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">CheckParamInt</span></span><span style="color: #990000">(</span> <span style="color: #FF0000">"Pads"</span><span style="color: #990000">,</span> <span style="color: #FF0000">"*n"</span> <span style="color: #990000">)</span> <span style="font-style: italic"><span style="color: #9A1900"># not internal units preceded by "*"</span></span> + + + <span style="font-weight: bold"><span style="color: #0000FF">def</span></span> <span style="font-weight: bold"><span style="color: #000000">BuildThisFootprint</span></span><span style="color: #990000">(</span>self<span style="color: #990000">):</span> + p <span style="color: #990000">=</span> self<span style="color: #990000">.</span>parameters + pad_count <span style="color: #990000">=</span> <span style="font-weight: bold"><span style="color: #000000">int</span></span><span style="color: #990000">(</span>p<span style="color: #990000">[</span><span style="color: #FF0000">"Pads"</span><span style="color: #990000">][</span><span style="color: #FF0000">"*n"</span><span style="color: #990000">])</span> + pad_width <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Pads"</span><span style="color: #990000">][</span><span style="color: #FF0000">"width"</span><span style="color: #990000">]</span> + pad_height <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Pads"</span><span style="color: #990000">][</span><span style="color: #FF0000">"height"</span><span style="color: #990000">]</span> + pad_pitch <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Pads"</span><span style="color: #990000">][</span><span style="color: #FF0000">"pitch"</span><span style="color: #990000">]</span> + shl_width <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Shield"</span><span style="color: #990000">][</span><span style="color: #FF0000">"width"</span><span style="color: #990000">]</span> + shl_height <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Shield"</span><span style="color: #990000">][</span><span style="color: #FF0000">"height"</span><span style="color: #990000">]</span> + shl_to_pad <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Shield"</span><span style="color: #990000">][</span><span style="color: #FF0000">"shield_to_pad"</span><span style="color: #990000">]</span> + shl_from_top <span style="color: #990000">=</span> p<span style="color: #990000">[</span><span style="color: #FF0000">"Shield"</span><span style="color: #990000">][</span><span style="color: #FF0000">"from_top"</span><span style="color: #990000">]</span> + + offsetX <span style="color: #990000">=</span> pad_pitch <span style="color: #990000">*</span> <span style="color: #990000">(</span> pad_count<span style="color: #990000">-</span><span style="color: #993399">1</span> <span style="color: #990000">)</span> <span style="color: #990000">/</span> <span style="color: #993399">2</span> + size_pad <span style="color: #990000">=</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">wxSize</span></span><span style="color: #990000">(</span> pad_width<span style="color: #990000">,</span> pad_height <span style="color: #990000">)</span> + size_shld <span style="color: #990000">=</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">wxSize</span></span><span style="color: #990000">(</span>shl_width<span style="color: #990000">,</span> shl_height<span style="color: #990000">)</span> + size_text <span style="color: #990000">=</span> self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetTextSize</span></span><span style="color: #990000">()</span> <span style="font-style: italic"><span style="color: #9A1900"># IPC nominal</span></span> + + <span style="font-style: italic"><span style="color: #9A1900"># Gives a position and size to ref and value texts:</span></span> + textposy <span style="color: #990000">=</span> pad_height<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">+</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">FromMM</span></span><span style="color: #990000">(</span><span style="color: #993399">1</span><span style="color: #990000">)</span> <span style="color: #990000">+</span> self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetTextThickness</span></span><span style="color: #990000">()</span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Reference</span></span><span style="color: #990000">(</span> <span style="color: #993399">0</span><span style="color: #990000">,</span> textposy<span style="color: #990000">,</span> size_text <span style="color: #990000">)</span> + + textposy <span style="color: #990000">=</span> textposy <span style="color: #990000">+</span> size_text <span style="color: #990000">+</span> self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetTextThickness</span></span><span style="color: #990000">()</span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Value</span></span><span style="color: #990000">(</span> <span style="color: #993399">0</span><span style="color: #990000">,</span> textposy<span style="color: #990000">,</span> size_text <span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># create a pad array and add it to the module</span></span> + <span style="font-weight: bold"><span style="color: #0000FF">for</span></span> n <span style="font-weight: bold"><span style="color: #0000FF">in</span></span> <span style="font-weight: bold"><span style="color: #000000">range</span></span> <span style="color: #990000">(</span> <span style="color: #993399">0</span><span style="color: #990000">,</span> pad_count <span style="color: #990000">):</span> + xpos <span style="color: #990000">=</span> pad_pitch<span style="color: #990000">*</span>n <span style="color: #990000">-</span> offsetX + pad <span style="color: #990000">=</span> self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">smdRectPad</span></span><span style="color: #990000">(</span>self<span style="color: #990000">.</span>module<span style="color: #990000">,</span>size_pad<span style="color: #990000">,</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">wxPoint</span></span><span style="color: #990000">(</span>xpos<span style="color: #990000">,</span><span style="color: #993399">0</span><span style="color: #990000">),</span><span style="font-weight: bold"><span style="color: #000000">str</span></span><span style="color: #990000">(</span>n<span style="color: #990000">+</span><span style="color: #993399">1</span><span style="color: #990000">))</span> + self<span style="color: #990000">.</span>module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Add</span></span><span style="color: #990000">(</span>pad<span style="color: #990000">)</span> + + + <span style="font-style: italic"><span style="color: #9A1900"># Mechanical shield pads: left pad and right pad</span></span> + xpos <span style="color: #990000">=</span> <span style="color: #990000">-</span>shl_to_pad<span style="color: #990000">-</span>offsetX + pad_s0_pos <span style="color: #990000">=</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">wxPoint</span></span><span style="color: #990000">(</span>xpos<span style="color: #990000">,</span>shl_from_top<span style="color: #990000">)</span> + pad_s0 <span style="color: #990000">=</span> self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">smdRectPad</span></span><span style="color: #990000">(</span>self<span style="color: #990000">.</span>module<span style="color: #990000">,</span> size_shld<span style="color: #990000">,</span> pad_s0_pos<span style="color: #990000">,</span> <span style="color: #FF0000">"0"</span><span style="color: #990000">)</span> + xpos <span style="color: #990000">=</span> <span style="color: #990000">(</span>pad_count<span style="color: #990000">-</span><span style="color: #993399">1</span><span style="color: #990000">)</span> <span style="color: #990000">*</span> pad_pitch<span style="color: #990000">+</span>shl_to_pad <span style="color: #990000">-</span> offsetX + pad_s1_pos <span style="color: #990000">=</span> pcbnew<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">wxPoint</span></span><span style="color: #990000">(</span>xpos<span style="color: #990000">,</span>shl_from_top<span style="color: #990000">)</span> + pad_s1 <span style="color: #990000">=</span> self<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">smdRectPad</span></span><span style="color: #990000">(</span>self<span style="color: #990000">.</span>module<span style="color: #990000">,</span> size_shld<span style="color: #990000">,</span> pad_s1_pos<span style="color: #990000">,</span> <span style="color: #FF0000">"0"</span><span style="color: #990000">)</span> + + self<span style="color: #990000">.</span>module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Add</span></span><span style="color: #990000">(</span>pad_s0<span style="color: #990000">)</span> + self<span style="color: #990000">.</span>module<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Add</span></span><span style="color: #990000">(</span>pad_s1<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># add footprint outline</span></span> + linewidth <span style="color: #990000">=</span> self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">GetLineTickness</span></span><span style="color: #990000">()</span> + margin <span style="color: #990000">=</span> linewidth + + <span style="font-style: italic"><span style="color: #9A1900"># upper line</span></span> + posy <span style="color: #990000">=</span> <span style="color: #990000">-</span>pad_height<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">-</span> linewidth<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">-</span> margin + xstart <span style="color: #990000">=</span> <span style="color: #990000">-</span> pad_pitch<span style="color: #990000">*</span><span style="color: #993399">0.5</span><span style="color: #990000">-</span>offsetX + xend <span style="color: #990000">=</span> pad_pitch <span style="color: #990000">*</span> pad_count <span style="color: #990000">+</span> xstart<span style="color: #990000">;</span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span> xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xend<span style="color: #990000">,</span> posy <span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># lower line</span></span> + posy <span style="color: #990000">=</span> pad_height<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">+</span> linewidth<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">+</span> margin + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xend<span style="color: #990000">,</span> posy<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># around left mechanical pad (the outline around right pad is mirrored/y axix)</span></span> + yend <span style="color: #990000">=</span> pad_s0_pos<span style="color: #990000">.</span>y <span style="color: #990000">+</span> shl_height<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">+</span> margin + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xstart<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(-</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> <span style="color: #990000">-</span>xstart<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + posy <span style="color: #990000">=</span> yend + xend <span style="color: #990000">=</span> pad_s0_pos<span style="color: #990000">.</span>x <span style="color: #990000">-</span> <span style="color: #990000">(</span>shl_width<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">+</span> linewidth <span style="color: #990000">+</span> margin<span style="color: #990000">*</span><span style="color: #993399">2</span><span style="color: #990000">)</span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xend<span style="color: #990000">,</span> posy<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># right pad side</span></span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(-</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> <span style="color: #990000">-</span>xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># vertical segment at left of the pad</span></span> + xstart <span style="color: #990000">=</span> xend + yend <span style="color: #990000">=</span> posy <span style="color: #990000">-</span> <span style="color: #990000">(</span>shl_height <span style="color: #990000">+</span> linewidth <span style="color: #990000">+</span> margin<span style="color: #990000">*</span><span style="color: #993399">2</span><span style="color: #990000">)</span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># right pad side</span></span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(-</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> <span style="color: #990000">-</span>xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># horizontal segment above the pad</span></span> + xstart <span style="color: #990000">=</span> xend + xend <span style="color: #990000">=</span> <span style="color: #990000">-</span> pad_pitch<span style="color: #990000">*</span><span style="color: #993399">0.5</span><span style="color: #990000">-</span>offsetX + posy <span style="color: #990000">=</span> yend + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># right pad side</span></span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(-</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,-</span>xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># vertical segment above the pad</span></span> + xstart <span style="color: #990000">=</span> xend + yend <span style="color: #990000">=</span> <span style="color: #990000">-</span>pad_height<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">-</span> linewidth<span style="color: #990000">/</span><span style="color: #993399">2</span> <span style="color: #990000">-</span> margin + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + <span style="font-style: italic"><span style="color: #9A1900"># right pad side</span></span> + self<span style="color: #990000">.</span>draw<span style="color: #990000">.</span><span style="font-weight: bold"><span style="color: #000000">Line</span></span><span style="color: #990000">(-</span>xstart<span style="color: #990000">,</span> posy<span style="color: #990000">,</span> <span style="color: #990000">-</span>xend<span style="color: #990000">,</span> yend<span style="color: #990000">)</span> + + +<span style="font-weight: bold"><span style="color: #000000">FPC_FootprintWizard</span></span><span style="color: #990000">().</span><span style="font-weight: bold"><span style="color: #000000">register</span></span><span style="color: #990000">()</span></tt></pre></div></div> +</div> +</div> +</div> +</div> +<div id="footnotes"><hr></div> +<div id="footer"> +<div id="footer-text"> +Dernière mise à jour 2017-08-24 22:17:48 BST +</div> +</div> +</body> +</html> |