#1 2022-05-13 11:45:32

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Хто може здопомогти вирішити наступну задачу:
Задача: сворення автономного пристроя що забазпечує оберання вала серводвигуна SG90 на 45 град. від світлового сигнала та повертання на місце після зникнення сигнала.
Варіант комплета:
- Серводвигун SG90
- Акумулятор GEB502040 3.7V 380mAh
- PCM Модуль Заряда TP4056 5V
- LM393 Датчик інтенсивності світла фотодіод (3 pin)
- Включатель
- Arduino Pro Mini 5V

Неактивний

#2 2022-05-13 11:51:50

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 121

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Так а у чому проблема? Що не виходить?

Неактивний

#3 2022-05-13 11:55:37

vvr
Учасник
Зареєстрований: 2015-04-12
Повідомлень: 874

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Какие у вас проблемы с написанием программы?

Неактивний

#4 2022-05-13 12:09:12

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Я майже не програмую, інакще питань би, мабуть, не було, цікавить чим програмувати, та який може бути код?

Неактивний

#5 2022-05-13 12:17:24

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 121

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Evhen пише:

цікавить чим програмувати

Arduino IDE.

Evhen пише:

який може бути код?

Приблизно такий

if(рівень освітлення >=xxx) servo.write(ugol);
else servo.write(ugol);

Неактивний

#6 2022-05-13 12:33:56

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

дякую, а як залити на Pro Mini?

Неактивний

#7 2022-05-13 12:47:41

ard125
Учасник
Зареєстрований: 2019-01-30
Повідомлень: 121

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Неактивний

#8 2022-05-13 15:15:22

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Если я правильно понял за датчик,то достаточно просто проверять наличие 1 на входе и поворачивать серву.

#9 2022-05-13 16:51:40

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

ATtiny85 USB від Digispark підходить?

Неактивний

#10 2022-05-13 19:07:41

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

подходит, но нужно уметь готовить тиньку с сервой

#11 2022-05-14 10:04:13

Krom
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Evhen пише:

Хто може здопомогти вирішити наступну задачу:
Задача: сворення автономного пристроя що забазпечує оберання вала серводвигуна SG90 на 45 град. від світлового сигнала та повертання на місце після зникнення сигнала.
Варіант комплета:
- Серводвигун SG90
- Акумулятор GEB502040 3.7V 380mAh
- PCM Модуль Заряда TP4056 5V
- LM393 Датчик інтенсивності світла фотодіод (3 pin)
- Включатель
- Arduino Pro Mini 5V

Для скидання краще таки робити нормальний скетч, ісе ж безпека

#12 2022-05-14 10:58:52

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Krom пише:

Для скидання краще таки робити нормальний скетч, ісе ж безпека

Ну да, SG90 страшная мясорубка  big_smile

#13 2022-05-14 12:33:28

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

г0сть пише:

подходит, но нужно уметь готовить тиньку с сервой

а можна докладніше? Чи ліпше взяти інший контролер?

Неактивний

#14 2022-05-14 12:44:27

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

В отличие от обычной ардуины для тиньки с библиотеками под серву полная неразбериха. Нужно будет или писать самому или разбираться с существующим зоопарком.

#15 2022-05-14 13:11:33

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

г0сть пише:

В отличие от обычной ардуины для тиньки с библиотеками под серву полная неразбериха. Нужно будет или писать самому или разбираться с существующим зоопарком.

А який порадите контролер, аби уникнути можливих затиків?

Неактивний

#16 2022-05-14 13:12:55

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Чем указанный в #1 про мини не подходит?

#17 2022-05-14 14:52:58

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

г0сть пише:

Чем указанный в #1 про мини не подходит?

поки не знайшов в кого купити sad

Неактивний

#18 2022-05-14 15:03:43

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

В интернете закончились?  smile
А тинька есть в наличии? Тогда пробуйте эту библиотеку https://github.com/digistump/DigisparkArduinoIntegration/tree/master/libraries/DigisparkSimpleServo

#19 2022-05-28 14:07:25

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Потрібно внести зміни в код, замість спрацювання 2-х серводвигунів від 2-х різних фотоелементів, потрібно спрацювання першого серводвигуна від першого блимання фотоелемента та спрацювання 2-го серводвигуна від другого блимання тогож фотоелемента.

#include "Servo.h"
#define servo     9
#define servo2    10
#define photo     A0
#define photoGnd  A1
#define photo2    A2
#define photoGnd2 A3
#define led       13

uint32_t  timer;
Servo myservo;
Servo myservo2;

void setup() {
  pinMode(photo, INPUT_PULLUP);
  pinMode(photoGnd, OUTPUT);
    pinMode(photo2, INPUT_PULLUP);
  pinMode(photoGnd2, OUTPUT);
  pinMode(led, OUTPUT);
  digitalWrite(led, LOW);
  digitalWrite(photoGnd, LOW);
  digitalWrite(photoGnd2, LOW);
  myservo.attach(servo);
  myservo2.attach(servo2);
  myservo.write(10);myservo2.write(10);
  Serial.begin(9600);
  delay(500);
  timer = millis() + 2000;
}

void loop() {
  //Serial.println(analogRead(photo2));
  //delay(300);
  if (millis() >= timer) {
    timer += 2000;
    digitalWrite(led, HIGH);
    delay(10);
    digitalWrite(led, LOW);
  }

  if (analogRead(photo) <= 25) {
    myservo.write(100);
    delay(100);
  } else {
    if (analogRead(photo) >= 32) {
      myservo.write(10); delay(300);
    }
  }

    if (analogRead(photo2) <= 25) {
    myservo2.write(100);
    delay(100);
  } else {
    if (analogRead(photo2) >= 32) {
      myservo2.write(10); delay(300);
    }
  }
}

Неактивний

#20 2022-05-28 16:16:01

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Так что нужно то? Подсказка или готовый код? Если подсказывать то, например, можно так, заводишь переменную-счетчик и при каждом срабатывании датчика увеличиваешь на 1 ее значение. При нечетном значении включаешь первую серву, при четном - вторую. Или заводишь переменную-флаг, сработал датчик, флаг поднял, включил первую серву. Сработал опять датчик и флаг поднят - включаешь вторую серву, флаг сбрасываешь и так далее. Если нужен готовый код - что взамен?

#21 2022-05-28 17:46:19

Evhen
Учасник
Зареєстрований: 2022-05-13
Повідомлень: 9

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

потрібен новий код

Неактивний

#22 2022-05-28 18:15:28

г0сть
Гість

Re: Пристрій що забазпечує обертання вала серводвигуна SG90 на 45 град.

Скільки?

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму