리니어 모터에 리미트 스위치를 연결해서 왕복운동을 하고있는걸 만들었습니다.
여기서 리미트 스위치에 횟수 제한을 걸어서 일정 횟수를 초과하면 모터가 정지하게끔 만들려고 하는데
여기서 뭐를 더 해야될지 문의드립니다.
#include <HCMotor.h>
#define DIR_PIN 8 //스텝모터드라이버 DIR 연결핀
#define CLK_PIN 9 //스텝모터드라이버 CLK 연결핀
#define LLIMIT_PIN 3
#define RLIMIT_PIN 2
HCMotor HCMotor;
int Speed = 10;
void setup()
{
HCMotor.Init();
HCMotor.attach(0, STEPPER, CLK_PIN, DIR_PIN);
HCMotor.Steps(0,CONTINUOUS);
HCMotor.DutyCycle(0, Speed);
pinMode(LLIMIT_PIN, INPUT);
pinMode(RLIMIT_PIN, INPUT);
}
void loop()
{
if (digitalRead(LLIMIT_PIN) == LOW)
HCMotor.Direction(0, FORWARD);
else if (digitalRead(RLIMIT_PIN) == LOW)
HCMotor.Direction(0, REVERSE);
}
댓글목록
등록된 댓글이 없습니다.