Набор блоков ЭНКОДЕР
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
- Dryundel
- Полковник
- Сообщения: 2465
- Зарегистрирован: 22 май 2017, 23:15
- Откуда: Ярославль
- Имя: Андрей
- Благодарил (а): 8 раз
- Поблагодарили: 35 раз
Набор блоков ЭНКОДЕР
[ref]Олега[/ref], Вы попробовали 3.0.1 ?
Работает? Замораживает значение через En?
Работает? Замораживает значение через En?
Набор блоков ЭНКОДЕР
Попробовал Plus v 3.0.1 Да!! этот действительно работает так как мне надо. Значения замораживаются. все отлично! Спасибо за блок. Удачи 

-
- Рядовой
- Сообщения: 14
- Зарегистрирован: 04 мар 2020, 11:40
- Имя: Павел
Набор блоков ЭНКОДЕР
может кто поделится блоком енкодера на 8266. Сколько перепробовал - ни один не работает
Набор блоков ЭНКОДЕР
Добрый день. Вот рабочий проект в FLPROG 6.31, правда IDE брал от FLROG 5.3 (V1.8.9).starik2000 писал(а): 05 мар 2020, 22:16 может кто поделится блоком енкодера на 8266. Сколько перепробовал - ни один не работает
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Набор блоков ЭНКОДЕР
Хоть тема старая, но спрошу.
Какую частоту входящих импульсов от энкодера может обработать uno, mega или due?
Какую частоту входящих импульсов от энкодера может обработать uno, mega или due?
Набор блоков ЭНКОДЕР
у блока есть минус
он не понимает что нужно остановится мне нужны импулься от 0-100 что мне и выделяет блок лимита
но стоит при достижении 100 убежать чуть дальше как при попытке начать крутить обратно он не убавляет пока ручка не врнётся в положении 100 и только тогда начнёт убавляться
тоесть каждый раз приходится искать значние 100 при убавлении а точнее предвкушать его что вот вот оно начнёт убавляться
в общем это чуство поиска напрягает
он не понимает что нужно остановится мне нужны импулься от 0-100 что мне и выделяет блок лимита
но стоит при достижении 100 убежать чуть дальше как при попытке начать крутить обратно он не убавляет пока ручка не врнётся в положении 100 и только тогда начнёт убавляться
тоесть каждый раз приходится искать значние 100 при убавлении а точнее предвкушать его что вот вот оно начнёт убавляться
в общем это чуство поиска напрягает

