Материалы к набору датчиков для Arduino-проектов (20 штук)

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

А если вы только планируете приобрести данный набор, то его можно приобрести в жёлтом, синем, зелёном и бирюзовом цветах.

Содержание

Датчик влажности почвы

Датчик влажности почвы в комплекте с платой для настройки. Принцип работы датчика основан на изменении сопротивления на щупах, которые погружаются в почву. Датчик имеет аналоговый и цифровой выводы, что расширяет возможности подключения. Небольшие габариты и возможность настройки чувствительности датчика делают его очень удобным в применении для систем автоматического полива. Напряжение питания датчика 3.3 – 5 В.

Датчик влажности почвы

Модуль датчика состоит из двух частей:  контактного щупа и датчика, в комплекте идут провода для подключения.. Между двумя электродами щупа создаётся небольшое напряжение. Если почва сухая, сопротивление велико и ток будет меньше. Если земля влажная — сопротивление меньше, ток — чуть больше. По итоговому аналоговому сигналу можно судить о степени влажности. Щуп соединен с датчиком по двум проводам. Кроме контактов соединения с щупом,  датчик имеет четыре контакта для подключения к контроллеру.

  • Vcc – питание датчика;
  • GND – земля;
  • A0 — аналоговое значение;
  • D0 – цифровое значение уровня влажности.

Датчик построен на основе компаратора, который выдает напряжение на выход D0 по принципу: влажная почва – низкий логический уровень, сухая почва – высокий логический уровень. Уровень определяется пороговым значением, которое можно регулировать с помощью потенциометра. На вывод A0 подается аналоговое значение, которое можно передавать в контроллер для дальнейшей обработки, анализа и принятия решений. Датчик YL-38 имеет два светодиода, сигнализирующих о наличие поступающего на датчик питания и уровня цифрового сигналы на выходе D0. Наличие цифрового вывода D0 и светодиода уровня D0 позволяет использовать модуль автономно, без подключения к контроллеру.

Схема подключения датчика влажности почвы

Схема подключения датчика влажности почвы

Код для подключения датчика влажности почвы

В данном примере показано, как считать код с датчика влажности почвы через Arduino и вывести информацию в последовательный порт (вывод будет виден в мониторе порта Arduino IDE).

#define SOILMOISTURE_SENSOR A0 // подключение к пину А0
void setup() { 
    Serial.begin(9600); // вывод данных в монитор порта
}

void loop() {
    int sensorValue = analogRead(SOILMOISTURE_SENSOR); // считывание данных с аналогового порта А0
    Serial.print("Analog value: "); // фраза, выводимая перед показаниями датчика
    Serial.println(sensorValue); // данные в монитор порта
    delay(1000); // задержка 1 секунда
}

Скачать файл с кодом, формат .INO: Датчик влажности почвы

Датчик дождя

Датчик дождя с компаратором и соединительными проводами в комплекте. Плата датчика представляет собой большой резистор, который изменяет свое сопротивление по мере попадания на него воды. На плате с компаратором предусмотрены аналоговый и цифровой выводы. Напряжение питания датчика 3.3 – 5 В.

Когда капля попадает на чувствительную к влаге пластину, информация об этом подается на плату датчика, а далее фиксируется на Arduino.

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

Схема подключения датчика дождя

На изображении ниже представлена схема подключения датчика дождя к плате Arduino Uno.Схема подключения датчика дождя

Код для подключения датчика дождя

В примере ниже показано, как подключить вывод датчика дождя к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

#define ANALOG_RAINSENSOR A0 // датчик на аналоговом пине A0
#define DIGITAL_RAINSENSOR 3 // датчик на цифровом пине 3

void setup() {
    Serial.begin(9600); // подключение монитора порта
}

void loop() {
 // аналоговый пин А0 - выведение данных
 int analogValue = analogRead(ANALOG_RAINSENSOR); // считываем аналоговые данные датчика
 Serial.print("Analog value:"); // фраза перед значением данных
 Serial.println(analogValue); // выведение данных в монитор порта
 delay(1000); // задержка 1 секунда

 // цифровой пин 3 - выведение данных
 int digitalValue = digitalRead(DIGITAL_RAINSENSOR); // данные считываются с цифрового порта
 Serial.print("Digital value:"); // фраза перед значением данных
 Serial.println(digitalValue); // данные в мониторе порта
 delay(1000); // задержка 1 секунда
}

