标题: arduino步进电机程序仿真 [打印本页]
作者: wrlsohu 时间: 2018-7-8 07:56
标题: arduino步进电机程序仿真
论坛很少有arduino的仿真,对不想买板子的坛友真没法验证代码正确与否,在这里贴个仿真供参考。
ATMEGA328最小系统
程序代码
#include <Stepper.h>
/*-----( Declare Constants, Pin Numbers)-----*/
//---( Number of steps per revolution ofINTERNAL motor in 4-step mode )---
#define STEPS_PER_MOTOR_REVOLUTION 32
//---( Steps per OUTPUT SHAFT of gearreduction )---
#define STEPS_PER_OUTPUT_REVOLUTION 32 *64 //2048
/*-----( Declare objects )-----*/
// create an instance of the stepper class,specifying
// the number of steps of the motor and thepins it's
// attached to
//-------------------------------------------------------------
//The pin connections need to be pins8,9,10,11 connected
// to Motor Driver In1, In2, In3, In4
//-------------------------------------------------------------
// Then the pins are entered here in thesequence 1-3-2-4 for proper sequencing
Steppersmall_stepper(STEPS_PER_MOTOR_REVOLUTION, 8, 10, 9, 11);
/*-----( Declare Variables )-----*/
int Steps2Take;
void setup() /*----( SETUP: RUNS ONCE )----*/
{
// Nothing (Stepper Library sets pins as outputs)
}/*--(end setup )---*/
void loop() /*----( LOOP: RUNS CONSTANTLY )----*/
{
Steps2Take = STEPS_PER_OUTPUT_REVOLUTION ; // Rotate CW 1 turn
small_stepper.setSpeed(500);
small_stepper.step(Steps2Take);
delay(1000);
Steps2Take = - STEPS_PER_OUTPUT_REVOLUTION; // Rotate CCW 1 turn
small_stepper.setSpeed(500); //700 a good max speed??
small_stepper.step(Steps2Take);
delay(2000);
}
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |