Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » Скетч для измерения сопротивления, и что с ним можно сделать

    Скетч для измерения сопротивления, и что с ним можно сделать



    Автор Instructables под ником CreativeStuff рассказывает, как реализовать на Arduino простейший омметр. Для этого он берёт макетную плату типа breadboard:



    Собственно Arduino:



    Дисплей на HD44780 (КБ1013ВГ6):



    Перемычки "дюпон" или самодельные:



    Переменный резистор на 10 кОм с напаянными тонкими жёсткими выводами (для регулировки констрастности изображения на дисплее):



    Ничего не напоминает? Правильно, всё новое - хорошо забытое старое. Знатоки вспомнят, что это и где:



    Постоянный резистор на 470 Ом:



    И всё это соединяет по такой схеме:



    Поскольку схемы, составленные в программе Fritzing, не очень информативны, мастер составляет расшифровку:

    Вывод дисплея 1 - общий провод

    Вывод дисплея 2 - плюс питания

    Вывод дисплея 3 - подвижный контакт переменного резистора

    Вывод дисплея 4 - вывод D12 Arduino

    Вывод дисплея 5 - общий провод

    Вывод дисплея 6 --вывод D11 Arduino

    Выводы дисплея 7, 8, 9, 10 ни с чем не соединены

    Вывод диспеля 11 - вывод D5 Arduino

    Вывод дисплея 12 - вывод D4 Arduino

    Вывод дисплея 13 - вывод D3 Arduino

    Вывод дисплея 14 - вывод D2 Arduino

    Вывод дисплея 15 - плюс питания

    Вывод дисплея 16 - общий провод

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

    Один из неподвижных контактов переменного резистора мастер соединяет с плюсом питания, второй - с общим проводом. Из образцового и проверяемого резистора составляет делитель напряжения: проверяемый резистор одним выводом к плюсу питания, образцовый - одним выводом к общему проводу. Оставшиеся незанятыми выводы обоих резисторов соединяет вместе и подключает к выводу A0 Arduino. Заливает скетч:

    #include <LiquidCrystal.h>
    
    //LiquidCrystal(rs, sc, d4, d5, d6, d7) 
    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
    
    const int analogPin = 0;
    
    int analogval = 0;
    int vin = 5;
    
    float buff = 0;
    float vout = 0;
    float R1 = 0;
    float R2 = 470;
    
    void setup() {
      lcd.begin(16, 2);
    }
    
    void loop() {
    
      analogval = analogRead(analogPin);
      if (analogval) {
        buff = analogval * vin;
        vout = (buff) / 1024.0;
    
        if (vout > 0.9) {
          buff = (vin / vout) - 1;
          R1 = R2 * buff;
          lcd.setCursor(0, 0);
          lcd.print("  -Resistance-");
          lcd.setCursor(0, 1);
    
          if ((R1) > 999) {
            lcd.print("   ");
            lcd.print(R1 / 1000);
            lcd.print("K ohm");
          }
          else {
            lcd.print("     ");
            lcd.print(round(R1));
            lcd.print(" ohm");
          }
    
          delay(1000);
          lcd.clear();
    
        }
        else {
          lcd.setCursor(0, 0);
          lcd.print("Insert resistor");
          lcd.setCursor(0, 1);
    
        }
      }
    }


    Сопротивление образцового резистора, а также напряжение питания рекомендуется измерить поточнее (конечно, при измерении образцовый резистор надо временно извлечь), а затем внести результаты измерений в соответствующие строки в начале скетча. Источник питания взять с хорошей стабилизацией выходного напряжения. Программа вычисляет сопротивление по формуле:

    R2 = Vout * R1 / (Vin – Vout),

    выведенной из формулы:

    Vout = Vin * R2 / (R1 + R2),

    где R1 - образцовое сопротивление, R2 - измеряемое, Vin - напряжение питания, Vout - напряжение на средней точке делителя.

    Остаётся удалить breadboard, выполнить все соединения пайкой и перенести самоделку в корпус. Но в таком виде она малопрактична, так как дублирует функцию омметра, имеющуюся в мультиметре. Переделав скетч и применив прецизионные источник питания и образцовый резистор, можно применить конструкцию, например, для сортировки резисторов по точности на их производстве. Чтобы при подключении резистора на экране дисплея сразу появлялась информация о том, к какой из пяти групп отнести компонент: 1, 2, 5, 10 или 20%.

    Источник (Source)
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.

    Система автополива для комнатных растений pumperino

    Клиент для openweathermap.org на основе Wemos d1 mini

    10
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    10
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    10
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 10 из 10 (голосов: 2 / История оценок)

    Добавить комментарий

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Опрос
    А Вы уже рассказали на сайте о своей самоделке?

    Последние комментарии

    Все комментарии