Скачать файл с кодом, формат .INO: Датчик дождя

Датчик пыли GP2Y1010AU0F РМ2.5

Оптический датчик пыли Sharp GP2Y1010AU0F эффективен в обнаружении очень мелких частиц, и обычно используется в системах очистки воздуха. Инфракрасный диод и фототранзистор расположены по диагонали и способствуют обнаружению отраженного света частиц пыли в воздухе. Датчик имеет очень низкое энергопотребление (20 мА максимально, 11 мА среднее). Выходной сигнал датчика представляет собой аналоговое напряжение пропорциональное измеренной плотности пыли.

Схема подключения датчика пыли GP2Y1010AU0F РМ2.5

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

Код для подключения датчика пыли GP2Y1010AU0F РМ2.5

В примере ниже показано, как подключить вывод датчика пыли GP2Y1010AU0F к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

 

int dustPin = 0;
int dustVal = 0;

int ledPower = 2;
int delayTime = 280;
int delayTime2 = 40;
float offTime = 9680;
void setup() {
  Serial.begin(9600);
  pinMode(ledPower, OUTPUT);
  pinMode(2, OUTPUT);
}

void loop() {
  // ledPower is any digital pin on the arduino connected to Pin 3 on the sensor
  digitalWrite(ledPower, LOW); // power on the LED
  delayMicroseconds(delayTime);
  dustVal = analogRead(dustPin); // read the dust value via pin 5 on the sensor
  delayMicroseconds(delayTime2);
  digitalWrite(ledPower, HIGH); // turn the LED off
  delayMicroseconds(offTime);

  delay(1000);
  Serial.println(dustVal);
}

Скачать файл с кодом, формат .INO: Датчик пыли

Датчик освещённости пороговый (без аналогового выхода)

Модуль датчика света на основе фоторезистора. Датчик имеет два управляющих выхода — аналоговый, значение пропорционально температуре, и цифровой, выдающий 0 или 1. Величина освещения, при которой происходит срабатывание датчика, регулируется подстроечным резистором.
Легко подключается к Arduino и позволяет создавать устройства, управляемые светом.

Схема подключения датчика освещённости порогового (без аналогового выхода)

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

Код для подключения датчика освещенности порогового (без аналогового выхода)

В примере ниже показано, как подключить вывод датчика освещенности порогового (без аналогового выхода) к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

void setup() {
  pinMode(13, OUTPUT);
  pinMode(A1, INPUT);
}

void loop() {
   // считываем данные с датчика и выводим на монитор порта
   if (digitalRead(A1) == HIGH) {
      digitalWrite (13, LOW);
  }
   if (digitalRead(A1) == LOW) {
      digitalWrite (13, HIGH);
  }
}

Скачать файл с кодом, формат .INO: Датчик освещенности пороговый

Датчик пламени пороговый

Инфракрасный датчик огня (пламени) используется в проектах пожарной сигнализации. Датчик представляет собой плату с компаратором и инфракрасным диодом, который реагирует на длину волны в диапазоне 760-1100 нм.

Основные характеристики:

  1. расстояние срабатывания: до 1 м;
  2. угол обнаружения: до 60°;
  3. напряжение питания: 3.3 – 5 В.

Схема подключения датчика пламени порогового

Ниже на изображении представлена схема подключения датчика пламени.

Код для подключения датчика пламени порогового

В примере ниже показано, как подключить вывод датчика пламени порогового к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

#define DIGITAL_FIRE_SENSOR 2 // цифровой пин 2  
#define ANALOG_FIRE_SENSOR A0 // аналоговый пин на А0  
  
void setup() {  
 pinMode(DIGITAL_FIRE_SENSOR, INPUT); // определяем пины как входы 
 pinMode(ANALOG_FIRE_SENSOR, INPUT);  
 Serial.begin(9600); // подключение монитора порта 
}  
  
void loop() {  
  int digitalValue = digitalRead(DIGITAL_FIRE_SENSOR); // получение данных 
  Serial.println(digitalValue); // данные в монитор порта 
  delay(100); // задержка 0.1 секунда   
  
  int analogValue = analogRead(ANALOG_FIRE_SENSOR);  
  Serial.println(analogValue);  
  delay(100);  
}  

Скачать файл с кодом, формат .INO: Датчик огня

Модуль датчика температуры DS18B20

