remove SatNOGS-V2

v1
Agis Zisimatos 2014-08-17 21:44:23 +03:00
parent 5056882b3c
commit 34f0860a40
3 changed files with 0 additions and 184 deletions

View File

@ -1,60 +0,0 @@
#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();
}

View File

@ -1,51 +0,0 @@
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 = path(cmdAz);
}
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++;
}
}
}

View File

@ -1,73 +0,0 @@
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 (stepPosAz > SPD*60)
stepPosAz = 0;
else if (stepPosAz < 0)
stepPosAz = SPD*60;
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 path( double cmdAz)
{
int sign = 0, stepTemp;
double PosAz = cmdAz - step2deg(stepPosAz);
double distAz = abs(PosAz);
Serial.println(PosAz);
if (distAz < 180)
stepTemp = deg2step(PosAz);
else
{
if (PosAz > 0)
sign = -1;
else
sign = 1;
stepTemp = deg2step((360-PosAz)*sign);
}
Serial.println(stepAz);
return stepTemp;
}
int deg2step(double deg)
{
return(60*SPD*deg/360);
}
float step2deg(int Step)
{
return(360*Step/(SPD*60));
}