aboutsummaryrefslogtreecommitdiff
path: root/ESP32Test/CodeForESP32/CodeForESP32.ino
diff options
context:
space:
mode:
Diffstat (limited to 'ESP32Test/CodeForESP32/CodeForESP32.ino')
-rw-r--r--ESP32Test/CodeForESP32/CodeForESP32.ino87
1 files changed, 87 insertions, 0 deletions
diff --git a/ESP32Test/CodeForESP32/CodeForESP32.ino b/ESP32Test/CodeForESP32/CodeForESP32.ino
new file mode 100644
index 0000000..caf6fac
--- /dev/null
+++ b/ESP32Test/CodeForESP32/CodeForESP32.ino
@@ -0,0 +1,87 @@
+#include <Stepper.h>
+
+#define STEPS 200
+#define motorInterfaceType 1
+
+//------stepper motor for carousel----------
+Stepper stepper(STEPS, 2, 3); // Pin 2 connected to DIRECTION & Pin 3 connected to STEP Pin of Driver
+int stepperSleepPin = 0;
+int stepperCounter = 0;
+
+//------linear actuator for doseing-----------
+int doesActivatePin = 0;
+int doesDeactivatePin = 0;
+
+
+void setup() {
+ stepper.setSpeed(1000);
+ pinMode(stepperSleepPin, OUTPUT);
+ //Sleeps motor to stop overheating
+ digitalWrite(stepperSleepPin, HIGH);
+
+ pinMode(doesActivatePin, OUTPUT);
+ pinMode(doesDeactivatePin, OUTPUT);
+}
+
+void loop() {
+
+ //-------Wait for MQTT BROKER message--------//
+
+}
+
+//-------------Dosing valve activation----------------//
+void doesAlcohol(){
+ digitalWrite(doesActivatePin, HIGH);
+ delay(5000);
+ digitalWrite(doesActivatePin, LOW);
+ digitalWrite(doesDeactivatePin, HIGH);
+ delay(2000);
+ digitalWrite(doesDeactivatePin, LOW);
+
+
+ //Send message for done doesing
+}
+
+
+//-------------Carousel activation----------------//
+
+void runCarousel(int steps){
+ //Wakes up motor to run
+ digitalWrite(stepperSleepPin, LOW);
+
+ //---------Add acceleration to save motor from inertia from the carousel--------//
+
+ stepper.step(steps);
+ stepperCounter = stepperCounter + steps;
+
+ //Sleeps motor to stop overheating
+ digitalWrite(stepperSleepPin, HIGH);
+
+ //Send message for done runing
+}
+
+
+//-------------Pumps activation----------------//
+
+void activatePump(int pump, int time){
+
+ pinMode(pump, OUTPUT);
+ digitalWrite(pump, HIGH);
+ delay(time);
+ digitalWrite(pump, LOW);
+ //Send message for done pumping
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+