Основной компонент – микросхема DS18B20, она преобразует температуру корпуса в информацию передаваемую по последовательной двухпроводной шине данных 1-Wire. Также на шину можно установить несколько таких датчиков используя один вывод.

Несмотря на свой небольшой размер, модуль датчика обладает высокой эффективностью и может снимать показания температуры окружающей среды с точностью до 0,5 °С.

Также на плате расположено крепежное отверстие диаметром 2,54 мм, которое поможет с легкостью установить его на корпус вашего устройства.

Схема подключения модуля датчика температуры DS18B20

Ниже представлена схема подключения модуля датчика температуры DS18B20 к плате Arduino Uno.

Обращаем ваше внимание, что для датчиков в капсуле и без нее подключение одинаковое.

Код для подключения модуля датчика температуры DS18B20

Ниже представлен простой код для DS18B20 в любом форм-факторе (сенсор, на плате, в герметичном корпусе), где с датчика выведены 3 пина подключения.

 



// Подключение библиотек
#include <DallasTemperature.h>
#include <OneWire.h>
 
// Определяем пин шины данных OneWire 
#define ONE_WIRE_BUS 2
 
// Задаем пин шины данных OneWire
OneWire oneWire(ONE_WIRE_BUS);
 
DallasTemperature sensors(&oneWire);
 
void setup(void) 
{  
 Serial.begin(9600); 
 sensors.begin(); 
} 

void loop(void) 
{
 Serial.print("Запрос температуры..."); 
 sensors.requestTemperatures(); // Посылаем команду для считывания температуры
 Serial.println("ГОТОВО"); 
 Serial.print("Температура: "); 
 Serial.println(sensors.getTempCByIndex(0)); // индекс "0" означает, работает первое устройство на шине

 delay(1000); 
}

Скачать файл с кодом, формат .INO: Датчик температуры ds18b20

Датчик вибрации пороговый

Пороговый датчик вибрации представляет собой датчик SW-18010P, установленный на плате с компаратором. На плате предусмотрены цифровой и аналоговый выводы для упрощения подключения.

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

На плате датчика есть два индикаторных светодиода: красный – питание; зеленый – обнаружение вибрации. Напряжение питания: 5 В.

Схема подключения датчика вибрации порогового

Ниже на изображении представлена схема подключения датчика вибрации.

Код для подключения датчика вибрации порогового

В примере ниже показано, как подключить вывод датчика вибрации порогового к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

 #define VIBRATION_SENSOR A0 // датчик на пине А0

void setup() {
Serial.begin(9600); // включение монитора порта
}

void loop() {
int sensorValue = analogRead(VIBRATION_SENSOR);
Serial.print("Analog value:");
Serial.println(sensorValue); // данные в мониторе порта
delay(500); // задержка 0.5 секунд
}

Скачать файл с кодом, формат .INO: Датчик вибрации

Датчик движения HC-SR501

Датчик используется в охранных системах, сигнализациях и прочих проектах, предполагающих обнаружение инфракрасного сигнала.

Работает на расстоянии до 7 метров, угол обнаружения – до 120°. Для эффективной работы датчик должен располагаться вдали от прямых источников света и ветра.

Схема подключения датчика движения HC-SR501

Ниже на изображении представлена схема подключения датчика движения.

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

Код для подключения датчика движения HC-SR501

В примере ниже показано, как подключить вывод датчика движения HC-SR501 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).


#define PIR 3 // датчик на пин 3

void setup() {
pinMode(PIR, INPUT); // определяем пин как вход
Serial.begin(9600); // подключение монитора порта
}

void loop() {
int pirValue = digitalRead(PIR); // считываение цифровых данных
Serial.println(pirValue); // данные в мониторе порта
delay(100); // задержка 0.1 секунда
}

Скачать файл с кодом, формат .INO: Датчик движения HC-SR501

Датчик звука пороговый с аналоговым выходом KY-037

Модуль датчика звука KY-037, с аналоговым и цифровым выходами. Чем выше уровень шума, тем выше уровень показаний датчика на аналоговым выходе, цифровой выход — выдает 0 или 1 в зависимости от уровня шума. Уровень звука, при котором на цифровом выходе будет высокий сигнал, задается переменным резистором на плате. Благодаря возможности регулировки частоты, можно настроить его работу под любые задачи.

  • A0 — аналоговый выход
  • D0 — цифровой выход
  • VCC — питание модуля (5В)
  • GND — земля

Схема подключения датчика звука порогового с аналоговым выходом KY-037

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

