æè¿ã3Dããªã³ã¿ãŒãBigtreetech SKRv1.3ã«ã¢ããã°ã¬ãŒãããŸããã æ®å¿µãªãããbltouchã¯ããŒã³ïŒå€ãããŒãžã§ã³ã®triaglelab 3d touchïŒã§åé¡ãçºçããŸããã
æã
ãG28ãG29ããããbltouchã¯ããªã¬ãŒããããããªã³ããããã¯ãããã«æŒã蟌ãŸãç¶ããŸãã
æåã¯ã€ã³ã¿ãŒãããã§è§£æ±ºçãèŠã€ããããšããŸããããSKRv1.3ã®5Vé»æºãæªããšèª°ããèšã£ããã©ãŒã©ã èšäºããèŠã€ãããŸããã§ããã ããã€ãã®è¿œå ã®ã³ã³ãã³ãµãŸãã¯å€éš5Vé»æºã圹ç«ã€ã¯ãã§ãã ç§ã¯äž¡æ¹ãè©ŠããŸããããäœã圹ã«ç«ã¡ãŸããã§ããïŒ 5Vé»æºã¯åé¡ãããŸããã§ããïŒ
ç§ã¯èªåã§ããã€ãã®èª¿æ»ãè¡ãããªã·ãã¹ã³ãŒãã®å©ããåããŠå®éã®åé¡ãèŠã€ããŸããïŒ
LPC1768ïŒããã³ããããä»ã®ïŒã®HALã«åé¡ãããããµãŒãåºåã§èª€ã£ãä¿¡å·ãçæããå¯èœæ§ãããããã§ãã ãµãŒããã«ã¹ã1472µsïŒM280 P0 S90;åçŽãããbltouchãã³ïŒãã647µsïŒM280 P0 S10;å±éããããã³ïŒã«å€åããå¿
èŠãããå Žåã1ãµã€ã¯ã«ã§ãã«ã¹ã®é·ãã20650µsã«ãªãããšããããŸãã
ãã®é·ããã«ã¹ã¯bltouchïŒã¯ããŒã³ïŒãæ··ä¹±ãããããã§ããã³ãå±éãããŠããŠãããã®ãããªç¶æ³ã§ã¯ãã»ã³ãµãŒã¯ãããã«è§Šãããšãã«ãšã³ãã¹ããããããªã¬ãŒããŸããã
ããã¯ããµãŒããã³ã647µs以äž1472µsæªæºã®ãã€ã§ããå°ããªãŠã£ã³ããŠã§ãM280P0S10ãã³ãã³ããçºè¡ããããã³ã«çºçãããšæããŸãã ãã®ãµã€ã¯ã«ã®ç«ã¡äžãããšããžã¯ãã§ã«çµäºããŠããã次ã®20ããªç§ã®ãµã€ã¯ã«ãŸã§å®è¡ãããŸããïŒæšæž¬ã§ããã蚌æ ã¯ãããŸãã...ïŒã
ããããç§ã¯èªåã«åã£ãè¿
éã§æ±ã解決çãèŠã€ããŸããïŒ
diff --git a/Marlin/src/HAL/HAL_LPC1768/Servo.h b/Marlin/src/HAL/HAL_LPC1768/Servo.h
index 1bbf84c73..97a7bcb54 100644
--- a/Marlin/src/HAL/HAL_LPC1768/Servo.h
+++ b/Marlin/src/HAL/HAL_LPC1768/Servo.h
@@ -58,6 +58,12 @@ class libServo: public Servo {
static_assert(COUNT(servo_delay) == NUM_SERVOS, "SERVO_DELAY must be an array NUM_SERVOS long.");
if (attach(servo_info[servoIndex].Pin.nbr) >= 0) { // try to reattach
+ /* workaround for too long pulse on the servo pin */
+ if ( (servoIndex == 0) && ( extDigitalRead(SERVO0_PIN) == 1 ) ) {
+ safe_delay(3);
+ }
write(value);
safe_delay(servo_delay[servoIndex]); // delay to allow servo to reach position
#if ENABLED(DEACTIVATE_SERVOS_AFTER_MOVE)
ãµãŒããã³ã®çŸåšã®ç¶æ ããã§ãã¯ããã ãã§ãã ãã€ã®å Žåãä¿¡å·ã®å€åã¯3msé ããŸãã ããã«ããããµãŒããã«ã¹ã¯2.4msãè¶ ããããšãã§ããªããããå€æŽãé©çšããããšãã«ãã³ã確å®ã«äœããªããŸãã
ããããããã¯è¿ éã§æ±ãããã¯ã«ããããHALã§ä¿®æ£ããå¿ èŠããããŸãã ãŸãããã®åé¡ãä»ã®ã³ã³ãããŒã©ãŒã§ãçºçããå¯èœæ§ããããã©ããã確èªããå¿ èŠããããŸãã
æåŸ
ãããåäœïŒ [ããªããæåŸ
ããããš]
ãã«ã¹å¹
1472µsã®ä¿¡å·ãã647µsãžã®ã¯ãªãŒã³ãªé·ç§»ã
å®éã®åäœïŒ [å®éã«äœãèµ·ããã]
æã
ãã³ãã³ãåŸã®æåã®ãµã€ã¯ã«ã§20msãè¶
ãããã«ã¹å¹
ã衚瀺ãããŸãã
代ããã«ãM280P0S180ããšãM280P0S0ãã䜿çšãããšã衚瀺ãããå¯èœæ§ãé«ããªããŸãã ïŒãã倧ããªéã->åé¡ã®ãã倧ããªãŠã£ã³ããŠïŒ
æ¬ç©ã®BLTouchãè©Šãããšãã§ããŸããïŒ
æ¬ç©ã®BLTouchãè©Šãããšãã§ããŸããïŒ
ãŸãã Configuration_adv.h
BLTouchèšå®ã調æŽããŠã¿ãŸãããïŒïŒ BLTOUCH_DELAY
ã BLTOUCH_FORCE_SW_MODE
ã BLTOUCH_FORCE_MODE_SET
ãªã©ã®èšå®ã調æŽã§ããŸãã
ããããã¿ãŸãããç§ã¯èšåããã®ãå¿ããŸããã ãã¡ããã以åã¯BLTOUCH_DELAY
ã BLTOUCH_FORCE_SW_MODE
ãããã«ã¯DELAY_BEFORE_PROBING
ããŸããŸãªçµã¿åãããè©ŠããŸããã æåããã«ã
ããŠãç§ãèŠã€ããã®ã¯ãåé¡ãäœã§ããããæããã§ããããé·ãé
延ã¯åœ¹ã«ç«ããªããšããããšã§ãã bltouchããã®ãšã©ãŒç¶æ
ã«ããééã£ã20msãã«ã¹ã¯ããã«ããã¬ãŒãã«è§Šããæ°ç§åã«ãã§ã«çºçããŠããããã§ãã
BLTOUCH_FORCE_MODE_SET
ã¯ããã®å€ãããŒãžã§ã³ã®bltouchã¯ããŒã³ã§ã¯ãµããŒããããŠããŸããã ããã¯ãè³¢ãããã®ã§ã¯ãããŸããã
ããããæ¬ç©ã®BLTouchã«ã¢ã¯ã»ã¹ã§ããŸããã ç§ãšç§ã®å€ãã¯ããŒã³ã«ãšã£ãŠãäžèšã®ããã¯ã¯åé¡ãªãæ©èœããã®ã§ãå人çã«ã¯ãã®åé¡ãé©åã«ä¿®æ£ããå¿ èŠã¯ãããŸããã ããããå®éã®ãµãŒãã§ããããã®ãã«ã¹ã«çãæºãããã®ä»ã®å¥åŠãªåäœã§åå¿ããå¯èœæ§ãããããããã®åé¡ã¯ãšã«ããä¿®æ£ããå¿ èŠããããšæããŸãã
ãããŒã @ mlehnhoff ãããªãã®ãããã¯ç§ã®çã¿ãåãããŸãã SKR v1.3 +ïŒå€ãããŒãžã§ã³ãã©ããããããªãïŒtriaglelab 3dtouch-åãåé¡ã ç§èªèº«ã®8/10ã®åäœæ¡ä»¶ïŒBLTOUCH_FORCE_SW_MODE + BLTOUCH_DELAY1000ããã ãããããã¯SW_MODEãšDELAYãªãã§10/10ã§åäœããŸãã TnxïŒ
ãªã¢ãŒã ïŒåãMCUïŒã§ãµãŒãããŒã¹ã®ã¿ãããããŒãããã¹ãããŸããããåé¡ã¯ãããŸããã§ãããã移ååŸã«éã¢ã¯ãã£ãåæ©èœã䜿çšããŸããã
ç§ã¯ãããªãã§è©ŠããŠããŸãããjuseã¯å¿ èŠã®ãªããšãã«ãµãŒããéã¢ã¯ãã£ãã«ããè«ççã«çã«ããªã£ãŠããŸã
ç§ã¯æ¬ç©ã®BLTouchãããã€ãæã£ãŠããŸããããããã¯ãã¹ãŠSKR 1.3ã§æ£åžžã«åäœããŸããSKR1.3ãLPC1768
ã§ãã
ã ããããã§éããžã£ã³ãããŸããããã¯ããããããŒããŠã§ã¢ã®åé¡ïŒã¯ã€ã€ãŒããã€ãºæ¥ç¶ïŒãŸãã¯ãŠãŒã¶ãŒèšå®ã®åé¡ã§ããïŒ
ã»ãšãã©ã®è¿œå ã®BLTouchã³ãŒã/æ§æãªãã·ã§ã³ãšåãçç±ã§ãããã¯BLTouchã¯ããŒã³ã®åé¡ã§ãã
3DTouchïŒ= BLTouchã§ããããšã«æ³šæããŠãã ããã ãããã®ã³ããŒã«é¢é£ããå€ãã®ã¯ããŒãºãããåé¡ããããŸãã
ç§ã¯ãããããŒããŠã§ã¢ã®åé¡ãšåŒã¶ã§ãããã
ã¯ãã3dtouchïŒããã³ãã®ä»ïŒã¯BLtouchã§ã¯ãããŸãã
ç§ã«ãšã£ãŠã®å€§ããªQã¯ãããŒãªã³ãã¯ããŒã³ããµããŒãããŠããã®ãããããšãæ¬ç©ã®è£œåã ããæ°ã«ããŠããã®ããšããããšã§ãã
å人çã«å°ãèããŠã¿ããšãããŒãªã³ãã¯ããŒã³ããµããŒãããã®ã¯å ¬å¹³ã ãšã¯æããªã
ããããç§ã¯ééã£ãŠããå¯èœæ§ããããŸããèãïŒ
XXtouchã®ååã«é¢ä¿ãªããç§ã®2ã»ã³ãã ãããã®ãããããSERVOSãã³ã«æ¥ç¶ããŸãïŒBLtouchç¹æ®ãã³ã§ã¯ãããŸããïŒã SERVOSã¯ãµãŒãã®ããã«æ©èœããã¯ãã§ãã
ããããå®éã®ãµãŒãã§ããããã®ãã«ã¹ã«çãæºãããã®ä»ã®å¥åŠãªåäœã§åå¿ããå¯èœæ§ãããããããã®åé¡ã¯ãšã«ããä¿®æ£ããå¿ èŠããããšæããŸãã
ïŒ @mlehnhoffã³ã¡ã³ãããïŒ
ããã¯ããããŒãããŒããŠã§ã¢ã®ããã«ããã¹ãã§ã¯ãããŸããã ããŒãããçæãããŠããä¿¡å·ã¯æ£ãããªãããªã·ãã¹ã³ãŒãã䜿çšããŠæ€èšŒãããŸããã ããã¯ä¿®æ£ãããã¹ãã§ãã
ãŸããSKR Mini E3ããŒãã§åæ§ã®åé¡ãåŒãèµ·ãããŠããã¿ã€ããŒã®ç«¶åããã¹ãŠãããã°ãããšãã«ãå ±åãããåäœãæ¬ç©ã®BLTouchããŒããŠã§ã¢ãšéåžžã«äŒŒãŠããããšã確èªã§ããŸãã ç¡å¹ãªãã«ã¹é·ã¯ãBLTouchãäœãããŠããããåã«å¿ããŠã倱æãåŒãèµ·ãããããã«èŠããŸããã
@mlehnhoff ããã®åé¡ã«æ·»ä»ã§ãããåé¡ã瀺ããªã·ãã¹ã³ãŒãããã®ç»åããã£ããã£ããŸãããïŒ
å®å šãªè§£æ±ºçãšããŠçŸåšã®åé¿çã奜ãã§ã¯ãªããšæããŸãããåé¡ã説æããããã«æäŸããã詳现ã¬ãã«ãšããã«ã¹ãåé¡ã®æ ¹æ¬åå ã§ããããšã瀺ãåé¿çã«æ¬åœã«æè¬ããŠããŸãã
ç³ãèš³ãããŸããããã¹ã³ãŒãã®ã¹ã¯ãªãŒã³ã·ã§ãããããã«æäŸããŸããã§ããã ç§ã¯ããã€ãäœã£ããšæããŸãããäœããããŸããããŸããã§ããã ããããã¹ã³ãŒããè¿ããŸã§æ°ã¥ããŸããã§ããïŒç§ã®ãã®ã§ã¯ãããŸããïŒã
ãããä»ãç§ã¯æ°ãããã®ãäœããŸããïŒ
åçã§ã¯ã1472µsãã544µsãžã®ç§»è¡ãèŠãããŸãããæåã®æ°ãã
ãã«ã¹ã¯20544µsã§ãã
ããã«ãå®éã®ãµãŒããè©ŠããŸãããããã®åé¡ã¯3dtouchãä»ã®ã¯ããŒã³ã ãã«éå®ãããªãããšã蚌æãããŠããŸãã
ãµãŒãã¯90°ïŒäžå€®ã®ã¬ããŒïŒãã0°ïŒã¬ããŒããŠã³ïŒã«å転ããå¿ èŠããããŸãããé害ã®ãããã«ã¹ãçºçãããšãå®éã«ã¯æåã¯äžæããŠããäžéããŸãã
ã¡ãªã¿ã«ãæ¬ç©ã®bltouchã«ã¯å°ãªããšã8ã€ã®ç°ãªãããŒãžã§ã³ïŒã¯ã©ã·ãã¯v1.0ãv1.2ãv1.3ãã¹ããŒãv1.0ãv2.0ãv2.2ãv3.0ãv3.1ïŒããããããããã¹ãŠãæ£ããæ©èœãããã©ããã¯ããã£ãŠããŸã;-)
å¥ã®ãã³ãã次ã«ç€ºããŸããM280ã³ãã³ããæåã§éä¿¡ããå Žåãåé¡ãçºçããå¯èœæ§ã¯ã»ãšãã©ãããŸããã ãµãŒãïŒãããªã§äœ¿çšïŒãåãæ¿ããã¹ã¯ãªãããäœæããŸãããããã«ãããå¯èœæ§ã倧å¹
ã«é«ãŸããŸãã
Servo_toggle.gcode.txt
ããã¯ãBLTouchã§çºçããŠããåé¡ã«é¢é£ããŠããã®ã§ããããã
USBçµç±ã§Re-ARMã«é»åãäŸçµŠãã M80
ã䜿çšããŠ12Vé»æºããªã³ã«ããŸãã BLTouchã«é»åãäŸçµŠãã12Vé»æºã«æ¥ç¶ããã5Véå§ã³ã³ããŒã¿ããããããBLTouchã¯12Vé»æºãäœåãããŸã§é»åãäŸçµŠãããŸããã
ããŒãã®é»æºãå
¥ããšãBLTouchãèµ€ãç¹æ»
ããŸããããã¯ãBLTouchãé»æºãå
¥ããåã«ä¿¡å·ãåä¿¡ããå Žåãæããã«æ£åžžãªããšãªã®ã§ãå¿é
ããŠããŸããã
ãã ãã M280 P0 S160
ãªã»ããããããšããŠãããŸã£ããå¹æããããŸããã å±éãããŠããå Žåããã³ãåŒã£èŸŒããããšããããŸããã
ãã ãã M280 P0 S60
æ£åžžã«SWã¢ãŒãã«åãæ¿ãããç¹æ»
ãåæ¢ããŸãã
ç¹æ»
ãšS160
æããã«ç¡èŠãããŠããããšãé€ãã°ãBLTouchã¯å®å
šã«æ©èœããŠããããã§ãã ãŸã°ãããããŠãããšãã§ããé©åã«å±éãåçŽããããŒãããŸã-ç§ã¯ãã«ããããããŒããå®è¡ããŸãããããããŒãã®æ
éã¯èŠãããšããªããåçŸæ§ã¯åªããŠããŸãã
ããã¯æ¬ç©ã®V3.1BLTouchã§ãããã¯ããŒã³ã§ã¯ãããŸããã
å®äŸ¡ãªããDSOãšå€§ããªCRTãªã·ãã¹ã³ãŒãã®äž¡æ¹ã§ãã«ã¹ããã§ãã¯ããããšãå¿ããŠããŸããŸãããããã«ã¹ã®é·ãã¯åé¡ãªãããã§ãã ãŸãããªã»ãããããªã¬ãŒããå€ãèŠã€ããããšãªããããŸããŸãªSå€ïŒ155ãã165ïŒãè©ŠããŸããã
LPCã®ãµãŒãã©ã€ãã©ãªãã©ã®ããã«æ©èœãããã¯èª¿ã¹ãŠããŸãããã次ã®ããã«ãªããŸãã
ãµãŒãä¿¡å·ã¯PWMã§ãã ãããSTM32ããŒããŠã§ã¢ã¿ã€ããŒã§å®çŸãããå Žåããã®ãšã©ãŒã¯ãæ¯èŒã¬ãžã¹ã¿ã®ããªããŒãã¬ãžã¹ã¿ã«æ°ããå€ãæŽæ°ããã®ã§ã¯ãªããã«ãŠã³ã¿æ¯èŒã¬ãžã¹ã¿ãçŽæ¥æŽæ°ããããšã«ãã£ãŠçºçããå¯èœæ§ããããŸãã ã«ãŠã³ã¿ãäœãå€ãšé«ãå€ã®éã«ãããšãã«æ¯èŒã¬ãžã¹ã¿ãé«ãå€ããäœãå€ã«å€æŽãããšãïŒçããïŒæ¯èŒã¯ã¹ããããããã«ãŠã³ã¿ããªãŒããŒã©ã³ããŠæ°ããå€ã«éãããŸã§ãã³ã¯å€æŽãããŸããã ã ããªããŒãã¬ãžã¹ã¿ã䜿çšãããŠããå Žåãã«ãŠã³ã¿ããªãŒããŒã©ã³ãããšãããŸãã¯ïŒå€ãïŒæ¯èŒå€ãäžèŽãããšãã«ãæ¯èŒã¬ãžã¹ã¿ãæŽæ°ãããŸãã ããã«ã¯ã倧ããªãã«ã¹ã®ãªã¹ã¯ã¯ãªããæ倧ã§çŽ1 PWMåšæïŒ20msïŒã®é
延ãçºçããå¯èœæ§ããããŸãã
ç·šéïŒãšã©ãŒã®å¯èœæ§ã¯ã1msåŸæ¹ã«ã¹ãããããããšã«5ïŒ
ã«ãªããŸãã
ããã«äŒŒããããªãã®ããããšæããŸãã
ããã¯ãlpcãã¬ãŒã ã¯ãŒã¯ãããŒããŠã§ã¢pwmãã©ããã¢ãŒãïŒãã«ã¹å¹ ã¬ãžã¹ã¿ãã·ã£ããŠãããååšæã§ã©ããã€ã³ãããïŒã§å®è¡ãããŠããªãããã§ããåçŽãªã¢ãŒããããã§ãããå®è¡ã§ããã¯ãã§ãããæ®å¿µãªããã§ããŸããã確å®ã«åäœãããããã«ã1åšæã®ã°ãªãããçºçããå¯èœæ§ããããããã«ã¹å¹ ãã©ã³ãã ã«ïŒãã ããæŽæ°ã®é »åºŠã«å¿ããŠéåžžã«é »ç¹ã«ïŒå€åããªãããã«ããŸãã
ãã®åé¡ã«ã€ããŠããã«èª¿æ»ããããšãã§ããŸãããããã¯å®éã«ã¯è€éãªåšèŸºæ©åšã§ã¯ãããŸãããç§ã¯ãã®äžå ·åã«é·ãæéãè²»ãããæçµçã«ä»ã®ããšã«æ³šæãå¿ èŠã§ããã
@mlehnhoff @kockockockocããããã©ã®ããã«é©çšããŸããïŒ
@mlehnhoff @kockockockocããããã©ã®ããã«é©çšããŸããïŒ
æ£çŽãªãšãããç§ã¯gitã«ããªãæ
£ããŠããªãã®ã§ããgitdiffãã䜿çšããŠãã®ããããäœæã§ããŠããããã§ãã ãã®ããããé©çšãçŽãã«ã¯ãå¥ã®gitã³ãã³ããå¿
èŠã ãšç¢ºä¿¡ããŠããŸãã ãã¶ã@kockockockocãå©ããŠãããã§ããã...
ãããããã®éåžžã«å°ããªã³ãŒããã©ã°ã¡ã³ãã®å Žåã¯ãæåã§è¡ãããšãã§ããŸãã ãã¡ã€ã«ãMarlin / src / HAL / HAL_LPC1768 / Servo.hãïŒãã¡ããã+ããªãïŒã®è¡šç€ºäœçœ®ã«ã+ãã§å§ãŸã4è¡ãè¿œå ããã®ãšåããããç°¡åã§ãã
ããã«ã¡ã¯ãåãããŒãBigtreetechSKRv1.3ãš3DTouchã䜿çšããŠããŸããã3DTouchãæ©èœããŸããã Arduino Megaã®ã³ãŒãã䜿çšããŠ3dTouchããã¹ãããŸããããå®å
šã«æ©èœããŸãã ã ãããç§ã¯èŠã€ããææ¡ãš@mlehnhoffãããã3DTouchãããªãŒãºããŸãã ããŒãªã³ãéå§ãããšã3Dã¿ãããã»ã«ããã¹ããå®è¡ãããã³ãåçŽãããå€æŽãªãã§æ°žä¹
ã«ãã®ç¶æ
ã«çãŸããŸãïŒM43 SãŸãã¯ããŒãªã³ã¡ãã¥ãŒããïŒ
ãã®åé¡ã解決ããããã«äœãããªããã°ãªããªãã®ãããããªãã®ã§ãç§ã¯ããã«ã€ããŠæ¬åœã«å¿é
ããŠããŸãã ã©ããªææ¡ãæè¿ããŸãã
ãã®ãã°ã¯ç§ãããã§å ±åãããã®ãšåãã ãšæããŸãïŒ https ïŒ
ç§ã¯ãŸã åé¡ãªã6/22/19ãããã°ä¿®æ£ã³ããããå®è¡ããŠããŸãã ä»æ¥ãææ°ã®ãã°ä¿®æ£ã³ããããè©ŠããŸãããããµãŒãã®åé¡ã¯ãŸã ååšããŠããŸãã
@ Reywas62ãšãã¹ãŠãç§ã¯åé¡ã解決ã§ãããã®èšäºhttp://fightpc.blogspot.com/2019/08/testing-skr-13-board-with-marlin-20x.htmlãèŠã€ããŸããã ã©ãããããã€ãã®SKRããŒãã¯ãé©åã«åäœããããã«ããªãã®éã®é»æµãå¿ èŠãšããäœã€ã³ããŒãã³ã¹ïŒçŽ200ãªãŒã ïŒã®åºåä¿¡å·ãæã£ãŠããå¯èœæ§ããããŸãïŒãããŠããã¯ArduinoããŒãã§ã¯èµ·ãããŸããããããç§ã®3Dã¿ãããããŒããæ£ããåäœããçç±ã§ãArduinoã§ïŒããã§ãã©ãããããã¯ãã¡ãŒã ãŠã§ã¢ãšã¯é¢ä¿ãããŸããã
ç§ã®ããŒããMarlinbugfix 2.0.xïŒ6/22/19ïŒã®ä»¥åã®ã³ãããã§æ£åžžã«åäœããããšãé€ããŠãç§ã¯ãã®èª¬æãè³Œå ¥ããŸãã
mlehnhoffã®ã æ©èœããŠããããšã確èªã§ããŸãã BLTouchã¯ããŒã³ã䜿çšããŠ9x9UBLã¡ãã·ã¥ããããŒãããŸãã éåžžãã¡ãã·ã¥çæãå®è¡ãããšã81ãã€ã³ãã¡ãã·ã¥ã®1ã€ãŸãã¯2ã€ã®ãã€ã³ãã倱æããŸãã ãããããä¿®æ£ãã䜿çšãããšããã¹ãŠãæ£åžžã«æ©èœããŸãã ã ããç§ã¯ãã®ãœãªã¥ãŒã·ã§ã³ã䜿ãç¶ããŸãã ç§ã®å Žåãããã·ã¥ãã³ãå±éãããŠããŠã»ã³ãµãŒãããªã¬ãŒãããªããããé·ããµãŒããã«ã¹ã«åé¡ããããšæããŸãã
3DTouchã®åé¡ã解決ããããšã確èªããããšæããŸãã åé¡ã¯ãSKR1.3ãµãŒããã³ã®äœé»æµã§ãã åè·¯ãäœã£ãŠãã¹ãããŸããã M43ãå®è¡ããåŸã次ã®æ
å ±ãåãåããŸããã
éä¿¡ïŒM43 S
ãµãŒããããŒããã¹ã
ã ã€ã³ããã¯ã¹ã䜿çšïŒ0ãå±éè§åºŠïŒ10ãåçŽè§åºŠïŒ90
ã ãããŒãZ_MIN_PINïŒ57
ã Z_MIN_ENDSTOP_INVERTINGïŒfalse
ã BLTOUCHã確èªããŠãã ãã
= BLTouch Classic 1.2ã1.3ãSmart 1.0ã2.0ã2.2ã3.0ã3.1ãæ€åºãããŸããã
* 30ç§ä»¥å
ã«ãããŒããããªã¬ãŒããŠãã ãã*
ã ãã«ã¹å¹
ïŒ+/- 4msïŒïŒ10
= BLTouch pre V3.1ïŒãŸãã¯äºææ§ã®ããïŒãæ€åºãããŸãã
ããã§ã»ããã¢ãããè©ŠããŠã¿ãŸãããSG90ãšMG90ã®äž¡æ¹ã®ãµãŒãã¢ãŒã¿ãŒããããæç¶çã«ç¡å¹ã«æ»ããŸãã Z-Probeã¹ã€ãããä¿æããŠããã®ã§ããããã«è¡çªãããšãã«ãã·ã³ã殺ããŸãã ååã®ã¯ã©ãã·ã¥ã¯ãCreality CR10S5ã®ãã€ãŒã«ããŠã³ãã®åèšã§ããã > _ æ©äŒãããã°ãåè·¯ãè©ŠããŠããããããŸããããã©ããã確èªããŸãã ãã¡ãŒã ãŠã§ã¢ããã¯ãè©ŠããŠã¿ãŸãã :)
ãã¡ãŒã ãŠã§ã¢ããã¯ãè©ŠããåŸãç§ã«ã¯äœã®å€åããããŸããã§ããïŒç§ãæã£ãããã«ãããã¯ã¯bl-touchã¯ããŒã³ãä¿®æ£ããã®ã§ãå¿ ããããµãŒãã®åãã§ã¯ãããŸããïŒã ãµãŒãã¯ã移åãå®äºããåŸãããã«åŸæ¹ã«ç§»åããããšããããŸããã
ãããèæ ®ããŠãç§ã¯ããã¯ãå ã«æ»ãããµãŒããç¡å¹ã«ããªãããã«ããŒãªã³ã«èšããŸããããããŠããã¯åŸéã®åé¡ããªããªã£ãããã§ãã ãµãŒããç¡å¹ã«ãããšåé¡ãçºçããããã§ãã 幞ããç§ã䜿çšããŠããMG90ã¯ãéžæããè§åºŠã§ââæ¯å/æºãã瀺ããŸããã :)
ç§ã¯ééããªãmlehnhoffã®gcodeããã¹ãããŠãããããšã«æè¬ããããšæããŸãã å®è¡ãããã³ã«ãµãŒãã3ã4ååçãããmarlinã«ãµãŒããæå¹ã«ããŠããããã«æ瀺ãããšãã¹ã¯ãªããã¯3åç¶ããŠæ£åžžã«å®è¡ãããŸããã äœé»æµã®å ±åãèæ ®ããŠãããŒã¿ãŒããªã³ã«ããŠãã¹ããå®è¡ããPSUã«è² è·ããããŸããã :)
ãããéèŠãã©ããã¯ããããŸããããç§ã®ãµãŒãè§åºŠã¯172ïŒå±éïŒãš35ïŒåçŽïŒã§ãããæ¯ååãéã ããµãŒããåŸæ¹ã«åããããã«èŠããŸããã ãµãŒãã¯æ±ºããŠåé²ããŸããã§ããã
ãã¡ãŒã ãŠã§ã¢ããã¯ã¯ç§ã®åé¡ãä¿®æ£ããŸããã§ãããããµãŒããæå¹ã®ãŸãŸã«ããŠãããšãDarkAlaranthã®å Žåãšåæ§ã«ããµãŒãã®èª€åäœãé²æ¢ãããŸãã å®éã«ã¯ä¿®æ£ã§ã¯ãããŸãããã蚱容ã§ããåé¿çã§ãã
å°ãäœåãªèæ¯éå»æ°æ¥éã«ããã€ãã®ãã©ãããã©ãŒã ã§ãããè©ŠããŸããããAntLab BLtouchã®äž¡æ¹ãå£ããŠããå¯èœæ§ããããšæã£ãã®ã§ã3ã€ç®ã泚æããŸããã
ãããç§ã以äžã®ãã©ãããã©ãŒã ã§èŠ³å¯ãããã®ã§ã
SKR ProV1.1ãæ©èœããªã
SKRv1.3ãæ©èœããªã
RAMPS1.4ãæ©èœããªã
SKRv1.4ãæ©èœããªã
RAMPS1.6ãæ©èœããªã
M119ã§èªã¿åãããããŒãããåã®çç¶
ãšã³ãã¹ãããã¹ããŒã¿ã¹ã®å ±å
x_minïŒããªã¬ãŒæžã¿
y_minïŒããªã¬ãŒæžã¿
z_minïŒããªã¬ãŒæžã¿
ãã³ãã¡ã€ã«ã調æŽããŸããããåãçµæã«ãªããŸããã
ãããç§ãæ§ã
ãªããŒãªã³ãŽã£ã³ããŒãžã®ããã€ãã®ãããªã§äœ¿çšããããã»ã¹ã§ã
https://www.youtube.com/watch?v=5cSzFCv7K4Q&t=14s
https://www.youtube.com/watch?v=R0HeFV9nKCM
https://www.youtube.com/watch?v=HR-zn4dv1fY&t=2s
https://www.youtube.com/watch?v=-4o6-8TgpNM
ãã£ãšãããªãæçš¿ããããšãã§ããŸãããç§ã®ãã€ã³ãã¯ã3ã€ã®æ¬ç©ã®BLã¿ããã§ãããã®ãããã«ãæ©èœããŠããªããšããããšã§ãã
æ§æã«å€æŽããããŸããïŒ configuration_adv.hã«ã¯ãBLã¿ããã®é»æºèšå®ãå€æ°å«ãŸããŠããŸãã
Z軞ãããŒãã³ã°ãããšãã«ã¬ããŒã枩床ãå¿
èŠã§ããïŒ
ãããã°ã¯æ¬¡ã®ãšããã§ãã
éä¿¡æžã¿ïŒG28 Z0
éä¿¡ïŒM114
éä¿¡æžã¿ïŒM105
RECVïŒãšã©ãŒïŒ!! BLTouchãšã©ãŒã®ããã«STOPãåŒã³åºãããŸãã-M999ã§åèµ·åããŠãã ãã
[ãšã©ãŒ]ãšã©ãŒïŒ!! BLTouchãšã©ãŒã®ããã«STOPãåŒã³åºãããŸãã-M999ã§åèµ·åããŠãã ãã
RAMPS 1.6 / MEGA2560äžã®M119
z-minã§éãããã«æ£ããèªã¿åã
ãããŒãã³ã°ãæ©èœããŠããªãããã§ãã
ãã®åé¡ããããŸãã
Ender 3ãSKR Mini E3 v1.2ãçŽæ£BLTouch v3.1
V2ã§åé¡ãªãåäœããŸã
skr1.3ã®é
ç·ã¯ã¹ããã¯ã®åããšã¯ç°ãªããŸãã Marlin2.0.1ã®ãªãªãŒã¹ããŒãžã§ã³ã䜿çšããŠããŸã
å¥ã®BLTouchãè©Šãããšã¯ã§ããŸããïŒ ãããŒããæå·ããŠããªãããšã確èªããã«ã¯ïŒ
ããããããããªããã ç§ã¯éåžžã®BLTouchããæã£ãŠããŸããã é害ã¯çŽ200åã®1ã«ã®ã¿çºçããŸãã
@mlehnhoffæéãåããããåãã¹ãããŠãã ãã
ãã°ä¿®æ£2.0.xã¯æ¯æ¥æŽæ°ãããããã14æ¥ããšã«åãã¹ãããŠãã ããã
ææ°ã®ãã°ä¿®æ£ãã«ã[2020.01.24]ãåã³ã³ãã€ã«ããŸããã
ãããã150ã®2ã€ã®ãããŒãåçŸæ§ãã¹ããè¡ããŸããã
ã¯ããŒã³BLTouchïŒ3DTouchïŒãåããSKR1.1ããŒãïŒLPC1768ïŒã§ãã°ä¿®æ£2.0.xã䜿çšããå Žåã«ããåæ§ã®åäœãèŠãããŸããã
ããŸããŸãªåé¿çãè©ŠããŸãããã25ã®ãããŒããã€ã³ãã®ãã¡ãå°ãªããšã1ã€ã®ãããŒããã€ã³ãã§ã¯ããã³ã®è§£æŸãæ©ãããŸãïŒå±éã®çŽåŸã«åçŽãããªã©ïŒã
@mlehnhoffæéãåããããåãã¹ãããŠãã ãã
@boelle ïŒ @ p3pã§åè¿°ããããã«ãåé¡ã¯å®éã«ã¯Marlinèªäœã§ã¯ãªããLPCãã¬ãŒã ã¯ãŒã¯ã«ãããããåãã¹ãã¯å¿
èŠãããŸããã 圌ã¯ãPWMã©ããã¢ãŒããé©åã«æ©èœããªãã£ããããã³ã¡ã³ãã解é€ããå¿
èŠããããšè¿°ã¹ãŸããã ãããã£ãŠããããä¿®æ£ãããªãéãã確å®ã«æ©èœããbltouchãå¿
èŠãªå Žåã¯ãç§ã®éããåé¿çã䜿çšããå¿
èŠããããŸãã
çŸæç¹ã§ã¯ãæ®å¿µãªãããªã·ãã¹ã³ãŒãã«ã¢ã¯ã»ã¹ã§ããŸããããã以å€ã®å Žåã¯ããã®åé¡ã®ãããã°ã§P3PããµããŒãããããšæããŸãã ä»ã®èª°ãããããããã«æ·±ãæãäžãããå Žåã¯ãé æ
®ãªãïŒ https ïŒ
ãã®åé¡ããããŸãã
Ender 3ãSKR Mini E3 v1.2ãçŽæ£BLTouch v3.1
SKR Mini E3 v1.2ã¯ãLPC1768ã§ã¯ãªãSTM32ãã€ã¯ãã³ã³ãããŒã©ãŒã䜿çšããŸãã
PWMã®ã©ããã«é¢ããåé¡ã¯ã次ã®LPC176xãšã©ãã¿ã«é¢é£ããŠããã®ã§ããããã
3.13 PWM.1ïŒPWM1.1ã®ãã¥ãŒãã£ãµã€ã¯ã«ã100ïŒ ããæŽæ°ããå Žåã
å Žåã«ãã£ãŠã¯ãåºåãPWMæéå šäœã«ããã£ãŠããŒã®ãŸãŸã«ãªãããšããããŸãã
æŽæ°ãæå¹ã«ãªããŸã
åæžãïŒ
LPC176x PWMããªãã§ã©ã«ã§ã¯ã2ã€ã®ãããã¬ãžã¹ã¿ã䜿çšããŠ1ã€ã®ãããã¬ãžã¹ã¿ãæäŸã§ããŸãã
ãšããžå¶åŸ¡PWMåºåã 1ã€ã®ãããã¬ãžã¹ã¿ïŒPWM1MR0ïŒãPWMãµã€ã¯ã«ãå¶åŸ¡ããŸã
äžèŽæã«ã«ãŠã³ãããªã»ããããããšã«ããã¬ãŒãã ããäžæ¹ã®ãããã¬ãžã¹ã¿ã¯PWMãšããžãå¶åŸ¡ããŸã
ããžã·ã§ã³ã äŸãšããŠããããã¬ãžã¹ã¿PWM1MR1ã¯PWM1ã®ãšããžäœçœ®ãå¶åŸ¡ããŸãã
è€æ°ã®ã·ã³ã°ã«ãšããžå¶åŸ¡PWMåºåã¯ãã¹ãŠãæåã«ç«ã¡äžãããšããžããããŸãã
PWM1MR0ã®äžèŽãçºçãããšãã®åPWMãµã€ã¯ã«ã
åé¡ïŒ
ã·ã³ã°ã«ãšããžã¢ãŒãã§ã®ã¿ãPWM1.1ã®ãã¥ãŒãã£ãµã€ã¯ã«ïŒãã«ã¹å¹ å€èª¿åš1ããã£ãã«ïŒ
1åºåïŒã100ïŒ ïŒPWM1MR1 = PWM1MR0ïŒããæŽæ°ããã次ã«PWM1.1ã®åºåãæŽæ°ãããŸãã
æ°ããæãŸãããã¥ãŒãã£ãµã€ã¯ã«ã®åã«ãPWMæéå šäœã«ããã£ãŠäºæããããŒã®ãŸãŸã«ãªãå¯èœæ§ããããŸã
æå¹ã«ãªããŸãã ãã®åé¡ã¯ãPWM1.1ã®åºåã«ã®ã¿åœ±é¿ããŸãã ãã®ä»ã®PWMãã£ãã«
ïŒPWM1.2ããPWM1.6ïŒã¯ãã®åé¡ã®åœ±é¿ãåããŸããã
åé¿çïŒ
ãŠãŒã¶ãŒãPWM1MR1ãããŒãã§ãããœãããŠã§ã¢ä¿®æ£ãå®è£ ã§ããŸãã
PWM1.1ã®åºåæŽæ°ã®é 延ãåé¿ããããã®PWM1MR0 + 1ïŒå°ãªããšã1ïŒã
ãµãŒããã³ã100ïŒ PWMã¢ãŒãã«ããããšã¯ãªããšæãã®ã§ãããã§ã¯ãªããšæããŸãã
次ã«ãPWM 1.1ã§ã¯ãSKR1.3ã®ãµãŒããã³ã§ããP2_0ã«äœ¿çšãããŸãã
ç§ã¯åæ§ã®åé¡ã調æ»ããŠããŸãïŒçŽæ£ã®BL Touch3.1ãšSKRPRO 1.1ã䜿çšïŒã
ïŒ16986ã§èŠã€ãããã®ãææžåããŸããããåºæ¬çã«ã¯ãç§ã®ãã®ãXY_PROBE_SPEEDã«é¢é£ããŠããããšãããããŸããã 10000ã®æ°åã¯ãBL Touchä¿¡å·ã15ãããŒãã³ã°ãã€ã³ãïŒæåã®Y移ååŸã®æåã®ãããŒããã€ã³ãã§ããããŸãïŒã§ãã«ã¹ããDCã¬ãã«ã«å€æŽããŸãã6000ã®æ°åã¯åé¡ã瀺ããŸããã§ããã
ãã®åé¿çã¯ãSKRv1.3ãš3DTouch v2ïŒããã³Pi 3BïŒãæèŒãã2ã€ã®Ender3ã§1ãæ以äžãã¹ãããŸããã 以åã¯ãABLïŒ3ã5åã®å°å·ã«å°ãªããšã1åïŒãå®è¡ãããšããããŒããããªã¬ãŒãããïŒãã ããããã«èµ€ãç¹æ»
ïŒãããºã«ããããã«è¡çªãããšããå®æçãªé害ãçºçããŠããŸããã -ãããšç«ã¡å»ã£ãã ãããŠãMarlin2.0.xã®ãããŒãã³ã°/ BLã¿ããæ§æã®ãã¹ãŠã§ã¯ãªãã«ããŠãã»ãšãã©ã®é åãè©ŠããŸããã
ãããã®é±ã®æ°ãåããªãã»ã©ã®ãããŒãã³ã°ïŒM48ãšå€ãã®å®éã®ããªã³ãã®äž¡æ¹ïŒã§å€±æããªãã£ãã®ã§ãç§ã®å Žåããã®åé¿çã¯æããã«æåãããšèŠãªãå¿
èŠããããŸãã ãã¡ãããçµæãå€ãã£ãå Žåã¯ã調æ»çµæãæŽæ°ããŸãã
ãŸããXYãããŒãé床ïŒ6-8-10000 mm / sãè©ŠããïŒãZãããŒãé床ã«é¢ä¿ãªãããããŒãäžã«ããŒã¿ãŒ/ã¹ããããŒãç¡å¹ã«ããã«åäœããããšããã¹ãããŸããã åºæ¬çã«ãMarlinã§ã®ãããŒãã³ã°ã®ã»ããã¢ããã¯ãé害ãåé¿ããããã®èŠå ã§ã¯ãªããªã£ãããã§ãïŒãã ããå°ãªããšãZé床ã¯ç²ŸåºŠã«åœ±é¿ãäžããå¯èœæ§ããããŸãïŒã
å¯äžã®åé¡ã¯ãLCDã®ããã¯ã©ã€ãïŒ5VïŒãSKRããåŒãåºãããŠããå ŽåããããŒãäžã«äžæçã«ç¹æ»
ããããšã§ããããã¯ããããŒãã®æ¶è²»é»æµã«ããé»å§éäžã瀺ããŠããå¯èœæ§ããããŸãïŒãã ããã¹ã³ãŒãã§ãã¹ãŠãåé¢ããŠãããŒãããããããŸããã§ããïŒã ã ãããã£ãŠã代ããã«5VãPiã«é
ç·ãïŒãã ããå€éš5VãœãŒã¹ã§ãããŸããŸããïŒããããŒãã®è¿ãã§2æ¬ã®GNDã¯ã€ã€ãŒãæ¥ç¶ãã1æ¬ã¯SKRã«æ¥ç¶ãããã1æ¬ã¯Piã«æ¥ç¶ããŸããïŒè²§ä¹äººã®ã¹ã¿ãŒã°ã©ãŠã³ãçšïŒã ã
@mlehnhoff
bugfix-2.0.xãã©ã³ãããã¹ãããŠããããã©ãã«ãããã確èªããŠãã ããã
éããªãæ¬ç©ã®BLTouchã§ããããã¹ãããŸãããåãåé¡ããããšæããŸãã
ç·šéïŒåãããŒãïŒSTM32F103RCïŒã§ã¯ãããŸããããåãåé¡ã§ãïŒ ãããã¿ã€ãã³ã°ã®åé¡ãäœãä»ã®ãã®ãã©ãããç解ããããšããŠããŸãïŒ ãããã91 UBLã¡ãã·ã¥ãå®è¡ãããšãããã§èª¬æããã®ãšåãæ¹æ³ã§ããããã1ã€ãŸãã¯2ã€ã®ãããŒãã倱æããŸããïŒ
ããŒãããå ±æããµãŒãã³ãŒãã䜿çšããŠããããã ãšããããŸããã è©Šè¡é¯èª€ã®æ«ã以äžãè¿œå ããŸããããsafe_delayã6ms / usã®ããã§ãã ä»äºäžïŒ ãããçã«ããªã£ãŠããå Žåãã»ã³ãµãŒã¯ããéãããªã¬ãŒããããã§ããïŒ ãããŠãã»ã³ãµãŒãæ éããããšãªãæåã®ã¡ãã·ã¥ãååŸããããšãã§ããŸãããïŒ ãããç£èŠããããå€ãã®ãã¹ããå®è¡ããŸãããæåã¯ææã«èŠããŸãïŒ ããã¯æ¬ç©ã®BLTouchã§ãæ éã ãšæã£ãŠ2ã€ç®ã泚æããŸããã ãã®ã»ããã¢ããã¯å ã®ã¹ããã¯ããŒãã§æ£åžžã«æ©èœããŠãããããä»ã®ããŒããŠã§ã¢ã¯ãªããšæããŸããBTTV2.0ã«ç§»è¡ããMarlinã§ãã®åé¡ãçºçããããã§ãã 以åã¯ãåé¡ãªãKlipperãå®è¡ããŠããŸããã
if ( (servoIndex == 0) && ( extDigitalRead(SERVO0_PIN) == 1 ) ) {
safe_delay(6);
}
@ aslater3ããŒãïŒSKR Mini E3 v1.2ïŒã«ãå ±æããµãŒãã³ãŒãããããã©ããã確èªããã«ã¯ã©ãããã°ããã§ããïŒ
@boelleç³ãèš³ãããŸããããç§ã¯ããŸããŸãªããšã«ããªãå¿ããã£ãã§ãã ææ°ã®ãã°ä¿®æ£-2.0.xïŒ2.0.5.4ã®ããã§ãïŒããã¹ãããŸããã åé¡ã¯ãŸã ååšããŠããŸãã ããã¯ãpio-framework-arduino-lpc176xã§ã¯ãŸã ä¿®æ£ãããŠããªãããã§ãã
ããããç§ã¯ãªã·ãã¹ã³ãŒãã«ã¢ã¯ã»ã¹ã§ããããã«ãªããŸããããããããã«èª¿æ»ããŠïŒãããŠæçµçã«ã¯ä¿®æ£ããŠïŒåãã§ããŸã...
2.0.5.4
ïŒ 2.0.x
ïŒãšbugfix-2.0.x
ã¯2ã€ã®ç°ãªããã©ã³ãã§ãã ææ°ã®bugfix-2.0.x
ãè©ŠããŠããã®åé¡ãåŒãç¶ãçºçãããã©ããããç¥ãããã ããã
2.0.5.4
ïŒ2.0.x
ïŒãšbugfix-2.0.x
ã¯2ã€ã®ç°ãªããã©ã³ãã§ãã ææ°ã®bugfix-2.0.x
ãè©ŠããŠããã®åé¡ãåŒãç¶ãçºçãããã©ããããç¥ãããã ããã
ã¯ããããã£ãŠããŸããææ°ã®ãã°ä¿®æ£2.0.xã䜿çšããŸããã 2.0.5.4ã¯LCDã¡ãã¥ãŒãæããŠãããããšã ãã§ã
ããããããã¯ãšã«ããåé¡ã§ã¯ãããŸããããã°ã¯MarlinFwã³ãŒãå ã«ãªããpio-framework-arduino-lpc176xå ã«ããããã§ãã
ã³ãŒãã®ã©ã®éšåãåé¡ãåŒãèµ·ãããŠããã®ããã€ãŸãHW-PWMã®ã©ãããç¡å¹ã«ãªã£ãŠããããšãããç¥ãããŠããŸãã
åé¡ã¯ãä»ã®åé¡ãèµ·ãããã«ã©ãããå床æå¹ã«ããæ¹æ³ãèŠã€ããããšã§ãã ããããã©ãããç¡å¹ã«ãªã£ãŠããçç±ã§ãã
ä»ã®ãã©ãããã©ãŒã ã§ãåæ§ã®åé¡ã調æ»ããŠããã®ã§ãããã«ã€ããŠ@ p3pãšãã£ããããŠããŸããã ãã®åäœãå€æŽãããå¯èœæ§ã¯ãªããšæããŸããå®éã«æ°žç¶çãªãœãªã¥ãŒã·ã§ã³ãå®è£ ããäžç°ã§ãªãéããä»ããåãã¹ããã䟡å€ã¯ãããŸããã
2.0.5.4ã¯LCDã¡ãã¥ãŒãæããŠãããããšã ãã§ã
次ã«ãææ°ã®ãã°ä¿®æ£ã䜿çšããŠããŸããã LCDã«ã¯bugfix-2.0.x
ãŸãã
æ°ããäžèŽå€ããã§ã«ééããåŸãããçããã¥ãŒãã£ãµã€ã¯ã«ãèšå®ãããšã1åšæã®äžå ·åãçºçããããšãèªèããŠããŸããçŸåšããã®åé¡ã軜æžããæ¹æ³ãããããŸããã ããŒããŠã§ã¢ã¯ãpwmã·ã£ããŠã¬ãžã¹ã¿ãæå¹ã«ãªã£ãŠããå Žåã«æ³å®ãããŠããããšãå®è¡ããŠããªãããã§ãã
2.0.5.4ã¯LCDã¡ãã¥ãŒãæããŠãããããšã ãã§ã
次ã«ãææ°ã®ãã°ä¿®æ£ã䜿çšããŠããŸããã LCDã«ã¯
bugfix-2.0.x
ãŸãã
ããŠãç§ã®æªããç§ã¯èª€ã£ãŠãã°ä¿®æ£-2.0.xã®ä»£ããã«ãã©ã³ã2.0.xãè€è£œããŸãã...ä»ç§ã¯ãããä¿®æ£ããŸãã->éãã¯ãããŸããïŒãã¡ããïŒ
æ°ããäžèŽå€ããã§ã«ééããåŸãããçããã¥ãŒãã£ãµã€ã¯ã«ãèšå®ãããšã1åšæã®äžå ·åãçºçããããšãèªèããŠããŸããçŸåšããã®åé¡ã軜æžããæ¹æ³ãããããŸããã ããŒããŠã§ã¢ã¯ãpwmã·ã£ããŠã¬ãžã¹ã¿ãæå¹ã«ãªã£ãŠããå Žåã«æ³å®ãããŠããããšãå®è¡ããŠããªãããã§ãã
@ p3pã©ãããæå¹ã«ãããšãã«ãã©ã®ãããªåé¡ãçºçãããæããŠãã ããã
ç§ãèŠããŠããããšããïŒããããããã°ããŠããé·ãæéãçµã¡ãŸããïŒãã·ã£ããŠã¬ãžã¹ã¿ãæå¹ã«ãããšããã«ã¹å¹ ãæ£çºçã«ãŸã£ããæŽæ°ãããŸããã§ãããããã§ã¯ãªãã1åšæã®ã°ãªãããéžæããããšãæ³åã§ããŸãã åãæéã«ãã«ã¹å¹ ãè€æ°åæŽæ°ããããšãåå ã®ããã§ãããããããããŸããã§ããã
æ什ããããµãŒãè§åºŠã¯ãå€æŽããããã«ã¹å¹
ãšããŠåºåã«è¡šç€ºãããããã«ãå°ãªããšã20ããªç§ãç¶æããå¿
èŠããããŸãã
æ°ãããã«ã¹å¹
ãããã€ã¹/ãµãŒãã§èªèã§ããããã«ããã«ã¯ãããã€ãã®ãã«ã¹ãç¶æããå¿
èŠããããŸãã
ãããã£ãŠãå°ãªããšã20ããªç§ä»¥å
ã«è§åºŠãå€æŽããããšã¯çŠæ¢ããå¿
èŠããããŸãã
@sjasonsmithãBL_Touchã«ã€ããŠèŠã€ãã httpsïŒ //github.com/MarlinFirmware/Marlin/issues/18598#issuecomment-657406598ã§ææããããšããçŽ60ããªç§ã
ã·ã£ããŠã¬ãžã¹ã¿ãããé »ç¹ã«æŽæ°ããŠãæå³ããããŸããã ã¬ãžã¹ã¿ã¯ãè§åºŠå€ãå€åãããããé »ç¹ã«æžã蟌ãŸããã¹ãã§ã¯ãããŸããã ïŒã·ã£ããŠã¬ãžã¹ã¿ã®ã·ã£ããŠå€æ°ïŒïŒ
é »ç¹ãªå€æŽãé²ãããã«ããµãŒãã©ã€ãã©ãªã®äžäœã¬ãã«ã«è¿œå ã®ããããå¿
èŠã«ãªãå¯èœæ§ããããŸãã SERVO_DELAY
ã«äŒŒããã®ããã§ã«ãããŸããããã¯ãå
ã
ããµãŒããïŒæ©æ¢°çã«ïŒã¿ãŒã²ããã«å°éããåã«ãµãŒãä¿¡å·ãã·ã£ããããŠã³ããã®ãé²ãããã®ãã®ã§ãã
@AnHardtã·ã£ããŠã¬ãžã¹ã¿ãæéããšã«è€æ°åå€æŽããŠãæå³ããªãããšã¯ç¥ã£ãŠããŸãããæéçµäºæã«å€ãå®éã®ã¬ãžã¹ã¿ã«ããã·ã¥ãããåã«ã·ã£ããŠã¬ãžã¹ã¿ãè€æ°åå€æŽãããšåé¡ãçºçããçç±ãããããŸãããäœãåå ãããããŸãããã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ãããŒããŠã§ã¢PWMãé »ç¹ã«æŽæ°ããã®ãåæ¢ããããã®è§£æ±ºçã¯ãïŒãããæ¬åœã«åé¡ã§ããå ŽåïŒãšã«ããäœããã®åœ¢ã§é倧ãªããã©ãŒãã³ã¹ã®äœäžã䌎ããªãããšã§ãã
@AnHardtã·ã£ããŠã¬ãžã¹ã¿ãæéããšã«è€æ°åå€æŽããŠãæå³ããªãããšã¯ç¥ã£ãŠããŸãããå€ãæéçµäºæã«å®éã®ã¬ãžã¹ã¿ã«ããã·ã¥ãããåã«ã·ã£ããŠã¬ãžã¹ã¿ãè€æ°åå€æŽãããšåé¡ãçºçããçç±ãããããŸããã
ãŸããçç±ãåé¡ããããã©ãããããããŸããã ããªãã¯ç§ãã¡ãæããŠããå Žåããããããã¯æã
ããããåé¿ããããšããŠãã ããåé¡ãçºçããŸãã
次ã®ãããªæ§æïŒ
static float last_servo_angle = 0.0f;
if (servo_angle != last_servo_angle) {
set_servo(sevo_angle);
last_servo_angle = servo_angle;
}
å°ãªããšããåãå€ã§ã·ã£ããŠã¬ãžã¹ã¿ã«è€æ°åæžã蟌ãããšãé²ããŸãã
æ£ããèŠããŠããã°ãBL-Touchã衚瀺ãããåã«ãæåŸã«SERVO_PROBEã³ãŒãã«è§Šãããšããåææã«ãµãŒããšã¹ããããŒãåæã«åããããšã¯æ
éã«é¿ããŸããããåžžã«DEACTIVATE_SERVOS_AFTER_MOVE
ã§ãã¹ãããŸãããã¹ããããŒãåããŠãããšãã«ãµãŒããæºããservo_angleãèšå®ããåŸã SERVO_DELAY
ïŒæ°çŸããªç§ïŒã®äžæåæ¢ãçºçããŸããã ãããšæ¯èŒããŠãç§ãä»ææ¡ããŠããã¯ããã«çãé
延ã¯ãããã©ãŒãã³ã¹ã®åäžã§ãã
BL-Touchã³ãŒãããµãŒããšã¹ããããŒãåæã«åããããšãããšãããŒã«ããã¬ã€ããªããã°ãªããªãããã«æããŸããã
BL-Touchesã¯åžžã«ãµãŒãä¿¡å·ããªã³ã«ãããã®ã§ã DEACTIVATE_SERVOS_AFTER_MOVE
ã¯äžå¯èœã§ãã å²ã蟌ã¿é§åã®ãµãŒãã©ã€ãã©ãªã®å Žåãé
延å²ã蟌ã¿ã¯å£æ»
çã«ãªãããµãŒãä¿¡å·ãå°ç¡ãã«ããŸããã ããŒããŠã§ã¢é§åã®PWMã¯åœ±é¿ãåããŸããã éåžžããµãŒãã¯1ã€ãããããŸããã
ãã ããäžæåæ¢ã®ãªãset_servo(0); set_servo(180); set_servo(0);
ã¯ãå®éã®ãµãŒãã§ãBL-Touchã§ãããŸã£ããåå¿ãåŒãèµ·ãããªããšç¢ºä¿¡ããŠããŸãã
ããããªããã ããããç§ã®èãã¯ããŒããŠã§ã¢PWMã«çŠç¹ãåœãŠãŠããããã§ããçŸæç¹ã§ã¯ãã¿ã€ããŒãã¬ãžã¹ã¿ãæ¯èŒããã ãã§ãæã æŽæ°ããå¿ èŠããããŸãã
ããããªããã ããããç§ã®èãã¯ããŒããŠã§ã¢PWMã«çŠç¹ãåœãŠãŠããããã§ããçŸæç¹ã§ã¯ãã¿ã€ããŒãã¬ãžã¹ã¿ãæ¯èŒããã ãã§ãæã æŽæ°ããå¿ èŠããããŸãã
ãã®åé¡ã¯ããŒããŠã§ã¢PWMã«ãããããªããèšã£ãããšãã¹ãŠã«åæããŸããã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ã倧éã®æŽæ°ãè¡ã£ãŠããå Žåã§ãããŒããŠã§ã¢ã確å®ã«æ©èœãããæ¹æ³ã®ããã«ããã¬ãŒã ã¯ãŒã¯ã¬ãã«ã§åé¡ãèããŠããŸããïŒMarlin ïŒåãæéã«ã ã¯ã©ã€ã¢ã³ãã¯ãæåã®æŽæ°ã§ã¯ãªãæåŸã®æŽæ°ãæå¹ã«ãªãããšãæåŸ ããŸããæéãçµäºããåã«åŸç¶ã®æŽæ°ãè¡ãããªãããšãç§ã¯ç¥ãæ¹æ³ããããŸããã
æ°ãã解決çãæãæµ®ãã¶ãã©ããããããŠãã®èšºæãå®éã«æ£ãããç§ãæãã§ã¯ãªãã£ããã©ããã確èªããããã«ãåé¡ãããäžåºŠèŠçŽãå¿ èŠããããŸãã
ãã£ãŠã¿ãŸã
æç¶ããäœçœ®ãçãããã¿ã€ãã³ã°ã¯çç¥ã§ããŸãã
servo_update(angle) only updates a volatile variable lets say inter_angle.
an interrupt, either overflow or compare could be:
{
static uint32_t counter = 0;
static uint16_t last_inter_angle = 0;
if (counter++ > 3) { // if counter should overflow there is a small risk of delaying another 3*20 ms. Every ~55min if 16 bit.
if (inter_angle != last_inter_angle) { // if counter above 3 the update will be immediate when inter_angle changed.
update_shadow_compare_register(inter_angle);
counter = 0;
last_inter_angle = inter_angle;
}
}
}
çŽ20ããªç§ããšã«å®è¡ãããŸãã
ããã«ãããåºåãã«ã¹ã®é·ããå°ãªããšã3 * 20ããªç§äžå®ã«ä¿ãããææ°ã®ã³ãã³ãè§åºŠã®ã¿ãå
¥åãããŸãã ãã ãã次ã«ã©ã®è§åºŠãæ¥ãã®ãããŸãã¯æŽæ°ããŸã£ããç¶ãã®ãã©ããã¯ããããŸãã-ãããç¥ãããšã¯äžå¯èœã§ã-ãã€éå§ããå¿
èŠããããã¯ããããŸããã éä¿¡ãã«ã¹ãèªã¿åãããšãã§ããã·ã£ããŠã¬ãžã¹ã¿ãé »ç¹ã«æŽæ°ãããªãããšãä¿èšŒãããŸãã
ãã¹ãŠã®æŽæ°ãå°ãªããšããã®æéè¡ãããããšãä¿èšŒããã«ã¯ãæ®çºæ§å€æ°ããã¥ãŒã«çœ®ãæããå¿ èŠããããŸãã
RCãã©ã€ã³ã°ã§ã¯ãäžéäœçœ®ãçç¥ã§ããå¯èœæ§ããããŸãã BL-Touchã®åçŽãå±éããªã»ãããchangeing_modesã®å Žåã...ãã¹ãŠãçããéèŠã§ãã ããã«æ³šæããããšã¯çç¥ã§ããŸãããã¹ãŠã®ã³ãã³ãã¯èªèãããã®ã«ååé·ããšã©ãŸããªããã°ãªããŸããã ãŠãããŒãµã«ãµãŒãã©ã€ãã©ãªã«ã¯ããŠãããŒãµã«ãªæ£ãããœãªã¥ãŒã·ã§ã³ã¯ãããŸããã
ããã«ãBL-Touchã®å Žåããã¹ãŠã®ã³ãã³ããã¹ããããŒã®åããšåæããŠããå¿
èŠããããŸãã ãããŒãã®ããã«éããŠããéã«ãããŒããåŒã£èŸŒããã®ã¯çç¥ããã»ããããã§ãããã :-)
ãããã£ãŠãç§ã®èŠ³ç¹ããã¯ãããŒãªã³ã¯è§åºŠãé »ç¹ã«æŽæ°ããªã責任ãããã¯ãã§ãã
ç·šéïŒ
ãããããæ¯èŒå²ã蟌ã¿ã¯ãã·ã£ããŠæ¯èŒã¬ãžã¹ã¿ãæŽæ°ããã®ã«é©åãªå²ã蟌ã¿ã§ãã ãã®åŸãå²ã蟌ã¿ã¯ãåªå
床ã®é«ãå²ã蟌ã¿ã«ãã£ãŠçŽ17ããªç§é
延ããå¯èœæ§ããããŸããããªãŒããŒãããŒãçºçãããšãã«ãæŽæ°ã¬ãžã¹ã¿ãæ¯èŒã¬ãžã¹ã¿ã«ã³ããŒããæºåãã§ããŠããŸãã
ã«ãŠã³ã¿ã3ãè¶
ããŠããå Žåãå²ã蟌ã¿ãåæ¢ã§ããã¯ãã§ããinter_angleãæŽæ°ããããšãã«åèµ·åã§ããŸããã
SKR mini1.1ã§ãåãåé¡ãçºçããŠããŸãã
ã©ã®äœçœ®ã«çœ®ããŠãããµãŒãã¯åžžã«åããã€ã³ãã«ç§»åããŸãã
https://www.youtube.com/watch?v=HVyaKdpJsP0
@Matheusschmitz SKR miniã¯å¥ã®ãã©ãããã©ãŒã ã䜿çšããŠããããã®åé¡ãšã¯ç°ãªããŸãã STM32F1ããŒãïŒããªãã®ãããªïŒã®BLTouchã®ä¿¡é Œæ§ãåäžãããããã«ã1é±éã¡ãã£ãšåã«ããã€ãã®å€æŽãè¡ãããŸããã bugfix-2.0.xãã©ã³ãã䜿çšããŠãåé¡ã解決ãããã©ããã確èªããŠãã ããã
ããã§ãåé¡ã解決ããªãå Žåã¯ãDiscordãªã©ã®ãµããŒãäŒå Žã§è©±ãåã£ãŠãã ããã ãã®ç¹å®ã®åé¡ã¯ãLPC176xããŒãã«åŒãç¶ãçŠç¹ãåœãŠãå¿ èŠããããŸãã
ãŸããSKR1.3ãšBLTouchã¯ããŒã³ã§ãã®åé¡ãçºçããŸããã
ç§ã¯ããããããªã§ãã£ããã£ããããšãã§ããŸãããã¡ããã©1:54ããŒã¯ã®ãããïŒ
https://www.youtube.com/watch?v=wF0Mia49ECI&t=114s
ïŒãããªã¯1080pã§ãYouTubeã¯ãããåŠçããå¿
èŠããããŸãïŒ
ããã¯ãUBLäžã«çºçããå Žåã®åäœã瀺ãç»åã§ããããŸã
ä»ã®äººãšåãããã«ã圹ç«ã€ããŸããŸãªèšå®ãè©ŠããŸãããã圹ã«ç«ã¡ãŸããã§ããã
ç§ã¯ææ°ã®ãã°ä¿®æ£-2.0.xãã©ã³ãã䜿çšããŠããŸã
ç§ã®åŽã§ãåãåé¡ã
åé¿çããã¹ãããŸã
ãã®åé¡ã¯éå»30æ¥é掻åããŠããŸããã ãã®åé¡ãã¢ã¯ãã£ããªç¶æ ã«ä¿ã¡ããå Žåã¯ãè¿ä¿¡ãè¿œå ããŠãã ãããããããªããšã7æ¥ä»¥å ã«èªåçã«ã¯ããŒãºãããŸãã
æä¹ çãªè§£æ±ºçãèŠã€ãããŸã§ãããã¯ãªãŒãã³ã«ããŠãã䟡å€ããããšæããŸãã
ç§ã¯ãã®ææ ã«åæããŸã
ãã®åé¡ã¯éå»30æ¥é掻åããŠããŸããã ãã®åé¡ãã¢ã¯ãã£ããªç¶æ ã«ä¿ã¡ããå Žåã¯ãè¿ä¿¡ãè¿œå ããŠãã ãããããããªããšã7æ¥ä»¥å ã«èªåçã«ã¯ããŒãºãããŸãã
ãã®åé¡ã¯æªè§£æ±ºã®ãŸãŸã«ããŠããã¹ãã ãšæããŸãã
æãåèã«ãªãã³ã¡ã³ã
ããã¯ããããŒãããŒããŠã§ã¢ã®ããã«ããã¹ãã§ã¯ãããŸããã ããŒãããçæãããŠããä¿¡å·ã¯æ£ãããªãããªã·ãã¹ã³ãŒãã䜿çšããŠæ€èšŒãããŸããã ããã¯ä¿®æ£ãããã¹ãã§ãã
ãŸããSKR Mini E3ããŒãã§åæ§ã®åé¡ãåŒãèµ·ãããŠããã¿ã€ããŒã®ç«¶åããã¹ãŠãããã°ãããšãã«ãå ±åãããåäœãæ¬ç©ã®BLTouchããŒããŠã§ã¢ãšéåžžã«äŒŒãŠããããšã確èªã§ããŸãã ç¡å¹ãªãã«ã¹é·ã¯ãBLTouchãäœãããŠããããåã«å¿ããŠã倱æãåŒãèµ·ãããããã«èŠããŸããã
@mlehnhoff ããã®åé¡ã«æ·»ä»ã§ãããåé¡ã瀺ããªã·ãã¹ã³ãŒãããã®ç»åããã£ããã£ããŸãããïŒ
å®å šãªè§£æ±ºçãšããŠçŸåšã®åé¿çã奜ãã§ã¯ãªããšæããŸãããåé¡ã説æããããã«æäŸããã詳现ã¬ãã«ãšããã«ã¹ãåé¡ã®æ ¹æ¬åå ã§ããããšã瀺ãåé¿çã«æ¬åœã«æè¬ããŠããŸãã