Проекты на заказ, от новичка :)(БЕСПЛАТНО )

Тема в разделе "Сделаю проект", создана пользователем ZaikaBlogs, 11 авг 2014.

  1. Извините, я совсем новичок, можете показать примеры моторчиков, хочу понять какая бывает мощность и т.д.
     
  2. ToxaRU

    ToxaRU Гик

    я тоже новичек... и что за 126 скорость непойму)))


    я свой так кручу
    Код (C++):
     void Stop(){  // подпрограмма Остановка
          digitalWrite (IN3, LOW);
          digitalWrite (IN4, LOW);
          analogWrite(ENB,0);
          delay(200);
    }

    void TurnRight(){ // подпрограмма Поворот направо
          digitalWrite (IN3, HIGH);
          digitalWrite (IN4, LOW);
          analogWrite(ENB,255);
          delay(100);
    }

    void TurnLeft(){ // подпрограмма Поворот налево
          digitalWrite (IN3, LOW);
          digitalWrite (IN4, HIGH);
          analogWrite(ENB,255);
          delay(100);
    }


     
     
    Максимус-Бог нравится это.
  3. Ronex

    Ronex Нуб

    Добрый день!
    Можете помочь? - нужен простой скетч для отправки sms. Задача, в принципе, простая. Есть 1 контур ( пусть будет охранный). При разрыве контура sms на 2 тел номера одного содержания. Соответственно, при замыкании на те же номера sms другого содержания.
    Заранее спасибо.
     
  4. Mestniy

    Mestniy Гуру

    Ronex, закажи ему http://forum.amperka.ru/threads/Сделаю-нубский-проект.6400/
     
  5. Максимус-Бог

    Максимус-Бог Убийца матрёшек

    Последнее редактирование: 6 ноя 2015
  6. Woorhees

    Woorhees Нуб

    Здравствуйте, могли ли бы Вы помочь изменить готовый проект под другой семисигментный индикатор на TM1637
     

    Вложения:

    • 1.ino.zip
      Размер файла:
      3 КБ
      Просмотров:
      342
  7. Diemusik

    Diemusik Нуб

    Здравствуйте!

    Необходимо чтобы после включения устройства в сеть через определенное (скажем 20 сек) время нажималась (замыкалась) кнопка брелка управления сигнализацией дома (как брелок управления автосигнализацией 12в) - продолжительность нажатия скажем 0,5 секунды, интенрвал между нажатиями скажем 3 секунды, всего нажатий - скажем 3. И так до следующего включения устройства в сеть.
    Уверен что для этих устройств задача плевая.

    Мне нужно понять какое устройство и что помимо устройства мне понадобится (например реле).

    Ну и в идеале примерный образец кода, чтоб было понятно с чего начинать.

    Спасибо!
     
  8. sanik

    sanik Гик

    Если правильно понял задачу то вот включаем 20 сек пауза 3 нажатия полсекунды через 1сек
    Простейший вариант На вывод 13 подключаешь реле модуль контакты модуля подключаешь к кнопке
    Код (C++):
    int counter = 0;
    int quantityblink = 3; //количество нажатий
    void setup()
    {
      pinMode(13, OUTPUT);
    delay(20000); // пауза перед нажатием
    }

    void loop()
    {
     
      if (counter < quantityblink)
      {
        counter ++;
        digitalWrite(13, HIGH);
        delay(500); // длительность нажатия
        digitalWrite(13, LOW);
        delay(3000); //пауза между нажатиями
      }
      if (counter == quantityblink)
      {
        stopblink();
      }
    }
    void stopblink()
    {

    }
     
    Последнее редактирование: 22 дек 2015
  9. sanik

    sanik Гик

    Попробуй вместо analogWrite(ENB,255); поставить analogWrite(ENB,126); И тогда будет понятно
     
  10. Прошу,на писать программу(скетч) прошивки Ардуино Уно,для управления двумя моторами модель ДП25-1,6-3
    (3000об/мин.27В 0,14А) от джоя Ардуино.Принцип такой:Джой в центральном положении(моторы стоп),Первый мотор.Влево: 5%-поворот влево(ШИМ 25%);полный Влево-ШИМ 100%.Вправо аналогия.только реверс.
    Вверх-вниз.Второй мотор.Угол +/-5% выбран для остоновки двигателей и реверса без бросков.
    В наличии:- Arduino Uno;
    - плата драйвера двигателя L298N;
    - 2 двигателя;
    - аналоговый джойстик;
    блок питания.
     
  11. sanik

    sanik Гик

    Был у меня в загашнике на драйвер A2HEX
    Код (C++):
    const int POS_Y_PIN = 6; // Горизонтальное положение джойстика (аналоговый пин)
    const int POS_X_PIN = 7; // Вертикальное положение джойстика (аналоговый пин)
    const int ENABLE_A = 9; // Включение 1 движка (цифровой пин ШИМ)
    const int ENABLE_B = 3; // Включение 2 движка (цифровой пин ШИМ)
    const int INPUT_1 = 7; // Поворот 1 движка (цифровой пин)
    const int INPUT_2 = 6; // Поворот 1 движка (цифровой пин)
    const int INPUT_3 = 5; // Поворот 2 движка (цифровой пин)
    const int INPUT_4 = 4; // Поворот 2 движка (цифровой пин)
    const int SWITCH = 8; // Кнопка джойстика
    const int MAX_POS = 1023; // VRx и VRy выдают значения от 0 до 1023
    const int MAX_ANGLE = 180; // Джойстик отклоняется на угол 0..180
    const int MAX_VALUE = 255; // Максимальное подаваемое на ШИМ значение
    const int START_VALUE = 20; // Начальное подаваемое на ШИМ значение

    void setup()
    {
      Serial.begin(9600);
      pinMode(ENABLE_A, OUTPUT);
      pinMode(ENABLE_B, OUTPUT);
      pinMode(INPUT_1, OUTPUT);
      pinMode(INPUT_2, OUTPUT);
      pinMode(INPUT_3, OUTPUT);
      pinMode(INPUT_4, OUTPUT);
      pinMode(SWITCH, INPUT);
    }

    void loop()
    {
      // Вычисляем угол поворота джойстика
      int yVal = analogRead(POS_Y_PIN);
      int xVal = analogRead(POS_X_PIN);
      float yAngle = 1.0 * yVal * MAX_ANGLE / MAX_POS; // Переводим выходные данные VRy в угол наклона джойстика (от 0 до 180)
      float xAngle = 1.0 * xVal * MAX_ANGLE / MAX_POS; // Аналогично VRx
      int startValue = 150;
      Serial.print(xAngle);
      Serial.print(" ");
      Serial.println(yAngle);

      // Если джойстик в иначально положении (90 градусов с погрешностью 5)
      if (xAngle > 85 && xAngle < 95)
      {
        // Выключаем движки
        analogWrite(ENABLE_A, 0);
        analogWrite(ENABLE_B, 0);
        digitalWrite(INPUT_1, LOW);
        digitalWrite(INPUT_2, LOW);
        digitalWrite(INPUT_3, LOW);
        digitalWrite(INPUT_4, LOW);
        // Если джойстик отклонен влево
      } else if (xAngle <= 85)
      {
        // Включаем движок
        digitalWrite(INPUT_1, HIGH);
        digitalWrite(INPUT_2, LOW);
        int value = 0;
        xAngle = 85 - xAngle;
        // Подаем на ШИМ значение в зависимости от угла отклонения
        float shift = 1.0 * (MAX_VALUE - START_VALUE) / 85 * xAngle;
        analogWrite(ENABLE_A, START_VALUE + shift);
        Serial.print("ValueX1 = ");
        Serial.println(START_VALUE + shift);
        // Если джойстик отклонен вправо, действуем аналогично
      } else
      {
        digitalWrite(INPUT_1, LOW);
        digitalWrite(INPUT_2, HIGH);
        int value = 0;
        xAngle = xAngle - 95;
        float shift = 1.0 * (MAX_VALUE - START_VALUE) / 85 * xAngle;
        analogWrite(ENABLE_A, START_VALUE + shift);
        Serial.print("ValueY1 = ");
        Serial.println(START_VALUE + shift);
      }

      // Аналогично для 2 движка и вертикального отклонения джойстика
      if (yAngle > 85 && yAngle < 95)
      {
        analogWrite(ENABLE_B, 0);
      } else if (yAngle <= 85)
      {
        digitalWrite(INPUT_3, HIGH);
        digitalWrite(INPUT_4, LOW);
        int value = 0;
        yAngle = 85 - yAngle;
        float shift = 1.0 * (MAX_VALUE - START_VALUE) / 85 * yAngle;
        analogWrite(ENABLE_B, START_VALUE + shift);
        Serial.print("ValueX2 = ");
        Serial.println(START_VALUE + shift);
      } else
      {
        digitalWrite(INPUT_3, LOW);
        digitalWrite(INPUT_4, HIGH);
        int value = 0;
        yAngle = yAngle - 95;
        float shift = 1.0 * (MAX_VALUE - START_VALUE) / 85 * yAngle;
        analogWrite(ENABLE_B, START_VALUE + shift);
        Serial.print("ValueY2 = ");
        Serial.println(START_VALUE + shift);
      }

      delay(100);
    }
     
  12. Спасибо, попробую работоспобность.Только,драйвера такого не смог найти в даташитах,
    что сие за чудо,дайте пожалуйста ссылочку.
     
    Последнее редактирование: 30 янв 2016
  13. sanik

    sanik Гик

    Так это и есть драйвер двух двигателей 2А на L298N
     
  14. Спасибо.:)
     
  15. k4y

    k4y Нуб

    а реально написать прогу для балансировки винта на моторе аэросаней? есть ардуино уно , что докупить? и где купить тройка модуль?
     
    Последнее редактирование: 25 фев 2016
  16. Максимус-Бог

    Максимус-Бог Убийца матрёшек

    тройки тут http://amperka.ru/collection/troyka
    Что должно калибровать(параметры)?
     
  17. k4y

    k4y Нуб

    типа балансировки колеса -определить место биения воздушного винта( даже отбалансированный винт иногда вибрирует на ступице) и навесить или убрать груз
    ставится типа тахометра со световозвращающей пленкой на пропеллер (он определяет 0)
    и замеряется в каком месте детонация ( думаю стоит что нить с тройкой модуль придумать )
     
  18. Максимус-Бог

    Максимус-Бог Убийца матрёшек

    Не думаю, что с этим справиться новичек, тем более за 0руб:)
     
  19. cool1974

    cool1974 Нуб

    Здравствуйте! Нужен проект ,скажем так, табло автобусной остановки. Номер автобуса,конечная станция ,время ожидания. Нужен очень!! Если есть идеи как это еще и озвучить то вообще супер. Имею стандартный набор Матрешка Z , Ардуино UNO , LCD МЭЛТ.
     
    Ае999 нравится это.
  20. Ае999

    Ае999 Нуб

    Уважаемый cool1974,
    Посмотрите наш скэтч. Это часы на Arduino Pro Mini, которые работают от часов реального времени RTC ZS-043 (DS1307 I2C), измеряет температуру датчиком DS18B20, выводит на индикатор LCD МЭЛТ в нижней строке - текущее время, в верхней через 15 сек - дату и температуру. И через каждые 30 минут пищит пьезо-пищалка (http://amperka.ru/product/piezo-buzzer).
    Есть возможность коррекции времени с вводом из компьютера через Serial-USB. Строка корректировки вида YYYY:MM:dd:hh:mm:ss@ 2016:03:13:08:52:14@ Признак завершения строки ввода - символ @.

    [​IMG]

     

    Вложения: