Skip to content
Snippets Groups Projects
Commit b0ba7467 authored by Pierros Papadeas's avatar Pierros Papadeas
Browse files

Cleanup of naming and removed uneeded files.

parent 612654fb
Branches
No related tags found
No related merge requests found
Showing
with 159 additions and 11247 deletions
#include <string.h>
#include <stdlib.h>
#include <math.h>
#define DIR_AZ 8
#define STEP_AZ 9
#define EN_AZ 7
#define DIR_EL 10
#define STEP_EL 11
#define EN_EL 12
#define SPD 200 //step per degree
#define T_DEALY 10000
#define T_STEPPER 1
int stepPosAz = 0;
int stepAz = 0;
int stepPosEl = 0;
int stepEl = 0;
long t1 = 0;
void setup()
{
pinMode(DIR_AZ, OUTPUT);
pinMode(STEP_AZ, OUTPUT);
pinMode(EN_AZ, OUTPUT);
digitalWrite(EN_AZ, LOW);
digitalWrite(DIR_AZ, LOW);
pinMode(DIR_EL, OUTPUT);
pinMode(STEP_EL, OUTPUT);
pinMode(EN_EL, OUTPUT);
digitalWrite(EN_EL, LOW);
digitalWrite(DIR_EL, LOW);
Serial.begin(19200);
}
void loop()
{
/*Time Check*/
if (t1 == 0)
t1 = millis();
if (stepAz == 0 && stepEl == 0 && millis()-t1 > T_DEALY)
{
digitalWrite(EN_AZ, HIGH);
digitalWrite(EN_EL, HIGH);
}
else
{
digitalWrite(EN_AZ, LOW);
digitalWrite(EN_EL, LOW);
}
cmd_proc();
stepper_move();
}
File moved
File moved
void cmd_proc()
{
/*Serial*/
static char buffer[256];
char incomingByte;
static int counter=0;
char data[100];
/*Read from serial*/
while (Serial.available() > 0)
{
incomingByte = Serial.read();
/*new data*/
if (incomingByte == '\n' || incomingByte == ' ' || incomingByte == '\r')
{
buffer[counter]=0;
if (buffer[0] == 'A' && buffer[1] == 'Z')
{
strncpy(data, buffer+2, 100);
double cmdAz = atof(data);
stepAz = deg2step(cmdAz)-stepPosAz;
}
else if (buffer[0] == 'E' && buffer[1] == 'L')
{
strncpy(data, buffer+2, 10);
double cmdEl = atof(data);
stepEl = deg2step(cmdEl)-stepPosEl;
}
else if (buffer[0] == 'S' && buffer[1] == 'A')
{
stepAz = 0;
}
else if (buffer[0] == 'S' && buffer[1] == 'E')
{
stepEl = 0;
}
counter = 0;
//Reset time
t1 = 0;
}
/*Fill the buffer with incoming data*/
else {
buffer[counter] = incomingByte;
counter++;
}
}
}
File moved
void stepper_move()
{
if(stepAz>0)
{
digitalWrite(DIR_AZ, HIGH);
digitalWrite(STEP_AZ, HIGH);
stepPosAz++;
stepAz--;
}
else if(stepAz<0)
{
digitalWrite(DIR_AZ, LOW);
digitalWrite(STEP_AZ, HIGH);
stepPosAz--;
stepAz++;
}
if(stepEl>0)
{
digitalWrite(DIR_EL, LOW);
digitalWrite(STEP_EL, HIGH);
stepPosEl++;
stepEl--;
}
else if(stepEl<0)
{
digitalWrite(DIR_EL, HIGH);
digitalWrite(STEP_EL, HIGH);
stepPosEl--;
stepEl++;
}
delay(T_STEPPER);
digitalWrite(STEP_AZ, LOW);
digitalWrite(STEP_EL, LOW);
delay(T_STEPPER);
}
int deg2step(double deg)
{
return(60*SPD*deg/360);
}
float step2deg(int Step)
{
return(360*Step/(SPD*60));
}
This diff is collapsed.
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment