步进电机不适用于 Arduino Mega Ramps 1.4 with Johnny-five

Stepper Motor does not work with Arduino Mega Ramps 1.4 with Johnny-five

我有一个带 RAMPS 1.4 屏蔽板的 Arduino Mega。我想我为开发板上传了正确的固件(Standard Firmata 和 Advanced Firmata)
这是我的设置:


交流转直流转换器


棋盘

var five = require('johnny-five');
var board = new five.Board({
port :"com5"
});
board.on('ready',function(){
  console.log('Board is ready');
  var stepper = new five.Stepper({
      type: five.Stepper.TYPE.DRIVER
      stepsPerRev: 200,
      pins: {
       step: 54,
       dir: 53
 });
  stepper.rpm(180).ccw().step(2000, function() {
   console.log("done");
  });
    });

X 的引脚定义:

#define X_STEP_PIN         54
#define X_DIR_PIN          55
#define X_ENABLE_PIN       38
#define X_MIN_PIN           3
#define X_MAX_PIN           2

当我运行js文件时,这里是控制台脚本:

Board is ready
done

有人知道我怎样才能让它工作吗? 我的 Arduino 板是一个克隆板,不是原版的。会不会是问题?

可能的问题是您将错误的 pin 作为目录(53 而不是 55)。

此外,如果 johnny-five 支持,我建议您 "enable" 启用该功能。

还有.. 至于电源,我觉得主要是你用错了接头。在 RAMPS 上,用于主电源的 4 螺钉连接器上有两个单独的 rails:

正如您在 RAMPS wiki page 上的原理图和布局中所见,标有蓝色的两个引脚仅用于为加热床(或连接到 D8 端口的设备)供电。

您需要将 12V 电源连接到红色端口,为电机、下面的 arduino 和连接到 D9 和 D10 的两个 "extruders" 供电。