daily_automated
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
// ConstantSpeed.pde
|
||||
// -*- mode: C++ -*-
|
||||
//
|
||||
// Shows how to run AccelStepper in the simplest,
|
||||
// fixed speed mode with no accelerations
|
||||
// Requires the Adafruit_Motorshield v2 library
|
||||
// https://github.com/adafruit/Adafruit_Motor_Shield_V2_Library
|
||||
// And AccelStepper with AFMotor support
|
||||
// https://github.com/adafruit/AccelStepper
|
||||
|
||||
// This tutorial is for Adafruit Motorshield v2 only!
|
||||
// Will not work with v1 shields
|
||||
|
||||
#include <Wire.h>
|
||||
#include <AccelStepper.h>
|
||||
#include <Adafruit_MotorShield.h>
|
||||
|
||||
// Create the motor shield object with the default I2C address
|
||||
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
|
||||
// Or, create it with a different I2C address (say for stacking)
|
||||
// Adafruit_MotorShield AFMS = Adafruit_MotorShield(0x61);
|
||||
|
||||
// Connect a stepper motor with 200 steps per revolution (1.8 degree)
|
||||
// to motor port #2 (M3 and M4)
|
||||
Adafruit_StepperMotor *myStepper1 = AFMS.getStepper(200, 2);
|
||||
|
||||
// you can change these to DOUBLE or INTERLEAVE or MICROSTEP!
|
||||
void forwardstep1() {
|
||||
myStepper1->onestep(FORWARD, SINGLE);
|
||||
}
|
||||
void backwardstep1() {
|
||||
myStepper1->onestep(BACKWARD, SINGLE);
|
||||
}
|
||||
|
||||
AccelStepper Astepper1(forwardstep1, backwardstep1); // use functions to step
|
||||
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600); // set up Serial library at 9600 bps
|
||||
Serial.println("Stepper test!");
|
||||
|
||||
AFMS.begin(); // create with the default frequency 1.6KHz
|
||||
//AFMS.begin(1000); // OR with a different frequency, say 1KHz
|
||||
|
||||
Astepper1.setSpeed(50);
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
Astepper1.runSpeed();
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
// Shows how to run three Steppers at once with varying speeds
|
||||
//
|
||||
// Requires the Adafruit_Motorshield v2 library
|
||||
// https://github.com/adafruit/Adafruit_Motor_Shield_V2_Library
|
||||
// And AccelStepper with AFMotor support
|
||||
// https://github.com/adafruit/AccelStepper
|
||||
|
||||
// This tutorial is for Adafruit Motorshield v2 only!
|
||||
// Will not work with v1 shields
|
||||
|
||||
#include <Wire.h>
|
||||
#include <AccelStepper.h>
|
||||
#include <Adafruit_MotorShield.h>
|
||||
|
||||
Adafruit_MotorShield AFMSbot(0x61); // Rightmost jumper closed
|
||||
Adafruit_MotorShield AFMStop(0x60); // Default address, no jumpers
|
||||
|
||||
// Connect two steppers with 200 steps per revolution (1.8 degree)
|
||||
// to the top shield
|
||||
Adafruit_StepperMotor *myStepper1 = AFMStop.getStepper(200, 1);
|
||||
Adafruit_StepperMotor *myStepper2 = AFMStop.getStepper(200, 2);
|
||||
|
||||
// Connect one stepper with 200 steps per revolution (1.8 degree)
|
||||
// to the bottom shield
|
||||
Adafruit_StepperMotor *myStepper3 = AFMSbot.getStepper(200, 2);
|
||||
|
||||
// you can change these to DOUBLE or INTERLEAVE or MICROSTEP!
|
||||
// wrappers for the first motor!
|
||||
void forwardstep1() {
|
||||
myStepper1->onestep(FORWARD, SINGLE);
|
||||
}
|
||||
void backwardstep1() {
|
||||
myStepper1->onestep(BACKWARD, SINGLE);
|
||||
}
|
||||
// wrappers for the second motor!
|
||||
void forwardstep2() {
|
||||
myStepper2->onestep(FORWARD, DOUBLE);
|
||||
}
|
||||
void backwardstep2() {
|
||||
myStepper2->onestep(BACKWARD, DOUBLE);
|
||||
}
|
||||
// wrappers for the third motor!
|
||||
void forwardstep3() {
|
||||
myStepper3->onestep(FORWARD, INTERLEAVE);
|
||||
}
|
||||
void backwardstep3() {
|
||||
myStepper3->onestep(BACKWARD, INTERLEAVE);
|
||||
}
|
||||
|
||||
// Now we'll wrap the 3 steppers in an AccelStepper object
|
||||
AccelStepper stepper1(forwardstep1, backwardstep1);
|
||||
AccelStepper stepper2(forwardstep2, backwardstep2);
|
||||
AccelStepper stepper3(forwardstep3, backwardstep3);
|
||||
|
||||
void setup()
|
||||
{
|
||||
AFMSbot.begin(); // Start the bottom shield
|
||||
AFMStop.begin(); // Start the top shield
|
||||
|
||||
stepper1.setMaxSpeed(100.0);
|
||||
stepper1.setAcceleration(100.0);
|
||||
stepper1.moveTo(24);
|
||||
|
||||
stepper2.setMaxSpeed(200.0);
|
||||
stepper2.setAcceleration(100.0);
|
||||
stepper2.moveTo(50000);
|
||||
|
||||
stepper3.setMaxSpeed(300.0);
|
||||
stepper3.setAcceleration(100.0);
|
||||
stepper3.moveTo(1000000);
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
// Change direction at the limits
|
||||
if (stepper1.distanceToGo() == 0)
|
||||
stepper1.moveTo(-stepper1.currentPosition());
|
||||
|
||||
if (stepper2.distanceToGo() == 0)
|
||||
stepper2.moveTo(-stepper2.currentPosition());
|
||||
|
||||
if (stepper3.distanceToGo() == 0)
|
||||
stepper3.moveTo(-stepper3.currentPosition());
|
||||
|
||||
stepper1.run();
|
||||
stepper2.run();
|
||||
stepper3.run();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
/*
|
||||
This is a test sketch for the Adafruit assembled Motor Shield for Arduino v2
|
||||
It won't work with v1.x motor shields! Only for the v2's with built in PWM
|
||||
control
|
||||
|
||||
For use with the Adafruit Motor Shield v2
|
||||
----> http://www.adafruit.com/products/1438
|
||||
*/
|
||||
|
||||
#include <Wire.h>
|
||||
#include <Adafruit_MotorShield.h>
|
||||
|
||||
// Create the motor shield object with the default I2C address
|
||||
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
|
||||
// Or, create it with a different I2C address (say for stacking)
|
||||
// Adafruit_MotorShield AFMS = Adafruit_MotorShield(0x61);
|
||||
|
||||
// Select which 'port' M1, M2, M3 or M4. In this case, M1
|
||||
Adafruit_DCMotor *myMotor = AFMS.getMotor(1);
|
||||
// You can also make another motor on port M2
|
||||
//Adafruit_DCMotor *myOtherMotor = AFMS.getMotor(2);
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600); // set up Serial library at 9600 bps
|
||||
Serial.println("Adafruit Motorshield v2 - DC Motor test!");
|
||||
|
||||
AFMS.begin(); // create with the default frequency 1.6KHz
|
||||
//AFMS.begin(1000); // OR with a different frequency, say 1KHz
|
||||
|
||||
// Set the speed to start, from 0 (off) to 255 (max speed)
|
||||
myMotor->setSpeed(150);
|
||||
myMotor->run(FORWARD);
|
||||
// turn on motor
|
||||
myMotor->run(RELEASE);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
uint8_t i;
|
||||
|
||||
Serial.print("tick");
|
||||
|
||||
myMotor->run(FORWARD);
|
||||
for (i=0; i<255; i++) {
|
||||
myMotor->setSpeed(i);
|
||||
delay(10);
|
||||
}
|
||||
for (i=255; i!=0; i--) {
|
||||
myMotor->setSpeed(i);
|
||||
delay(10);
|
||||
}
|
||||
|
||||
Serial.print("tock");
|
||||
|
||||
myMotor->run(BACKWARD);
|
||||
for (i=0; i<255; i++) {
|
||||
myMotor->setSpeed(i);
|
||||
delay(10);
|
||||
}
|
||||
for (i=255; i!=0; i--) {
|
||||
myMotor->setSpeed(i);
|
||||
delay(10);
|
||||
}
|
||||
|
||||
Serial.print("tech");
|
||||
myMotor->run(RELEASE);
|
||||
delay(1000);
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
This is a test sketch for the Adafruit assembled Motor Shield for Arduino v2
|
||||
It won't work with v1.x motor shields! Only for the v2's with built in PWM
|
||||
control
|
||||
|
||||
For use with the Adafruit Motor Shield v2
|
||||
----> http://www.adafruit.com/products/1438
|
||||
|
||||
This sketch creates a fun motor party on your desk *whiirrr*
|
||||
Connect a unipolar/bipolar stepper to M3/M4
|
||||
Connect a DC motor to M1
|
||||
Connect a hobby servo to SERVO1
|
||||
*/
|
||||
|
||||
#include <Wire.h>
|
||||
#include <Servo.h>
|
||||
#include <Adafruit_MotorShield.h>
|
||||
|
||||
// Create the motor shield object with the default I2C address
|
||||
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
|
||||
// Or, create it with a different I2C address (say for stacking)
|
||||
// Adafruit_MotorShield AFMS = Adafruit_MotorShield(0x61);
|
||||
|
||||
// Connect a stepper motor with 200 steps per revolution (1.8 degree)
|
||||
// to motor port #2 (M3 and M4)
|
||||
Adafruit_StepperMotor *myStepper = AFMS.getStepper(200, 2);
|
||||
// And connect a DC motor to port M1
|
||||
Adafruit_DCMotor *myMotor = AFMS.getMotor(1);
|
||||
|
||||
// We'll also test out the built in Arduino Servo library
|
||||
Servo servo1;
|
||||
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600); // set up Serial library at 9600 bps
|
||||
Serial.println("MMMMotor party!");
|
||||
|
||||
AFMS.begin(); // create with the default frequency 1.6KHz
|
||||
//AFMS.begin(1000); // OR with a different frequency, say 1KHz
|
||||
|
||||
// Attach a servo to pin #10
|
||||
servo1.attach(10);
|
||||
|
||||
// turn on motor M1
|
||||
myMotor->setSpeed(200);
|
||||
myMotor->run(RELEASE);
|
||||
|
||||
// setup the stepper
|
||||
myStepper->setSpeed(10); // 10 rpm
|
||||
}
|
||||
|
||||
int i;
|
||||
void loop() {
|
||||
myMotor->run(FORWARD);
|
||||
for (i=0; i<255; i++) {
|
||||
servo1.write(map(i, 0, 255, 0, 180));
|
||||
myMotor->setSpeed(i);
|
||||
myStepper->step(1, FORWARD, INTERLEAVE);
|
||||
delay(3);
|
||||
}
|
||||
|
||||
for (i=255; i!=0; i--) {
|
||||
servo1.write(map(i, 0, 255, 0, 180));
|
||||
myMotor->setSpeed(i);
|
||||
myStepper->step(1, BACKWARD, INTERLEAVE);
|
||||
delay(3);
|
||||
}
|
||||
|
||||
myMotor->run(BACKWARD);
|
||||
for (i=0; i<255; i++) {
|
||||
servo1.write(map(i, 0, 255, 0, 180));
|
||||
myMotor->setSpeed(i);
|
||||
myStepper->step(1, FORWARD, DOUBLE);
|
||||
delay(3);
|
||||
}
|
||||
|
||||
for (i=255; i!=0; i--) {
|
||||
servo1.write(map(i, 0, 255, 0, 180));
|
||||
myMotor->setSpeed(i);
|
||||
myStepper->step(1, BACKWARD, DOUBLE);
|
||||
delay(3);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
/*
|
||||
This is a test sketch for the Adafruit assembled Motor Shield for Arduino v2
|
||||
It won't work with v1.x motor shields! Only for the v2's with built in PWM
|
||||
control
|
||||
|
||||
For use with the Adafruit Motor Shield v2
|
||||
----> http://www.adafruit.com/products/1438
|
||||
*/
|
||||
|
||||
#include <Wire.h>
|
||||
#include <Adafruit_MotorShield.h>
|
||||
|
||||
Adafruit_MotorShield AFMSbot(0x61); // Rightmost jumper closed
|
||||
Adafruit_MotorShield AFMStop(0x60); // Default address, no jumpers
|
||||
|
||||
// On the top shield, connect two steppers, each with 200 steps
|
||||
Adafruit_StepperMotor *myStepper2 = AFMStop.getStepper(200, 1);
|
||||
Adafruit_StepperMotor *myStepper3 = AFMStop.getStepper(200, 2);
|
||||
|
||||
// On the bottom shield connect a stepper to port M3/M4 with 200 steps
|
||||
Adafruit_StepperMotor *myStepper1 = AFMSbot.getStepper(200, 2);
|
||||
// And a DC Motor to port M1
|
||||
Adafruit_DCMotor *myMotor1 = AFMSbot.getMotor(1);
|
||||
|
||||
void setup() {
|
||||
while (!Serial);
|
||||
Serial.begin(9600); // set up Serial library at 9600 bps
|
||||
Serial.println("MMMMotor party!");
|
||||
|
||||
AFMSbot.begin(); // Start the bottom shield
|
||||
AFMStop.begin(); // Start the top shield
|
||||
|
||||
// turn on the DC motor
|
||||
myMotor1->setSpeed(200);
|
||||
myMotor1->run(RELEASE);
|
||||
}
|
||||
|
||||
int i;
|
||||
void loop() {
|
||||
myMotor1->run(FORWARD);
|
||||
|
||||
for (i=0; i<255; i++) {
|
||||
myMotor1->setSpeed(i);
|
||||
myStepper1->onestep(FORWARD, INTERLEAVE);
|
||||
myStepper2->onestep(BACKWARD, DOUBLE);
|
||||
myStepper3->onestep(FORWARD, MICROSTEP);
|
||||
delay(3);
|
||||
}
|
||||
|
||||
for (i=255; i!=0; i--) {
|
||||
myMotor1->setSpeed(i);
|
||||
myStepper1->onestep(BACKWARD, INTERLEAVE);
|
||||
myStepper2->onestep(FORWARD, DOUBLE);
|
||||
myStepper3->onestep(BACKWARD, MICROSTEP);
|
||||
delay(3);
|
||||
}
|
||||
|
||||
myMotor1->run(BACKWARD);
|
||||
|
||||
for (i=0; i<255; i++) {
|
||||
myMotor1->setSpeed(i);
|
||||
myStepper1->onestep(FORWARD, DOUBLE);
|
||||
myStepper2->onestep(BACKWARD, INTERLEAVE);
|
||||
myStepper3->onestep(FORWARD, MICROSTEP);
|
||||
delay(3);
|
||||
}
|
||||
|
||||
for (i=255; i!=0; i--) {
|
||||
myMotor1->setSpeed(i);
|
||||
myStepper1->onestep(BACKWARD, DOUBLE);
|
||||
myStepper2->onestep(FORWARD, INTERLEAVE);
|
||||
myStepper3->onestep(BACKWARD, MICROSTEP);
|
||||
delay(3);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
This is a test sketch for the Adafruit assembled Motor Shield for Arduino v2
|
||||
It won't work with v1.x motor shields! Only for the v2's with built in PWM
|
||||
control
|
||||
|
||||
For use with the Adafruit Motor Shield v2
|
||||
----> http://www.adafruit.com/products/1438
|
||||
*/
|
||||
|
||||
|
||||
#include <Wire.h>
|
||||
#include <Adafruit_MotorShield.h>
|
||||
|
||||
// Create the motor shield object with the default I2C address
|
||||
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
|
||||
// Or, create it with a different I2C address (say for stacking)
|
||||
// Adafruit_MotorShield AFMS = Adafruit_MotorShield(0x61);
|
||||
|
||||
// Connect a stepper motor with 200 steps per revolution (1.8 degree)
|
||||
// to motor port #2 (M3 and M4)
|
||||
Adafruit_StepperMotor *myMotor = AFMS.getStepper(200, 2);
|
||||
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600); // set up Serial library at 9600 bps
|
||||
Serial.println("Stepper test!");
|
||||
|
||||
AFMS.begin(); // create with the default frequency 1.6KHz
|
||||
//AFMS.begin(1000); // OR with a different frequency, say 1KHz
|
||||
|
||||
myMotor->setSpeed(10); // 10 rpm
|
||||
}
|
||||
|
||||
void loop() {
|
||||
Serial.println("Single coil steps");
|
||||
myMotor->step(100, FORWARD, SINGLE);
|
||||
myMotor->step(100, BACKWARD, SINGLE);
|
||||
|
||||
Serial.println("Double coil steps");
|
||||
myMotor->step(100, FORWARD, DOUBLE);
|
||||
myMotor->step(100, BACKWARD, DOUBLE);
|
||||
|
||||
Serial.println("Interleave coil steps");
|
||||
myMotor->step(100, FORWARD, INTERLEAVE);
|
||||
myMotor->step(100, BACKWARD, INTERLEAVE);
|
||||
|
||||
Serial.println("Microstep steps");
|
||||
myMotor->step(50, FORWARD, MICROSTEP);
|
||||
myMotor->step(50, BACKWARD, MICROSTEP);
|
||||
}
|
||||
Reference in New Issue
Block a user