سلام
دوستان من یه اسلایدر دوربین با کنترل توسط اندروید طراحی کردم
این اسلایدر با 5 دکمه هدایت می شه دو دکمه که با نگه داشتنشون اسلایدر به سمت چپ و راست حرکت میکنه و دو دکمه که موقعیت دو نقطه رو ذخیره می کنه و دکمه پنجم اسلایدر رو ابتدا به نقطهه یک و سپس به نقطه دو میبره
همه دکمه ها درست کار میکنه فقط در هنگام دکمه پنجم موتور شروع به لرزش می کنه و حرکت نمی کنه
اینم کدهاشه که به نظرم در قسمت کد دکمه پنجم همه دستورات با هم اجرا میشه
دوستان من یه اسلایدر دوربین با کنترل توسط اندروید طراحی کردم
این اسلایدر با 5 دکمه هدایت می شه دو دکمه که با نگه داشتنشون اسلایدر به سمت چپ و راست حرکت میکنه و دو دکمه که موقعیت دو نقطه رو ذخیره می کنه و دکمه پنجم اسلایدر رو ابتدا به نقطهه یک و سپس به نقطه دو میبره
همه دکمه ها درست کار میکنه فقط در هنگام دکمه پنجم موتور شروع به لرزش می کنه و حرکت نمی کنه
اینم کدهاشه که به نظرم در قسمت کد دکمه پنجم همه دستورات با هم اجرا میشه
#include<SoftwareSerial.h>
#include <AccelStepper.h>
const int pinSTEP = 2; // Arduino Pin 2 connected to STEP pin of Easy Driver
const int pinDIR = 5; // Arduino Pin 3 connected to DIR pin of Easy Driver
const byte enablePin = 8;
AccelStepper Xaxis(1, pinSTEP, pinDIR); // Setup of the AccelStepper Library
SoftwareSerial Bluetooth(4, 3);
long in_position = 0;
long out_position = 0;
int move_left = 0;
int move_right = 0;
int state;
int start_cycle = 0;
int set_speed = 900;
void setup() {
// put your setup code here, to run once:
pinMode(enablePin, OUTPUT);
digitalWrite(enablePin, LOW);
Serial.begin(9600);
Bluetooth.begin(9600);
Xaxis.setMaxSpeed(12800);
Xaxis.setAcceleration(100);
}
void loop() {
if ( Bluetooth.available() > 0)
{
state = Bluetooth.read();
Serial.println(state);
}
if (state == '1') //left_btn Press
{
move_left = 1;
Xaxis.setSpeed(900);
}
if (state == '2') { // Release Move Left Button
move_left = 0;
}
if (state == '3') //right_btn Press
{
move_right = 1;
Xaxis.setSpeed(900);
}
if (state == '4') { // Release Move right Button
move_right = 0;
}
if (state == '5') //SET_A_BTN Press
{
in_position = Xaxis.currentPosition();
Serial.println(in_position);
}
if (state == '6') //SET_B_BTN Press
{
out_position = Xaxis.currentPosition();
// out_position = Bluetooth.read();
Serial.println(out_position);
}
if (state == '7') //Run Press
{
Xaxis.setSpeed(900);
Xaxis.moveTo(in_position);
Xaxis.runSpeedToPosition();
Xaxis.setSpeed(900);
Xaxis.moveTo(out_position);
Xaxis.runSpeedToPosition();
}
if (move_left == 1) { // move the slider to the left while holding the left arrow on Nextion
Xaxis.moveTo(Xaxis.currentPosition() + 75);
Xaxis.runSpeedToPosition();
}
if (move_right == 1) { // move the slider to the right while holding the right arrow on Nextion
Xaxis.moveTo(Xaxis.currentPosition() - 75);
Xaxis.runSpeedToPosition();
}
}