Код для подключения датчика звука порогового с аналоговым выходом KY-037

В примере ниже показано, как подключить вывод датчика звука порогового с аналоговым выходом KY-037 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

const int digital = 2; // Цифровой вход пин 2
const int analog = A0; // Аналоговый вход пин A0
 
 
void setup()
{
  pinMode(digital, INPUT);
  Serial.begin(9600);
}
 
void loop()
{
  Serial.print("Digital: ");
  Serial.print(digitalRead(digital)); // Цифровой сигнал с датчика
  Serial.print(", Analog: ");
  Serial.println(analogRead(analog)); // Аналоговый сигнал с датчика
  delay(50);
}

Скачать файл с кодом, формат .INO: Датчик звука ky-037

Датчик линии TCRT5000 с регулируемым порогом

Модуль инфракрасного датчика линии на основе TCRT5000. Реагирует на появление в контролируемой зоне темной отражающей поверхности. При отсутствии поверхности, или в случае, если поверхность светлая, датчик выдает логический 0, при появлении поверхности выдает 1. Может использоваться для ориентации различных роботов (для перемещения по темной линии).

  • Напряжение питания: 3.3-5В
  • Потребляемый ток: 10мА

Схема подключения датчика линии TCRT5000 с регулируемым порогом

Ниже на изображении представлена схема подключения датчика линии.

Код для подключения датчика линии TCRT5000 с регулируемым порогом

В примере ниже показано, как подключить вывод датчика линии TCRT5000 с регулируемым порогом к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).


int dig_signal = 2; // контакт DO подключен к 2-му цифровому пину Arduino
int an_signal = 0; // контакт AO подключен к 0-му аналоговому пину Arduino

void setup() {
  Serial.begin(9600);
  pinMode(dig_signal, INPUT);
  pinMode(an_signal, INPUT);
}

void loop() {

  if (digitalRead(dig_signal)) { // Датчик не срабатывает
    Serial.println("White color");
  } else { // Датчик срабатывает
    Serial.println("Black color");
  }
  Serial.println("Analog data is: " + String(analogRead(an_signal)));
  delay(200);
}

Скачать файл с кодом, формат .INO: Датчик TCRT5000

Датчик препятствия пороговый

Датчик препятствия чаще всего устанавливается на двигающихся роботов, также может быть использован в проектах сигнализации. На плате размещены ИК-диод и приемник, светодиоды питания и срабатывания, а также компаратор для регулировки порогового значения обнаружения.

Основные характеристики:
1. дистанция обнаружения: 2-30 см;
2. угол обнаружения: 35°;
3. напряжение питания: 3.3 – 5 В.

Схема подключения датчика препятствий порогового

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

Код для подключения датчика препятствий порогового

В примере ниже показано, как подключить вывод датчика препятствий порогового к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

 #define LINE 2 // датчик на пине 2

void setup() {
Serial.begin(9600); // подключение монитора порта
pinMode(LINE, INPUT); // пин LINE - вход
}

void loop() {
int barrier = digitalRead(LINE); // получение данных
Serial.println(barrier); // данные в монитор порта
delay(100); // задержка 0.1 секунда
}

Скачать файл с кодом, формат .INO: Датчик препятствия

Датчик пульса

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

Схема подключения датчика пульса

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

Код для подключения датчика пульса

В примере ниже показано, как подключить вывод датчика пульса к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE). Перед загрузкой кода в плату нужно установить библиотеку PulseSensor Playground Library через менеджер библиотек .

int PulseSensorPurplePin = 0; // выход Ардуино А0 
int LED13 = 13; // светодиод на плате 
int Signal;                 
int Threshold = 550; // значение для данных сенсора, после которого подаётся сигнал            

void setup(){ 
    pinMode(LED13, OUTPUT);
    Serial.begin(9600);
}

void loop(){ 
    Signal = analogRead(PulseSensorPurplePin); // чтение данных с сенсора 
    Serial.println(Signal); 
    if (Signal > Threshold){ 
        digitalWrite(LED13, HIGH); // если значение выше "550", то сигнал на светодиод 
    } else { 
        digitalWrite(LED13, LOW); 
    } 
    delay(10); 
} 

Скачать файл с кодом, формат .INO: Датчик пульса

Модуль весов HX711