У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Набор блоков ЭНКОДЕР
Попробуйте этот
[spoiler] [/spoiler]
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Набор блоков ЭНКОДЕР
я встречал там похожий 3,1
но нет информации по нему и остановился пока на этом
но нет информации по нему и остановился пока на этом
Набор блоков ЭНКОДЕР
Добрый день. Прошу поделиться блоком для ESP33, не смог найти.
Отправлено спустя 1 минуту 45 секунд:
Отправлено спустя 1 минуту 45 секунд:
ESP 32..Andrejka писал(а): 02 июл 2020, 08:14 Добрый день. Прошу поделиться блоком для ESP33, не смог найти.
- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
Доброго дня.
Приобрел инкрементальный энкодер (Omron E6B2-CWZ6C, 1000 импульсов , 3х фазный.
Большинство блоком с 2 входами, данный же энкодер 3 выходами (A.B.Z.)
Подскажите, каким блоком можно получить точную скорость вращения с данного энкодера?
Отправлено спустя 3 часа 22 минуты 46 секунд:
Хочу услышать Ваше мнение.
Получиться считать обороты энкодера ?
Приобрел инкрементальный энкодер (Omron E6B2-CWZ6C, 1000 импульсов , 3х фазный.
Большинство блоком с 2 входами, данный же энкодер 3 выходами (A.B.Z.)
Подскажите, каким блоком можно получить точную скорость вращения с данного энкодера?
Отправлено спустя 3 часа 22 минуты 46 секунд:
Хочу услышать Ваше мнение.
Получиться считать обороты энкодера ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
Всем привет.
Парни, подскажите пожалуйста как блоком можно получить точные показание с Энкодер?
Энкодер инкрементальный, выход NPN, фазы A, B, Z, разрешение 1000имп/об, питание 5-24В,Omron E6B2-CWZ6C.
Перелистал форум, попробовал кучу блоков , но без результата
. Энкодер соединил с ШД для проверки на полним обороте, по показаниям энкодера не хватает несколько десятков импульса, то излишки .
Данным энкодером хочу считывать обороты шпинделя на фрезерном станке, обороты не более 400 об\мин
Прошу Вашей помощи в подборе блока
Всем спасибо
Парни, подскажите пожалуйста как блоком можно получить точные показание с Энкодер?
Энкодер инкрементальный, выход NPN, фазы A, B, Z, разрешение 1000имп/об, питание 5-24В,Omron E6B2-CWZ6C.
Перелистал форум, попробовал кучу блоков , но без результата

Данным энкодером хочу считывать обороты шпинделя на фрезерном станке, обороты не более 400 об\мин
Прошу Вашей помощи в подборе блока
Всем спасибо
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Набор блоков ЭНКОДЕР
Если вопрос только в измерении скорости вращения - используйте одну фазу из энкодера и скоростной счетчик...Davit07 писал(а): 05 июл 2020, 18:23 Данным энкодером хочу считывать обороты шпинделя на фрезерном станке, обороты не более 400 об\мин
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
[ref]av[/ref], [ref]Ingwar[/ref], Парни , спасибо !
Отправлено спустя 18 минут 45 секунд:
К примеру , если с 2х счётчиков суминовать показания и разделить на количество счётчиков , то мы получим среднее показания . Будет ли работать данный блок и не будет запаздывать математическое решение для определение скорости ?
Отправлено спустя 18 минут 45 секунд:
К примеру , если с 2х счётчиков суминовать показания и разделить на количество счётчиков , то мы получим среднее показания . Будет ли работать данный блок и не будет запаздывать математическое решение для определение скорости ?
- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
[ref]av[/ref], показания счётчика скачут , в характеристиках энкодер на 1000 импульсов на оборот , счётчик нашитует 1337,+- 10 импульсов. Для расчета скорости надо постоянное значение, для этого пытался вывести среднее среднее показания двух счётчиков . Возможно ошибаюсь .
Благодарю за помощь . Буду ломать голову дальше )
Благодарю за помощь . Буду ломать голову дальше )
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Набор блоков ЭНКОДЕР
Эх... Вот смотрите ЧТО и КАК считаем. В примере сигнал от генератора, но для примера модифицированый. Частота неизменна и выделена красным. Для вашего варианта примерно 366,6 об/мин.
Пример 1
На входной ноге контроллера (завален фронт)
[spoiler] [/spoiler]
В программе
[spoiler] [/spoiler]
Пример 2 (сигнал немного приблизили к правильному)
На входной ноге контроллера
[spoiler] [/spoiler]
В программе
[spoiler] [/spoiler]
Это к тому, что для начала нужно сформировать входной сигнал.
Отправлено спустя 19 минут 21 секунду:
Пример 1
На входной ноге контроллера (завален фронт)
[spoiler] [/spoiler]
В программе
[spoiler] [/spoiler]
Пример 2 (сигнал немного приблизили к правильному)
На входной ноге контроллера
[spoiler] [/spoiler]
В программе
[spoiler] [/spoiler]
Это к тому, что для начала нужно сформировать входной сигнал.
Отправлено спустя 19 минут 21 секунду:
Не нужно это. Делайте замер не 1 секунду, а 2, 3 или больше и будет Вам точность.Davit07 писал(а): 06 июл 2020, 09:02 пытался вывести среднее среднее показания двух счётчиков . Возможно ошибаюсь .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
-
- Капитан
- Сообщения: 708
- Зарегистрирован: 06 фев 2016, 11:01
- Откуда: Ярославль
- Имя: Сергей
Набор блоков ЭНКОДЕР
Offtop
[spoiler]
[/spoiler]
[spoiler]
Цена в чипдипеDavit07 писал(а): 05 июл 2020, 18:23 Энкодер инкрементальный, выход NPN, фазы A, B, Z, разрешение 1000имп/об, питание 5-24В,Omron E6B2-CWZ6C.

- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
Благодарю ещё раз за ответ.av писал(а): 06 июл 2020, 09:32 [ref]Davit07[/ref], чем замеряете обороты вала (соответственно энкодера). Ведь энкодер считывает на один импульс угол поворота вала 0,36 градусов.
[ref]av[/ref], раскроете Вашу мысль более подробно .
Я понял ,что Вы имеете в виду , но как то не до конца )) понял , но не понял )).
Отправлено спустя 1 минуту 54 секунды:
Золотой )))SSSergeich писал(а): 06 июл 2020, 10:35 Offtop
[spoiler]Цена в чипдипеDavit07 писал(а): 05 июл 2020, 18:23 Энкодер инкрементальный, выход NPN, фазы A, B, Z, разрешение 1000имп/об, питание 5-24В,Omron E6B2-CWZ6C.[/spoiler]
Покупал в Китае за 1,8р
Отправлено спустя 8 минут :
[ref]Ingwar[/ref], спасибо за развернутый ответ . Буду пробовать .
Замер производил за 100 милилекунд.
Построил такую прибуду для подсчёта сигналов на оборот. Наверно в этом моя ошибка .
[ref]Ingwar[/ref], [ref]av[/ref], спасибо вам за помощь
Отправлено спустя 1 минуту 5 секунд:
Davit07 писал(а): 06 июл 2020, 11:03Благодарю ещё раз за ответ.av писал(а): 06 июл 2020, 09:32 [ref]Davit07[/ref], чем замеряете обороты вала (соответственно энкодера). Ведь энкодер считывает на один импульс угол поворота вала 0,36 градусов.
[ref]av[/ref], раскроете Вашу мысль более подробно .
Я понял ,что Вы имеете в виду , но как то не до конца )) понял , но не понял )).
Отправлено спустя 1 минуту 54 секунды:Золотой )))
Покупал в Китае за 1,8р
Отправлено спустя 8 минут :
[ref]Ingwar[/ref], спасибо за развернутый ответ . Буду пробовать .
Замер производил за 100 милилекунд.
Построил такую прибуду для подсчёта сигналов на оборот. Наверно в этом моя ошибка .
[ref]Ingwar[/ref], [ref]av[/ref], спасибо вам за помощь
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
В предещушем сообщении есть фото привода ШД и энкодера. Проверял какое количество импульсов на полный оборот ШДav писал(а): 06 июл 2020, 11:21Я имел ввиду, что на один градус получается 3 с лишним импульса. А вот как вы замерили один оборот вала визуально или каким то прибором. Может из за этого такая большая погрешность в измерениях количества импульсов на оборот.Davit07 писал(а): 06 июл 2020, 11:04 av, раскроете Вашу мысль более подробно .
Я понял ,что Вы имеете в виду , но как то не до конца )) понял , но не понял )).
- Davit07
- Сержант
- Сообщения: 175
- Зарегистрирован: 05 янв 2020, 03:39
- Откуда: Краснодар
- Имя: Давит
- Благодарил (а): 7 раз
Набор блоков ЭНКОДЕР
Всем привет.
Искал в интернете похожие работы с энкодером и попалась страница, где туземец написал скетч для энкодера .
Ссылка:
https://electricdiylab.com/how-to-conne ... h-arduino/
Проверил через монитор порт, как в описание по ссылке. Результат показаний удивил своей точностью из последних опытов с энкодером, +-1-3 импульса на оборот
Хочу к Вам обратиться за помощью в создании блока из скетча. К сожалению в этом вопросе мой опыт и познания пока, ранен нулю.
Наверно надо удалит из скетча монитор порта и также хотелось бы добавить в блок деление показаний на 2, что бы можно было получать показания на выходе равные указанным характеристикам на экодере. Так же, требуется выход для использование блока с другими блоками.
Скетч:
volatile long temp, counter = 0 ; //This variable will increase or decrease depending on the rotation of encoder
void setup( ) {
Serial.begin ( 9600 );
pinMode( 2, INPUT_PULLUP) ; // internal pullup input pin 2
pinMode( 3, INPUT_PULLUP) ; // internalเป็น pullup input pin 3
//Setting up interrupt
//A rising pulse from encodenren activated ai0(). AttachInterrupt 0 is DigitalPin nr 2 on moust Arduino.
attachInterrupt( 0, ai0, RISING);
//B rising pulse from encodenren activated ai1(). AttachInterrupt 1 is DigitalPin nr 3 on moust Arduino.
attachInterrupt( 1, ai1, RISING);
}
void loop( ) {
// Send the value of counter
if( counter != temp ){
Serial.println (counter);
temp = counter;
}
}
void ai0() {
// ai0 is activated if DigitalPin nr 2 is going from LOW to HIGH
// Check pin 3 to determine the direction
if(digitalRead( 3) ==LOW) {
counter++;
} else{
counter--;
}
}
void ai1() {
// ai0 is activated if DigitalPin nr 3 is going from LOW to HIGH
// Check with pin 2 to determine the direction
if(digitalRead( 2) ==LOW) {
counter--;
} else{
counter++;
}
}
Вот еще один . Посмотрите какой проще и луче для создание блока. Но этот скетч не переходит в отрицательное значение как предыдущий . Выглядит это так :
Скетч 1) 3,2,1,0,-1,-2,-3
скетч 2) 3,2,1,65535, 65534. При вращении в положительную сторону и достижении 65535 отсчет начинается с нуля до этого значения по кругу . Наверно данный скетч хуже. Судить не могу, не знаю )
by Ben-Tommy Eriksen
https://github.com/BenTommyE/BenRotaryEncoder
*/
// Encoder connect to digitalpin 2 and 3 on the Arduino.
volatile unsigned int counter = 0; //This variable will increase or decrease depending on the rotation of encoder
void setup() {
Serial.begin (9600);
pinMode(2, INPUT); // set pin to input
pinMode(3, INPUT); // set pin to input
digitalWrite(2, HIGH); // turn on pullup resistors
digitalWrite(3, HIGH); // turn on pullup resistors
//Setting up interrupt
//A rising pulse from encodenren activated ai0(). AttachInterrupt 0 is DigitalPin nr 2 on moust Arduino.
attachInterrupt(0, ai0, RISING);
//B rising pulse from encodenren activated ai1(). AttachInterrupt 1 is DigitalPin nr 3 on moust Arduino.
attachInterrupt(1, ai1, RISING);
}
void loop() {
// Send the value of counter
Serial.println (counter);
}
void ai0() {
// ai0 is activated if DigitalPin nr 2 is going from LOW to HIGH
// Check pin 3 to determine the direction
if(digitalRead(3)==LOW) {
counter++;
}else{
counter--;
}
}
void ai1() {
// ai0 is activated if DigitalPin nr 3 is going from LOW to HIGH
// Check with pin 2 to determine the direction
if(digitalRead(2)==LOW) {
counter--;
}else{
counter++;
}
}
Спасибо за помощь
Искал в интернете похожие работы с энкодером и попалась страница, где туземец написал скетч для энкодера .
Ссылка:
https://electricdiylab.com/how-to-conne ... h-arduino/
Проверил через монитор порт, как в описание по ссылке. Результат показаний удивил своей точностью из последних опытов с энкодером, +-1-3 импульса на оборот
Хочу к Вам обратиться за помощью в создании блока из скетча. К сожалению в этом вопросе мой опыт и познания пока, ранен нулю.
Наверно надо удалит из скетча монитор порта и также хотелось бы добавить в блок деление показаний на 2, что бы можно было получать показания на выходе равные указанным характеристикам на экодере. Так же, требуется выход для использование блока с другими блоками.
Скетч:
volatile long temp, counter = 0 ; //This variable will increase or decrease depending on the rotation of encoder
void setup( ) {
Serial.begin ( 9600 );
pinMode( 2, INPUT_PULLUP) ; // internal pullup input pin 2
pinMode( 3, INPUT_PULLUP) ; // internalเป็น pullup input pin 3
//Setting up interrupt
//A rising pulse from encodenren activated ai0(). AttachInterrupt 0 is DigitalPin nr 2 on moust Arduino.
attachInterrupt( 0, ai0, RISING);
//B rising pulse from encodenren activated ai1(). AttachInterrupt 1 is DigitalPin nr 3 on moust Arduino.
attachInterrupt( 1, ai1, RISING);
}
void loop( ) {
// Send the value of counter
if( counter != temp ){
Serial.println (counter);
temp = counter;
}
}
void ai0() {
// ai0 is activated if DigitalPin nr 2 is going from LOW to HIGH
// Check pin 3 to determine the direction
if(digitalRead( 3) ==LOW) {
counter++;
} else{
counter--;
}
}
void ai1() {
// ai0 is activated if DigitalPin nr 3 is going from LOW to HIGH
// Check with pin 2 to determine the direction
if(digitalRead( 2) ==LOW) {
counter--;
} else{
counter++;
}
}
Вот еще один . Посмотрите какой проще и луче для создание блока. Но этот скетч не переходит в отрицательное значение как предыдущий . Выглядит это так :
Скетч 1) 3,2,1,0,-1,-2,-3
скетч 2) 3,2,1,65535, 65534. При вращении в положительную сторону и достижении 65535 отсчет начинается с нуля до этого значения по кругу . Наверно данный скетч хуже. Судить не могу, не знаю )
by Ben-Tommy Eriksen
https://github.com/BenTommyE/BenRotaryEncoder
*/
// Encoder connect to digitalpin 2 and 3 on the Arduino.
volatile unsigned int counter = 0; //This variable will increase or decrease depending on the rotation of encoder
void setup() {
Serial.begin (9600);
pinMode(2, INPUT); // set pin to input
pinMode(3, INPUT); // set pin to input
digitalWrite(2, HIGH); // turn on pullup resistors
digitalWrite(3, HIGH); // turn on pullup resistors
//Setting up interrupt
//A rising pulse from encodenren activated ai0(). AttachInterrupt 0 is DigitalPin nr 2 on moust Arduino.
attachInterrupt(0, ai0, RISING);
//B rising pulse from encodenren activated ai1(). AttachInterrupt 1 is DigitalPin nr 3 on moust Arduino.
attachInterrupt(1, ai1, RISING);
}
void loop() {
// Send the value of counter
Serial.println (counter);
}
void ai0() {
// ai0 is activated if DigitalPin nr 2 is going from LOW to HIGH
// Check pin 3 to determine the direction
if(digitalRead(3)==LOW) {
counter++;
}else{
counter--;
}
}
void ai1() {
// ai0 is activated if DigitalPin nr 3 is going from LOW to HIGH
// Check with pin 2 to determine the direction
if(digitalRead(2)==LOW) {
counter--;
}else{
counter++;
}
}
Спасибо за помощь
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя