-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathVisionBrushless.h
40 lines (37 loc) · 1.1 KB
/
VisionBrushless.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef VisionBrushless_h
#define VisionBrushless_h
#include "Arduino.h"
#include "VisionSensor.h"
#include "VisionState.h"
#include <Servo.h>
class VisionBrushless {
public:
void init();
void initPins(int brushlessPin, int relayPin);
void initPwms(int stopPwm, int normalPwm);
void initTopBottom(VisionSensor& front, VisionSensor& back);
void initPosition(int inductivePosition);
void initDirectionForward(boolean forward);
void setDirectionForward();
void setDirectionBackward();
void toggleDirection();
void doLoop();
void setNormalPwm(int normalPwm);
void doTimeMs(unsigned long time);
void doTimeMicros(unsigned long time);
void moveTo(VisionSensor& sensor);
void stopNow();
boolean isOff();
private:
void stopIfSensorDetect(VisionSensor& sensor);
private:
VisionState motorState;
VisionSensor *front, *back, *sensorToGoTo;
int currentInductivePosition;
Servo brushless;
boolean forwardDirection, directionPinState;
int stopPwm, normalPwm;
int brushlessPin, relayPin;
unsigned long timeMs, timeMicros;
};
#endif