Двухканальный 24 bit АЦП модуль подключения резистивных датчиков давления (тензодатчиков), построен на чипе HX711. Простой в подключении (всего два сигнальных провода) и использовании. Имеются готовые библиотеки для использования с контроллерами Arduino.

 Для преобразования сигналов с датчика его используется в связке с АЦП модулем на базе интегральной микросхемы HX-711. Его подключение к контроллеру (например, к плате Arduino) проходит по четырем контактам:
«GND» — заземление (к контакту «GND» на плате)
«DT» (DATA/OUT) — к цифровому контакту (его номер прописывается в коде)
«SCK» (CLOCK/IN) — к цифровому контакту (его номер прописывается в коде)
«VCC» — подается напряжение от 2,6 до 5,5 В (можете использовать контакты «+3,3V» или «+5V» на плате Arduino)

Схема подключения модуля весов HX711

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

Код для подключения модуля весов HX711

В примере ниже показано, как подключить вывод модуля весов HX711 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

 // Подключение библиотеки

#include "HX711.h"
// создание экземпляра объекта
// 15(A1) – пин подключения DT
// 14(A0) – пин подключения SCK

HX711 weight(15, 14);

// значение калибровочного коэффициента (делать подбор для своих весов)
float scale_calibration = 64.80;

// переменные
float weight_units;
float weight_gr;


void setup() {
Serial.begin(9600);
scale.set_scale();
//Сбрасываем на 0
scale.tare();
//Применяем калибровку
scale.set_scale(scale_calibration);
}



void loop() {
Serial.print("Read data … ");

// усредняем показания
for(int i = 0;i < 10; i ++) units =+ scale.get_units(), 10;
weight_units / 10;

// перевод из унций в граммы
weight_gr = weight_units * 0.035274;

// вывод данных в последовательный порт
Serial.print("weight_gr =");
Serial.print(weight_gr);
Serial.println(" gr");
}

Скачать файл с кодом, формат .INO: Модуль весов HX711

Датчик алкоголя MQ-3

Датчик газа, построенный на базе газоанализатора MQ-3 позволяет обнаруживать наличие паров спирта: от парфюмерии или спиртных напитков, в воздухе или дыхании.

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

В газоанализатор встроен нагревательный элемент, который необходим для химической реакции. Поэтому во время работы сенсор будет горячим, это нормально. Для получения стабильных показаний новый сенсор необходимо один раз прогреть (оставить включённым) в течение 24 часов. После этого стабилизация после включения будет занимать около минуты.

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

Код для подключения датчика алкоголя MQ-3

В примере ниже показано, как подключить вывод датчика алкоголя MQ-3 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

const int analogSignal = A0; //подключение аналогового сигналоьного пина
const int digitalSignal = 8; //подключение цифрового сигнального пина
boolean noGas; //переменная для хранения значения о присутствии газа
int gasValue = 0; //переменная для хранения количества газа
 
void setup() {
  pinMode(digitalSignal, INPUT); //установка режима пина
  Serial.begin(9600); //инициализация Serial порта
 
}
 
void loop() {
  noGas = digitalRead(digitalSignal); //считываем значение о присутствии газа
  gasValue = analogRead(analogSignal); // и о его количестве
 
  //вывод сообщения
  Serial.print("There is ");
  if (noGas) Serial.print("no gas");
  else Serial.print("gas");
  Serial.print(", the gas value is ");
  Serial.println(gasValue);
 
  delay(1000); //задержка 1 с

Скачать файл с кодом, формат .INO: Датчик паров спирта MQ-3

Датчик метана MQ-4

Модуль датчика газа MQ-4. Позволяет детектировать присутствие в воздухе бутана, пропана, метана и дыма. Он имеет высокую чувствительность и малое время отклика. Чувствительность может быть настроена с помощью потенциометра на плате датчика. Данный модуль может быть легко подключен к Arduino-совместимому контроллеру.

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

Схема подключения датчика метана MQ-4

На изображении ниже представлена схема подключения датчика газа MQ-4.

Код для подключения датчика метана MQ-4

В примере ниже показано, как подключить вывод датчика метана MQ-4 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

// контакт подключения аналогового вывода MQ4
const int analogInPin = A1;
const int ledPin = 8; // контакт подключения светодиода
int sensorValue = 0; // переменная для хранения значения датчика
void setup()
{
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);
}
void loop()
{
  sensorValue = analogRead(analogInPin); // получить значение
  if (sensorValue >= 750) // превышение уровня
    digitalWrite(ledPin, HIGH); // зажечь светодиод превышения
  else
    digitalWrite(ledPin, LOW); // потушить светодиод превышения
  // вывести значение в последовательный порт
  Serial.print("sensor = " );
  Serial.println(sensorValue); // пауза перед следующим измерением
  delay(1000);
} 

