我在node.js方面还是个新手。强尼-5号。我试着用1000步移动一个Stepper 5次(例如)。
所以:
do 1000 Steps in cw ;
console.log('ready);
do 1000 steps;
console.log('ready')
...如果能在for循环中实现这一点,那就好了。例如:5次做1000步。我试着用下面的代码做到这一点:
for (var i = 0; i < 5; i++) {
stepper.direction(1).step(1000, function() {
console.log("Done stepping!");
});
}我的cmd中的输出是
Done stepping!
Done stepping!
Done stepping!
Done stepping!
Done stepping!但是马达只移动一次。我真的不明白为什么!?
希望有人能给点建议,谢谢!
发布于 2017-02-15 05:51:32
如果我自己不连接一个,我认为您的问题是:direction(1)。看起来像是direction使马达指向某个方向;因此,您的循环告诉马达指向同一方向5次。
尝试在stepper()中设置一些不同的值,或者在循环中用i替换1:
for (var i = 0; i < 5; i++) {
stepper.direction(i).step(1000, function() {
console.log("Done stepping!");
});
}如果这还不起作用,你的步进电机有没有外部电源?你能提供一个简单测试用例的接线图和代码吗?
发布于 2016-10-12 00:42:47
我刚刚开始重新开始写代码。已经过了30年了,所以我不只是生疏了。
尝试删除'for‘循环中的'var’。
for (i = 0; i < 5; i++) {
stepper.direction(1).step(1000, function() {
console.log("Done stepping!");
});
}我认为需要在代码中更早地定义var。
如果你找到了原因,请把它贴出来,这样我也可以从中学习。谢谢
https://stackoverflow.com/questions/39820959
复制相似问题