Deploying to gh-pages from @ Klipper3d/klipper@cba119db3a 🚀
This commit is contained in:
@@ -1552,7 +1552,7 @@
|
||||
|
||||
|
||||
<h1 id="_1">床網<a class="headerlink" href="#_1" title="Permanent link">¶</a></h1>
|
||||
<p>網床 外掛可用於補償熱床表面的不規則性,以保證在列印過程中獲得更好的第一層。 需要注意的是,基於軟體的校正還不能達到完美的程度,它只能儘可能達到床的形狀。網床 也無法補償機械和電氣導致的問題。 如果機器沒裝好結構歪了或探針不準確,則 網床 模組將無法從探測過程中獲得令人滿意的結果。</p>
|
||||
<p>The Bed Mesh module may be used to compensate for bed surface irregularities to achieve a better first layer across the entire bed. It should be noted that software based correction will not achieve perfect results, it can only approximate the shape of the bed. Bed Mesh also cannot compensate for mechanical and electrical issues. If an axis is skewed or a probe is not accurate then the bed_mesh module will not receive accurate results from the probing process.</p>
|
||||
<p>在進行網格校準之前,需要先校準探針的 Z 偏移。如果使用限位開關進行Z軸定位,也需要對其進行校準。請參閱<a href="Probe_Calibrate.html">探針校準</a>和<a href="Manual_Level.html">手動調平</a>中的 Z_ENDSTOP_CALIBRATE 獲取更多資訊。</p>
|
||||
<h2 id="_2">基本配置<a class="headerlink" href="#_2" title="Permanent link">¶</a></h2>
|
||||
<h3 id="_3">矩形床<a class="headerlink" href="#_3" title="Permanent link">¶</a></h3>
|
||||
@@ -1569,7 +1569,7 @@ probe_count: 5, 3
|
||||
<li><code>speed: 120</code> <em>預設值:50</em> 探針在兩個點之間移動的速度。</li>
|
||||
<li><code>horizontal_move_z: 5</code> <em>預設值:5</em> 探針前往下一個點之前Z需要抬升的高度。</li>
|
||||
<li><code>mesh_min: 35,6</code> <em>(必須存在)</em>第一個探測的座標,距離原點最近。該座標就是探針所在的位置。</li>
|
||||
<li><code>mesh_max: 240,198</code> <em>必須配置</em> 距離原點最遠的探測座標。 這不一定是最後一個探測點,因為探測會以鋸齒形的方式運動。 與 <code>mesh_min</code> 一樣,這個座標相對於探針。</li>
|
||||
<li><code>mesh_max: 240, 198</code> <em>Required</em> The probed coordinate farthest farthest from the origin. This is not necessarily the last point probed, as the probing process occurs in a zig-zag fashion. As with <code>mesh_min</code>, this coordinate is relative to the probe's location.</li>
|
||||
<li><code>probe_count: 5, 3</code> <em>預設值:3, 3</em> 每個軸上要探測的點數,指定為 X, Y 整數值。 在本示例中,將沿 X 軸探測 5 個點,沿 Y 軸探測 3 個點,總共探測 15 個點。 請注意,如果您想要一個方形網格,例如 3x3,可以將指定其為一個整數值,比如 <code>probe_count: 3</code>。 請注意,網格需要沿每個軸的最小 probe_count 為3。</li>
|
||||
</ul>
|
||||
<p>下圖演示瞭如何使用 <code>mesh_min</code>、<code>mesh_max</code> 和 <code>probe_count</code> 選項來產生探測點。 箭頭表示探測過程的運動方向,從「mesh_min」開始。 圖中所示,當探針位於「mesh_min」時,噴嘴將位於 (11, 1),當探針位於「mesh_max」時,噴嘴將位於 (206, 193)。</p>
|
||||
@@ -1589,12 +1589,12 @@ round_probe_count: 5
|
||||
<li><code>mesh_origin: 0, 0</code> <em>預設值:0, 0</em> 探測網格的中心點。 該座標相對於探針的位置。 雖然預設值為 0,0,但如果希望探測床的邊角可以修改該值。 請參閱下圖。</li>
|
||||
<li><code>round_probe_count: 5</code> <em>預設值: 5</em> 這是一個整數值,用於限制沿 X 軸和 Y 軸的最大探測點數。 「最大」是指沿網格原點探測的點數。 該值必須是奇數,因為需要探測網格的中心。</li>
|
||||
</ul>
|
||||
<p>下圖展示瞭如何產生探測點。 如您所見,將 <code>mesh_origin</code> 設定為 (-10, 0) 允許我們指定更大的網格半徑 85mm。</p>
|
||||
<p>The illustration below shows how the probed points are generated. As you can see, setting the <code>mesh_origin</code> to (-10, 0) allows us to specify a larger mesh radius of 85.</p>
|
||||
<p><img alt="圓形網床基本配置" src="img/bedmesh_round_basic.svg" /></p>
|
||||
<h2 id="_5">高級配置<a class="headerlink" href="#_5" title="Permanent link">¶</a></h2>
|
||||
<p>下面詳細解釋了更高級的配置選項。 每個示例都將建立在上面顯示的基本矩形床配置之上。 每個高級選項都以相同的方式應用於圓床。</p>
|
||||
<h3 id="_6">網格插值<a class="headerlink" href="#_6" title="Permanent link">¶</a></h3>
|
||||
<p>雖然可以使用簡單的雙線性插值直接對探測網格的數據進行採樣以確定探測點之間的 Z 值,但使用更高級的插值演算法來插入額外的點以增加網格密度通常很有用。 這些演算法向網格新增曲率,試圖模擬床的材料屬性。 網床提供了拉格朗日和雙三次插值來實現這一點。</p>
|
||||
<p>While its possible to sample the probed matrix directly using simple bi-linear interpolation to determine the Z-Values between probed points, it is often useful to interpolate extra points using more advanced interpolation algorithms to increase mesh density. These algorithms add curvature to the mesh, attempting to simulate the material properties of the bed. Bed Mesh offers lagrange and bicubic interpolation to accomplish this.</p>
|
||||
<div class="highlight"><pre><span></span><code>[bed_mesh]
|
||||
speed: 120
|
||||
horizontal_move_z: 5
|
||||
@@ -1629,7 +1629,7 @@ split_delta_z: .025
|
||||
<li><code>move_check_distance: 5</code> <em>預設值:5</em> 在執行拆分之前檢查 Z 中需要變化的最小距離。 在此示例中,演算法將遍歷超過 5 毫米的移動。 每 5mm 將查詢一次網格的Z ,並將其與前一次移動的 Z 值進行比較。 如果三角洲滿足 <code>split_delta_z</code> 設定的閾值,則移動將被拆分並繼續遍歷。 重複此過程,直到到達移動結束處,在此將應用最終調整。 比 <code>move_check_distance</code> 短的移動將正確的 Z 調整直接應用於移動,無需遍歷或拆分。</li>
|
||||
<li><code>split_delta_z: .025</code> <em>預設值:.025</em> 如上所述,這是觸發移動拆分所需的最小偏差。 在上面的示例中,任何偏差為 +/- .025 mm的 Z 值都將觸發拆分。</li>
|
||||
</ul>
|
||||
<p>一般來說,這些選項的預設值就足夠了,但事實上,<code>move_check_distance</code> 的預設值 5mm 可能會有點過度矯正。 所以,高階可能希望嘗試使用這個選項來獲得擠出最佳的第一層。</p>
|
||||
<p>Generally the default values for these options are sufficient, in fact the default value of 5mm for the <code>move_check_distance</code> may be overkill. However an advanced user may wish to experiment with these options in an effort to squeeze out the optimal first layer.</p>
|
||||
<h3 id="_8">網格淡出<a class="headerlink" href="#_8" title="Permanent link">¶</a></h3>
|
||||
<p>啟用「網格淡出」后,Z 軸的調整將在配置中定義的距離範圍內逐步消失。 這是通過對層高進行小幅調整來實現的,根據床的形狀增加或減少。 網格淡出完成後,不再使用 Z 調整,使列印的表面是平坦的而不是床彎曲的形狀。 網格淡出也可能會產生一些不良表現,如果網格淡出過快,可能會導致列印件上出現可見的瑕疵(偽影)。 此外,如果您的床明顯變形,網格淡出會縮小或拉伸列印件的 Z 高度。 因此,預設情況下禁用網格淡出。</p>
|
||||
<div class="highlight"><pre><span></span><code>[bed_mesh]
|
||||
@@ -1646,10 +1646,10 @@ fade_target: 0
|
||||
<ul>
|
||||
<li><code>fade_start: 1</code> <em>預設值:1</em> 開始網格淡出的值,在設定的fade_start值之後逐步停止調整Z的高度。 建議在列印幾層之後再開始淡出層高。</li>
|
||||
<li><code>fade_end: 10</code> <em>預設值:0</em> 網格淡出完成的 Z 高度。 如果此值低於<code>fade_start</code>,則禁用網格淡出。 該值可以根據列印表面的彎曲程度進行調整。 明顯彎曲的表面應該在將網格淡出的距離長。 接近平坦的表面可能能夠降低該值以更快地逐步淘汰。 如果對 <code>fade_start</code> 使用預設值 1,則 10mm 是一個合理的值。</li>
|
||||
<li><code>fade_target: 0</code> <em>預設值:熱床網格的平均Z值</em> <code>fade_target</code> 是在網格淡出完成後應用於整個床的額外 Z 偏移。一 般來說,這個值是 0,但有些情況下它需要改動。 例如,您在熱床的歸位位置與床的平均探測高度有偏差,它比床的平均探測高度低 0.2 mm。 如果 <code>fade_target</code> 為 0,淡出會將整個床的列印平均縮小 0.2 mm。 通過將 <code>fade_target</code> 設定為 0.2,歸位的位置將擴大 0.2 毫米,但床的其餘部分將具有準確的尺寸。 一般來說,最好不要修改 <code>fade_target</code> 而修正機器本身導致的誤差,以便使用網格的平均高度,但是如果想要在床的特定部分列印,可能需要手動調整網格淡出。</li>
|
||||
<li><code>fade_target: 0</code> <em>Default Value: The average Z value of the mesh</em> The <code>fade_target</code> can be thought of as an additional Z offset applied to the entire bed after fade completes. Generally speaking we would like this value to be 0, however there are circumstances where it should not be. For example, lets assume your homing position on the bed is an outlier, its .2 mm lower than the average probed height of the bed. If the <code>fade_target</code> is 0, fade will shrink the print by an average of .2 mm across the bed. By setting the <code>fade_target</code> to .2, the homed area will expand by .2 mm, however, the rest of the bed will be accurately sized. Generally its a good idea to leave <code>fade_target</code> out of the configuration so the average height of the mesh is used, however it may be desirable to manually adjust the fade target if one wants to print on a specific portion of the bed.</li>
|
||||
</ul>
|
||||
<h3 id="_9">相對參考索引<a class="headerlink" href="#_9" title="Permanent link">¶</a></h3>
|
||||
<p>大部分探針檢測到的值容易產生誤差,即:由溫度或探測介質干擾產生的探測誤差。 這加大探針Z偏移的看計算難度,尤其是在不同的熱床溫度下。 因此,一些印表機使用限位開關來歸位 Z 軸,並使用探針來校準網格。 這些印表機可以從配置中的相對參考索引(relative_reference_index)中尋找幫助。</p>
|
||||
<p>Most probes are susceptible to drift, ie: inaccuracies in probing introduced by heat or interference. This can make calculating the probe's z-offset challenging, particularly at different bed temperatures. As such, some printers use an endstop for homing the Z axis, and a probe for calibrating the mesh. These printers can benefit from configuring the relative reference index.</p>
|
||||
<div class="highlight"><pre><span></span><code>[bed_mesh]
|
||||
speed: 120
|
||||
horizontal_move_z: 5
|
||||
@@ -1717,7 +1717,7 @@ faulty_region_4_max: 45.0, 210.0
|
||||
<p><code>BED_MESH_PROFILE SAVE=<名稱> LOAD=<名稱> REMOVE=<名稱></code></p>
|
||||
<p>在執行 BED_MESH_CALIBRATE 后,可以將目前網格狀態儲存到一個命名的配置中。這樣不需要重新探測列印床就可以載入一個網格。在使用<code>BED_MESH_PROFILE SAVE=<名稱></code>儲存了一個配置檔案后,可以執行<code>SAVE_CONFIG</code> G程式碼將配置寫入 printer.cfg。</p>
|
||||
<p>可以通過執行 <code>BED_MESH_PROFILE LOAD=<名稱></code> 來載入配置。</p>
|
||||
<p>請注意,每次執行 BED_MESH_CALIBRATE 后,目前狀態會被儲存到 <em>default</em> 配置。如果這個配置在配置檔案中存在,它會在 Klipper 啟動時自動載入。如果不希望這種行為,可以通過以下命令刪除 <em>default</em> 配置:</p>
|
||||
<p>It should be noted that each time a BED_MESH_CALIBRATE occurs, the current state is automatically saved to the <em>default</em> profile. The <em>default</em> profile can be removed as follows:</p>
|
||||
<p><code>BED_MESH_PROFILE REMOVE=default</code></p>
|
||||
<p>任何其他儲存的配置也可以用相同的方式刪除,用你想刪除的配置名稱替換<em>default</em>。</p>
|
||||
<h4 id="loading-the-default-profile">Loading the default profile<a class="headerlink" href="#loading-the-default-profile" title="Permanent link">¶</a></h4>
|
||||
|
||||
@@ -1134,6 +1134,13 @@
|
||||
SAMD51 步速率基準測試
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#ar100-step-rate-benchmark" class="md-nav__link">
|
||||
AR100 step rate benchmark
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -1503,6 +1510,13 @@
|
||||
SAMD51 步速率基準測試
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#ar100-step-rate-benchmark" class="md-nav__link">
|
||||
AR100 step rate benchmark
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -2005,6 +2019,34 @@ finalize_config crc=0
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h3 id="ar100-step-rate-benchmark">AR100 step rate benchmark<a class="headerlink" href="#ar100-step-rate-benchmark" title="Permanent link">¶</a></h3>
|
||||
<p>The following configuration sequence is used on AR100 CPU (Allwinner A64):</p>
|
||||
<div class="highlight"><pre><span></span><code>allocate_oids count=3
|
||||
config_stepper oid=0 step_pin=PL10 dir_pin=PE14 invert_step=-1 step_pulse_ticks=0
|
||||
config_stepper oid=1 step_pin=PL11 dir_pin=PE15 invert_step=-1 step_pulse_ticks=0
|
||||
config_stepper oid=2 step_pin=PL12 dir_pin=PE16 invert_step=-1 step_pulse_ticks=0
|
||||
finalize_config crc=0
|
||||
</code></pre></div>
|
||||
|
||||
<p>The test was last run on commit <code>08d037c6</code> with gcc version <code>or1k-linux-musl-gcc (GCC) 9.2.0</code> on an Allwinner A64-H micro-controller.</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>AR100 R_PIO</th>
|
||||
<th>ticks</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>1個步進電機</td>
|
||||
<td>85</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3個步進電機</td>
|
||||
<td>359</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<h3 id="rp2040">RP2040 步速率基準測試<a class="headerlink" href="#rp2040" title="Permanent link">¶</a></h3>
|
||||
<p>RP2040 上使用以下配置序列:</p>
|
||||
<div class="highlight"><pre><span></span><code>allocate_oids count=3
|
||||
@@ -2105,6 +2147,12 @@ get_uptime
|
||||
<td>avr-gcc (GCC) 5.4.0</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>ar100 (serial)</td>
|
||||
<td>138K</td>
|
||||
<td>08d037c6</td>
|
||||
<td>or1k-linux-musl-gcc 9.3.0</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>samd21 (USB)</td>
|
||||
<td>223K</td>
|
||||
<td>01d2183f</td>
|
||||
|
||||
@@ -1776,7 +1776,7 @@ stm32flash -w generic_boot20_pc13.bin -v -g 0 /dev/ttyAMA0
|
||||
<p>啟動載入程式通常只在啟動后的一小段時間執行。在輸入以上命令的時候,需要確保啟動載入程式還在執行(啟動載入程式執行的時候會控制板上的led閃爍)。此外,啟動后如果設定「boot 0」引腳為低,設定「boot 1」引腳為高則可以一直停留在啟動載入程式。</p>
|
||||
<h3 id="hid-stm32f103">帶有 HID 載入程式的STM32F103<a class="headerlink" href="#hid-stm32f103" title="Permanent link">¶</a></h3>
|
||||
<p><a href="https://github.com/Serasidis/STM32_HID_Bootloader">HID bootloader</a>是一個緊湊的、不包含驅動的啟動載入程式,能夠通過USB進行刷寫。此外,還有一個<a href="https://github.com/Arksine/STM32_HID_Bootloader/releases/latest">針對SKR Mini E3 1.2構建的分支</a>。</p>
|
||||
<p>對於常見的STM32F103板,如Blue Pill,和 stm32duino 章節中一樣,可以通過 3.3v 序列用stm32flash 刷寫啟動載入程式,將檔名替換為所需的 hid載入程式二進制檔案(例如Blue Pill 使用的 hid_generic_pc13.bin)。</p>
|
||||
<p>For generic STM32F103 boards such as the blue pill it is possible to flash the bootloader via 3.3V serial using stm32flash as noted in the stm32duino section above, substituting the file name for the desired hid bootloader binary (ie: hid_generic_pc13.bin for the blue pill).</p>
|
||||
<p>SKR Mini E3無法使用stm32flash ,因為boot 0引腳被直接接到GND且沒有跳線斷開。推薦使用STLink V2通過STM32Cubeprogrammer刷寫啟動載入程式。如果你沒有STLink ,也可以按照以下晶片配置使用<a href="#running-openocd-on-the-raspberry-pi">樹莓派和OpenOCD</a> 刷寫:</p>
|
||||
<div class="highlight"><pre><span></span><code>來源 [查詢目標/stm32f1x.cfg]
|
||||
</code></pre></div>
|
||||
@@ -1829,10 +1829,10 @@ make
|
||||
<div class="highlight"><pre><span></span><code>make flash FLASH_DEVICE=/dev/ttyACM0
|
||||
</code></pre></div>
|
||||
|
||||
<p>可能需要手動進入載入程式,這可以通過設定 "boot 0 "的低電平和 "boot 1 "的高電平來完成。在SKR Mini E3上,"Boot 1 "是不可用的,所以如果你寫入過"hid_btt_skr_mini_e3.bin",可以通過設定PA2的低電平來完成。在SKR Mini E3的 "PIN "檔案中,這個引腳在TFT插座上被標記為 "TX0"。在PA2旁邊有一個接地引腳,你可以用它來把PA2拉低。</p>
|
||||
<p>It may be necessary to manually enter the bootloader, this can be done by setting "boot 0" low and "boot 1" high. On the SKR Mini E3 "Boot 1" is not available, so it may be done by setting pin PA2 low if you flashed "hid_btt_skr_mini_e3.bin". This pin is labeled "TX0" on the TFT header in the SKR Mini E3's "PIN" document. There is a ground pin next to PA2 which you can use to pull PA2 low.</p>
|
||||
<h3 id="stm32f103stm32f072-with-msc-bootloader">STM32F103/STM32F072 with MSC bootloader<a class="headerlink" href="#stm32f103stm32f072-with-msc-bootloader" title="Permanent link">¶</a></h3>
|
||||
<p>The <a href="https://github.com/Telekatz/MSC-stm32f103-bootloader">MSC bootloader</a> is a driverless bootloader capable of flashing over USB.</p>
|
||||
<p>It is possible to flash the bootloader via 3.3v serial using stm32flash as noted in the stm32duino section above, substituting the file name for the desired MSC bootloader binary (ie: MSCboot-Bluepill.bin for the blue pill).</p>
|
||||
<p>It is possible to flash the bootloader via 3.3V serial using stm32flash as noted in the stm32duino section above, substituting the file name for the desired MSC bootloader binary (ie: MSCboot-Bluepill.bin for the blue pill).</p>
|
||||
<p>For STM32F072 boards it is also possible to flash the bootloader over USB (via DFU) with something like:</p>
|
||||
<div class="highlight"><pre><span></span><code> dfu-util -d 0483:df11 -a 0 -R -D MSCboot-STM32F072.bin -s0x08000000:leave
|
||||
</code></pre></div>
|
||||
@@ -1841,7 +1841,7 @@ make
|
||||
<p>The bootloader can be activated by pressing the reset button of the board twice. As soon as the bootloader is activated, the board appears as a USB flash drive onto which the klipper.bin file can be copied.</p>
|
||||
<h3 id="stm32f103stm32f0x2-with-canboot-bootloader">STM32F103/STM32F0x2 with CanBoot bootloader<a class="headerlink" href="#stm32f103stm32f0x2-with-canboot-bootloader" title="Permanent link">¶</a></h3>
|
||||
<p>The <a href="https://github.com/Arksine/CanBoot">CanBoot</a> bootloader provides an option for uploading Klipper firmware over the CANBUS. The bootloader itself is derived from Klipper's source code. Currently CanBoot supports the STM32F103, STM32F042, and STM32F072 models.</p>
|
||||
<p>It is recommended to use a ST-Link Programmer to flash CanBoot, however it should be possible to flash using <code>stm32flash</code> on STM32F103 devices, and <code>dfu-util</code> on STM32F042/STM32F072 devices. See the previous sections in this document for instructions on these flashing methods, substituting <code>canboot.bin</code> for the file name where appropriate. The CanBoot repo linked above provides instructions for building the bootloader.</p>
|
||||
<p>It is recommended to use a ST-Link Programmer to flash CanBoot, however it should be possible to flash using <code>stm32flash</code> on STM32F103 devices, and <code>dfu-util</code> on STM32F042/STM32F072 devices. See the previous sections in this document for instructions on these flashing methods, substituting <code>canboot.bin</code> for the file name where appropriate. The CanBoot repository linked above provides instructions for building the bootloader.</p>
|
||||
<p>The first time CanBoot has been flashed it should detect that no application is present and enter the bootloader. If this doesn't occur it is possible to enter the bootloader by pressing the reset button twice in succession.</p>
|
||||
<p>The <code>flash_can.py</code> utility supplied in the <code>lib/canboot</code> folder may be used to upload Klipper firmware. The device UUID is necessary to flash. If you do not have a UUID it is possible to query nodes currently running the bootloader:</p>
|
||||
<div class="highlight"><pre><span></span><code>python3 flash_can.py -q
|
||||
@@ -1855,8 +1855,8 @@ make
|
||||
<p>Where <code>aabbccddeeff</code> is replaced by your UUID. Note that the <code>-i</code> and <code>-f</code> options may be omitted, they default to <code>can0</code> and <code>~/klipper/out/klipper.bin</code> respectively.</p>
|
||||
<p>When building Klipper for use with CanBoot, select the 8 KiB Bootloader option.</p>
|
||||
<h2 id="stm32f4-skr-pro-11">STM32F4 微控制器 (SKR Pro 1.1)<a class="headerlink" href="#stm32f4-skr-pro-11" title="Permanent link">¶</a></h2>
|
||||
<p>STM32F4微控制器配備了一個內建的系統載入程式,能夠通過USB(通過DFU)、3.3v串列埠和其他各種方法進行刷寫(更多資訊見STM檔案AN2606)。一些STM32F4板,如SKR Pro 1.1,不能進入DFU載入程式。基於STM32F405/407的板子可以使用HID載入程式,如果使用者願意通過USB刷寫而不是使用SD卡。請注意,你可能需針對你的板子配置和構建一個特定的版本,<a href="https://github.com/Arksine/STM32_HID_Bootloader/releases/latest">針對SKR Pro 1.1的構建可以在這裡找到</a>。</p>
|
||||
<p>除非你的板子有DFU功能,否則最容易的寫入方法可能是通過3.3v的串列埠,這與<a href="#stm32f103-micro-controllers-blue-pill-devices">使用stm32flash刷寫STM32F103</a>的步驟相同。例如:</p>
|
||||
<p>STM32F4 micro-controllers come equipped with a built-in system bootloader capable of flashing over USB (via DFU), 3.3V Serial, and various other methods (see STM Document AN2606 for more information). Some STM32F4 boards, such as the SKR Pro 1.1, are not able to enter the DFU bootloader. The HID bootloader is available for STM32F405/407 based boards should the user prefer flashing over USB over using the sdcard. Note that you may need to configure and build a version specific to your board, a <a href="https://github.com/Arksine/STM32_HID_Bootloader/releases/latest">build for the SKR Pro 1.1 is available here</a>.</p>
|
||||
<p>Unless your board is DFU capable the most accessible flashing method is likely via 3.3V serial, which follows the same procedure as <a href="#stm32f103-micro-controllers-blue-pill-devices">flashing the STM32F103 using stm32flash</a>. For example:</p>
|
||||
<div class="highlight"><pre><span></span><code>wget https://github.com/Arksine/STM32_HID_Bootloader/releases/download/v0.5-beta/hid_bootloader_SKR_PRO.bin
|
||||
|
||||
stm32flash -w hid_bootloader_SKR_PRO.bin -v -g 0 /dev/ttyAMA0
|
||||
|
||||
@@ -1466,15 +1466,15 @@
|
||||
<td>列印床調平中,MCU 更新中</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>James Hartley</td>
|
||||
<td>@JamesH1978</td>
|
||||
<td>Configuration files</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Kevin O'Connor</td>
|
||||
<td>@KevinOConnor</td>
|
||||
<td>核心運動系統,微控制器代碼</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Paul McGowan</td>
|
||||
<td>@mental405</td>
|
||||
<td>配置檔案, 文件</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>請不要“ping”任何審閱人仕,也不要直接向他們投稿。所有審閱人仕都會監控論壇和 PR,並會在有時間時進行審閱。</p>
|
||||
|
||||
@@ -1293,6 +1293,8 @@
|
||||
<p>本文件涵蓋了軟體更新中對配置檔案不向后相容的部分。在升級 Klipper 時,最好也檢視一下這份文件。</p>
|
||||
<p>本文件中的所有日期都是不精確的。</p>
|
||||
<h2 id="_2">變更<a class="headerlink" href="#_2" title="Permanent link">¶</a></h2>
|
||||
<p>20230304: The <code>SET_TMC_CURRENT</code> command now properly adjusts the globalscaler register for drivers that have it. This removes a limitation where on tmc5160, the currents could not be raised higher with <code>SET_TMC_CURRENT</code> than the <code>run_current</code> value set in the config file. However, this has a side effect: After running <code>SET_TMC_CURRENT</code>, the stepper must be held at standstill for >130ms in case StealthChop2 is used so that the AT#1 calibration gets executed by the driver.</p>
|
||||
<p>20230202: The format of the <code>printer.screws_tilt_adjust</code> status information has changed. The information is now stored as a dictionary of screws with the resulting measurements. See the <a href="Status_Reference.html#screws_tilt_adjust">status reference</a> for details.</p>
|
||||
<p>20230201: The <code>[bed_mesh]</code> module no longer loads the <code>default</code> profile on startup. It is recommended that users who use the <code>default</code> profile add <code>BED_MESH_PROFILE LOAD=default</code> to their <code>START_PRINT</code> macro (or to their slicer's "Start G-Code" configuration when applicable).</p>
|
||||
<p>20230103: It is now possible with the flash-sdcard.sh script to flash both variants of the Bigtreetech SKR-2, STM32F407 and STM32F429. This means that the original tag of btt-skr2 now has changed to either btt-skr-2-f407 or btt-skr-2-f429.</p>
|
||||
<p>20221128: Klipper v0.11.0 released.</p>
|
||||
|
||||
@@ -1337,6 +1337,13 @@
|
||||
[tmc2660]
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#tmc2240" class="md-nav__link">
|
||||
[tmc2240]
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -3258,6 +3265,13 @@
|
||||
[tmc2660]
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#tmc2240" class="md-nav__link">
|
||||
[tmc2240]
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -3849,7 +3863,7 @@ max_z_velocity:
|
||||
#min_angle: 5
|
||||
# This represents the minimum angle (in degrees) relative to horizontal
|
||||
# that the deltesian arms are allowed to achieve. This parameter is
|
||||
# intended to restrict the arms from becomming completely horizontal,
|
||||
# intended to restrict the arms from becoming completely horizontal,
|
||||
# which would risk accidental inversion of the XZ axis. The default is 5.
|
||||
#print_width:
|
||||
# The distance (in mm) of valid toolhead X coordinates. One may use
|
||||
@@ -3886,7 +3900,7 @@ arm_x_length:
|
||||
# for stepper_right, this parameter defaults to the value specified for
|
||||
# stepper_left.
|
||||
|
||||
# The stepper_right section is used to desribe the stepper controlling the
|
||||
# The stepper_right section is used to describe the stepper controlling the
|
||||
# right tower.
|
||||
[stepper_right]
|
||||
|
||||
@@ -4486,12 +4500,12 @@ max_temp:
|
||||
# The height (in mm) that the head should be commanded to move to
|
||||
# just prior to starting a probe operation. The default is 5.
|
||||
#screw_thread: CW-M3
|
||||
# The type of screw used for bed level, M3, M4 or M5 and the
|
||||
# direction of the knob used to level the bed, clockwise decrease
|
||||
# counter-clockwise decrease.
|
||||
# The type of screw used for bed leveling, M3, M4, or M5, and the
|
||||
# rotation direction of the knob that is used to level the bed.
|
||||
# Accepted values: CW-M3, CCW-M3, CW-M4, CCW-M4, CW-M5, CCW-M5.
|
||||
# Default value is CW-M3, most printers use an M3 screw and
|
||||
# turning the knob clockwise decrease distance.
|
||||
# Default value is CW-M3 which most printers use. A clockwise
|
||||
# rotation of the knob decreases the gap between the nozzle and the
|
||||
# bed. Conversely, a counter-clockwise rotation increases the gap.
|
||||
</code></pre></div>
|
||||
|
||||
<h3 id="z_tilt">[z_tilt]<a class="headerlink" href="#z_tilt" title="Permanent link">¶</a></h3>
|
||||
@@ -6221,6 +6235,120 @@ run_current:
|
||||
# HDEC) is interpreted as the MSB of HSTRT in this case).
|
||||
</code></pre></div>
|
||||
|
||||
<h3 id="tmc2240">[tmc2240]<a class="headerlink" href="#tmc2240" title="Permanent link">¶</a></h3>
|
||||
<p>Configure a TMC2240 stepper motor driver via SPI bus. To use this feature, define a config section with a "tmc2240" prefix followed by the name of the corresponding stepper config section (for example, "[tmc2240 stepper_x]").</p>
|
||||
<div class="highlight"><pre><span></span><code>[tmc2240 stepper_x]
|
||||
cs_pin:
|
||||
# The pin corresponding to the TMC2240 chip select line. This pin
|
||||
# will be set to low at the start of SPI messages and raised to high
|
||||
# after the message completes. This parameter must be provided.
|
||||
#spi_speed:
|
||||
#spi_bus:
|
||||
#spi_software_sclk_pin:
|
||||
#spi_software_mosi_pin:
|
||||
#spi_software_miso_pin:
|
||||
# See the "common SPI settings" section for a description of the
|
||||
# above parameters.
|
||||
#chain_position:
|
||||
#chain_length:
|
||||
# These parameters configure an SPI daisy chain. The two parameters
|
||||
# define the stepper position in the chain and the total chain length.
|
||||
# Position 1 corresponds to the stepper that connects to the MOSI signal.
|
||||
# The default is to not use an SPI daisy chain.
|
||||
#interpolate: True
|
||||
# If true, enable step interpolation (the driver will internally
|
||||
# step at a rate of 256 micro-steps). The default is True.
|
||||
run_current:
|
||||
# The amount of current (in amps RMS) to configure the driver to use
|
||||
# during stepper movement. This parameter must be provided.
|
||||
#hold_current:
|
||||
# The amount of current (in amps RMS) to configure the driver to use
|
||||
# when the stepper is not moving. Setting a hold_current is not
|
||||
# recommended (see TMC_Drivers.md for details). The default is to
|
||||
# not reduce the current.
|
||||
#rref: 12000
|
||||
# The resistance (in ohms) of the resistor between IREF and GND. The
|
||||
# default is 12000.
|
||||
#stealthchop_threshold: 0
|
||||
# The velocity (in mm/s) to set the "stealthChop" threshold to. When
|
||||
# set, "stealthChop" mode will be enabled if the stepper motor
|
||||
# velocity is below this value. The default is 0, which disables
|
||||
# "stealthChop" mode.
|
||||
#driver_MSLUT0: 2863314260
|
||||
#driver_MSLUT1: 1251300522
|
||||
#driver_MSLUT2: 608774441
|
||||
#driver_MSLUT3: 269500962
|
||||
#driver_MSLUT4: 4227858431
|
||||
#driver_MSLUT5: 3048961917
|
||||
#driver_MSLUT6: 1227445590
|
||||
#driver_MSLUT7: 4211234
|
||||
#driver_W0: 2
|
||||
#driver_W1: 1
|
||||
#driver_W2: 1
|
||||
#driver_W3: 1
|
||||
#driver_X1: 128
|
||||
#driver_X2: 255
|
||||
#driver_X3: 255
|
||||
#driver_START_SIN: 0
|
||||
#driver_START_SIN90: 247
|
||||
#driver_OFFSET_SIN90: 0
|
||||
# These fields control the Microstep Table registers directly. The optimal
|
||||
# wave table is specific to each motor and might vary with current. An
|
||||
# optimal configuration will have minimal print artifacts caused by
|
||||
# non-linear stepper movement. The values specified above are the default
|
||||
# values used by the driver. The value must be specified as a decimal integer
|
||||
# (hex form is not supported). In order to compute the wave table fields,
|
||||
# see the tmc2130 "Calculation Sheet" from the Trinamic website.
|
||||
# Additionally, this driver also has the OFFSET_SIN90 field which can be used
|
||||
# to tune a motor with unbalanced coils. See the `Sine Wave Lookup Table`
|
||||
# section in the datasheet for information about this field and how to tune
|
||||
# it.
|
||||
#driver_IHOLDDELAY: 6
|
||||
#driver_IRUNDELAY: 4
|
||||
#driver_TPOWERDOWN: 10
|
||||
#driver_TBL: 2
|
||||
#driver_TOFF: 3
|
||||
#driver_HEND: 2
|
||||
#driver_HSTRT: 5
|
||||
#driver_FD3: 0
|
||||
#driver_TPFD: 4
|
||||
#driver_CHM: 0
|
||||
#driver_VHIGHFS: 0
|
||||
#driver_VHIGHCHM: 0
|
||||
#driver_DISS2G: 0
|
||||
#driver_DISS2VS: 0
|
||||
#driver_PWM_AUTOSCALE: True
|
||||
#driver_PWM_AUTOGRAD: True
|
||||
#driver_PWM_FREQ: 0
|
||||
#driver_FREEWHEEL: 0
|
||||
#driver_PWM_GRAD: 0
|
||||
#driver_PWM_OFS: 29
|
||||
#driver_PWM_REG: 4
|
||||
#driver_PWM_LIM: 12
|
||||
#driver_SGT: 0
|
||||
#driver_SEMIN: 0
|
||||
#driver_SEUP: 0
|
||||
#driver_SEMAX: 0
|
||||
#driver_SEDN: 0
|
||||
#driver_SEIMIN: 0
|
||||
#driver_SFILT: 0
|
||||
#driver_SG4_ANGLE_OFFSET: 1
|
||||
# Set the given register during the configuration of the TMC2240
|
||||
# chip. This may be used to set custom motor parameters. The
|
||||
# defaults for each parameter are next to the parameter name in the
|
||||
# above list.
|
||||
#diag0_pin:
|
||||
#diag1_pin:
|
||||
# The micro-controller pin attached to one of the DIAG lines of the
|
||||
# TMC2240 chip. Only a single diag pin should be specified. The pin
|
||||
# is "active low" and is thus normally prefaced with "^!". Setting
|
||||
# this creates a "tmc2240_stepper_x:virtual_endstop" virtual pin
|
||||
# which may be used as the stepper's endstop_pin. Doing this enables
|
||||
# "sensorless homing". (Be sure to also set driver_SGT to an
|
||||
# appropriate sensitivity value.) The default is to not enable
|
||||
# sensorless homing.
|
||||
</code></pre></div>
|
||||
|
||||
<h3 id="tmc5160">[tmc5160]<a class="headerlink" href="#tmc5160" title="Permanent link">¶</a></h3>
|
||||
<p>通過 SPI 匯流排配置 TMC5160 步進電機驅動。要使用此功能,請定義一個帶有 「tmc5160」 字首並後跟步進驅動配置分段相應名稱的配置分段(例如,「[tmc5160 stepper_x]」)。</p>
|
||||
<div class="highlight"><pre><span></span><code>[tmc5160 stepper_x]
|
||||
@@ -7024,20 +7152,17 @@ host_mcu:
|
||||
<p>如果使用 OctoPrint 並通過串列埠流式傳輸 G-Code,而不通過 virtual_sd 列印,將 * 設定>序列連線>韌體和協議 * 中的「暫停命令」 設定為<strong>M1</strong> 和 <strong>M0</strong> 可以避免在開始列印時需要在Palette 2 上選擇開始列印並在 OctoPrint 中取消暫停。</p>
|
||||
<div class="highlight"><pre><span></span><code>[palette2]
|
||||
serial:
|
||||
# 連線到 Palette 2 的串列埠。
|
||||
# The serial port to connect to the Palette 2.
|
||||
#baud: 115200
|
||||
# 使用的波特率。
|
||||
# 預設為115200。
|
||||
# The baud rate to use. The default is 115200.
|
||||
#feedrate_splice: 0.8
|
||||
# 融接時的給進率
|
||||
# 預設為0.8。
|
||||
# The feedrate to use when splicing, default is 0.8
|
||||
#feedrate_normal: 1.0
|
||||
# 不在融接時的給進率 1.0
|
||||
# The feedrate to use after splicing, default is 1.0
|
||||
#auto_load_speed: 2
|
||||
# 自動換料時的給近率
|
||||
# 預設 2 (mm/s)
|
||||
# Extrude feedrate when autoloading, default is 2 (mm/s)
|
||||
#auto_cancel_variation: 0.1
|
||||
# # 當 ping 值變化高於此閾值時自動取消列印
|
||||
# Auto cancel print when ping variation is above this threshold
|
||||
</code></pre></div>
|
||||
|
||||
<h3 id="angle">[angle]<a class="headerlink" href="#angle" title="Permanent link">¶</a></h3>
|
||||
@@ -7088,8 +7213,8 @@ cs_pin:
|
||||
|
||||
<h3 id="i2c">通用 I2C 設定<a class="headerlink" href="#i2c" title="Permanent link">¶</a></h3>
|
||||
<p>以下參數通常適用於使用 I2C 總線的設備。</p>
|
||||
<p>Note that Klipper's current micro-controller support for i2c is generally not tolerant to line noise. Unexpected errors on the i2c wires may result in Klipper raising a run-time error. Klipper's support for error recovery varies between each micro-controller type. It is generally recommended to only use i2c devices that are on the same printed circuit board as the micro-controller.</p>
|
||||
<p>Most Klipper micro-controller implementations only support an <code>i2c_speed</code> of 100000. The Klipper "linux" micro-controller supports a 400000 speed, but it must be <a href="RPi_microcontroller.html#optional-enabling-i2c">set in the operating system</a> and the <code>i2c_speed</code> parameter is otherwise ignored. The Klipper "rp2040" micro-controller supports a rate of 400000 via the <code>i2c_speed</code> parameter. All other Klipper micro-controllers use a 100000 rate and ignore the <code>i2c_speed</code> parameter.</p>
|
||||
<p>Note that Klipper's current micro-controller support for I2C is generally not tolerant to line noise. Unexpected errors on the I2C wires may result in Klipper raising a run-time error. Klipper's support for error recovery varies between each micro-controller type. It is generally recommended to only use I2C devices that are on the same printed circuit board as the micro-controller.</p>
|
||||
<p>Most Klipper micro-controller implementations only support an <code>i2c_speed</code> of 100000 (<em>standard mode</em>, 100kbit/s). The Klipper "Linux" micro-controller supports a 400000 speed (<em>fast mode</em>, 400kbit/s), but it must be <a href="RPi_microcontroller.html#optional-enabling-i2c">set in the operating system</a> and the <code>i2c_speed</code> parameter is otherwise ignored. The Klipper "RP2040" micro-controller and ATmega AVR family support a rate of 400000 via the <code>i2c_speed</code> parameter. All other Klipper micro-controllers use a 100000 rate and ignore the <code>i2c_speed</code> parameter.</p>
|
||||
<div class="highlight"><pre><span></span><code>#i2c_address:
|
||||
# The i2c address of the device. This must specified as a decimal
|
||||
# number (not in hex). The default depends on the type of device.
|
||||
@@ -7104,7 +7229,7 @@ cs_pin:
|
||||
# The I2C speed (in Hz) to use when communicating with the device.
|
||||
# The Klipper implementation on most micro-controllers is hard-coded
|
||||
# to 100000 and changing this value has no effect. The default is
|
||||
# 100000.
|
||||
# 100000. Linux, RP2040 and ATmega support 400000.
|
||||
</code></pre></div>
|
||||
|
||||
|
||||
|
||||
@@ -1505,7 +1505,7 @@ make build
|
||||
<div class="highlight"><pre><span></span><code>ls ./build/pysimulavr/_pysimulavr.*.so
|
||||
</code></pre></div>
|
||||
|
||||
<p>此命令應報告特定文件(例如 <strong>./build/pysimulavr/_pysimulavr.cpython-39-x86_64-linux-gnu.so</strong>)而不是錯誤。</p>
|
||||
<p>This command should report a specific file (e.g. <strong>./build/pysimulavr/_pysimulavr.cpython-39-x86_64-linux-gnu.so</strong>) and not an error.</p>
|
||||
<p>如果您在基於 Debian 的系統(Debian、Ubuntu 等)上,您可以安裝以下軟件包並生成 *.deb 文件以在系統範圍內安裝 simulavr:</p>
|
||||
<div class="highlight"><pre><span></span><code>sudo apt update
|
||||
sudo apt install g++ make cmake swig rst2pdf help2man texinfo
|
||||
|
||||
@@ -1307,7 +1307,7 @@
|
||||
<p>Klipper 有幾個引人注目的功能:</p>
|
||||
<ul>
|
||||
<li>High precision stepper movement. Klipper utilizes an application processor (such as a low-cost Raspberry Pi) when calculating printer movements. The application processor determines when to step each stepper motor, it compresses those events, transmits them to the micro-controller, and then the micro-controller executes each event at the requested time. Each stepper event is scheduled with a precision of 25 micro-seconds or better. The software does not use kinematic estimations (such as the Bresenham algorithm) - instead it calculates precise step times based on the physics of acceleration and the physics of the machine kinematics. More precise stepper movement provides quieter and more stable printer operation.</li>
|
||||
<li>同類項目中最佳的效能。 Klipper 能夠在新舊微控制器上實現高步進速率。即使是舊的 8 位微控制器也可以發送超過每秒 175K 步的速率。在較新的微控制器上,每秒數百萬步也可以實現。更高的步進速率可以實現更高的列印速度。步進事件計時即使在高速下也能保持精確,提高了整體穩定性。</li>
|
||||
<li>Best in class performance. Klipper is able to achieve high stepping rates on both new and old micro-controllers. Even old 8-bit micro-controllers can obtain rates over 175K steps per second. On more recent micro-controllers, several million steps per second are possible. Higher stepper rates enable higher print velocities. The stepper event timing remains precise even at high speeds which improves overall stability.</li>
|
||||
<li>Klipper 支援帶有多個微控制器的印表機。例如,一個微控制器可以被用來控制擠出機,而另一個用來控制加熱器,並使用第三個來控制其他的印表機元件。Klipper 主機程式實現了時鐘同步,解決了微處理器之間的時鐘漂移。 啟用多個控制器只需要在配置檔案中新增幾行,不需要任何特殊程式碼。</li>
|
||||
<li>通過簡單的配置檔案進行配置。修改設定不需要重新刷寫微控制器。Klipper 的所有配置都被儲存在一個易編輯的配置檔案中,大大減少了配置與維護硬體的難度。</li>
|
||||
<li>Klipper 支援「平滑提前壓力」--一種考慮了擠出機內壓力影響的機制。這項技術可以減少噴嘴溢料並改善轉角的列印質量。Klipper 的實現不會引入瞬間擠出機速度變化,改善了整體穩定性和穩健性。</li>
|
||||
@@ -1424,6 +1424,11 @@
|
||||
<td>1885K</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>AR100</td>
|
||||
<td>3529K</td>
|
||||
<td>2507K</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>STM32F407</td>
|
||||
<td>3652K</td>
|
||||
<td>2459K</td>
|
||||
|
||||
@@ -4424,7 +4424,7 @@
|
||||
<h3 id="bed_mesh">[bed_mesh]<a class="headerlink" href="#bed_mesh" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用 <a href="Config_Reference.html#bed_mesh">bed_mesh config section</a> 時,以下命令可用(另請參閱 <a href="Bed_Mesh.html">bed mesh guide</a>)。</p>
|
||||
<h4 id="bed_mesh_calibrate">BED_MESH_CALIBRATE<a class="headerlink" href="#bed_mesh_calibrate" title="Permanent link">¶</a></h4>
|
||||
<p><code>BED_MESH_CALIBRATE [METHOD=manual] [<probe_parameter>=<value>] [<mesh_parameter>=<value>]</code>: 此命令使用通過配置參數指定並產生的探測點探測列印床。在探測后,一個網格將被產生,z 軸移動將根據網格調整。有關可選探測參數,請見 PROBE命令。如果指定 METHOD=manual ,則會啟動手動探測工具 - 有關此工具活躍時可用的額外命令,詳見 MANUAL_PROBE 命令。</p>
|
||||
<p><code>BED_MESH_CALIBRATE [METHOD=manual] [HORIZONTAL_MOVE_Z=<value>] [<probe_parameter>=<value>] [<mesh_parameter>=<value>]</code>: This command probes the bed using generated points specified by the parameters in the config. After probing, a mesh is generated and z-movement is adjusted according to the mesh. See the PROBE command for details on the optional probe parameters. If METHOD=manual is specified then the manual probing tool is activated - see the MANUAL_PROBE command above for details on the additional commands available while this tool is active. The optional <code>HORIZONTAL_MOVE_Z</code> value overrides the <code>horizontal_move_z</code> option specified in the config file.</p>
|
||||
<h4 id="bed_mesh_output">BED_MESH_OUTPUT<a class="headerlink" href="#bed_mesh_output" title="Permanent link">¶</a></h4>
|
||||
<p><code>BED_MESH_OUTPUT PGP=[<0:1>]</code>:該命令將目前探測到的 Z 值和目前網格的值輸出到終端。如果指定 PGP=1,則將bed_mesh產生的X、Y座標,以及它們關聯的指數,輸出到終端。</p>
|
||||
<h4 id="bed_mesh_map">BED_MESH_MAP<a class="headerlink" href="#bed_mesh_map" title="Permanent link">¶</a></h4>
|
||||
@@ -4442,7 +4442,7 @@
|
||||
<h3 id="bed_tilt">[bed_tilt]<a class="headerlink" href="#bed_tilt" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用 <a href="Config_Reference.html#bed_tilt">bed_tilt config section</a> 時,以下命令可用。</p>
|
||||
<h4 id="bed_tilt_calibrate">BED_TILT_CALIBRATE<a class="headerlink" href="#bed_tilt_calibrate" title="Permanent link">¶</a></h4>
|
||||
<p><code>BED_TILT_CALIBRATE [Method=manual] [<probe_parameter>=<value>]</code>:該命令將探測配置中指定的點,然後建議更新X和Y的傾斜調整。有關可選探測參數的詳細資訊,請參見PROBE命令。如果指定METHOD=manual,那麼手動探測工具就會被啟用 - 關於該工具啟用時可用的附加命令,請參見上面的MANUAL_PROBE命令。</p>
|
||||
<p><code>BED_TILT_CALIBRATE [METHOD=manual] [HORIZONTAL_MOVE_Z=<value>] [<probe_parameter>=<value>]</code>: This command will probe the points specified in the config and then recommend updated x and y tilt adjustments. See the PROBE command for details on the optional probe parameters. If METHOD=manual is specified then the manual probing tool is activated - see the MANUAL_PROBE command above for details on the additional commands available while this tool is active. The optional <code>HORIZONTAL_MOVE_Z</code> value overrides the <code>horizontal_move_z</code> option specified in the config file.</p>
|
||||
<h3 id="bltouch">[bltouch]<a class="headerlink" href="#bltouch" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用 <a href="Config_Reference.html#bltouch">bltouch config section</a> 時,以下命令可用(另請參閱 <a href="BLTouch.html">BL-Touch guide</a>)。</p>
|
||||
<h4 id="bltouch_debug">BLTOUCH_DEBUG<a class="headerlink" href="#bltouch_debug" title="Permanent link">¶</a></h4>
|
||||
@@ -4460,7 +4460,7 @@
|
||||
<h3 id="delta_calibrate">[delta_calibrate]<a class="headerlink" href="#delta_calibrate" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用 <a href="Config_Reference.html#linear-delta-kinematics">delta_calibrate config section</a> 時,以下命令可用(另請參見 <a href="Delta_Calibrate.html">delta calibrate guide</a>)。</p>
|
||||
<h4 id="delta_calibrate_1">DELTA_CALIBRATE<a class="headerlink" href="#delta_calibrate_1" title="Permanent link">¶</a></h4>
|
||||
<p><code>DELTA_CALIBRATE [Method=manual] [<probe_parameter>=<value>]</code>:這條命令將探測床身的七個點,並建議更新限位位置、塔架角度和半徑。有關可選探測參數的詳細資訊,請參見PROBE命令。如果指定METHOD=manual,那麼手動探測工具將被啟用 - 關於該工具啟用時可用的附加命令的詳細資訊,請參見上面的MANUAL_PROBE命令。</p>
|
||||
<p><code>DELTA_CALIBRATE [METHOD=manual] [HORIZONTAL_MOVE_Z=<value>] [<probe_parameter>=<value>]</code>: This command will probe seven points on the bed and recommend updated endstop positions, tower angles, and radius. See the PROBE command for details on the optional probe parameters. If METHOD=manual is specified then the manual probing tool is activated - see the MANUAL_PROBE command above for details on the additional commands available while this tool is active. The optional <code>HORIZONTAL_MOVE_Z</code> value overrides the <code>horizontal_move_z</code> option specified in the config file.</p>
|
||||
<h4 id="delta_analyze">DELTA_ANALYZE<a class="headerlink" href="#delta_analyze" title="Permanent link">¶</a></h4>
|
||||
<p><code>DELTA_ANALYZE</code>:這個命令在增強的delta校準過程中使用。詳情見<a href="Delta_Calibrate.html">Delta Calibrate</a>。</p>
|
||||
<h3 id="display">[display]<a class="headerlink" href="#display" title="Permanent link">¶</a></h3>
|
||||
@@ -4731,7 +4731,7 @@
|
||||
<h3 id="screws_tilt_adjust">[screws_tilt_adjust]<a class="headerlink" href="#screws_tilt_adjust" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用 <a href="Config_Reference.html#screws_tilt_adjust">screws_tilt_adjust config section</a> 時,以下命令可用(另請參閱 [manual level guide](Manual_Level.md#adjusting-bed-leveling-screws-using-the-bed-probe ))。</p>
|
||||
<h4 id="screws_tilt_calculate">SCREWS_TILT_CALCULATE<a class="headerlink" href="#screws_tilt_calculate" title="Permanent link">¶</a></h4>
|
||||
<p><code>SCREWS_TILT_CALCULATE [DIRECTION=CW|CCW] [MAX_DEVIATION=<value>] [<probe_parameter>=<value>]</code>: This command will invoke the bed screws adjustment tool. It will command the nozzle to different locations (as defined in the config file) probing the z height and calculate the number of knob turns to adjust the bed level. If DIRECTION is specified, the knob turns will all be in the same direction, clockwise (CW) or counterclockwise (CCW). See the PROBE command for details on the optional probe parameters. IMPORTANT: You MUST always do a G28 before using this command. If MAX_DEVIATION is specified, the command will raise a gcode error if any difference in the screw height relative to the base screw height is greater than the value provided.</p>
|
||||
<p><code>SCREWS_TILT_CALCULATE [DIRECTION=CW|CCW] [MAX_DEVIATION=<value>] [HORIZONTAL_MOVE_Z=<value>] [<probe_parameter>=<value>]</code>: This command will invoke the bed screws adjustment tool. It will command the nozzle to different locations (as defined in the config file) probing the z height and calculate the number of knob turns to adjust the bed level. If DIRECTION is specified, the knob turns will all be in the same direction, clockwise (CW) or counterclockwise (CCW). See the PROBE command for details on the optional probe parameters. IMPORTANT: You MUST always do a G28 before using this command. If MAX_DEVIATION is specified, the command will raise a gcode error if any difference in the screw height relative to the base screw height is greater than the value provided. The optional <code>HORIZONTAL_MOVE_Z</code> value overrides the <code>horizontal_move_z</code> option specified in the config file.</p>
|
||||
<h3 id="sdcard_loop">[sdcard_loop]<a class="headerlink" href="#sdcard_loop" title="Permanent link">¶</a></h3>
|
||||
<p>當 <a href="Config_Reference.html#sdcard_loop">sdcard_loop config section</a> 啟用時,以下擴展命令可用。</p>
|
||||
<h4 id="sdcard_loop_begin">SDCARD_LOOP_BEGIN<a class="headerlink" href="#sdcard_loop_begin" title="Permanent link">¶</a></h4>
|
||||
@@ -4771,13 +4771,13 @@
|
||||
<h3 id="tmcxxxx">[tmcXXXX]<a class="headerlink" href="#tmcxxxx" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用任何 <a href="Config_Reference.html#tmc-stepper-driver-configuration">tmcXXXX config sections</a> 時,以下命令可用。</p>
|
||||
<h4 id="dump_tmc">DUMP_TMC<a class="headerlink" href="#dump_tmc" title="Permanent link">¶</a></h4>
|
||||
<p><code>DUMP_TMC STEPPER=<name></code>。該命令將讀取TMC驅動暫存器並報告其值。</p>
|
||||
<p><code>DUMP_TMC STEPPER=<name> [REGISTER=<name>]</code>: This command will read all TMC driver registers and report their values. If a REGISTER is provided, only the specified register will be dumped.</p>
|
||||
<h4 id="init_tmc">INIT_TMC<a class="headerlink" href="#init_tmc" title="Permanent link">¶</a></h4>
|
||||
<p><code>INIT_TMC STEPPER=<名稱></code>:此命令將初始化 TMC 暫存器。如果晶片的電源關閉然後重新打開,則需要重新啟用該驅動。</p>
|
||||
<h4 id="set_tmc_current">SET_TMC_CURRENT<a class="headerlink" href="#set_tmc_current" title="Permanent link">¶</a></h4>
|
||||
<p><code>SET_TMC_CURRENT STEPPER=<名稱> CURRENT=<安培> HOLDCURRENT=<安培></code>:該命令修改TMC驅動的執行和保持電流(HOLDCURRENT 在 tmc2660 驅動上不起效)。</p>
|
||||
<p><code>SET_TMC_CURRENT STEPPER=<name> CURRENT=<amps> HOLDCURRENT=<amps></code>: This will adjust the run and hold currents of the TMC driver. <code>HOLDCURRENT</code> is not applicable to tmc2660 drivers. When used on a driver which has the <code>globalscaler</code> field (tmc5160 and tmc2240), if StealthChop2 is used, the stepper must be held at standstill for >130ms so that the driver executes the AT#1 calibration.</p>
|
||||
<h4 id="set_tmc_field">SET_TMC_FIELD<a class="headerlink" href="#set_tmc_field" title="Permanent link">¶</a></h4>
|
||||
<p><code>SET_TMC_FIELD STEPPER=<名稱> FIELD=<欄位> VALUE=<值></code>:這將修改指定 TMC 步進驅動暫存器欄位的值。該命令僅適用於低階別的診斷和除錯,因為在執行期間改變欄位可能會導致印表機出現不符合預期的、有潛在危險的行為。常規修改應當通過印表機配置檔案進行。該命令不會對給定的值進行越界檢查。</p>
|
||||
<p><code>SET_TMC_FIELD STEPPER=<name> FIELD=<field> VALUE=<value> VELOCITY=<value></code>: This will alter the value of the specified register field of the TMC driver. This command is intended for low-level diagnostics and debugging only because changing the fields during run-time can lead to undesired and potentially dangerous behavior of your printer. Permanent changes should be made using the printer configuration file instead. No sanity checks are performed for the given values. A VELOCITY can also be specified instead of a VALUE. This velocity is converted to the 20bit TSTEP based value representation. Only use the VELOCITY argument for fields that represent velocities.</p>
|
||||
<h3 id="toolhead">[toolhead]<a class="headerlink" href="#toolhead" title="Permanent link">¶</a></h3>
|
||||
<p>模組toolhead已自動載入.</p>
|
||||
<h4 id="set_velocity_limit">SET_VELOCITY_LIMIT<a class="headerlink" href="#set_velocity_limit" title="Permanent link">¶</a></h4>
|
||||
@@ -4814,7 +4814,7 @@
|
||||
<h3 id="z_tilt">[z_tilt]<a class="headerlink" href="#z_tilt" title="Permanent link">¶</a></h3>
|
||||
<p>當啟用 <a href="Config_Reference.html#z_tilt">z_tilt config section</a> 時,以下命令可用。</p>
|
||||
<h4 id="z_tilt_adjust">Z_TILT_ADJUST<a class="headerlink" href="#z_tilt_adjust" title="Permanent link">¶</a></h4>
|
||||
<p><code>Z_TILT_ADJUST [<probe_參數>=<值>]</code>:該命令將探測配置中指定的座標並對每個Z步進電機進行獨立的調整以抵消傾斜。有關可選的探針參數,詳見 PROBE 命令。</p>
|
||||
<p><code>Z_TILT_ADJUST [HORIZONTAL_MOVE_Z=<value>] [<probe_parameter>=<value>]</code>: This command will probe the points specified in the config and then make independent adjustments to each Z stepper to compensate for tilt. See the PROBE command for details on the optional probe parameters. The optional <code>HORIZONTAL_MOVE_Z</code> value overrides the <code>horizontal_move_z</code> option specified in the config file.</p>
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
@@ -1348,11 +1348,11 @@
|
||||
|
||||
|
||||
<h1 id="_1">霍爾耗材線徑感測器<a class="headerlink" href="#_1" title="Permanent link">¶</a></h1>
|
||||
<p>本檔案介紹了耗材寬度感測器的主機模組。用於開發該主機模組的硬體基於兩個霍爾線性感測器(例如,ss49e)。裝置內的兩個感測器位於兩側。工作原理:兩個霍爾感測器以差分模式工作,由於感測器的溫度漂移相同。不需要特殊的溫度補償。</p>
|
||||
<p>This document describes Filament Width Sensor host module. Hardware used for developing this host module is based on two Hall linear sensors (ss49e for example). Sensors in the body are located on opposite sides. Principle of operation: two hall sensors work in differential mode, temperature drift same for sensor. Special temperature compensation not needed.</p>
|
||||
<p>你可以在<a href="https://www.thingiverse.com/thing:4138933">Thingiverse</a>上找到設計,在<a href="https://www.youtube.com/watch?v=TDO9tME8vp4">Youtube</a>上也有一個裝配視訊</p>
|
||||
<p>要使用霍爾耗材線徑感測器,請閱讀<a href="Config_Reference.html#hall_filament_width_sensor">配置參考</a>和<a href="G-Codes.html#hall_filament_width_sensor">G-Code 文件</a>。</p>
|
||||
<h2 id="_2">它如何運作?<a class="headerlink" href="#_2" title="Permanent link">¶</a></h2>
|
||||
<p>感測器根據兩個模擬輸出計算出耗材直徑。檢測到的電壓之和始終對應耗材寬度。主機模組監測電壓變化並調整擠出倍率。我在類似ramps的控制板上使用aux2聯結器的 analog11和analog12引腳,你也可以使用不同的引腳和不同的控制板。</p>
|
||||
<p>Sensor generates two analog output based on calculated filament width. Sum of output voltage always equals to detected filament width. Host module monitors voltage changes and adjusts extrusion multiplier. I use the aux2 connector on a ramps-like board with the analog11 and analog12 pins. You can use different pins and different boards.</p>
|
||||
<h2 id="_3">菜單變數模板<a class="headerlink" href="#_3" title="Permanent link">¶</a></h2>
|
||||
<div class="highlight"><pre><span></span><code>[menu __main __filament __width_current]
|
||||
type: command
|
||||
|
||||
@@ -735,6 +735,26 @@
|
||||
ADXL345
|
||||
</a>
|
||||
|
||||
<nav class="md-nav" aria-label="ADXL345">
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#direct-to-raspberry-pi" class="md-nav__link">
|
||||
Direct to Raspberry Pi
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#using-raspberry-pi-pico" class="md-nav__link">
|
||||
Using Raspberry Pi Pico
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
@@ -787,6 +807,33 @@
|
||||
Configure ADXL345 With RPi
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#configure-adxl345-with-pi-pico" class="md-nav__link">
|
||||
Configure ADXL345 With Pi Pico
|
||||
</a>
|
||||
|
||||
<nav class="md-nav" aria-label="Configure ADXL345 With Pi Pico">
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#flash-the-pico-firmware" class="md-nav__link">
|
||||
Flash the Pico Firmware
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#configure-the-connection" class="md-nav__link">
|
||||
Configure the Connection
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -1480,6 +1527,26 @@
|
||||
ADXL345
|
||||
</a>
|
||||
|
||||
<nav class="md-nav" aria-label="ADXL345">
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#direct-to-raspberry-pi" class="md-nav__link">
|
||||
Direct to Raspberry Pi
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#using-raspberry-pi-pico" class="md-nav__link">
|
||||
Using Raspberry Pi Pico
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
@@ -1532,6 +1599,33 @@
|
||||
Configure ADXL345 With RPi
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#configure-adxl345-with-pi-pico" class="md-nav__link">
|
||||
Configure ADXL345 With Pi Pico
|
||||
</a>
|
||||
|
||||
<nav class="md-nav" aria-label="Configure ADXL345 With Pi Pico">
|
||||
<ul class="md-nav__list">
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#flash-the-pico-firmware" class="md-nav__link">
|
||||
Flash the Pico Firmware
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#configure-the-connection" class="md-nav__link">
|
||||
Configure the Connection
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -1662,7 +1756,7 @@
|
||||
<p>採購 ADXL345 時,請注意有各種不同的 PCB 板設計和它們的不同克隆。確保電路板支持 SPI 模式(通過將 SDO 拉至 GND 來為 I2C 硬配置少數電路板),如果要連接到 5V 打印機 MCU,它有一個穩壓器和電平轉換器。</p>
|
||||
<h2 id="_2">安裝指南<a class="headerlink" href="#_2" title="Permanent link">¶</a></h2>
|
||||
<h3 id="_3">接線<a class="headerlink" href="#_3" title="Permanent link">¶</a></h3>
|
||||
<p>An ethernet cable with shielded twisted pairs (cat5e or better) is recommended for signal integrety over a long distance. If you still experience signal integrity issues (SPI/I2C errors), shorten the cable.</p>
|
||||
<p>An ethernet cable with shielded twisted pairs (cat5e or better) is recommended for signal integrity over a long distance. If you still experience signal integrity issues (SPI/I2C errors), shorten the cable.</p>
|
||||
<p>Connect ethernet cable shielding to the controller board/RPI ground.</p>
|
||||
<p><strong><em>Double-check your wiring before powering up to prevent damaging your MCU/Raspberry Pi or the accelerometer.</em></strong></p>
|
||||
<h4 id="spi-accelerometers">SPI Accelerometers<a class="headerlink" href="#spi-accelerometers" title="Permanent link">¶</a></h4>
|
||||
@@ -1673,7 +1767,8 @@ SCLK+CS
|
||||
</code></pre></div>
|
||||
|
||||
<h5 id="adxl345">ADXL345<a class="headerlink" href="#adxl345" title="Permanent link">¶</a></h5>
|
||||
<p><strong>Note: Many MCUs will work with an ADXL345 in SPI mode(eg Pi Pico), wiring and configuration will vary according to your specific board and avaliable pins.</strong></p>
|
||||
<h6 id="direct-to-raspberry-pi">Direct to Raspberry Pi<a class="headerlink" href="#direct-to-raspberry-pi" title="Permanent link">¶</a></h6>
|
||||
<p><strong>Note: Many MCUs will work with an ADXL345 in SPI mode(eg Pi Pico), wiring and configuration will vary according to your specific board and available pins.</strong></p>
|
||||
<p>我們需要將ADXL345連線到樹莓派的SPI介面。注意,儘管ADXL345文件推薦使用I2C,但其數據吞吐能力不足,<strong>不能</strong>實現共振測量的要求。推薦的接線圖為:</p>
|
||||
<table>
|
||||
<thead>
|
||||
@@ -1687,7 +1782,7 @@ SCLK+CS
|
||||
<tr>
|
||||
<td align="center">3V3 或 VCC</td>
|
||||
<td align="center">01</td>
|
||||
<td align="center">3.3v 直流(DC)電源</td>
|
||||
<td align="center">3.3V DC power</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">GND</td>
|
||||
@@ -1718,6 +1813,52 @@ SCLK+CS
|
||||
</table>
|
||||
<p>部分ADXL345開發板的Fritzing接線圖如下:</p>
|
||||
<p><img alt="ADXL345-樹莓派" src="img/adxl345-fritzing.png" /></p>
|
||||
<h6 id="using-raspberry-pi-pico">Using Raspberry Pi Pico<a class="headerlink" href="#using-raspberry-pi-pico" title="Permanent link">¶</a></h6>
|
||||
<p>You may connect the ADXL345 to your Raspberry Pi Pico and then connect the Pico to your Raspberry Pi via USB. This makes it easy to reuse the accelerometer on other Klipper devices, as you can connect via USB instead of GPIO. The Pico does not have much processing power, so make sure it is only running the accelerometer and not performing any other duties.</p>
|
||||
<p>In order to avoid damage to your RPi make sure to connect the ADXL345 to 3.3V only. Depending on the board's layout, a level shifter may be present, which makes 5V dangerous for your RPi.</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th align="center">ADXL345引腳</th>
|
||||
<th align="center">Pico pin</th>
|
||||
<th align="center">Pico pin name</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center">3V3 或 VCC</td>
|
||||
<td align="center">36</td>
|
||||
<td align="center">3.3V DC power</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">GND</td>
|
||||
<td align="center">38</td>
|
||||
<td align="center">地(GND)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">CS(晶片選定)</td>
|
||||
<td align="center">2</td>
|
||||
<td align="center">GP1 (SPI0_CSn)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">SDO</td>
|
||||
<td align="center">1</td>
|
||||
<td align="center">GP0 (SPI0_RX)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">SDA</td>
|
||||
<td align="center">5</td>
|
||||
<td align="center">GP3 (SPI0_TX)</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">SCL</td>
|
||||
<td align="center">4</td>
|
||||
<td align="center">GP2 (SPI0_SCK)</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>Wiring diagrams for some of the ADXL345 boards:</p>
|
||||
<p><img alt="ADXL345-Pico" src="img/adxl345-pico.png" /></p>
|
||||
<h4 id="i2c-accelerometers">I2C Accelerometers<a class="headerlink" href="#i2c-accelerometers" title="Permanent link">¶</a></h4>
|
||||
<p>Suggested twisted pair order:</p>
|
||||
<div class="highlight"><pre><span></span><code>3.3V+SDA
|
||||
@@ -1826,6 +1967,47 @@ probe_points:
|
||||
</code></pre></div>
|
||||
|
||||
<p>建議在測試開始前,用探針在熱床中央進行一次探測,觸發后稍微上移。</p>
|
||||
<h4 id="configure-adxl345-with-pi-pico">Configure ADXL345 With Pi Pico<a class="headerlink" href="#configure-adxl345-with-pi-pico" title="Permanent link">¶</a></h4>
|
||||
<h5 id="flash-the-pico-firmware">Flash the Pico Firmware<a class="headerlink" href="#flash-the-pico-firmware" title="Permanent link">¶</a></h5>
|
||||
<p>On your Raspberry Pi, compile the firmware for the Pico.</p>
|
||||
<div class="highlight"><pre><span></span><code>cd ~/klipper
|
||||
make clean
|
||||
make menuconfig
|
||||
</code></pre></div>
|
||||
|
||||
<p><img alt="Pico menuconfig" src="img/klipper_pico_menuconfig.png" /></p>
|
||||
<p>Now, while holding down the <code>BOOTSEL</code> button on the Pico, connect the Pico to the Raspberry Pi via USB. Compile and flash the firmware.</p>
|
||||
<div class="highlight"><pre><span></span><code>make flash FLASH_DEVICE=first
|
||||
</code></pre></div>
|
||||
|
||||
<p>If that fails, you will be told which <code>FLASH_DEVICE</code> to use. In this example, that's <code>make flash FLASH_DEVICE=2e8a:0003</code>. <img alt="Determine flash device" src="img/flash_rp2040_FLASH_DEVICE.png" /></p>
|
||||
<h5 id="configure-the-connection">Configure the Connection<a class="headerlink" href="#configure-the-connection" title="Permanent link">¶</a></h5>
|
||||
<p>The Pico will now reboot with the new firmware and should show up as a serial device. Find the pico serial device with <code>ls /dev/serial/by-id/*</code>. You can now add an <code>adxl.cfg</code> file with the following settings:</p>
|
||||
<div class="highlight"><pre><span></span><code>[mcu adxl]
|
||||
# Change <mySerial> to whatever you found above. For example,
|
||||
# usb-Klipper_rp2040_E661640843545B2E-if00
|
||||
serial: /dev/serial/by-id/usb-Klipper_rp2040_<mySerial>
|
||||
|
||||
[adxl345]
|
||||
cs_pin: adxl:gpio1
|
||||
spi_bus: spi0a
|
||||
axes_map: x,z,y
|
||||
|
||||
[resonance_tester]
|
||||
accel_chip: adxl345
|
||||
probe_points:
|
||||
# Somewhere slightly above the middle of your print bed
|
||||
147,154, 20
|
||||
|
||||
[output_pin power_mode] # Improve power stability
|
||||
pin: adxl:gpio23
|
||||
</code></pre></div>
|
||||
|
||||
<p>If setting up the ADXL345 configuration in a separate file, as shown above, you'll also want to modify your <code>printer.cfg</code> file to include this:</p>
|
||||
<div class="highlight"><pre><span></span><code>[include adxl.cfg] # Comment this out when you disconnect the accelerometer
|
||||
</code></pre></div>
|
||||
|
||||
<p>通過<code>RESTART</code>命令重啟Klipper。</p>
|
||||
<h4 id="configure-mpu-60009000-series-with-rpi">Configure MPU-6000/9000 series With RPi<a class="headerlink" href="#configure-mpu-60009000-series-with-rpi" title="Permanent link">¶</a></h4>
|
||||
<p>Make sure the Linux I2C driver is enabled and the baud rate is set to 400000 (see <a href="RPi_microcontroller.html#optional-enabling-i2c">Enabling I2C</a> section for more details). Then, add the following to the printer.cfg:</p>
|
||||
<div class="highlight"><pre><span></span><code>[mcu rpi]
|
||||
@@ -1848,7 +2030,7 @@ serial: /dev/serial/by-id/<your PICO's serial ID>
|
||||
|
||||
[mpu9250]
|
||||
i2c_mcu: pico
|
||||
i2c_bus: i2c1a
|
||||
i2c_bus: i2c0a
|
||||
|
||||
[resonance_tester]
|
||||
accel_chip: mpu9250
|
||||
@@ -1871,7 +2053,7 @@ pin: pico:gpio23
|
||||
<div class="highlight"><pre><span></span><code>Recv: // adxl345 values (x, y, z): 470.719200, 941.438400, 9728.196800
|
||||
</code></pre></div>
|
||||
|
||||
<p>如果輸出類似 <code>Invalid adxl345 id (got xx vs e5)</code>,其中'xx'為e5以外ID,這表示出現連線問題(如,連線錯誤、線纜電阻過大、干擾等),或感測器錯誤(如,殘次感測器 或 錯誤的感測器)。請在此檢查電源,接線(再三確定接線正確,沒有破損、鬆動的電線)或焊接問題。</p>
|
||||
<p>If you get an error like <code>Invalid adxl345 id (got xx vs e5)</code>, where <code>xx</code> is some other ID, immediately try again. There's an issue with SPI initialization. If you still get an error, it is indicative of the connection problem with ADXL345, or the faulty sensor. Double-check the power, the wiring (that it matches the schematics, no wire is broken or loose, etc.), and soldering quality.</p>
|
||||
<p><strong>If you are using MPU-6000/9000 series accelerometer and it show up as <code>mpu-unknown</code>, use with caution! They are probably refurbished chips!</strong></p>
|
||||
<p>下一步,在Octoprint中輸入 <code>MEASURE_AXES_NOISE</code>,之後將會顯示各個軸的基準測量噪聲(其值應在1-100之間)。如果軸的噪聲極高(例如 1000 或更高)可能意味著3D印表機上存在感測器問題、電源問題或不平衡的風扇。</p>
|
||||
<h3 id="_8">測量共振值<a class="headerlink" href="#_8" title="Permanent link">¶</a></h3>
|
||||
@@ -1923,7 +2105,7 @@ max_accel: 3000 # should not exceed the estimated max_accel for X and Y axes
|
||||
</code></pre></div>
|
||||
|
||||
<p>或者您可以根據生成的圖表自行選擇其他配置:圖表上功率譜密度的峰值對應於打印機的共振頻率。</p>
|
||||
<p>請注意,您也可以從 Klipper <a href="#input-shaper-auto-calibration">直接</a> 運行輸入整形器自動校準,例如,對於輸入整形器 [re-calibration](#input-shaper-re -校準)。</p>
|
||||
<p>Note that alternatively you can run the input shaper auto-calibration from Klipper <a href="#input-shaper-auto-calibration">directly</a>, which can be convenient, for example, for the input shaper <a href="#input-shaper-re-calibration">re-calibration</a>.</p>
|
||||
<h3 id="bed-slinger">Bed-slinger打印機<a class="headerlink" href="#bed-slinger" title="Permanent link">¶</a></h3>
|
||||
<p>如果您的打印機是拋床打印機,您將需要在 X 軸和 Y 軸測量值之間更改加速度計的位置:用連接到工具頭的加速度計測量 X 軸的共振和 Y 軸的共振 - 到床(通常的床吊具設置)。</p>
|
||||
<p>但是,您也可以同時連接兩個加速度計,儘管它們必須連接到不同的板(例如,連接到 RPi 和打印機 MCU 板),或者連接到同一板上的兩個不同的物理 SPI 接口(很少可用)。然後可以通過以下方式配置它們:</p>
|
||||
@@ -2050,7 +2232,7 @@ Recommended shaper_type_y = mzv, shaper_freq_y = 36.8 Hz # 建議shaper_type_y =
|
||||
<div class="highlight"><pre><span></span><code>SHAPER_CALIBRATE AXIS=X
|
||||
</code></pre></div>
|
||||
|
||||
<p><strong>警告!</strong>不建議非常頻繁地運行成型機自動校準(例如,在每次打印之前或每天)。為了確定共振頻率,自動校準會在每個軸上產生強烈的振動。通常,3D 打印機的設計不能承受長時間暴露於共振頻率附近的振動。這樣做可能會增加打印機組件的磨損並縮短其使用壽命。某些零件擰鬆或鬆動的風險也會增加。每次自動調整後,請務必檢查打印機的所有部件(包括通常不會移動的部件)是否牢固地固定到位。</p>
|
||||
<p><strong>Warning!</strong> It is not advisable to run the shaper auto-calibration very frequently (e.g. before every print, or every day). In order to determine resonance frequencies, auto-calibration creates intensive vibrations on each of the axes. Generally, 3D printers are not designed to withstand a prolonged exposure to vibrations near the resonance frequencies. Doing so may increase wear of the printer components and reduce their lifespan. There is also an increased risk of some parts unscrewing or becoming loose. Always check that all parts of the printer (including the ones that may normally not move) are securely fixed in place after each auto-tuning.</p>
|
||||
<p>此外,由於測量中的一些噪聲,調諧結果可能會從一次校準運行到另一次校準運行略有不同。不過,預計噪音不會對打印質量產生太大影響。但是,仍然建議仔細檢查建議的參數,並在使用前打印一些測試打印以確認它們是好的。</p>
|
||||
<h2 id="_13">加速度計數據的離線處理<a class="headerlink" href="#_13" title="Permanent link">¶</a></h2>
|
||||
<p>可以生成原始加速度計數據並離線處理(例如在主機上),例如尋找共振。為此,請通過 Octoprint 終端運行以下命令:</p>
|
||||
|
||||
@@ -1373,7 +1373,7 @@
|
||||
<li><a href="Slicers.html">切片</a>:為 Klipper 配置切片軟體。</li>
|
||||
<li><a href="Skew_Correction.html">偏斜校正</a>:調整不完全垂直的軸(不完美的方形)。</li>
|
||||
<li><a href="Using_PWM_Tools.html">PWM 工具</a>:關於如何使用 PWM 控制的工具,例如鐳射器或電鉆頭。</li>
|
||||
<li><a href="Exclude_Object.html">Exclude Object</a>: The guide to the Exclude Objecs implementation.</li>
|
||||
<li><a href="Exclude_Object.html">Exclude Object</a>: The guide to the Exclude Objects implementation.</li>
|
||||
</ul>
|
||||
<h2 id="_4">開發者文檔<a class="headerlink" href="#_4" title="Permanent link">¶</a></h2>
|
||||
<ul>
|
||||
|
||||
@@ -1342,7 +1342,7 @@
|
||||
<h2 id="_1">版本管理<a class="headerlink" href="#_1" title="Permanent link">¶</a></h2>
|
||||
<p>如果你從 git 構建 Klipper 包,通常的做法是不提供 .git 目錄,所以版本管理必須在沒有 git 的情況下處理。要做到這一點,請使用 <code>scripts/make_version.py</code> 中提供的指令碼,該指令碼應按如下方式執行:<code>python2 scripts/make_version.py YOURDISTRONAME > klippy/.version</code>。</p>
|
||||
<h2 id="_2">示例打包指令碼<a class="headerlink" href="#_2" title="Permanent link">¶</a></h2>
|
||||
<p>klipper-git 是 klipper 的 Arch Linux 軟體包,在<a href="https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=klipper-git">Arch User Repositiory</a>上有一個 PKGBUILD(軟體包構建指令碼)。</p>
|
||||
<p>klipper-git is packaged for Arch Linux, and has a PKGBUILD (package build script) available at <a href="https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=klipper-git">Arch User Repository</a>.</p>
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
@@ -1471,9 +1471,9 @@ optional arguments:
|
||||
|
||||
<p>可以指定以下欄位:</p>
|
||||
<ul>
|
||||
<li><code>mcu</code>:微控制器型別。這可以在使用<code>make menuconfig</code>配置構建配置后通過執行<code>cat .config | grep CONFIG_MCU</code>獲取。 此欄位是必需的。</li>
|
||||
<li><code>spi_bus</code>:連線到 SD 卡的 SPI 匯流排。 這應該從電路板的原理圖中檢索。 此欄位是必需的。</li>
|
||||
<li><code>cs_pin</code>:連線到 SD 卡的晶片選擇引腳。 這應該從電路板原理圖中檢索。 此欄位是必需的。</li>
|
||||
<li><code>mcu</code>: The mcu type. This can be retrieved after configuring the build via <code>make menuconfig</code> by running <code>cat .config | grep CONFIG_MCU</code>. This field is required.</li>
|
||||
<li><code>spi_bus</code>: The SPI bus connected to the SD Card. This should be retrieved from the board's schematic. This field is required.</li>
|
||||
<li><code>cs_pin</code>: The Chip Select Pin connected to the SD Card. This should be retrieved from the board schematic. This field is required.</li>
|
||||
<li><code>firmware_path</code>:SD 卡上韌體應傳輸的路徑。 預設是<code>firmware.bin</code>。</li>
|
||||
<li><code>current_firmware_path</code>: The path on the SD Card where the renamed firmware file is located after a successful flash. The default is <code>firmware.cur</code>.</li>
|
||||
<li><code>skip_verify</code>: This defines a boolean value which tells the scripts to skip the firmware verification step during the flashing process. The default is <code>False</code>. It can be set to <code>True</code> for boards that require a manual power-cycle to complete flashing. To verify the firmware afterward, run the script again with the <code>-c</code> option to perform the verification step. <a href="#caveats">See caveats with SDIO cards</a></li>
|
||||
|
||||
@@ -889,6 +889,13 @@
|
||||
禁用任何"提前擠出壓力"的設定
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#start_print-macros" class="md-nav__link">
|
||||
START_PRINT macros
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
@@ -1356,6 +1363,13 @@
|
||||
禁用任何"提前擠出壓力"的設定
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#start_print-macros" class="md-nav__link">
|
||||
START_PRINT macros
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
@@ -1398,6 +1412,21 @@
|
||||
<p>一些切片軟體宣傳有 "高級擠出機壓力調整 "的功能。建議在使用 Klipper 時禁用這些功能,因為它們很可能會降低列印質量。考慮使用 Klipper 的<a href="Pressure_Advance.html">壓力提前</a>代替。</p>
|
||||
<p>具體來說,這些切片軟體的設定產生的命令會韌體對擠出率進行劇烈的改變,希望韌體能接近這些請求值,使印表機獲得一個大致理想的擠出機壓力。然而,Klipper利用精確的運動學計算和計時。當Klipper被命令對擠出率進行重大改變時,它將計劃出速度、加速度和擠出機運動的相應變化--這不是切片軟體的意圖。切片軟體甚至可能產生過大的擠出速度,以至於觸發Klipper的最大擠出截面檢查。</p>
|
||||
<p>相反,使用切片軟體的"回抽"、"擦拭 "和/或 "縮回時擦拭 "設定通常是有益的。</p>
|
||||
<h2 id="start_print-macros">START_PRINT macros<a class="headerlink" href="#start_print-macros" title="Permanent link">¶</a></h2>
|
||||
<p>When using a START_PRINT macro or similar, it is useful to sometimes pass through parameters from the slicer variables to the macro.</p>
|
||||
<p>In Cura, to pass through temperatures, the following start gcode would be used:</p>
|
||||
<div class="highlight"><pre><span></span><code>START_PRINT BED_TEMP={material_bed_temperature_layer_0} EXTRUDER_TEMP={material_print_temperature_layer_0}
|
||||
</code></pre></div>
|
||||
|
||||
<p>In slic3r derivatives such as PrusaSlicer and SuperSlicer, the following would be used:</p>
|
||||
<p>START_PRINT EXTRUDER_TEMP=[first_layer_temperature] BED_TEMP=[first_layer_bed_temperature]</p>
|
||||
<p>Also note that these slicers will insert their own heating codes when certain conditions are not met. In Cura, the existence of the <code>{material_bed_temperature_layer_0}</code> and <code>{material_print_temperature_layer_0}</code> variables is enough to mitigate this. In slic3r derivatives, you would use:</p>
|
||||
<div class="highlight"><pre><span></span><code>M140 S0
|
||||
M104 S0
|
||||
</code></pre></div>
|
||||
|
||||
<p>before the macro call. Also note that SuperSlicer has a "custom gcode only" button option, which achieves the same outcome.</p>
|
||||
<p>An example of a START_PRINT macro using these paramaters can be found in config/sample-macros.cfg</p>
|
||||
|
||||
|
||||
</article>
|
||||
|
||||
@@ -1010,6 +1010,13 @@
|
||||
servo
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#stepper_enable" class="md-nav__link">
|
||||
stepper_enable
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -1771,6 +1778,13 @@
|
||||
servo
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#stepper_enable" class="md-nav__link">
|
||||
stepper_enable
|
||||
</a>
|
||||
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
@@ -1949,6 +1963,7 @@
|
||||
<ul>
|
||||
<li><code>pressure_advance</code>: The current <a href="Pressure_Advance.html">pressure advance</a> value.</li>
|
||||
<li><code>smooth_time</code>: The current pressure advance smooth time.</li>
|
||||
<li><code>motion_queue</code>: The name of the extruder that this extruder stepper is currently synchronized to. This is reported as <code>None</code> if the extruder stepper is not currently associated with an extruder.</li>
|
||||
</ul>
|
||||
<h2 id="fan">fan<a class="headerlink" href="#fan" title="Permanent link">¶</a></h2>
|
||||
<p><a href="Config_Reference.html#fan">fan</a>、<a href="Config_Reference.html#heater_fan">heater_fan some_name</a>和<a href="Config_Reference.html#controller_fan">controller_fan some_name</a>對像提供了以下資訊:</p>
|
||||
@@ -2072,6 +2087,7 @@
|
||||
<h2 id="probe">probe<a class="headerlink" href="#probe" title="Permanent link">¶</a></h2>
|
||||
<p><a href="Config_Reference.html#probe">probe</a> 對像中提供了以下資訊(如果定義了 <a href="Config_Reference.html#bltouch">bltouch</a> 配置分段,則此對象也可用):</p>
|
||||
<ul>
|
||||
<li><code>name</code>: Returns the name of the probe in use.</li>
|
||||
<li><code>last_query</code>:如果探針在上一個 QUERY_PROBE 命令期間報告為"已觸發",則返回 True。請注意,如果在宏中使用它,根據模板展開的順序,必須在包含此引用的宏之前執行 QUERY_PROBE 命令。</li>
|
||||
<li><code>last_z_result</code>:返回上一次 PROBE 命令的結果 Z 值。請注意,由於模板展開的順序,在宏中使用時必須在包含此引用的宏之前執行 PROBE(或類似)命令。</li>
|
||||
</ul>
|
||||
@@ -2089,13 +2105,11 @@
|
||||
<p>The following information is available in the <code>screws_tilt_adjust</code> object:</p>
|
||||
<ul>
|
||||
<li><code>error</code>: Returns True if the most recent <code>SCREWS_TILT_CALCULATE</code> command included the <code>MAX_DEVIATION</code> parameter and any of the probed screw points exceeded the specified <code>MAX_DEVIATION</code>.</li>
|
||||
<li><code>results</code>: A list of the probed screw locations. Each entry in the list will be a dictionary containing the following keys:<ul>
|
||||
<li><code>name</code>: The name of the screw as specified in the config file.</li>
|
||||
<li><code>x</code>: The X coordinate of the screw as specified in the config file.</li>
|
||||
<li><code>y</code>: The Y coordinate of the screw as specified in the config file.</li>
|
||||
<li><code>results["<screw>"]</code>: A dictionary containing the following keys:<ul>
|
||||
<li><code>z</code>: The measured Z height of the screw location.</li>
|
||||
<li><code>sign</code>: A string specifying the direction to turn to screw for the necessary adjustment. Either "CW" for clockwise or "CCW" for counterclockwise. The base screw will not have a <code>sign</code> key.</li>
|
||||
<li><code>sign</code>: A string specifying the direction to turn to screw for the necessary adjustment. Either "CW" for clockwise or "CCW" for counterclockwise.</li>
|
||||
<li><code>adjust</code>: The number of screw turns to adjust the screw, given in the format "HH:MM," where "HH" is the number of full screw turns and "MM" is the number of "minutes of a clock face" representing a partial screw turn. (E.g. "01:15" would mean to turn the screw one and a quarter revolutions.)</li>
|
||||
<li><code>is_base</code>: Returns True if this is the base screw.</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@@ -2104,6 +2118,11 @@
|
||||
<ul>
|
||||
<li><code>printer["servo <配置名>"].value</code>:與指定伺服相關 PWM 引腳的上一次設定的值(0.0 和 1.0 之間的值)。</li>
|
||||
</ul>
|
||||
<h2 id="stepper_enable">stepper_enable<a class="headerlink" href="#stepper_enable" title="Permanent link">¶</a></h2>
|
||||
<p>The following information is available in the <code>stepper_enable</code> object (this object is available if any stepper is defined):</p>
|
||||
<ul>
|
||||
<li><code>steppers["<stepper>"]</code>: Returns True if the given stepper is enabled.</li>
|
||||
</ul>
|
||||
<h2 id="system_stats">system_stats<a class="headerlink" href="#system_stats" title="Permanent link">¶</a></h2>
|
||||
<p><code>system_stats</code> 對像提供了以下資訊(該對像始終可用):</p>
|
||||
<ul>
|
||||
|
||||
@@ -990,8 +990,8 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#tmc-shorttognd-lowsideshort" class="md-nav__link">
|
||||
TMC 報告錯誤: ... ShortToGND 或著 LowSideShort
|
||||
<a href="#tmc-reports-error-shorttognd-or-shorttosupply" class="md-nav__link">
|
||||
TMC reports error: ... ShortToGND OR ShortToSupply
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1649,8 +1649,8 @@
|
||||
</li>
|
||||
|
||||
<li class="md-nav__item">
|
||||
<a href="#tmc-shorttognd-lowsideshort" class="md-nav__link">
|
||||
TMC 報告錯誤: ... ShortToGND 或著 LowSideShort
|
||||
<a href="#tmc-reports-error-shorttognd-or-shorttosupply" class="md-nav__link">
|
||||
TMC reports error: ... ShortToGND OR ShortToSupply
|
||||
</a>
|
||||
|
||||
</li>
|
||||
@@ -1897,7 +1897,7 @@ gcode:
|
||||
<p>一些常見的錯誤和診斷的技巧:</p>
|
||||
<h4 id="tmc-ot1overtemperror">TMC 報告錯誤: <code>... ot=1(OvertempError!)</code><a class="headerlink" href="#tmc-ot1overtemperror" title="Permanent link">¶</a></h4>
|
||||
<p>這表明電機驅動器因溫度過高而自我禁用。典型的解決方案是降低步進電機的電流,增加步進電機驅動器的冷卻,和/或增加步進電機的冷卻。</p>
|
||||
<h4 id="tmc-shorttognd-lowsideshort">TMC 報告錯誤: <code>... ShortToGND</code> 或著 <code>LowSideShort</code><a class="headerlink" href="#tmc-shorttognd-lowsideshort" title="Permanent link">¶</a></h4>
|
||||
<h4 id="tmc-reports-error-shorttognd-or-shorttosupply">TMC reports error: <code>... ShortToGND</code> OR <code>ShortToSupply</code><a class="headerlink" href="#tmc-reports-error-shorttognd-or-shorttosupply" title="Permanent link">¶</a></h4>
|
||||
<p>這表明驅動器已自行禁用,因為它檢測到通過驅動器的電流非常高。這可能表明連線到步進電機或者部件電機內部的電線鬆動或短路了。</p>
|
||||
<p>如果使用stealthChop模式,並且TMC驅動器不能準確地預測電機的機械負載,也可能發生這種錯誤。(如果驅動器預測不準確,那麼它可能輸出過高電流到電機,並觸發自己的過電流檢測)。要測試這個,請禁用stealthChop模式,再檢查錯誤是否繼續發生。</p>
|
||||
<h4 id="tmc-reset1reset-cs_actual0reset-se0reset">TMC報告錯誤:<code>... reset=1(Reset)</code> 或<code>CS_ACTUAL=0(Reset?)</code> 或<code>SE=0(Reset?)</code><a class="headerlink" href="#tmc-reset1reset-cs_actual0reset-se0reset" title="Permanent link">¶</a></h4>
|
||||
|
||||
Binary file not shown.
File diff suppressed because one or more lines are too long
@@ -2,252 +2,252 @@
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
<url>
|
||||
<loc>None</loc>
|
||||
<lastmod>2023-04-16</lastmod>
|
||||
<lastmod>2023-04-17</lastmod>
|
||||
<changefreq>daily</changefreq>
|
||||
</url>
|
||||
</urlset>
|
||||
Binary file not shown.
Reference in New Issue
Block a user