Скачать файл с кодом, формат .INO: Датчик метана MQ-4

Водонепроницаемый ультразвуковой дальномер JSN-SR04T с проводом

Главным достоинством ультразвукового датчика расстояния JSN-SR04T является герметичный корпус, позволяющий использовать датчик в тех условиях, в которых его аналоги, например, HS-SR04, функционировать не могут. Принцип измерения основывается на отправке звукового сигнала частотой 40 кГц и подсчете времени, за которое он вернется обратно, будучи отраженным от препятствия. Работать с датчиком можно посредством стандартной библиотеки Arduino Ultrasonic.h, либо без нее.

  • 5V – «+» питания
  • GND – «земля», «-» питания
  • Trig – цифровой вход. Для запуска измерения необходимо подать на этот вход логическую единицу на 10 мкс.
  • Echo – цифровой выход, на котором устанавливается «высокий уровень» на время, за которое отправленный ранее сигнал вернулся к датчику.

Схема подключения водонепроницаемого ультразвукового дальномера JSN-SR04T с проводом

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

Код для подключения водонепроницаемого ультразвукового дальномера JSN-SR04T с проводом

В примере ниже показано, как подключить вывод ультразвукового дальномера JSN-SR04T к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).


int echoPin = 2; // назначение цифрового вывода для Echo  
int trigPin = 3; // назначение цифрового вывода для Trig  
   
void setup() {   
    Serial.begin (9600); // подключение монитора порта для  выведения данных  
    pinMode(trigPin, OUTPUT); // генерируется импульс для   измерения расстояния  
    pinMode(echoPin, INPUT); // завершение импульса,         считывание дистанции  
}   
   
void loop() {   
    int duration, cm; // назначение меры длины в см  
    digitalWrite(trigPin, LOW); // подача низкого сигнала на пин trigPin  
    delayMicroseconds(2); // пауза 2 микросекунды  
    digitalWrite(trigPin, HIGH); // подача высокого сигнала на пин trigPin  
    delayMicroseconds(10); // пауза 10 микросекунд  
    digitalWrite(trigPin, LOW); // подача низкого сигнала  на пин trigPin  
      
    duration = pulseIn(echoPin, HIGH); // pulseIn - длина положительного импульса на пине echoPin в микросекундах  
    cm = duration / 58; // формула для выведения корректных данных в см  
    Serial.print(cm); // выведение данных в монитор порта в см  
    Serial.println(" cm"); // условия выведения надписи в монитор порта, добавление к значению меры длины  
    delay(1000); // пауза между измерениями 1 секунда  
}  

Скачать файл с кодом, формат .INO: Ультразвуковой дальномер

Датчик Холла пороговый

Датчик Холла (датчик положения) представляет собой датчик магнитного поля. Работа устройства основана на эффекте Холла. Данный эффект основан на следующем принципе: если поместить определенный проводник с постоянным током в магнитное поле, то в таком проводнике возникает поперечная разность потенциалов (напряжение Холла). Другими словами, устройство служит для измерения напряжённости магнитного поля.

Сфера применения датчиков Холла очень широка. Устройство используется в таких схемах, где требуется бесконтактное измерение силы тока. Что касается автомобилей, датчик Холла служит для измерения угла положения распределительного или коленчатого вала, а также нашел свое применение в системе зажигания, указывая на момент образования искры.

Схема подключения датчика Холла порогового

На изображении ниже представлена схема подключения датчика Холла.

Код для подключения датчика Холла порогового

В примере ниже показано, как подключить датчик Холла через цифровой порт контроллера.

 

int led = 13 ; // назначение пина светодиода
int hallPin = 2 ; // назначение пина датчика
int value ; // переменная для хранения значения с датчика
 
void setup ()
{
  pinMode (led, OUTPUT);   
  pinMode (hallPin, INPUT); 
  //Serial.begin (9600);             // Задаем скорость передачи данных
}
 
void loop ()
{
  value = digitalRead (hallPin) ; // чтение значения с датчика
  if (value == LOW) // когда имеется магнитное поле светодиод горит 
  {
    digitalWrite (led, HIGH);
  }
  {
    digitalWrite (led, LOW);
  }
}

