diff options
| author | Rishi-k-s <rishikrishna.sr@gmail.com> | 2024-07-04 21:28:03 +0530 |
|---|---|---|
| committer | Rishi-k-s <rishikrishna.sr@gmail.com> | 2024-07-04 21:28:03 +0530 |
| commit | 3c5d0f10f1386bc64716d9e9e7556f45af948c42 (patch) | |
| tree | 3c3af9c71f6e4ebbad0c6e059c200ed345b7de1f | |
| parent | ad1163154c61db7a8ebf44110f786c219d0bbc5b (diff) | |
addeed home position
| -rw-r--r-- | homeposition/homeposition.ino | 77 | ||||
| -rw-r--r-- | test/test.ino | 9 |
2 files changed, 85 insertions, 1 deletions
diff --git a/homeposition/homeposition.ino b/homeposition/homeposition.ino new file mode 100644 index 0000000..ed3964f --- /dev/null +++ b/homeposition/homeposition.ino @@ -0,0 +1,77 @@ +#include <Wire.h> +#include <Adafruit_PWMServoDriver.h> + +Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(); +uint16_t value = 0; // Use uint16_t for a wider range of values +uint8_t counter = 0; + +#define SERVOMIN 150 // This is the 'minimum' pulse length count (out of 4096) +#define SERVOMAX 600 // This is the 'maximum' pulse length count (out of 4096) + +int homePosCheck =0; +int i =0; +void setup() { + Serial.begin(9600); + + Serial.println("------------------------"); + Serial.println("Servo Home Position v1.0a"); + // Serial.println("Enter Servo Value"); + // Serial.println("If its 2 digit values enter it with 0 as prefix"); + // Serial.println("Eg: for 90, type 090"); + Serial.println("------------------------"); + + pwm.begin(); + pwm.setOscillatorFrequency(27000000); + pwm.setPWMFreq(50); + + homePos(); +} + +void loop() { + // while(homePosCheck == 0){ + // homePos(); + // homePosCheck++; + // } +} + + +void homePos() { + // (PWM Driver Pin, 0, val of servo) + //motor1 + for(i=500;i>=395;i--){ + pwm.setPWM(0, 0, i); + delay(5); + } + delay(100); + pwm.setPWM(1, 0, 110); + delay(100); + pwm.setPWM(2, 0, 250); + delay(100); + pwm.setPWM(3, 0, 380); + delay(100); + pwm.setPWM(4, 0, 430); + delay(100); + pwm.setPWM(5, 0, 490); + // //motor2 + // for(i=0;i<=85;i++){ + // pwm.setPWM(1, 0, i); + // delay(10); + // } + // //motor3 + // for(i=0;i<=250;i++){ + // pwm.setPWM(2, 0, i); + // delay(10); + // } + // //motor4 + // for(i=0;i<=380;i++){ + // pwm.setPWM(3, 0, i); + // delay(10); + // } + // //motor5 + // for(i=0;i<=450;i++){ + // pwm.setPWM(4, 0, i); + // delay(10); + // } + + // pwm.setPWM(0, 0, 395); +} diff --git a/test/test.ino b/test/test.ino index 845c5ea..f06f00d 100644 --- a/test/test.ino +++ b/test/test.ino @@ -56,8 +56,15 @@ void loop() { if (counter == 3) { Serial.println(value); - pwm.setPWM(4, 0, value); // Arguement order => (PWM Driver Pin, 0, val of servo) + pwm.setPWM(5, 0, value); // Arguement order => (PWM Driver Pin, 0, val of servo) + // pwm.setPWM(0, 1024, 3072); counter = 0; value = 0; // Reset value after using it } } + + +// void homePos(){ +// (PWM Driver Pin, 0, val of servo) +// pwm.setPWM(0, 0, value); +// } |
