Pith - arduino_wave_tank
arduino_wave_tank/arduino_wave_tank_1.ino [2.2 kb]
Modified: 22:30:28 56 026 (14 May 026)
16 Days Ago
// Arduino Wave Tank
// vgmlr
#include "Servo.h"
Servo left;
Servo right;
int pos = 20;
int post = 160;
int back = 20;
int forward = 160;
int red = 6;
int green = 5;
int blue = 4;
int slow = 8;
int fast = 4;
void setup() {
  Serial.begin(9600);
  left.attach(2);
  right.attach(3);
  pinMode(red, OUTPUT);
  pinMode(green, OUTPUT);
  pinMode(blue, OUTPUT);
  left.write(back);
  right.write(back);
  digitalWrite(green, HIGH);
  delay(1000);
  digitalWrite(green, LOW);
  delay(1000);
  digitalWrite(red, HIGH);
  delay(1000);
  digitalWrite(red, LOW);
  delay(1000);
}
void loop() {
  int pent = analogRead(A0);
  Serial.println(pent);
  if (pent < 200) {
    digitalWrite(blue, HIGH);
    digitalWrite(red, LOW);
    digitalWrite(green, LOW);
    for (pos = back; pos <= forward; pos += 1) {
      left.write(pos);
      right.write(pos);
      delay(slow);
    }
    for (pos = forward; pos >= back; pos -= 1) {
      left.write(pos);
      right.write(pos);
      delay(slow);
    }
  }
  else if (pent > 200 && pent < 450) {
    digitalWrite(blue, LOW);
    digitalWrite(red, HIGH);
    digitalWrite(green, LOW);
    for (pos = back; pos <= forward; pos += 1) {
      left.write(pos);
      right.write(pos);
      delay(fast);
    }
    for (pos = forward; pos >= back; pos -= 1) {
      left.write(pos);
      right.write(pos);
      delay(fast);
    }
  }
  else if (pent > 450 && pent < 700) {
    digitalWrite(blue, LOW);
    digitalWrite(red, LOW);
    digitalWrite(green, HIGH);
    for (pos = back; pos <= forward; pos += 1) {
      post = map(pos, 20, 160, 160, 20);
      left.write(pos);
      right.write(post);
      delay(slow);
    }
    for (pos = forward; pos >= back; pos -= 1) {
      post = map(pos, 160, 20, 20, 160);
      left.write(pos);
      right.write(post);
      delay(slow);
    }
  }
  else if (pent > 700 && pent < 1023) {
    digitalWrite(blue, LOW);
    digitalWrite(red, HIGH);
    digitalWrite(green, LOW);
    for (pos = back; pos <= forward; pos += 1) {
      post = map(pos, 20, 160, 160, 20);
      left.write(pos);
      right.write(post);
      delay(fast);
    }
    for (pos = forward; pos >= back; pos -= 1) {
      post = map(pos, 160, 20, 20, 160);
      left.write(pos);
      right.write(post);
      delay(fast);
    }
  }
}
Updates
Shim - Android 70.026.1
Wedge - Linux 68.026.1
Wedge - Android 68.026.1
Taper - Linux 64.026.1
Ayh Extension - Chrome 63.026.1
Dev
TVShow (227) 'CSA'
TVShow (228) 'APT'
TVProgram (83) 'BXT'
Miter Update(s)
Shim (Dictation)

Menu
Calendar
Project Tin (024/029)
Miter
RSS Feed
User Avatar
@vgmlr
=SUM(parts)