Скачать файл с кодом, формат .INO: Датчик холла пороговый

Плата с герконом пороговая

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

Чувствительность модуля регулируется триммером на плате.

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

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

 

Код для подключения платы с герконом пороговой

В примере ниже показано, как подключить вывод датчика движения HC-SR501 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

int switchPin = 2; // к выводу 2 подключён геркон
int ledPin = 13; // к пину 13 подключён встроенный светодиод

void setup() {
pinMode(switchPin, INPUT); // задаём вывод 2 в качестве входа (будем считывать с него)
digitalWrite(switchPin, HIGH); // активируем внутренний подтягивающий резистор вывода
pinMode(ledPin, OUTPUT); // задаём вывод 13 в качестве выхода
Serial.begin(9600); // задействуем последовательный порт
}

void loop() {
int g = digitalRead(switchPin); // считываем показания с геркона
digitalWrite(ledPin, !g); // инвертированные показания записываем в порт со светодиодом
Serial.println(g); // посылаем в последовательный порт значения с геркона
//когда геркон замкнут, значение "0" (LOW), когда разомкнут - "1" (HIGH)
delay(20); // повторяем цикл через 20 мсек
}

Скачать файл с кодом, формат .INO: Модуль с герконом

Ультразвуковой дальномер HC-SR04

Ультразвуковой дальномер (датчик расстояния) HC-SR04. Генерирует звуковые импульсы на частоте 40 кГц, и по отраженному сигналу определяет расстояние до объекта. Программно сравнивая показания датчика, можем определить, перемещается ли объект, скорость и направление движения.

В отличие от инфракрасных датчиков расстояния не зависит от освещенности и цвета объекта. Однако и у него есть недостатки — плохо реагирует на слишком тонкие объекты, волосы, пух.

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

Угол измерения 30°, наиболее эффективный — 15°. Прозрачность объекта не имеет значения.

Дальномер

UNO

Trig

Цифровой вход 3

Echo

Цифровой вход 2

GND

GND

VCC

5 V

Схема подключения ультразвукового дальномера HC-SR04

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

Код для подключения ультразвукового дальномера HC-SR04

В примере ниже показано, как подключить вывод ультразвукового дальномера HC-SR04 к монитору последовательного порта платы (вывод можно посмотреть в мониторе порта Arduino IDE).

 int echoPin = 2; // назначение цифрового вывода для Echo
int trigPin = 3; // назначение цифрового вывода для Trig

void setup() {
Serial.begin (9600); // подключение монитора порта для выведения данных
pinMode(trigPin, OUTPUT); // генерируется импульс для измерения расстояния
pinMode(echoPin, INPUT); // завершение импульса, считывание дистанции
}

void loop() {
int duration, cm; // назначение меры длины в см
digitalWrite(trigPin, LOW); // подача низкого сигнала на пин trigPin
delayMicroseconds(2); // пауза 2 микросекунды
digitalWrite(trigPin, HIGH); // подача высокого сигнала на пин trigPin
delayMicroseconds(10); // пауза 10 микросекунд
digitalWrite(trigPin, LOW); // подача низкого сигнала на пин trigPin

duration = pulseIn(echoPin, HIGH); // pulseIn - длина положительного импульса на пине echoPin в микросекундах
cm = duration / 58; // формула для выведения корректных данных в см
Serial.print(cm); // выведение данных в монитор порта в см
Serial.println(" cm"); // условия выведения надписи в монитор порта, добавление к значению меры длины
delay(1000); // пауза между измерениями 1 секунда
} 

Скачать файл с кодом, формат .INO: Ультразвуковой дальномер

Коробка пластиковая цветная, 21 ячейка

Бокс для хранения модулей и компонентов — это полезная и удобная составляющая нашего набора.

Небольшие модули и радиодетали могут быть удобно размещены в коробочке. Бокс плотно закрывается, поэтому детали будет сложно потерять. Коробка состоит из прозрачной крышки, позволяющей видеть содержимое, с замком и основания, которое разделено несъемными перегородками на двадцать одну ячейку для хранения принадлежностей.

Коробочка сделана из прочного пластика, поэтому не боится падений с небольшой высоты. Клипсы, закрывающие крышку, не позволят компонентам выпасть из бокса.

Яркий цвет коробочки привлекает внимание, а в комплекте с компонентами весь набор станет отличным подарком.

Габариты бокса (ДШВ): 280х185х50 мм