Вращающийся модуль энкодера 360 градусов KY-040 для модуля Aduino Aduino

Вес товара: ~0.7 кг. Указан усредненный вес, который может отличаться от фактического. Не включен в цену, оплачивается при получении.
Описание товара
- Информация о товаре
- Фотографии
Вращающийся модуль энкодера360Тратить KY-040 FOR ARDUINO Arduinoмодуль
Arduino Вращающийся модуль энкодера
Рабочее напряжение:5V
Круг пульса:20
&Nbsp; вращающийся энкодер может подсчитать количество выходного импульса в положительном направлении и вращения обратного направления посредством вращения. Количество вращения не похоже на потенциальный счетчик. Это количество вращения не ограничено.С помощью кнопок на роторном энкодере вы можете сбросить в начальное состояние, то есть0СТАРЬ СЧЕТ.
Рабочий принцип Введение:
  Incremental Encoder - это вращающийся датчик, который преобразует вращение в серию цифровых импульсных сигналов.Эти импульсы используются для контроля углового смещения.существоватьEltraПреобразование угла сдвига в энкодере использует принцип фотоэлектрического сканирования.Система считывания основана на вращении диска радиального балла (кодовый диск), состоящий из окон альтернативного света и непрозрачных окон. ЭссенцияПриемник покрывает слой дифракционной решетки, который имеет ту же ширину окна, что и код.Работа приемника состоит в том, чтобы почувствовать изменение, генерируемое дисковым кольцом диска, а затем преобразует изменение света в соответствующее электрическое изменение.Затем увеличьте сигнал низкого уровня до более высокого уровня и генерируйте квадратный импульс без каких -либо помех, который должен обрабатывать с помощью электронных схем.Система чтения обычно использует дифференциальные методы.180°Различные сигналы сравниваются, чтобы улучшить качество и стабильность выходного сигнала.Чтение формируется на основе разницы между двумя сигналами, что устраняет помехи.
ИНКРЕМЕНТАЛЬНЫЙ ЭНКОДЕР:
  инкрементный энкодер дает две квадратные волны, их фазовое разность90°Обычно называетсяAКаналы иBряд.Один из каналов дает информацию, связанную с скоростью, и в то же время сравнение через два канала для получения информации в направлении вращения.Есть также специальный сигнал под названиемZИли нулевой канал, этот канал дает абсолютную нулевую позицию энкодера. Этот сигнал представляет собой квадратную волну иAЦентральная линия квадрата канала перекрывается.
  Инкрементная точность энкодера зависит от двух факторов: механические и электрические факторы. Эти факторы включают: ошибку ошибки решетки, диск, эксцентриситет диска, эксцентриситет подшипника, ошибка введения электронных устройств считывания и точность оптических деталей.Блок измерения, который определяет точность кодера, является степенью электричества, а точность кодера определяет баллы импульса, генерируемые энкодером.Ниже 360° электрическое число, чтобы указать вращение механического вала, и вращение вала должно быть полным циклом.Вам нужно знать, какой механический угол эквивалентен электрическим360Степень, вы можете использовать следующие формулы для расчета: электрический360 =техника360°/n&град; пульс/изменять
&Ошибка кодировщиков NBSP; представлена максимальным смещением двух непрерывных импульсных волн под углом электрического угла.Ошибка существует в любом энкодере, который вызван вышеупомянутыми факторами.Максимальная ошибка энкодера Eltra - это±25Электрический угол (при любом условиях, которое было объявлено) эквивалентен смещению номинального значения±7%Что касается разницы в фазах90&Град; (электричество) максимальное отклонение двух каналов двух каналов составляет±35Электричество эквивалентно смещению номинальной стоимости±10%о.
UVWСигнал инкрементного энкодера
  В дополнение к традиционному энкодеру есть некоторые инкрементные кодеры, интегрированные с другими электрическими выходными сигналами.Инкрементный энкодер, интегрированный с сигналом UVW, является экземпляром, который обычно используется для обмена обратной связью с сервоприводов AC.Эти сигналы магнитного полюса обычно появляются в сервоприводном двигателе,UVWСигнал обычно разработан функцией исходного магнитного оригинала.существоватьEltraВ кодере этиUVWСигнал генерируется оптическими методами и появляется в форме трех квадратных волн.120&Град;.Чтобы облегчить запуск двигателей, управление буттером, используемым двигателем, требует этих правильных сигналов.ЭтиUVWМагнитный импульс может много раз повторять при вращении механической оси, потому что они напрямую зависят от количества подключенных моторных магнитных чисел, и для4,6Или больше полярных двигателейUVWСигнал
***************************************************************************
ARDUINOТестовый код:
int redPin = 2;
int yellowPin = 3;
int greenPin = 4;
int aPin = 6;
int bPin = 7;
int buttonPin = 5;
int state = 0;
int longperiod = 5000;
int shortperiod = 700;
int targetCount = shortPeriod;
int count = 0;
void setup()
{
pinMode(aPin, INPUT);
pinMode(bPin, INPUT);
pinMode(buttonPin, INPUT);
pinMode(redPin, OUTPUT);
pinMode(yellowPin, OUTPUT);
pinMode(greenPin, OUTPUT);
}
void loop()
{
count++;
if (digitalRead(buttonPin))
{
setLights(HIGH, HIGH, HIGH);
}
else
{
int change = getEncoderTurn();
if (newPeriod>= 1000&& newPeriod<= 10000)
{
longPeriod = newPeriod;
}
if (count> targetCount)
{
setState();
count = 0;
}
}
delay(1);
}
int getEncoderTurn()
{
// return -1, 0, or +1
static int oldA = LOW;
static int oldB = LOW;
int result = 0;
int newA = digitalRead(aPin);
int newB = digitalRead(bPin);
if (newA != oldA newB != oldB)
{
// something has changed
if (oldA == LOW&& newA == HIGH)
{
result = -(oldB * 2 - 1);
}
}
oldA = newA;
oldB = newB;
return result;
}
int setState()
{
if (state == 0)
{
setLights(HIGH, LOW, LOW);
targetCount = longPeriod;
state = 1;
}
else if (state == 1)
{
setLights(HIGH, HIGH, LOW);
targetCount = shortPeriod;
state = 2;
}
else if (state == 2)
{
setLights(LOW, LOW, HIGH);
targetCount = longPeriod;
state = 3;
}
else if (state == 3)
{
setLights(LOW, HIGH, LOW);
targetCount = shortPeriod;
state = 0;
}
}
void stights (int red, int желтый, int green)
{
digitalWrite(redPin, red);
digitalWrite(yellowPin, yellow);
digitalWrite(greenPin, green);
}









